Ruby+ Blob: Crafting an app for teaching kids computational thinking

dc.contributorAalto Universityen
dc.contributorAalto-yliopistofi
dc.contributor.advisorLeinonen, Teemu
dc.contributor.authorNiitamo, Ilari
dc.contributor.departmentDepartment of Mediaen
dc.contributor.departmentMedian laitosfi
dc.contributor.schoolTaiteiden ja suunnittelun korkeakoulufi
dc.contributor.schoolSchool of Arts, Design and Architectureen
dc.contributor.supervisorLeinonen, Teemu
dc.date.accessioned2018-12-12T13:25:19Z
dc.date.available2018-12-12T13:25:19Z
dc.date.issued2018
dc.description.abstractComputational thinking has experienced considerable growth in the last decade and its entry into K-12 education has been steadfast. Schools worldwide have begun implementing curricula based on computational thinking and programming in order to prepare students for a future with ubiquitous computing. Similarly, educational initiatives, policymakers and companies have followed suit to provide their own implementations. Coding education and computational thinking have also entered mobile apps, opening up a variety of opportunities for app developers. This production-based thesis explores the array of approaches with which computational thinking can be brought to consumer products, while at the same time promoting creativity and play. Additionally, it documents the development of Ruby+ Blob, a mobile app aimed at teaching computational thinking skills to children, aged three to eight years, through open-ended play. The design and utility of the app were informed by research conducted on the state and principles of computational thinking and by a benchmark of currently existing implementations. A literature review was carried out on the subject of computational thinking in order to present a comprehensive summary of the current state of the field. The review investigated its history, a concise definition of the term, core principles involved, educational developments and criticisms raised. Additionally, prominent existing implementations were examined to gain an understanding of the breadth of possible applications. Findings from these studies were utilized in creating the Ruby+ Blob app. The production steps were documented with comparisons to the implementations and assessments of the application of computational thinking principles. The research revealed the core concepts of computational thinking as decomposition, pattern recognition, abstraction and algorithmic thinking, and additional practices as debugging, tinkering and creating. Existing implementations benchmarked displayed a variety of approaches with trends, such as visual programming, or block code, instruction-based sequences, robotics and games, emerging. These insights were used to design, compare and assess the production.en
dc.description.abstractOhjelmoinnillinen ajattelu on viime vuosikymmenenä kokenut suurta kasvua ja sen laajeneminen peruskouluihin on ollut määrätietoista. Koulut ympäri maailmaa ovat alkaneet toteuttamaan ohjelmoinnilliseen ajatteluun ja ohjelmointiin perustuvia opintosuunnitelmia valmistellakseen opiskelijat tietokoneiden täyttämään tulevaisuuteen. Samaan aikaan, erinäiset koulutusaloitteet, lainsäätäjät ja yritykset ovat tuoneet tuotoksiaan julki. Koodausopetus ja ohjelmoinnillinen ajattelu on saapunut myös mobiilisovelluksiin, avaten eri mahdollisuuksia sovelluskehittäjille. Tämä projektipohjainen opinnäytetyö tutkii toteutuksien laajaa kirjoa, jolla ohjelmoinnillinen ajattelu voidaan tuoda kuluttajatuotteisiin, edistäen samalla luovuutta ja leikkiä. Lisäksi, työ dokumentoi tuotantoprosessin opetuksellisesta Ruby+ Blob mobiilisovelluksesta, joka pyrkii opettamaan 5-8-vuotiaille lapsille ohjelmoinnillisen ajattelun taitoja avoimen leikin avulla. Sovelluksen suunnittelu ja toiminta perustuu tutkimukseen ohjelmoinnillisen ajattelun nykytilasta ja historiasta sekä olemassa olevien toteutuksien toiminnalliseen vertailuun. Kyseiseen aihepiiriin kohdistuva kirjallisuuskatsaus suoritettiin esittääkseen kattava yhteenveto ohjelmoinnillisen ajattelun nykytilasta. Katsaus tutki alan historian, käsitteen termin yleisen määritelmän, keskeiset periaatteet, koulutusaloitteet sekä alaan kohdistuvan kritiikin. Alan merkittävimmät toteutukset käytiin myös läpi, jotta saataisiin kokonaiskuva alan laajamittaisista soveltuvuuksista. Tutkimuksen tuloksia käytettiin hyväksi Ruby+ Blob sovelluksen luomistyössä. Sovelluksen tuotannon työvaiheet dokumentoitiin toteutuksien toiminnallista vertailua ja ohjelmoinnillisen ajattelun periaatteiden arviointia hyödyntäen. Tuloksissa esiintyi ohjelmoinnillisen ajattelun konseptit: jakaminen osiin, kaavojen tunnistaminen, abstraktio ja algoritminen ajattelu, sekä harjoituksina virheiden tunnistaminen, kokeileminen ja luominen. Tutkitut toteutukset edustivat monipuolista sovellusten kattausta, jossa muodostuivat trendeiksi muun muassa visuaalinen ohjelmointi, ohjepohjaiset sekvenssit, robotiikka ja pelit. Näitä oivalluksia käytettiin tuotannon suunnitteluun, vertailuun sekä arvioimiseen.fi
dc.format.extent92
dc.format.mimetypeapplication/pdfen
dc.identifier.urihttps://aaltodoc.aalto.fi/handle/123456789/35436
dc.identifier.urnURN:NBN:fi:aalto-201812126452
dc.language.isoenen
dc.locationP1 OPINNÄYTTEET D 2018 Niitamo
dc.programmeNew Media Design and Productionen
dc.subject.keywordcomputational thinkingen
dc.subject.keywordcomputing educationen
dc.subject.keywordprogrammingen
dc.subject.keywordapp developmenten
dc.subject.keywordK-12 educationen
dc.subject.keyworddigital toyen
dc.titleRuby+ Blob: Crafting an app for teaching kids computational thinkingen
dc.titleRuby+ Blob: Mobiilisovelluksen luominen lasten tietokoneellisen ajattelun opettamiseenfi
dc.typeG2 Pro gradu, diplomityöfi
dc.type.ontasotMaster's thesisen
dc.type.ontasotMaisterin opinnäytefi
local.aalto.barcode1210032661
Files
Original bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
master_Niitamo_Ilari_2018.pdf
Size:
7.5 MB
Format:
Adobe Portable Document Format