Как да започнем – напътствия и ресурси
Това ръководство се изпраща на участнички и кандидати в Rails Girls събития, но информацията в него е публична и може да бъде споделяна свободно. То съдържа някои напътствия и категоризирани ресурси, подходящи за начинаещи или просто хора, прояващи любопитство към програмирането.
Joan on Rails
На Rails Girls събитията у нас вече сме имали участнички, които шест месеца по-късно вече са инструкторки. Имаме и примери за участнички, които са започнали работа като програмисти. И вие може да постигнете това, или поне да овладеете достатъчно програмистки умения, за да ги приложите за реализация на идеите си.
Препоръчваме да изгледате това филмче, в което една участничка от Rails Girls Berlin разказва как в рамките на една година от първото си участие си намира работа като програмист и е вече инструктор в Rails Girls Berlin събитията: Joan on Rails (~30 мин.) В него има страхотни и много практични съвети.
Продължете да пишете (и четете) код
Като всеки занаят, и програмирането изисква практика. Най-важно е наистина да си изцапате ръцете и да продължите да се занимавате. За тази цел следвайте напътствията по-долу.
Интересен факт е, че освен четене на ръководства и книги и писане на код, четенето на чужд код също е много полезно и поучително.
Приложението от уъркшопа
За да затвърдите и разширите наученото по време на уъркшопа, ви съветваме да направете отново приложението, следвайки ръководството от последното Rails Girls Sofia събитие. Направете го сами, отначало и на чисто.
Дори да не сте участвали в Rails Girls Sofia събитие, ръководството е написано информативно и може човек да го следва и сам.
Следват допълнителни и много полезни ресурси, с чиято помощ да развивате познанията си в по-конкретно направление.
Общи положения за уеб приложенията
Запознайте се как работят браузърите и уеб приложенията на концептуално ниво. По темата има доста ресурси, като този е хем полезен, хем забавен.
HTML & CSS
Поиграйте си в Code Academy, в сесията за разработка на уеб, за да разширите и затвърдите вашите познания за HTML и CSS. Там може да намерите и други сесии, които да са ви в помощ. Дори има такава за Ruby.
Друг отличен ресурс по темата е безплатното ръководство A Practical Guide to HTML & CSS.
Допълнителни интересни ресурси:
- Learn CSS Layout – the pedantic way
- learn.shayhowe.com
- CSS flexbox Cheat Sheet – добро и сбито обяснение на CSS Flexbox модела, съчетано с визуални примери.
- howtocenterincss.com - центриране на неща в CSS (голяма мъка).
- FlukeOut - игра, която да ви научи как се ползват и комбинират CSS селектори. Възможно е в началото да ви е трудно да схванете как работи, защото не е добре обяснено, но после става интересно и полезно.
- cssreference.io – много добър визуален справочник за почти всички налични CSS правила.
- freeCodeCamp - като Code Academy, но изцяло безплатно. Идеята е да развива умения с цел участие в проекти за non-profit организации. Има детайлна front-end пътека, започваща от HTML и CSS (в която са включени и (Twitter) Bootstrap и JavaScript/jQuery), обяснени по много достъпен начин и обръщащи внимание на всяка стъпка. Накрая на всеки по-голям дял уроци има упражнение по писане на цялостен проект (примери: Tribute Page, Personal Portfolio, Random Quote Machine, Show The Local Weather и т.н.).
Ruby
Ако искате да дълбаете в езика за програмиране Ruby, може да пробвате следните неща:
- Ruby for Beginners на берлинската учебна група – много леко и приятно четиво, написано за съвсем начинаещи и тепърва навлизащи в програмирането.
- TryRuby.org
- Книгата Learn to Program - тя е написана за хора, които тепърва се захващат с програмиране и езикът, на който са примерите в нея, е Ruby.
- Книгата Introduction to Programming with Ruby - още една книга за прохождащи програмисти с примери на Ruby.
- Книгата Learn Ruby the Hard Way.
- Секцията за Ruby в Code Academy.
- Ruby in 100 Minutes.
- Why’s (Poignant) Guide to Ruby – доста колоритно ръководство към Ruby. Не е за всеки :)
Sinatra
На Rails Girls събитията използваме Sinatra, за да направим уеб приложение. Sinatra е семпъл инструмент, който въпреки това е доста гъвкав и има доста възможности. С негова помощ може да постигнете много.
Освен онлайн документацията на Sinatra, която е доста изчерпателна, може да прочетете и книгата Sinatra: Up and Running.
Ruby on Rails
Ако се чувствате много любопитни и сте овладели основните понятия в HTML, CSS и Sinatra вече ви доскучава, може би е време да пробвате Ruby on Rails. Ruby on Rails също е инструмент за правене на уеб сайтове и ви дава много неща наготово, но е необходимо повече четене, за да свикнете с визията на библиотеката и с възможностите, които ви предоставя.
Класическа книга за Rails, налична и безплатно онлайн, е Ruby on Rails Tutorial (трето издание).
Много хора също така препоръчват Rails for Zombies (серия безплатни филмчета). Тези два отговора на въпрос за научаване на Rails в Quora също съдържат добри насоки — едно и две.
RailsCasts са серия филмчета, предлагащи добри решения на определени проблеми от практиката на уеб разработчика. Ако сте схванали основите на Rails, тези филмчета ще са ви много полезни. Голяма част от тях са безплатни. Имат и текстов вариант в AsciiCasts.
Рано или късно, след като вече сте се занимавали известно време с Rails, ще дойде момент, в който ще трябва да прочетете повечето ръководства от официалната документация и ръководства за Ruby on Rails. Тези ръководства са доста изчерпателни и покриват в голям детайл почти всички компоненти на фреймуърка Ruby on Rails.
Други
На сайта на Confreaks можете да гледате напълно безплатно записи на презентации от множество световни конференции в сферата на програмирането и IT.
В един сайт можете да пробвате първия си досег със системата за контрол на версии Git — http://try.github.io/.
Вижте и какви други ръководства има на текущия сайт. Много полезен може да ви бъде този “пищов” с бързи клавишни комбинации.
Работете над нещо реално
Ако имате конкретна идея за проект, инструмент, сайт — страхотно! Това е най-добрият начин да навлезете и да се учите. Преследвайки конкретната си цел, ще ви се наложи да търсите начини да я постигнете и неминуемо ще научите много по пътя, натрупвайки тонове безценен опит.
Поддържайте връзка помежду си
Не на последно място, изключително важно е да поддържате връзка помежду си. Така ще си помогнете с мотивацията, с отговорите на някои по-сложни въпроси, ще има кой да ви упъти, ако се залутате някъде.
Станете част от местното програмистко community. Посещавайте срещи, сбирки и събития, когато такива има.
Забавлявайте се
Няма какво да се лъжем, това е най-важното! ;)