Codecademy – learn to code!

Какво е Codecademy? Яде ли се, пие ли се, пипа ли се? Мисля, че авторите са го описали доста добре, така че ще си позволя да ги цитирам:

Codecademy is the easiest way to learn how to code. It’s interactive, fun, and you can do it with your friends.

Сега… тва you can do it with your friends можеха да го спестят, ама айде…

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

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

В момента на разположение имате уроци само за JavaScript, но в бъдеще се очакват такива за Ruby и Python.

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

Къде е забавната част? Ако сте геймърче и ползвате Steam, знаете за така наречените acheivments, които реално погледнато са нещо като допълнителен тип “мисии” в игрите и при изпълнението им получавате… лично удовлетворение. Примери: Убий 10 врага с еди-кое-си-оръжие и един изстрел; Мини това ниво на еди-коя-си трудност, заобиколи 5 бели заека и намери 3 кокошки и т.н. Колкото и елементарно да звучи това всъщност обогатява доста геймплея и отделно, че вкарва няколко часа допълнително игрово време.

В Codecademy има нещо подобно, с малката разлика, че не се налага да правите някакви специални подвизи. Тук, при решаване на дадено упражнение ви се дават определен брой точки, а при правилно решение на цял урок, получавате badge, който с гордост може да си наблюдавате в секцията Acheivments. Всички тези неща се тракват в реално време и може да ги следите на лентата в горната част на екрана. И тъй като хората обичат да следят прогреса си, обичат точките, обичат да събират ненужни неща и обичат да бъдат възнаграждавани, това нещо работи! Стимулира и определено уроците не доскучават.

Мисля, че тук е подходящият момент да вметна, че самите уроци се пишат от потребителите. До приятния бутон Learn има друг – Create, чрез който може да спомогнете за развитието на къмюнитито по няколко начина – да напишете урок за определена тема, която авторите са сметнали за важна или да го карате на freestyle. Аз честно казано още не съм се пробвал дори да проуча целия процес, но смятам като завърша всички налични (за момента) уроци, да си пробвам шанса.

И след всичките положителни неща, които изтъкнах, ред е на не толкова приятните. Първо, някои упражнения са написани убийствено малоумно. Първоначално си мислех, че автора нарочно ме кара да отгатвам половината условие, но после разбрах, че просто не си е свършил работата (че и тези дето одобряват). Наистина понякога просто не можех да разбера какво се иска от мен и губех доста време в догатки. Вторият проблем е дори по-досаден. На няколко места ми се случи да намеря правилното решение, но въпреки това системата да не го отчита. В тези случаи ми се наложи да се допитам до Q&A секцията и проблемът не се оказа в мен, а в точно определените неща, които трябва да напиша. Един бърз пример. В една секция с 8 упражнения съм на предпоследното и решението ми е правилно, но не го отчита като такова. Влизам аз да проверя за какво иде реч и какво да видя – оказва се, че трябва да използвам точно определено име на променлива, което не е указано в условието на упражнение номер 7, а в това на номер 3 примерно. За щастие броят изцепки във вече над 600-те упражения, които направих е наистина много малък, но според мен с тези неща шега не бива, защото това са уроци и все пак хората се водят по тях. Във повечето случаи аз бях убеден в решението, но имаше ситуации, в които правих точно това, което ми се казва, а нещата не се получаваха и това е кофти.

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

За финал два линка, които могат да ви бъдат полезни – Codecademy Labs е място, на което може просто да си пишете някакъв код, а Codecademy Glossary е малка и спретната документация.

Това е от мен & may the code be with you!

Contact
captcha