Skip to content

Latest commit

 

History

History
463 lines (266 loc) · 59.3 KB

rails-girls-sofia-2016-march-coaches-guide.md

File metadata and controls

463 lines (266 loc) · 59.3 KB

Rails Girls Sofia 6.0 - Coaches Guide

Документ с напътствия за инструктори и организатори на Rails Girls Sofia 6.0, 25-26 март 2016 г.

Съдържание:

  1. TL;DR
  2. Накратко за Rails Girls (за нови инструктори)
  3. За текущото издание – място, дати, други
  4. Общи напътствия и принципи, цел на събитието, роля на инструкторите
  5. Обяснения на различните части от програмата
  6. Приветстащ имейл от инструкторите към участничките
  7. Ако нямате опит с Ruby до момента

TL;DR

  1. Елате в 18:30 в петък (25-ти) и в 9:30 в събота (26-ти). НДК, зала 10. Залата се намира на последния, осми етаж. Влиза се през централния вход на НДК, след това се тръгва вдясно, покрай гардероба, до асансьорите, откъдето може да се стигне до осмия етаж. Ще има указателни балони. Не е нужно да си носите лаптоп, участничките ще си имат.
  2. Преди събитието създайте по един безплатен акаунт за всяка от участничките ви в Nitrous.io и вътре създайте нов Ruby проект. Данните за достъп до Nitrous ще дадете на участничките. Ще се изисква потвърждение на имейла. Подробности и съвети за това има по-долу, в секцията "Среда за разработка".
  3. Прочетете правилата за How to train a robot.
  4. Прочетете In HTML We Trust.
  5. Ще се движим по тази презентация и ще правим елементарно уеб приложение с Ruby и Sinatra: bit.ly/railsgirlssofia6 (кодът ѝ в GitHub) - прочетете я. Цялата необходима документация на Sinatra е в това one-page README. Ползвайте и тези bit.ly/railsgirlscheatsheets.

След това прочетете това ръководство.

Накратко за Rails Girls (за нови инструктори)

Стартира в края на 2010 година във Финландия, като еднократно събитие, но бързо набира популярност. Днес – вече стотици събития в над 130 града по цял свят. В България го организираме за седми път път (направихме едно издание във Варна през 2015 г. и пет в София). Интересът е винаги голям.

Представлява workshop с кратки лекции и повече занимания. За участие се приемат само жени. Заниманията са по предварително подготвено ръководство. На две участнички се пада по един инструктор, който има за цел да ги напътства и да им помага в движението по ръководството. Повечето участнички са съвсем начинаещи и никога не са се занимавали с програмиране, или пък са пробвали съвсем елементарни неща в някакъв момент.

Некомерсиална инициатива е и всички от организационния екип, както и инструкторите, участват на доброволен принцип. Има разходи (за зала, кетъринг, рекламни материали), които се покриват от спонсори.

Може да прочетете повече по темата на сайта на събитието, или, ако имате въпроси, да пишете на организационния екип.

Мотивация за съществуване на събитието

Събитието е опит да се адресира съществуващият дисбаланс между мъже и жени в IT сферата и да се атакуват предразсъдъците, които са се загнездили у повечето жени (и мъже), свързани с програмирането.

Rails Girls определено може да се възприеме като сексистко събитие, понеже за участие се допускат само жени. Това щеше да е проблем, ако в момента нямаше дисбаланс, но такъв има. Причината да допускаме само жени като участнички, е за да създадем среда, която се усеща като максимално приветлива и безопасна, за да може повече жени да се престрашат да направят първата крачка.

Петя Панайотова е участничка в едно от Rails Girls Sofia събитията. Завършила е журналистика в Софийския университет "Св. Климент Охридски" и казва следното в кандидатурата си за участие, в полето за мотивация:

"Интересът ми към уъркшопа се дължи на все по-осъзнатия ми интерес и отношение към програмирането и технологиите. Възможностите и предизвикателствата, които те предлагат, са все по-привлекателни за мен. Наскоро гледната ми точка към програмирането се промени, като това разбира се не стана изведнъж. Осъзнах, че в училище съм си създала погрешна и ограничена представа (не без ""съдействието"" на програмата по предмета, начина на преподаване и липсата на ефектива комуникация с преподавателя) за процеса на програмиране и това, което може да се постигне чрез него. Тази негативна гледна точка се е дължала на неразбиране и незадълбочен поглед. (...)"

Друга участничка пък ни пише следното:

"По едно време имах идея да се записвам на някакъв курс по програмиране – оставих се брат ми да ме разубеди, обяснявайки ми, че програмирането било адски сложно, не било за мен - нали съм жена и логиката ми куца..."

Това са стереотипите, с които се опитваме да се борим.

За Rails Girls Sofia 6.0

Шестото издание на Rails Girls Sofia ще се случи на 25-26 март 2016 г. (петък вечер и събота). Ще бъде в зала 10 на НДК. Инструкторите са необходими от около 18:30 ч. до около 21 ч. в петък и от 10-18 ч. в събота. Ще има 100 участнички и 50 инструктора. Програмата може да видите тук.

Екипът ще е там по-рано в петък (около 15:30 ч.), за да се подготви залата. Ако можете да сте там по-рано, елате, ще има с какво да помогнете. Ако ще закъснеете и ще дойдете след 18:45, ни пишете, за да знаем.

Зала 10 е на последния, осми етаж на НДК. Влиза се през централния вход, откъдето се движите надясно, покрай гардероба, докато не стигнете до асансьорите. От там се качвате на осми етаж. Няма качване по стълби. Ще има указателни балони.

Афтърпарти

Афтърпартито ще е неформална част след самото събитие и ще е в зала 10. Събота, от около 18:30 ч. до около 22 ч. Цел - социализация, особено между участниците, за да помогне за създаването на общност. За участничките и инструкторите ще има по едно питие от спонсорите, а е възможно да е осигурено и хапване. Ако можете да останете за афтърпартито, ще е супер.

Общи напътствия и принципи

Основна цел на събитието и основна роля на инструкторите

Основната ни цел е участничките да се чувстват заинтригувани, ентусиазирани и заредени след края на събитието, с подсилен интерес към темата.

За постигане на тази цел обикновено се налага да се подходи по различен начин за различните участнички и това е ролята на всеки един инструктор – да напипа това, което е подходящо и работи за неговите участнички и да се движи в тази посока. Някои примери:

  • Някои участнички предпочитат да се движат по ръководството и се чувстват зле, ако изостават, или пропускат части, докато интересът на други изисква инструкторът да се отклонява и да им обяснява странични неща.
  • За някои участнички постигането на реален резултат е по-важно от това да разбират как точно работят нещата отдолу, докато за други просто да сглобят нещо с copy/paste без да осъзнаят базовите концепции отзад е празно усилие.
  • Някои участнички предпочитат да четат сами, да търсят сами и да се борят с проблемите предимно сами, докато други предпочитат да бъдат напътствани и съветвани, и/или да работят в тандем с някого по нещо.
  • На някои участнички им е по-интересна визуалната част – HTML, CSS, цветове, картинки, дизайн, докато други ги човърка повече как работят нещата, логиката, програмирането.

Това са само малка част от индивидуалните особености. Основната роля на инструктора в събитието е да усети как се чувства всяка от участничките му и да се опита да се нагоди максимално спрямо тях. Не е задължително нито да се следва ръководството дословно, нито да се мине цялото, от край до край. Предаването на определено количество материал или теория е крайно маловажно.

Все пак е добре да се насърчават неща като:

  • Умението самостоятелно да се анализира и преборва проблем.
  • Самостоятелно да се разбие проблем на по-малки части и да се търси информация по темата.
  • Комуникацията и взаимопомощта между участничките.
  • Да се експериментира, да се греши и да се пита, когато нещо не е ясно.

Бъдете гъвкави.

Като страничен ефект на горното, ще очакваме след края на събитието участничките да са разбрали, че:

  • Технологиите и програмирането не са изобщо толкова страшни и необятни, колкото изглеждат на пръв поглед.
  • Това не е занаят само за богоизбрани, или за хора с бради.
  • В умели ръце, технологиите се превръщат в могъщ инструмент за постигане на невероятни цели и – защо не – за промяна на света.

Най-важното

Най-важното нещо са времето и мотивацията на участниците. Това е ресурсът, който в никакъв случай не трябва да пропиляваме и към който трябва да се отнасяме с изключително внимание.

Всички ние, като инструктори, имаме тежката задача да преглътнем гордостта и егото си. Не е важно ние да блеснем с нещо – важно е да се движим към основната цел на събитието и да се грижим участниците да се чувстват комфортно.

Ако не се набива на очи, че помагате, но нещата вървят – значи сте си свършили работата перфектно.

Разпределение на участничките

Групите са по две участнички на инструктор. Ще има групиране и разпределение и ще ви бъде изпратена информация за участничките и тяхната мотивация и бекграунд веднага, щом списъкът е ясен. Би било добре след като получите тази информация, да им изпратите един "welcome email" за разчупване на леда (има секция за това по-долу) (бъдете креативни). Може да включите там и молба да потвърдят акаунтите си в Nitrous.

Възможно е да има такива, които да не дойдат. Допускаме малко размествания по време на самото събитие.

Ако пишете на организационния екип с желание да сте инструктор на конкретен човек, ще се опитаме да изпълним желанието ви.

Подготовка и обяснения за начинаещи

Извадки на много, много важни моменти от ръководството за инструктори на начинаещи, което ще е полезно на всеки да прочете преди събитието:

  • Ask students "What do you want to get out of class?" (Всеки инструктор ще получи информация за участниците си - мотивация, информация за опит, данни за контакт и др. Целта е да се настроите максимално на правилната честота.)
  • Assume that anyone you're teaching to has 0 knowledge but infinite intelligence.
  • Admit your ignorance. Show them how you approach something you don't know.
  • Tell people it's perfectly fine to make mistakes and to be wrong. That's how we learn and evolve.
  • Try to avoid technical jargon as much as possible.
  • Don't say "any questions?"; say "What questions do you have?" and then mentally count to at least five waiting for a question.
  • Get the students talking to each other.

How to introduce yourself to the class:

  • tell your story and tell why you like programming and teaching (but beware of bragging!)
  • tell why you care! Why are you getting up on saturday morning to come in here?

Pace:

  • Slow down! Wait much longer than you feel is comfortable for questions/comments.

Copy/Paste - ок

За нашите конкретни цели - да запалим интерес и предвид времето, с което разполагаме, copy/paste се препоръчва, особено ако командата е повече от една-две думи.

За кратки команди може да ги карате да ги пишат, с цел да се запомнят, но запомнянето не е основната цел на събитието и времето, с което разполагаме, е малко. В повечето случаи е по-добре да се инвестира време в обяснения на концепции на по-високо ниво.

Метафори

Метафорите са силно оръжие, но са и нож с две остриета. Лоши метафори може и да навредят. Помислете предварително за някои, използвайте ги.

Някои примери:

  • MVC = Магазин: витрина, служител, складово помещение
  • Бази данни = Excel файл; таблици = sheet в Excel файл
  • HTML, CSS = плодова торта с различни слоеве (тук е описано)

Ако имате добри идеи, правете PR и допълвайте този списък.

Начин на реакция при проблем

Много добра реплика при възникване на проблем е, "Чудесен проблем!", "Колко интересен проблем!", "Чудесна възможност да научим нещо ново" и прочее.

Ролята на инструктора е да напътства участничките. Избягвайте просто да им решавате проблемите и да им давате директно отговор, дори след това да го обясните. Оставете ги първо да се помъчат сами. Например, ако допуснат грешка някъде, вероятно естествената им реакция ще е „Ами, не става.“ Накарайте ги да прочетат грешката. Научете ги как да извлекат ценната информация от съобщението за грешка. Посъветвайте ги за какво да търсят в Google. Питайте ги „Какъв може да е проблемът?“ Насърчете ги и ги оставете да помислят.

С други думи, много по-ценно е да им подскажете какъв е процесът на програмиране и решаване на проблеми (четене на документация, мислене, писане на код, четене на грешки, мислене, писане на код, четене на грешки, ровене в Google/StackOverflow и т.н.)

Тънкият момент тук е, че не всеки проблем си заслужава да бъде борен по време на Rails Girls събитие, поради ограничението във времето и неща, които откровено излизат много извън обхвата на материала. Ваша роля е да прецените кои проблеми са подходящи за решение от тях и кои не са на този етап.

Също така, ако усещате, че участничката се фрустрира твърде много от проблема, помогнете повече, или направо дайте решение.

Кога да обяснявате повече и кога – по-малко?

Както споменахме и в секцията за реакция при проблем, опитвайте се да карате участничките да правят нещата сами и избягвайте да им показвате и обяснявате само вие.

Въпросът доколко да ги напътствате вие и доколко да ги оставяте сами да се борят с ръководството и проблемите е доста индивидуален и различен за всяка участничка. Въпреки това, има някои общи принципи – някои секции в ръководството за участничките са обяснени доста по-бегло и реално лежат на плещите на инструктора, който трябва да създаде наратив и да преведе участничките през отделните стъпки на своето обяснение. Пример за такава секция е частта за HTML и CSS. В противоположния спектър е секцията за конзолата, която е доста подробна и там е добре да оставите участничките да прочетат нещата сами, а вие само да отговаряте на въпросите, които те ще имат, докато четат, както и да се включите като дойде време за упражненията след това.

Стремете се да бъдете част от потока на мисълта на участничките си и да следите докъде са и с какво се борят във всеки един момент – да имате контекст, за да може да сте готови да отговорите на техен въпрос или да ги побутнете в правилната посока когато е необходимо, дори в момента да не обяснявате вие, а само да гледате какво правят. Добре е да създавате усещане в участничките, че сте 100% на линия и че имат цялото ви внимание. Ако усетят, че са изгубили вниманието ви, ще започнат да ви питат по-малко.

Може от време на време да ги подканяте да ви кажат как са разбрали те дадена концепция, за да видите дали има нужда да допълните или коригирате нещо генерално, което не сте успели да обясните добре. Може да си обясняват една на друга, или на вас, но внимавайте да не стане като изпит – трябва да се чувстват максимално спокойни да споделят как разбират нещо и че това е обратна връзка за вас като инструктор, а не изпит доколко те са разбрали нещата.

Записвайте проблеми с ръководствата

По време на събитието ще забелязвате проблеми с това или с ръководството за участничките – от дребни правописни грешки, до генерални структурни проблеми или пропуски. Записвайте си някъде тези неща, за да може впоследствие да ги споделите с екипа на събитието и да бъдат отстранени. Ако не ги запишете, ще ги забравите и ще останат некоригирани.

Обратна връзка от участничките за инструкторите

Много полезно е да прочетете мнението на участничките от минали издания на Rails Girls Sofia за инструкторите им (обратната връзка е анонимна), особено отговорите на въпроса "Доволни ли сте от инструктора си? Бележки към него и другите инструктори?":

Конкретно за това събитие и по програмата

Програмата е тук: http://railsgirls.com/sofia#schedule

Петък

Елате максимално рано, по възможност да не е след 18:30. Екипът ще е там от 15:30, тъй като има нужда от подготвителни действия. Ще сме благодарни на всеки, който успее да дойде по-рано, за да помага.

Ако ще закъснеете и ще дойдете след 18:45, предупредете ни веднага, щом разберете, че ще стане така.

Регистрация

Начало: 18:30 Време: около 30 минути

Започва официално в 18:30. Ще я поеме някой от организационния екип. Инструкторите трябва да са по местата си, за да може да се запознаят с новодошлите, да разчупят леда и, ако им е скучно, да се мине на стъпка "Среда за разработка".

Разпределение по инструктори

За да бъде максимално стройна организацията и да не се лутат хората, е подготвено предварително разпределение на участничките по инструктори.

Всички инструктори трябва да имат name tags, надписани с червен маркер. При регистрация, всяка участничка ще бъде информирана как се казва нейният инструктор и ще трябва да го намери. Инструкторите ще сте подредени по азбучен ред в залата и участничките ще трябва да направят двоично търсене :)

Участничките ще имат name tags, надписани с черен маркер.

Официално откриване

Начало: около 19:00 Време: около 15-20 минути

Очаква се към 19-19:10 да направим официално откриване. Ще има кратко представяне на спонсорите и организационни бележки. Ще се постараем да го държим кратко и стегнато. След това ще преминем към играта.

Игра "How to Train a Robot"

Начало: около 19:20 Време: около 30 минути

След откриването преминаваме към играта "How to train a robot". Идеята е взаимствана от тук. Кратка презентация за играта може да видите тук.

Накратко, участничките пишат съвкупност от команди на хартия, формиращи програми. Командите са предварително дефинирани. Командите управляват инструктора, който играе ролята на робот и се движи в "лабиринт", очертан с тиксо на пода. Роботът разбира само предварително дефинираните команди, само в определен ред. Трябва да са изрично разписани, не могат да се използват съкращения и неща като "... x 2". Роботът "хвърля изключения" (вие преценете как) при изчерпване на програмата, преди достигнане на целта (хартиено кексче), удар в стена, неправилна последователност на командите (вж. по-долу) и прочее. След хвърляне на изключение, започвате отначало. Напомняте, че да се греши е напълно окей и е част от процеса.

Цели:

  • Участничките да усетят болката от повторение на команди, за да могат да стигнат естествено до нуждата от абстракция - функция и евентуално цикъл. Тя се вкарва на следващ етап, след няколко опита за писане-изключение-дебъг-писане-изключение-дебъг.
  • Да свикнат с идеята, че да грешат е не само нормално, а е съществена част от процеса ни на работа. Не е нужно, а е и невъзможно, да се напише програма от първия път, която да работи и да няма какво да се промени в нея. Цикълът експеримент-грешка е безценен за бързо достигане до качествено решение.
  • Вкарване на две абстракции по естествен път - 1) функции, 2) цикли. След достигане на крайната цел веднъж, се започва дискусия какво им пречеше и какво им беше трудно/досадно. Какво биха искали да се промени в изразните средства, с които разполагат. Вкарват се абстракциите функция и/или цикъл. По възможност първо функция, след това още една итерация за цикъл. Допустимо е и двете наведнъж, ако нещата се стекат така.
  • Да се насърчи колаборацията между участничките - те пишат програмата заедно.

PS: Добро въведение в играта би било:

"People think computers are really smart, but they aren't. A computer's a box with an IQ of 1, that just happens to be very good at crunching numbers very quickly. But it doesn't know how to think or how to reason. All it does is exactly what the program tells it to, without regards for the consequences of its actions. If it had legs, you could program it to jump out the nearest window, and it would do exactly that. Then you'd really see the system crash!

With that in mind, programming is basically about figuring out how to represent real-world problems as a series of commands for a computer to crunch, and how to explain the issue to a box with an IQ of 1 clearly enough that it will do what you want done."

Разрешени команди (по една на ред, или разделени с точка и запетая):

  • left step
  • right step
  • left turn
  • right turn
  • squat
  • pick object
  • stand up

Командите трябва да се изпълняват в определен ред. Ограничения и дефиниции:

  • Начално състояние: намирате се изправени, в началото на пъзела, двете ви стъпала са едно до друго.
  • Една "стъпка" не е крачка – премества ви точно едно стъпало/стъпка напред. Опирайте петата си в пръстите на другия крак. Тоест, когато двата ви крака са един до друг, right step мести десния крак пред левия, като петата на десния опира/е на нивото на пръстите на левия крак. След това трябва да следва left step, с което двете ви стъпала отново застават едно до друго. Тоест, right step + left step ви мести точно една стъпка напред.
  • left step или right step може да се направи само когато двете ви стъпала са едно до друго.
  • Не може да има два пъти последователно само left step или само right step, ако стъпалата ви са едно до друго. Следното, обаче, е възможно, ако стъпалата ви са едно до друго: left step, right step, right step, left step – ще ви придвижи две стъпки напред.
  • Не можете да направите left turn или right turn, ако двете ви стъпала не са едно до друго.
  • При turn, просто се завъртате около оста си на 90 градуса в съответната посока. Двете ви стъпала остават едно до друго.
  • pick object "работи" само ако обектът (кексчето) е в радиус от около една стъпка от робота и ако роботът е приклекнал. Иначе се хвърля изключение.
  • Целта е изпълнена след pick object и stand up, т.е. pick object трябва да има timeout, след който да гърми, ако не следва stand up :)

Добра идея е при изпълнение на командите да прочитате всяка команда, която изпълнявате в момента, с монотонен, безизразен, компютъризиран глас.

Общо-взето, настава един забавен хаос.

Среда за разработка

Начало: около 19:50 Време: около 20-30 минути

Вместо да се инсталира необходимият за разработка софтуер, ще ползваме cloud-базираната среда Nitrous.io.

За тази стъпка има секция в ръководството за участничките – bit.ly/railsgirlssofia6#tools. В секцията е разписано сравнително подробно какво е текстов файл (vs. MS Word файл), текстов редактор и конзола. Има секция за упражнение в конзолата. Оставете участничките да прочетат сами секцията и отговаряйте на въпросите, които ще имат в движение. След това направете упражненията за конзола в края на секцията.

Необходимо е предварително да сте регистрирали по един акаунт в Nitrous за всяка от участничките си и в него да сте създали workstation в Европа с безплатен план и в него един Ruby проект. Регистрацията става бързо, но създаването на workstation и проект отнема няколко минути и е добре да се направи предварително. След като създадете workstation и проект, влезте в настройките на проекта и направете port forwarding. Той изисква рестарт на workstation-а и затова е добре да се направи предварително. Добавете port forwarding за порт 5000. Може да маркирате порта като primary port, което ще позволи да бъде достъпван отвън и през порт 80, и през порт 5000.

Данните за регистрацията ще предоставите на участничките си, затова сложете подходящи парола и имейл. За регистрацията се изисква валиден имейл, на който се изпраща линк за потвърждение. За целта, ако имате имейл в Gmail, който е someone@gmail.com, може да използвате следните "синоними" на вашия имейл: someone+rgsofia1@gmail.com, someone+rgsofia2@gmail.com и т.н. Всичко след символа + се игнорира от Gmail при получаване на пощата. Алтернативно, може да използвате railsgirlssofia+нещоси@gmail.com и ние ще потвърдим акаунтите веднага, щом получим писмо с линк. Може да използвате и имейлите на участничките ви, които ще ви бъдат изпратени. Ако изберете този вариант, ще трябва да им пишете предварително, за да ги помолите да потвърдят имейла от Nitrous, който ще получат. Това може да е и добър повод за приветстващия имейл от ваша страна.

Метафора (пише я и в ръководството за участничките): Всеки майстор има нужда от определен набор инструменти и си има собствена работилница, в която твори. Вместо да ви караме да отделяте време, за да се снабдите с всички необходими инструменти и да си обзаведете собствена работилница специално за това събитие, ние ще ви дадем достъп до една готова такава, под наем – това е услугата Nitrous.io.

Когато участничките се регистрират и влязат в Nitrous.io, може да им обясните какво всъщност замества тази услуга – редактор, терминал/конзола, файлова система, стартиране на процеси.

Ако прецените, че на операционната система на участничката ще е лесно да се инсталира необходимият софтуер, вижте секцията "Инсталация" в това ръководство.

Единственото нещо, което може да свалите, е Notepad2 (директен линк, x86), за да е цветен HTML-ът, който ще показвате в следващата секция. Силата на Notepad2 е че много наподобява вградения в Windows Notepad, с тази разлика, че кодът е цветен. Няма излишни неща, които да разфокусират дискусията.

Други инструменти, които може да споменете и използвате, са Sublime Text или Atom. Вие трябва да решите каквъв редактор ще бъде използван, но отделете няколко минути, в които да обясните какво е среда за разработка, какви налични инструменти за писане на Ruby код съществуват и защо предпочитате Sublime пред Атом, например.

In HTML We Trust

За тази стъпка има секция в ръководството за участничките – bit.ly/railsgirlssofia6#html. Секцията не е разписана в много детайли и се очаква от инструкторите да обясняват и водят участничките през различните етапи. По-долу е обяснено как.

Вероятно ще имате време да започнете с тази част още петък вечер, но е възможно да не приключите тогава (не бързайте). Ако са ви останали неща за показване по HTML, ще ги продължите в събота. Тъй като съботният ден ще започне с кратък лекционен увод в програмирането, след който ще е добре да упражните показаните неща с участничките, е препоръчително първо да покажете примерите с Ruby и след това да довършите каквото ви е останало от HTML-а, преди да започнете самото приложение.

Идеята е участничките да свикнат какво е HTML (съдържание и структура) и какво е CSS (цветове, шрифтове, размери, отмествания, фон, шаренко). Да разберат, че HTML е технология (не точно език за програмиране), която е градивното блокче на интернет, на нея стъпва визуализацията на всички сайтове - това е, което се точи по жицата до нашия компютър.

Как:

Давате обещание на участничките, че след половин час ще са написали първата си уеб страница, на HTML (ако вече са писали HTML, няма да им е първа, разбира се). Започвате с един обикновен тесктов редактор, примерно Notepad или Notepad2 (директен линк, x86), в който да пишат текст и да запазят файл като .html. Внимание - на Windows е добре да изключите опцията, която крие разширенията на файловете - инструкции тук.

Има два варианта на примерно съдържание, което може да създадете:

  1. страничка, която е тематично свързана с приложението за гласуване, което ще се прави по-късно и е на кирилица.
  2. страничка мини-визитка – не е тематично свързана с приложението, но е една идея по-проста.

Предполага се, че първият вариант, който е тематично свързан с приложението за гласуване, ще е по-подходящ, но по ваша преценка може да направите втория вместо първия (или пък и двата, ако участничката се движи достатъчно бързо и проявява интерес).

План за обяснения

Следвайте точките с напътствия към инструкторите в ръководството за участничките – bit.ly/railsgirlssofia6#html. Добре е да сте ги прочели предварително.

Отново, не е нужно да приключвате с тази стъпка петък вечер, може да продължите и събота, след примерите с Ruby. Добре е все пак обясненията да имат някакъв завършен вид, преди да се разотидат хората петъка.

Групова снимка

Начало: около 21:00 Време: около 5 минути

Към 21 ч. спираме с другите занимания за деня, събираме се и правим един #Friday Hug. Може да сте виждали груповата снимка от някое от предните издания.

След това разпускаме народа да се наспи за утрешния ден.

Програма - събота

Кафе, регистрация за новодошлите, довършване на инсталации (09:00 - 10:00)

Участниците започват да се събират от 9 ч. Ще има кафе и кексчета, плодове или нещо подобно. В 10 ч. е началото на втория ден.

Блиц-увод в програмирането и уеб приложенията

Начало: около 10:10 Време: около 40 минути

Уводни думи, отново няколко думи за спонсорите, програма за деня, що е то "Rails Girls", какви са целите на събитието и какво да очакват участниците.

След тях уводната презентация ще продължи с един блиц-увод в програмирането и програмирането за уеб и напътствия за дизайн на уеб приложения. Би трябвало да приключи към 10:50.

Частта от презентацията с блиц увода в програмирането я има качена тук, ако ви трябва да видите нещо, или ако участничките искат да я гледат.

Уъркшоп 1

Начало: около 10:50 Край: 13:00

Веднага след презентацията топката отново е във вашето поле и продължавате с ръководството за участничките.

Продължете от там, до където сте стигнали предната вечер. Ако имате да довършвате обяснения за HTML и CSS, продължете от вчера. Може да направите кратък няколкоминутен преговор, за да затвърдите някои основни неща, за които вече сте говорили. Ако не сте започвали с HTML и CSS, вижте секцията "In HTML We Trust" за напътствия за какво да говорите.

Може да е по-удачно преди да довършите HTML и CSS обясненията, да минете през примерите с Ruby, защото ще им е прясно от току-що приключилата лекционна част.

Обяд

Начало: 13:00 Време: около 30 минути

Обядът ще е на място и е осигурен от спонсорите.

Bentobox

Начало: 13:30 Време: около 15 минути

След обяда ще направим Bentobox упражнението (слайдове, видео). Целта му е да покаже на участниците как да се ориентират в морето от термини и специфичен жаргон. За тази стъпка ще давам инструкции на място и няма нужда от особено сериозна подготовка от ваша страна.

Другата съществена цел е да се успокоим след обяда и да увеличим нивото на концентрация.

Lightning talks

Начало: 13:45 Време: около 15 минути

След Bentobox ще има сесия от 4-5 кратки (около триминутни) презентации.

Събираме предложения за желаещи да говорят и темите им. Пишете до railsgirlssofia@gmail.com с предложенията си. Вижте миналогодишните теми за вдъхновение.

Съвети и изисквания към презентациите:

  • лимит от 3 минути (по изключение може и 4, но трябва да се съгласува с екипа предварително)

  • кандидатства се, от екипа ще прегледаме предложенията и ще решим кои да допуснем

  • ще имаме 4-5 слота за презентации

  • подходящи теми:

    • истории, с или без поука, например от личен опит; правят впечатление и се запомнят
    • мотивационни неща
    • исторически обзори
    • интересни факти
    • дребни и хитри технически съвети
    • нещо offtopic, което е леко, разчупено, забавно, отпускащо
  • неподходящи теми – опит за преподаване на материал или повече теория; времето е недостатъчно за това

Ако темата ви бъде одобрена, ще е задължително да е изтренирана и таймирана предварително. Вероятно ще организираме мини-сбирка някоя вечр с предварително презентиране на темата пред нас, за да проверим тайминга и да дадем съвети и обратна връзка за съдържанието, ако е необходимо.

Workshop 2

Начало: около 14:00 Край: около 18:00

След lightning talks продължаваме с workshop сесията и с работата над приложението. Това ще продължи до края на събитието. Вероятно ще направим кратка кафе-пауза и почивка към 15:45 (ок. 15-20 минути).

Заключителни слова

Към 18:00 ч. закриваме събитието. Ще има не повече от 10-15 минути заключителни слова и напътствия.

Afterparty

Начало: след 18:30 Край: до 22:00

Ще е в същата зала 10, в която е събитието. Има чудесна тераса и се надяваме времето да е добро, за да може хората да излизат и там.

По едно безплатно питие за екипа, инструктори и участнички.

Сошал

Туитене и шерване на снимки и текст във Facebook се насърчава. Официален хештаг: #RailsGirlsSofia.

След събитието

Имаме доста пълно ръководство за това как да продължи човек след събитието. Въпреки това, може да се разшири и да се добавят още ресурси. Най-малкото има нови материали, които трябва да се добавят. Приемаме редакции и допълнения. Трябва обаче да внимаваме да не стане overwhelming.

Хората не продължават да се занимават много - сами им е трудно, или пък им липсва достатъчно мотивация. Затова имаме идеи.

Study groups и регулярни срещи

Ще разкажем за study групите и колко успешни са се оказали те – регулярни ежеседмични срещи, на които да присъства поне един инструктор и желаещи участници, както от това, така и от минали Rails Girls събития, включително и хора, които не са били на Rails Girls.

Срещите са в init Lab. Имат си Facebook група. Засега са всеки четвъртък и петък, от 19:30 до 22:00 ч.

Набираме инструктори-доброволци. Който иска да се включи, да ни пише на railsgirlssofia@gmail.com и ако ползва Facebook, да се присъедини във Facebook групата.

Приветстащ имейл от инструкторите към участничките

След като бъдат избрани участничките за текущото издание и групирани и разпределени по инструктори, всеки инструктор ще получи индивидуален имейл с информация за участничките си. Този имейл ще включва информация за предишния им опит, ако имат такъв, обща биографична информация, мотивацията им да участват в събитието и малко лични данни, включително и имейл адреса им.

Би било добра идея да изпратите един приветстващ имейл от ваша страна до участничките си, да им се представите, да използвате случая да ги помолите да потвърдят акаунта си в Nitrous (ако сте направили акаунт с техния имейл), а може би и да завържете първоначален разговор.

Ако нямате опит с Ruby до момента

Не е проблем ако имате опит като уеб програмист, но до момента не сте се занимавали с Ruby. Може да направите следното:

Ако по време на събитието срещнете нещо неясно – “admit your ignorance”. Търсете в Google или питайте други инструктори. Пишете на екипа при въпроси.

Допълвайте ръководството

Повече от добре дошли са всякакви предложения за допълнения и корекции в това ръководство. Пуснете pull request в GitHub.