Lohkopohjaisista ohjelmointiympäristöistä tulee yhä useammin ensimmäinen koodauskokemus monille opiskelijoille1, kun yhä useammat koulut alkavat ottaa käyttöön ja laajentaa tietojenkäsittelytieteen kursseja ja opetussuunnitelmia. Yksi suosituimmista lohkopohjaisista ohjelmointikielistä on nimeltään Scratch2(scratch.mit.edu). Joka päivä yli 1 500 uutta ohjelmointiprojektia ladataan Scratch-sivustolle3. Itse VEXcode toimii Scratch-lohkoilla.
Yksi tärkeimmistä syistä Scratchin luomiseen on se, että monet nuoret opiskelijat pitävät ohjelmointia tekstipohjaisilla ohjelmointikielillä liian vaikeana4, koska näiden opiskelijoiden on vaikea hallita sekä kirjoittamista että syntaksia. Tämän seurauksena lohkopohjaiset ohjelmointikielet on suunniteltu jo esikouluikäisille opiskelijoille, mutta suurin osa on suunniteltu 8–16-vuotiaille opiskelijoille. Lohkopohjainen ohjelmointi, mukaan lukien VEXcode, tarjoaa useita etuja aloitteleville ohjelmoijille5.
- Luettavuus:Lohkopohjaisissa ohjelmointikielissä on komentoja, jotka ovat paljon helpompi lukea kuin tekstipohjaiset komennot.
- Muistaminen:Lohkopohjaisten ohjelmointikielien kaikki komennot ovat käyttäjän nähtävissä. Tekstipohjaisissa ohjelmointikielissä komennot on usein opittava ulkoa. Lisäksi käyttäjien on opittava ulkoa tekstikomentoihin liittyvä syntaksi. Lohkopohjaisiin komentoihin ei liity syntaksia.
- Kirjoitus/oikeinkirjoitus:Nuoremmat opiskelijat kamppailevat näppäimistön käytön kanssa. Kirjoitusvirheistä tulee kääntäjän virheitä tekstipohjaisella ohjelmointikielellä. Lohkopohjaiset ohjelmointikielet käyttävät vetämällä ja pudottamalla. Siksi kirjoitusta ja oikeinkirjoituksen hallintaa ei tarvita.
Vaikka on todistettu, että aloittelevien käyttäjien on helpompi aloittaa ohjelmointi lohkopohjaisella ohjelmointikielellä, on silti tärkeää kysyä, ovatko lohkopohjaiset kielet tehokkaita tietojenkäsittelytieteen käsitteiden opettamisessa. Lyhyt vastaus on: kyllä. Tutkimus on osoittanut, että lohkopohjaiset ohjelmointikielet ovat olleet tehokkaita tietojenkäsittelytieteen käsitteiden, kuten algoritmien, muuttujien, ehdollisen logiikan ja koodin ymmärtämisen, opettamisessa6.
Lohkopohjaisten ohjelmointikielten käytössä on tietysti joitain haittoja. Esimerkiksi opiskelijoista voi joskus tuntua, että lohkojen käyttö ei ole "aito" oppimiskokemus7. Toisin sanoen oikeat ohjelmoijat eivät käytä lohkoja. Tämä on tärkeä näkökohta pitää mielessä, mutta on myös tärkeää pitää mielessä hyvin dokumentoidut haasteet, joita tekstipohjaiset ohjelmointikielet tuovat aloitteleville ohjelmoijille.
Kouluttajina tiedämme, että työkalut, joita käytämme käsitteiden opettamiseen, muuttuvat oppilaiden muuttuessa. Matematiikkaa opetetaan K - Collegessa. Välineet, joita käytetään opettamaan ekaluokkalaista, ovat paljon erilaisia kuin työkalut, joita käytetään opettamaan junioria yliopistossa. Tutkimukset ovat osoittaneet, että lohkopohjaiset ohjelmointikielet ovat aloittelijoiden helpompia käyttää, ja ne ovat tehokas tapa opettaa tärkeitä tietojenkäsittelytieteen aiheita. Tämä ei kuitenkaan tarkoita, että opiskelijoiden pitäisi tai pitäisi aina pysyä lohkopohjaisessa ohjelmointiympäristössä. Sen sijaan parempi johtopäätös on, että yksi ohjelmointimuoto, lohkot tai teksti, ei ole luonnostaan parempi kuin toinen8. Se, kumpi sopii luokkahuoneeseesi, riippuu sekä mukavuustasostasi opettajana että oppilaidesi valmiudesta. Aivan kuten opiskelijat hallitsevat kertolaskunsa eri nopeuksilla, jotkut oppilaat hallitsevat ohjelmoinnin lohkojen avulla nopeammin kuin toiset. Mahdollisuus aloittaa tekstipohjainen ohjelmointi pitää heidät sitoutuneina ja haastavina. VEXcoden ja Textin kaltaisten työkalujen avulla voit tavata jokaisen opiskelijan heidän henkilökohtaisella opetustasolla.