Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 67 reacties
Bron: Pittsburgh Business Times

Gamemaker Electronic Arts gaat Carnegie Mellon University helpen diens educatieve Alice-programmeertaal verder te ontwikkelen. Met de taal wordt ernaar gestreefd kinderen op speelse wijze met programmeerbegrippen kennis te laten maken. Algoritmes worden in eerste instantie gepresenteerd als 'verhalen' waarin gebeurtenissen in vastgestelde volgordes kunnen gebeuren en zaken waar of onwaar kunnen zijn. Een programma wordt samengesteld met behulp van een drag-and-drop-interface, waarna de 'uitkomst' ervan als animatie op het scherm wordt gedraaid. Initieel worden er inderdaad 'verhaaltjes' geïmplementeerd; geavanceerde onderwerpen zoals recursie kunnen echter ook aan de hand van de taal worden onderwezen. De programmeertaal wordt op circa honderd scholen in de VS gebruikt, om leerlingen van lagere en middelbare scholen van hun eerste programmeerervaringen te voorzien. Studies zouden uitwijzen dat Alice-ervaring een voorsprong oplevert wanneer leerlingen in het hoger onderwijs informaticavakken krijgen. Daarnaast zou het bij meisjes meer interesse voor programmeren opwekken. De bijdrage van Electronic Arts moet voorkomen dat leerlingen de interesse in de software verliezen; de gamemaker zal er zorg voor dragen dat de gebruiker een 'visueel stimulerende en robuuste' grafische ervaring voorgeschoteld krijgt.

Alice GUI
Moderatie-faq Wijzig weergave

Reacties (67)

Heel goed om zo de basis van het programmeren te leren. Vraag me alleen af hoe dit programma de leemte opvult tussen het eenvoudige (vast volgorde, geen complexe uitzonderingssituaties, geen zorgen om performance vs complexiteit) en het complexere programmeren (geen vaste volgorde, tig verschillende uitzonderingssituaties die bovendien nog van elkaar afhankelijk kunnen zijn, meerdere processen die verschillende taken uitvoeren, etc....). Het komt mij namenlijk erg bekend voor van school: een dik boek over hoe je vensters kunt slepen, hoe praktisch de IDE is en alles wat automatisch gegenereerd wordt. En dan opeens een boek waarin ervanuit wordt gegaan dat je weet hoe geneste lussen in elkaar steken en dat je logischer wijze de syntax hebt begrepen.

Vind het heel mooi drop&drag omgevingen, maar wat mij betreft leren ze de kinderen programmeren bij de basis (laat ze maar lekker beginnen met Assembly/machine-code). Je leert een kind toch ook niet lezen door hem spelender wijs bekend te maken met tekst-strukturen, maar gewoon door het good old AAP,MIES,NOOT.
Beginnen bij machine code is dan wel een beetje cru.

Beter is het te beginnen bij talen die ervoor bedoelt zijn zoals Pascal (of hedendaags misschien gemakkelijker Delphi) en Basic (bijvoorbeeld Visual Basic).

Ik denk dat je bij kinderen kunt beginnen met een taal als Alice en daarna kunt overstappen naar zaken als Pascal of Basic.

Wanneer je uitgespeeld bent in Pascal/Basic kun je verder met bijvoorbeeld Java, C en bijvoorbeeld PHP.

Ik ben het ook niet helemaal met je eens dat je kinderen moet leren lezen door aap noot mies te leren. Dat is een beetje een ouderwetse aanpak.

Ik heb zelf leren lezen door veel TV te kijken, in die tijd was alles Engels en ondertiteld, vandaar dat ook mijn Engels erg goed is (of liever gezegd, mijn Amerikaans ;) ). Doordat je dezelfde informatie op 3 manieren binnen krijgt (beeld, audio en tekst) leer je super snel lezen en de taal.

Gezien nu tegenwoordig alles Nederlands is op TV hebben kinderen van nu dat voordeel niet meer. Dus is ervoor gekozen om een spelende wijs methode te gebruiken om zaken te leren. Tot nu toe blijkt dat best goed te lukken.
Ik was ook ooit eens een keer in assembly begonnen met programmeren(ik kan het nu bijna dromen). Omdat assembly
mijn eerste programmeertaal was had ik helemaal geen moeite met pointers in C(ja toen was ik iets van 11 jaar), terwijl de oudere coders klaagden over die pointers(ze waren te moeilijk). Ik denk dat als je zo vroeg mogelijk assembly leert, dan snap je andere programmeertalen veel gemakkelijker.
Mensen die ooit in assembly gecode hebben zijn inderdaad blijkbaar de enige mensen die volledig begrijpen wat een pointer is en hoe hij werkt.

Al diegene die dat niet snappen kunnen vaak wel code schrijven maar weten bijna nooit 100% waar ze mee bezig zijn.

Dat is mijn ervaring toch de laatste jaren.

Zo ken ik bijvoorbeeld een dik betaalde programmeur die aan een groot CMS project werkt, maar niet eens weet hoe je bits kan en moet shiften moest hij logische operaties willen doen. Die man denkt dat je perse een hele byte nodig hebt om flags te zetten, en begrijpt niet dat ik 8 flags in een byte kan zetten indien nodig...

Mja... vooruitgang zeker ?
Het gaat hier niet over 'venstertjes slepen' en UI-tjes bouwen. Het gaat hier over een speelse manier om algoritmen te bouwen. Je verhaal slaat darom de plank een beetje mis. Deze applicatie is juist om de leemte tussen de beide dingen die jij noemt op te vullen.

Puur plat gezegd zijn de assembly opdrachten nu blokjes geworden die je kunt stapelen. Je if tik je niet in, maar je sleept een keuze erin en hangt op de beide verschillende plaatsen de twee verschillende uitkomsten.

Kinderen leren inderdaad nog niks over complexiteit en performace en NP-Compleet problematiek, maar bij de taallessen in groep 3 4 en 5 worden pleonasmes toch ook nog niet behandeld? Wat kinderen wel leren is hun probleem rationeel te benaderen en systematisch hun probleem op te delen in kleine stapjes om vervolgens deze deelprobleempjes stuk voor stuk op te lossen. Met deze basis kun je vervolgens verder werken en eens over complexiteit na gaan denken.

PS: Ander mooi voorbeeld is hoe je lego mindstorms programmeerd.

@ hieronder: Ik bedoelde juist de orginele drag & drop applicatie. Die zit educatief technisch gezien prachtig in elkaar.
met NQC :Y) pseudo-C code i.p.v. de originele mindstorms drag & drop applicatie (die overigens harstikke toegankelijk en heel goed is)
Leren lezen gebeurt al jaren op een veel speelsere wijze dan die jij opnoemt.

Overigens, de correcte volgorde is aap, noot, mies :+
Hij heeft het in RPN genoteerd.
Machine code? Heb je het ooit zelf geschreven? Het is ongeveer het moeilijkste wat er is om te schreven.

Géén abstractie, alles moet je zelf doen
Géén echte debuggers op wat mooie tooltjes na, maar je informatie haal je uit te registeres en uit de bits in het geheugen
Géén type chekking
Géén echt logische commando's

En zo kan ik nog wel even door gaan. Nee assembler leer je niet even, daarvoor moet je eerst begrijpen wat een cpu doet.
Zo te zien heb jij nooit echt in assembly geschreven. Assembly is niet moeilijk. Je kunt het beste beginnen bij de intel 8086 processor en zo langzaam opbouwen naar i686 via
intel 386. Als je alles een beetje abstract bekijkt is het leren van hoe een cpu werkt helemaal niet zo moeilijk. Je moet alleen logisch en in stappen denken en assembly is geen probleem meer, wel is het veel meer programmeerwerk. Bovendien zijn alle andere programmeertalen gebaseerd op assembly.
Ik heb gecoded in PowerPC Assembly en x86 assembly en heb een emulator voor een theoretisch cpu geschreven.

Daarnaast je noemt "als het abstract" bekijkt. Dat is nu juist het punt.. Dat leer je niet zomaar
Ik heb van 12 tot ongeveer 18 jaar puur assembly geprogrammeerd op een MC68000 machine. Ondertussen programmeer ik al sinds enkele jaren Java (C/C++ heb ik ook wel wat gedaan alleen aan de wildgroei van bibliotheken en de komische syntax was ik daar niet echt gemotiveerd.) Ik ben ondertussen 29 en heb dus zo ongeveer 18 jaar programmeer ervaring. En ik weet dus dondersgoed dat mensen uit mijn generatie het programmeren zichzelf hebben bij gebracht, en ik denk dat degene die de tijd hebben genomen om zich in een 'lagere' programmeertaal zoals Assembly/Machine-code te verdiepen een beter begrip hebben voor wat precies OOP is. Er zullen vast ook programmeurs zijn die door C (en het verschil met C++) een goed begrip hebben gekregen van OOP en misschien zullen er wel mensen zijn die door deze grafische omgeving een gevoel voor OOP ontwikkelen (ik kan het mij alleen niet voorstellen).
Het lijkt een beetje op LOGO dat schildpadden gebeuren :)
Dus EA gaat eigenlijk alleen een mooie front-end leveren?

<sarcasme>Ze kunnen die kinderen beter de Indisch taal leren, als ze in de IT willen werken.</sarcasme>
De voertaal in het Indische bedrijfsleven en de overheidssector is er gewoon Engels. (de bevolking spreekt overwegend Hindi, 30%)
Waar is de tijd gebleven dat jongeren nog onschuldig in (MSX-)Basic leerde programmeren. :Y)
Ik moet zeggen.. dit is een positieve ontwikkeling.. alleen jammer dat het een aantal jongere generaties heeft overgeslagen. (hiermee bedoel ik dat een simpele programeertaal na de MSX niet meer echt voorhanden was)
Basic, dat was idd ook mijn eerste ervaring... weet ik nog goed:

PRINT Hello World

was mijn eerste regeltje code... ongelovelijk toen er ook daadwerkelijk "Hello World" op het sherm verscheen!

Ik denk dat EA's involvement met deze taal kinderen zeker extra zal stimuleren, aangezien vooral een beetje graphics het nog speelser zullen maken.
Wat is dat toch altijd met dat "Hello World"?
Dat moesten mij ook doen onder Delphi.
Kan dat woord zo langzamerhand wel klieven :)

De code die je nodig had voor Delphi heb ik waarschijnlijk al verdrongen.
Trouwens, Delphi is helemaal niet moeilijk om te programmeren... (als je maar geen typfouten maakt he ;) )
Hello World op je scherm toveren is net iets als gas geven bij een auto, als je dat niet kan houdt het gauw op ;)
Wel, als je in plaats van "hello world" , TETTEN zet. En dan neemt de docent uw scherm over en laat dit via de projector aan de hele aula zien, dan maak je uzelf populair voor de rest van het jaar...
Delphi is niet moeilijk, maar je kunt het in ieder geval wel zo moeilijk maken als je zelf wilt ;)
Nou, jouw commando levert niet meer op dan:
0 0
(of een syntax error, afhankelijk van je Basic interpreter).
MasterInstinct geeft wel de juiste versie, al is die Screen 13 natuurlijk niet nodig (en erg systeem afhankelijk, msx geloof ik? Of BBC?) ;)
@Rembert: Dat is QBasic. Daar ben ik zelf ook in begonnen. Fantastisch gewoon :)
Ok, ok, ik was de aanhalingstekens vergeten... :r

Ik typ trouwens nog steeds weleens CLS i.p.v CLEAR in de Linux Bash... werkt niet echt...
Screen 13: CLS
Print "Hello World!"

End

Kan het idd nog dromen, basic is nog steeds mijn favoriete taal, ook al gebruik ik het al jaren niet meer. zal wel nostalgie zijn :)
Hmmm ik was begonnen in de DOS editor..
edit Autoexec.bat
echo off
echo Pa ik wil meer zakgeld

of zoiets :)

Nou is dat niet echt een progtaal maar je kon er toch aardig wat leuke dingen mee.
Hmm... doet mij weer denken aan de tijd van Delphi (wat ik op school heb gehad :S)
Ik moest het doen met turbo pascal.
Ja, en wij van het Nova College (ICT-Academie) komen niet verder dan PSP en HTML + basic java.

Ben jaloers op jullie :o
Ja, Turbo Pascal heb ik ook wel gehad, maar dat is nog langer geleden. Ik heb nog steeds last van dat blauwe achtergrond kleurtje. (hoewel Microsoft daar mooi mee insprong door ook gebruik te maken van blauwe scherpies ;)
Turbo pascal is inderdaad een lange tijd populair geweest op scholen.
Verder hadden we les in gwbasic en cobol en het besturingssysteem cp/m
Dit alles op een commodore of een exidi computer.

Ik vind het initiatief ontzettend goed om kinderen net als landentalen ook 'een' computertaal te leren wat makkelijk te begrijpen was.

Maar hoe moet ik alice zien?
Ik heb bij mijn PDI modulen ooit wel eens een programma gehad om modulair te leren programmeren is dit van het zelfde soort?
Je geeft kinderen wel een heel verdraaid beeld van wat programmeren eigenlijk is. Ze zullen denken dat je bij programmeren beeldend creatief kunt zijn, dat het allemaal sleur&pleur is. De realiteit is helaas veel harder, mochten die kids daar in hun toekomst mee te maken krijgen...

Maargoed, dat is met zoooooooveel kinder-dingen zo.
Maar voor die generatie is dat ook waarschijnlijk gewoon waar en is programmeren sleur-en-pleur. Het gaat tenslotte om de achterliggende (business) logica, of je dat nou in VI intypt, of met behulp van een grafische omgeving, dat maakt niet uit. Nu al zie je een verschuiving naar visuele tools om je business rules te modelleren. Kijk maar eens naar ER/Studio (http://www.embarcadero.co...erstudio/erdatasheet.html), die kiddo's die met Alice geleerd hebben zullen dit wel begrijpen denk ik.
Met dat pakket definieer je alleen regeltjes, maar net als bij zoveel structurele definities: het is geen programmeren, noch kun je er alle mogelijke situaties in afvangen.
Helemaal niet, het gaat om de logica.
Het is de basis waar het om gaat, zo leren de basics van hoe dingen werken, niet van hoe het in mekaar zit of hoe je het onderde motorkap in mekaar zit.
Maar als ze dit snappen kun je het gaan uitbreiden naar taal leren en schrijven, en complexere dingen doen.
De drempel om te beginnen met leren wordt zo een stuk lager, en dat is het hele idee.
Dit is zeker goed, zo leren kinderen al vroeg wat features en objects zijn.
Een zeer goede basis :)

Ik snap alleen niet dat EA (games) hier aan mee doet.
En ze hebben ook standaard de beschikking over Special Effects. En ook handig: bugs! Gelukkig maar 12 ;)

Een leerzame en realistische omgeving, voor de kleine beginnertjes.

/edit: laatste zin wat aangepast (licht sarcasme, was niet zo bedoeld).
PR, en met een beetje mazzel wat beter geschoolde programmeurs in de toekomst.
Battlefield 3 .. designed by kids for kids :7
Battlebox 3: Maxi Cosi Edition
voor de mobiele generatie?
Sjeeeeeeee.....

Ze zijn wel opweg.

Wordt dit soort kinderen, afgezien of dit gaat werken of niet, niet een probleem voor de beveiliging van onze pc-tjes? De kids krijgen het er vanaf de ' geboorte ' in gegooid.

We staan nu al niet meer verbaasd, als een 14 jarige ergens inbreekt.......

Wat zien we over 5 jaar? 4 jarige kleuter breekt in in Pentagon ofzow ?

Tel er 5 jaar bij op, en dat kiddo ontwerpt zijn eigen zelf-denkende chip. (beetje Terminator achtig maar ja...)

Programmeren moeilijk? Welnee, je sluit je synapsen aan op de seriele kabel van je pc, en je denkt je programma bij elkaar. Inclusief nesingen, ingewikkelde loops, en je denkt de bugs gelijk weg.... :Y)

Mjjaaa......en werken? Je laat gewoon je clone naar zijn werk(jou werk) gaan..

Deze 'cloon' gaat weer werken....

Zucht....en toen de wekker.
Je bedoelt dat je er nu net achter komt dat jij net zo goed achterblijft als je ouders dat deden, en dat dat het lot is van iedereen, en dat jij als kind dus wel wat aardiger had kunnen zijn over het computeranalfabetisme van je ouders?

:D
Een positief aspect van dit project lijkt me dat ze jongeren onmiddelijk object geörienteerd gaan laten programmeren. Ik weet nog dat er tijdens mijn studies veel leeftijdsgenoten problemen hadden met dit aspect.

Het is geen kwestie van het te begrijpen, het is een kwestie van ermee te leren werken en het 'framework' zo efficiënt mogelijk op te bouwen.
Dus door Objecten grafisch af te beelden snap ik opeens wat Objecten zijn. Met andere woorden: ik loop in het dagelijks leven over straat zie daar auto's, huizen, bomen en andere Objecten. En spontaan wordt het me duidelijk dat ik auto's kan zien als Objecten met hun eigen eigenschappen. Bovendien wordt het me opeens duidelijk dat een BMW een bepaald type auto is dus een soort uitbreiding van het type auto. Bovenstaande kan ik me nog enigszins voorstellen, maar de vertaling in Computer-objecten blijft volledig onduidelijk. Bovendien moet ik me er wel mentaal mee bezig gaan houden om te beseffen dat Huizen,Auto's,etc.. objecten zijn, anders blijven het gewoon Huizen en Auto's. Tevens blijft het voor de gebruiker onduidelijk wat nu precies OOP is. Objecten bestonden namenlijk theoretisch ook al voor OOP (iemand heeft het beestje gewoon een naam gegeven).
Vaag. EA heeft helemaal geen programmeurs in dienst. EA is alleen maar een uitgever (weliswaar de grootste, maar alla).

Dus het is waarschijnlijk meer zo dat EA er een aantal programmeurs naartoe stuurt van de programmeursteams die een exclusief contract met EA heeft. En dat EA vervolgens zijn naam er aan koppelt en er goede sier mee maakt.
EA heeft weldegelijk programeurs in dienst. Tenzijn je met EA alleen het publisher deel of het bedrijfs management bedoelt. "In" EA zitten een behoorlijk aantal development teams, vroeger waren dat game studios die als dochter bedrijf functioneerden. Hetzelfde geld voor Ubisoft, THQ, Midway, etc.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True