Влязох в хакатон само с 13 дни опит в кодирането. Ето какво научих.

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

И така, когато видях публикация във Facebook групата freeCodeCamp Las Vegas за StartUp Weekend, тя привлече вниманието ми.

Това име, както подсказва името, се фокусира върху стартирането на нов бизнес чрез обединяване на предприемачи, дизайнери и разработчици. Но според моя акаунт в freeCodeCamp имах само 13 дни кодиране под колана си. Коментирах публикацията. Питам дали бих се възползвал от подобно събитие въпреки липсата на знания и опит. Майк Зиетлоу, оригиналният плакат, отговори и каза, че ще спечеля, но ще трябва да работя за него.

Затова се записах за това, което смятах за квалифицирано като среща.

Когато пристигнах, с пълна увереност излязох от асансьора и продължих да вървя в грешната посока. По времето, когато намерих подходящата стая, съмнението се бе наложило. Срещата с приятелски настроени хора временно ги отхвърли. Когато се запознах с Майк, обсъдихме как мога да участвам в това събитие.

Обясних къде съм в учебната програма на freeCodeCamp. Току-що бях завършил проекта „страница на почит”.

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

Избор на екип

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

Но не исках да бъда единственият разработчик в екипа.

Така че потърсих екип, който нае и по-опитни разработчици. Случи се така, че представянето на Майк включваше изграждане на уебсайт, който да свързва предприемачите с местните разработчици в Лас Вегас. Естествено, разработчиците се присъединиха към този екип, тъй като имаха собствен интерес към продукта. Така с 5 разработчици и 2 бизнес анализатори се ражда екипът на Developers.Vegas.

Няколко неща потвърдиха решението ми да се присъединя към този екип.

Единият беше, когато се срещнахме за първи път и обсъждахме плановете си и как да се подготвим. Майк беше споменал, че в даден момент ще му трябват снимки. Надявайки се да бъда полезен и имайки опит във фотографията, се включих. Първоначално Майк с радост прие моята помощ, но след това каза „не“. Той ми каза, че този уикенд ще бъда разработчик и имам работа. Оцених това - бях тук, защото исках да се науча как да кодирам и Майк разпозна и уважи това.

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

Работа по проект

И накрая, беше време да се работи (или не). Преди това събитие цялото ми кодиране беше направено чрез редактори в браузъра в freeCodeCamp и CodePen. След разговор с екипа изтеглих VS Code.

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

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

Напомниха ми да попитам Google, когато заседна. Колкото и лесно да звучи, мисля, че има техника. Трябваше да се уверя, че задавам правилния въпрос и че намерените отговори са отговорите, от които се нуждая. По-късно разбрах, че никой не иска да върши работата, която аз трябва да свърша. Не знам достатъчно, за да разбера защо всички мразят CSS.

С напредването на събитието успях да се поуча от другите разработчици.

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

Финални мисли

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

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

От самото начало Майк беше запален по проекта си. За 1 минута, през която трябваше да представи идеята си, той прекара 30 секунди в разговор за идеята и 30 секунди в разговор за това, кого иска в екипа си. „Каменни студени убийци.“ И това станахме ние - „разработчици на SCK“.

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

Радвам се, че участвах в това събитие. Въпреки че сложи край на моята 13-дневна поредица от програмиране на freeCodeCamp, щях да го направя отново.

Препоръчвам на други да се опитат да направят същото, но не забравяйте да намерите добър екип. Аз лично планирам да отида на повече от тези събития - можете да планирате да ме видите на следващия демонстрационен ден в Лас Вегас. Дотогава ще си проправям път през учебната програма freeCodeCamp. Може би тогава, най-накрая ще разбера защо всички мразят CSS.