Lyhyt vastaus: kyllä! Ainakin ensimmäiseksi kosketukseksi koodaamiseen. Mutta jo puolentoista kurssin jälkeen muutama asia ärsyttää.
Olen nyt ylittänyt Codeacademyn Python-kurssini puolen välin. Touhu ei ole menettänyt makuaan, vaikka nyt työpäivätkin ovat täysiä (loma odottelee jo ihan nurkan takana). Itse kurssista en uskalla vielä tehdä kokonaisarviota, mutta olen jo oppinut tykkäämään tietyistä asioista Codeacademyn systeemissä ja ärsyyntymään suuresti joistain toisista.
Olen käynyt siis HTML-kurssin ja 53 prosenttia Python-kurssista. Niiden perusteella olen vakaasti ja ihan oikeasti seuraavaa mieltä:
Plussat
- Homma toimii selaimella. Ainakin aluksi sitoutuminen johonkin yhteen kieleen ja sen kehitysympäristöjen lataaminen omalle koneelle tuntui – ja tuntuu vähän vieläkin – pelottavalta. Selaimella taas harjoittelu käy millä tahansa koneella, ja aina voi jatkaa siitä mihin jäi.
- Etenemisestä saa merkkejä! Merkit on hyviä motivaattoreita, sehän me jo partiossakin tiedetään. Codeacademyssä saa säännöllisesti merkkejä, kun on suorittanut osioita. Vähän kyllä miinusta siitä, että merkit on kaikki ihan samannäköisiä. Motivoituisin paremmin esimerkiksi väreistä ja erilaisuudesta, niin kuin Tripadvisorissa.
- Vakavammin: järjestelmä on pelillinen. Merkit ovat vain osa sitä. Muutenkin opastus on aika pelillistä, vaikka ei ollakaan ”ohjaa kilpikonnaa” -tasolla.
- Voi aloittaa, vaikkei tietäisi, mistä. Järjestelmä suosittelee aina jotakin seuraavaa kurssia. Ihan n00beille ensikertalaisille se suosittelee käymääni HTML- ja CSS-peruskurssia, mikä ei ole huono suositus ollenkaan. Itselle tarkemmin räätälöity suunnitelma maksaa.
- Järjestelmä on pedagogisesti hyvin mietitty. Tai jos ei hyvin, niin minulle sopivasti. Ehdin tosi usein kysyä ”no miksi toi nyt noin muka toimii”, ja sitten siihen vastataan heti seuraavaksi. Oikein hyvä.
- Ohjeet ovat konkreettiset. Melkein jokaisessa osatehtävässä on minusta ollut hyvät ohjeet, jotka on kirjoitettu niin, että n00b oppii myös termejä käytössä.
Miinukset
- Koodin tarkoitus ei selviä. Ainakaan kovin nopeasti. Se johtuu siitä, että menee tosi pitkään, ennen kuin missään selitetään, miksi haluan käyttää oppimaani koodia ja millaisessa tilanteessa. Siis esimerkiksi miksi minä muka haluaisin laskea jakojäännöksiä? (Meni aika kauan ennen kun sille oli mitään käyttöä missään koodissa.) Muitakaan kiinnostavia taustoja, kuten mitä koodaus on ja miten eri kielet suhtautuvat toisiinsa, ei selitetä kursseissa. Ehkä selitetään jossain.
- Läpitunkeva ansaintalogiikka. Pitäähän palvelun jostain rahansa saada, mutta mitä pidemmälle pääsee, sitä enemmän ja näkyvämmin puffataan maksavaa sisältöä. Vaikeutuvien tehtävien myötä mainostettavan henkilökohtaisen tuen voi onneksi kiertää Googlella, mutta huomasin, että Python-kurssin lopputehtävä kuuluu vain maksulliseen pakettiin! Pah! Juksausta, piti olla ilmainen koko kurssi! 20 dollaria kuussa on aika paljon, joten etsin ehkä jostain netistä oman lopputehtävän kun aika on.
- Vauhdikas eteneminen ja johdattelevat kysymykset ovat huono kombo. Kurssista voi nimittäin selvitä tosi löysäillen, kun kysymykset johdattelevat kirjoittamaan oikeaa koodia ilman, että tajuaa, mitä tekee. Pari kertaa olen sortunut helppoon eli vain kirjoittamaan mitä sanotaan selvittämättä, mitä se koodi oikeasti tekee, ja sitten olen parin seuraavan kappaleen päästä ollut pahassa lirissä. Kertailua ei nimittäin juuri harrasteta, ainakaan säännönmukaisesti. Parempi vaan jäädä vähän pyörittelemään tehtävää, kunnes oikeasti arvelee tajunneensa mitä tuli tehtyä!
- Englanninkielisyys. Minä osaan englantia, mutta ohjeet ovat niin konkreettiset ja tiiviit, että niissä jokainen sana merkitsee pirullisen paljon. Ei siis riitä että tajuaa melkein kaiken (mikä riittää vaikka tenttikirjoissa erinomaisesti!), vaan pitää tajuta ihan kaikki, tai koodi ei toimi ja jumissa ollaan. Onneksi on nettisanakirjoja!
- Tämä johtaa myös siihen että opin koodaamaan Pythonia englanniksi. Se itse kielikin perustuu englantiin niin ei siinä mitään, mutta jos opettelisin tätä vaikka koulussa, oppisin termit myös suomeksi. Silloin voisin ehkä joskus keskustella suomalaisten ohjelmistokehittäjien kanssa säilyttäen omanarvontuntoni. Puhuvatko oikeat koodarit booleaneista vai totuusarvomuuttujista? Väärä arvaus keskustelussa paljastaa itseoppineen n00bin nolosti heti…
Johtopäätös
Codeacademy on miinuksistaan huolimatta tosi hyvä kohta aloittaa ja helposti lähestyttävä. Oikeasti hyvä ensimmäinen ohjelma! 20 dollaria kuussa syväoppimisesta voi varmaan myös olla kannattava sijoitus, mutta minusta se on paljon. Kun perusteet ovat hanskassa, luulen, että muut menetelmät ovat antoisampia.
Minulla perusteet eivät kuitenkaan vielä ole hanskassa. 47 prosenttia Pythonin peruskurssia on vielä jäljellä ja monta muuta kiinnostavaa peruskurssia olisi tarpeen, joten vielä en ole lähdössä akatemiasta mihinkään.