Programmeren is voor rocksterren

Onderstaand filmpje legt heel goed uit waarom het belangrijk is om te leren programmeren. Voor iedereen. Ja, dus ook voor u, lieve lezer! Maakt niet uit of je vier bent of veertig of vierennegentig. Maakt niet eens echt uit of je superslim bent of niet. Het maakt al HELEMAAL niet uit of je man bent of vrouw (maar dat mag geen verrassing zijn voor de ervaren ladygeek-bloglezer).

En, dit is misschien verrassend: het maakt ook niet uit of je meer houdt van computers of van mensen. Liefst van allebei! Sterker nog: de beste programmeurs houden vooral heel veel van mensen. Want hoe kan je iets goeds programmeren als je niet weet wie het gaat gebruiken en waar en waarom en waarvoor? Dat is iets wat niet-programmeurs vaak vergeten. Programmeren is een mensenvak.

Enkelen van de groten der aarde komen langs in dit filmpje: bedenkers en oprichters van Microsoft, Twitter, Facebook, Valve, Dropbox en meer. En dan snap je opeens waarom ze zeggen: “Great coders are today’s rockstars.” Over rocksterren gesproken, wist je dat will.i.am ook bezig is met leren programmeren?

Als een computer een film schrijft…

…ziet dat er ongeveer zo uit:

Even wat context: Cleverbot is een chatbot, een computerprogramma dat met mensen kan praten. Dat doet ‘ie soms best aardig, maar een menselijke intelligentie benadert ‘ie toch nog niet helemaal, zoals dit filmpje goed illustreert. Als goedgemutste blogger leek het me wel een goed idee om Cleverbot te interviewen voor dit artikel. Dat ging niet helemaal zoals gepland…

Lady Geek: Hi Cleverbot.

Cleverbot: How are you?

Lady Geek: Good, thanks. Can I write about you on my blog?

Cleverbot: I don’t know, can you?

Lady Geek: Of course I can, I was just asking if you’d be alright with it.

Cleverbot: Are you crazy?

Lady Geek: What, no, I don’t know, maybe a little?

Cleverbot: Yep, I see.

Lady Geek: So… Is that a yes?

Cleverbot: No.

…oh.

Hoe herstart je een oude computer

Vorig weekend heb ik mijn oude pc, een flinke kast van een jaar of tien oud, weer eens opgestart. Na allerlei geratel en het eindeloos opstarten van Windows XP en Ubuntu heb ik al mijn oude bestanden en oude mail eindelijk eens verzameld en op mijn nieuwe laptop gezet.

Maar de Witch is pas een écht oude computer. Het beestje weegt 2,5 ton, stamt uit de jaren ’50 en werkt op ponstape. Het heeft een team slimme mensen drie jaar gekost om uit te vogelen hoe ze ‘m in elkaar moesten zetten voordat hij aan de praat kwam. Nu doet hij het weer en kan hij bijvoorbeeld twee getallen vermenigvuldigen! …daar doet hij alleen wel ongeveer tien seconden over.

Maar: hoe gaaf! De lampjes! De radertjes! De schakelaartjes! Klik! Brrrrzzzt!

Een harde schijf vervangen, Lady Geek-style

Afgelopen voorjaar kocht ik een fantastische nieuwe harde schijf voor mijn vier jaar oude laptop: een hybride HDD/SSD. Voor wie dat niet zoveel zegt: een combinatie van flashgeheugen (zoals op een USB-stick) en harde schijf (zoals in je computer), die daardoor én snel (zoals de flash) én betaalbaar (zoals de schijf) is. Een paar maanden later kocht ik een nieuwe laptop, en ook al is die een stuk sneller dan de oude, toch miste ik mijn hybride schijf. Vanavond verving ik de één door de ander. Dat ging niet zonder hindernissen. Dit is wat er ongeveer gebeurde. Een combinatie van handleiding en detective, in 10 stappen.

(Proloog: gisteravond 22:00. Ik schroef mijn hybride schijf in een externe schijfbehuizing en kopieer ’s nachts één-op-één de harde schijf van mijn laptop naar de externe schijf met Carbon Copy Cloner.)

Vanavond 19:30. Ik zet mijn laptop uit, haal wat schroevendraaiers uit de gereedschapskast en pak de handleiding van iFixit erbij op mijn telefoon. Ik begin met het losschroeven van de kleine schroefjes onderop mijn laptop – althans, dat is de bedoeling. Ik krijg de krengen met geen mogelijkheid los.

Lees verder

Een Turingmachine van Lego

Het feit dat jij dit leest, lieve lezer, en het feit dat ik dit kan schrijven, en het feit dat ik onderstaand filmpje heb gevonden en dat jij het nu kunt bekijken, al die dingen hebben wij te danken aan superheld Alan Turing, grondlegger van informatica en kunstmatige intelligentie en codekraker tijdens de Tweede Wereldoorlog. Een belangrijke man dus:

“Alan had such a broad impact on so many aspects of computer science,” says Cerf. “The deep notion of computability is so fundamental to everything we do in computing.”

“People … have done computing for thousands of years,” says Moshe Vardi. “But the theory of computing really started in the 20th century, and Turing is one of the foremost — if not the foremost — parents of the theory of computing.”

Turing bedacht een heel simpele machine die alle mogelijke computationele operaties kan doen. Alle? Ja! Dat betekent dus dat zelfs de ongelooflijk ingewikkelde computers die jij en ik nu gebruiken, compleet gesimuleerd kunnen worden met Turingmachines.

Ter ere van het 100ste geboortejaar van Turing heeft een stelletje nerds (en dat bedoel ik in zeer positieve zin van het woord) zo’n Turingmachine gebouwd. Van Lego! En dat ziet er ongeveer zo uit:

LEGO Turing Machine from ecalpemos on Vimeo.

AI = magie

In een artikel over de geschiedenis van bijgeloof kwam ik dit prachtige citaat tegen:

all magic is necessarily false and barren; for were it ever to become true and fruitful, it would no longer be magic but science

Wat me hier meteen aan opvalt, is dat dat eigenlijk precies de definitie is van kunstmatige intelligentie: alles wat computers nog niet kunnen. Dat klinkt misschien gek, maar denk er maar eens over na. Voordat computers konden schaken, was dat een van de belangrijkste beloftes van AI. Maar nu is het gewoon een leuk trucje met algoritmes.

En zo geldt dat voor alles wat AI heeft bereikt. Robotica? Dat is gewoon engineering. Een basaal begrip van natuurlijke taal? Easy peasy. Een redelijk gesprek kunnen voeren? Meh. Expertsystemen? Laat me niet lachen. Emoties laten zien? Ook dat is geen intelligentie, maar gewoon een setje regels.

Wat we nu als AI zien – gezichtsherkenning, een natuurlijke manier van lopen en rennen, sociale intelligentie, écht goed met natuurlijke taal omgaan – dat zijn precies die dingen die mensen wel kunnen en computers nog niet. En je zal zien, ik voorspel het je, dat zodra een van die taken is opgelost, we dat niet meer zien als AI. Nee, dan weten we hoe het werkt, en dan is het dus “gewoon” een setje regels. Net als magie dus.

Rails Girls Amsterdam

Rails Girls komt naar Nederland! Rails Girls is een programmeerworkshop voor meisjes, vrouwen, dames en ladies van alle leeftijden. Toegankelijk voor iedereen, dus ook als je nog nooit van je leven iets geprogrammeerd hebt.

Zo’n dag is ontzettend belangrijk. Niet iedereen hoeft meteen full-time programmeur te worden, maar een beetje weten hoe programmeren werkt is net zo belangrijk als een beetje leren fietsenmaken (een band plakken), een beetje leren loodgieteren (een lekke kraan repareren) en een beetje leren electriciënnen (een stop vervangen).

Dus. Geef je op. Er is geen enkele reden om het niet te doen!