Tag recensies
Leren leren op het werk
De mens is een lerend wezen. Wie zijn ogen ervoor openhoudt, ziet dat we haast elke dag wel een nieuw inzicht opdoen. Maar zodra men aan het werk gaat, lijkt een groot deel van de mensen die lerende houding thuis te laten. Sterker nog, goedbedoelde leerinitiatieven worden van tijd tot tijd zelfs met vijandigheid begroet. Waarom? Zijn we toch niet zo lerend als je op voorhand zou denken?
De vraag achter de vraag ontdekken
Requirements engineering is… moeilijk. Heel moeilijk. Het achterhalen van de systeemvereisten vraagt een enorme inspanning van requirementsanalisten. Het op te lossen probleem is immers altijd vager, minder gedefinieerd dan de absolute precisie die software verlangt. Analisten moeten belanghebbenden de juiste vragen weten te stellen om een vertaalslag te kunnen maken van business naar IT. Gelukkig hoeven ze dat niet alleen te doen. Handboek requirements van Nicole de Swart is een onmisbare gids in dit proces.
Van rader in het geheel naar bron van talent
Hoe ziet een bedrijf haar personeel? Een hint van een antwoord zit ‘m in de daaraan toegewijde afdeling: human resource management. Personeel is een resource, een hulpbron - net als het IT-systeem, maar dan menselijk - die gemanaged moet worden. Die metafoor heeft enkele interessante consequenties, die inderdaad regelmatig haar uitwerking vinden in de praktijk: medewerkers zijn raderen in het geheel, ze moeten op hun prestaties beoordeeld worden en kunnen eenvoudig vervangen worden wanneer ze een negatieve impact hebben op dat geheel. Die zienswijze is hopeloos achterhaald, betoogt Rob van den Berg in Futureproof talentmanagement.
Samen je ontwikkel-ik ontdekken
Praten over je eigen leer- en ontwikkelingsproces is een moeilijke opgave. Maar weinig mensen hebben de taal om hun ideeën daarover uit te kunnen drukken - als ze er überhaupt al een idee over hebben. En de kans dat ze die ideeën, en de bijbehorende taal, in hun eentje zullen ontwikkelen, is nagenoeg nul. Je hebt anderen - andere mensen, perspectieven, leerdoelen en -stijlen - nodig om gestalte te kunnen geven aan je eigen ontwikkeling. Maar hoe ga je het gesprek aan als je er de taal voor ontbeert? Daar hebben Manon Ruijters, Gerritjan van Luin en Robert-Jan Simons Ons ontwikkelen ontward voor, eh, ontwikkeld
Succesvol falen
Van fouten kun je leren, zegt men. Daaruit volgt: hoe meer fouten je maakt, hoe meer leerkansen je creëert. Eigenlijk zou je het maken van fouten dus moeten vieren. Hoe meer er mis gaat, hoe meer je leert – en hoe meer je leert, hoe minder er mis zal gaan. Toch is dat niet hoe het in veel organisaties werkt. Daar wordt er hard gewerkt om fouten te voorkomen. Erger nog, medewerkers die de mist in gaan, worden afgerekend op hun misstappen. Dat maakt hen voorzichtig, conservatief. En daardoor staan ze hun eigen groei – en die van de organisatie – in de weg.
Hoe hersenwetenschap programmeurs kan helpen
Er is in de vakliteratuur over softwareontwikkeling geen gebrek aan gepeperde meningen over hoe goede code eruit dient te zien. Goede code is naar hun mening eenvoudig, bijvoorbeeld, of testbaar of uitbreidbaar. Je zou kunnen zeggen dat hun redenen erop geënt zijn software zo goed mogelijk te kunnen onderhouden. Wie dat zou moeten doen en hoe ze dat aan moeten pakken, daar zijn de meningen minder gepeperd over. Veel professionals lijken code te beschouwen als iets wat op zichzelf staat, zonder veel oog te hebben voor de programmeurs die dat onderhoud zouden moeten plegen. Dat geldt niet voor Felienne Hermans. In The Programmer’s Brain behandelt ze vragen als: wat gebeurt er in het brein als je code leest? Hoe leer je zo efficiënt mogelijk nieuwe programmeertalen en -concepten? En hoe kun je deze kennis inzetten om betere code te schrijven?
Is kunstmatige intelligentie wel écht intelligent?
Kunstmatige intelligentie (ook wel artificiële intelligentie of kortweg AI genoemd) heeft de laatste jaren een enorme opmars gemaakt. AI neemt een steeds prominentere plek in in het dagelijks leven: van vertaalmachines tot gepersonaliseerde advertenties tot gerobotiseerde obers. Hoog tijd dus om filosofisch op dit fenomeen te reflecteren. Wat is AI? Kunnen computers echt denken? Wat is denken überhaupt? En wat zijn de ethische en politieke implicaties van de steeds grotere rol die AI in de samenleving speelt? Deze en andere vragen komen aan bod in Guido van der Knaaps Van Aristoteles tot algoritme: Filosofie van kunstmatige intelligentie.
De ontwikkelaar als chirurg
Working Effectively with Legacy Code van Michael Feathers staat vol met adviezen waar je cleancodershart een slag van overslaat. Vrijelijk raadt Feathers je aan encapsulatie uit het raam te smijten of onhandelbare methods zomaar tot class te promoveren. Zijn inzichten gaan lijnrecht in tegen alle richtlijnen om goede, onderhoudbare code te schrijven. Het boek is zonder twijfel een aanrader voor elke softwareontwikkelaar.
Communiceren naast coderen
Veel programmeurs denken dat hun werk begint en eindigt bij het schrijven van code. Helemaal onterecht is dat niet, want het is precies die vaardigheid die hen hun baan heeft opgeleverd. Maar er komt veel meer kijken bij het ontwikkelen van software. Denk bijvoorbeeld aan: bedenken wat je gaat bouwen en hoe je dat gaat doen, het beoordelen van de code van je collega’s, en presenteren wat je hebt opgeleverd aan stakeholders. Zulke taken hebben een gemene deler: communicatie.
Hoe machines leren
Met de opkomst van kunstmatige intelligentie en Machine Learning, verschijnen er ook steeds meer toolkits voor softwareontwikkelaars om met deze technieken aan de slag te gaan. Deze bieden handvaten waardoor ontwikkelaars op een laagdrempelige manier kennis kunnen maken met deze techniek. Zulke toolkits schermen echter - met goede reden! - veel van de achterliggende complexiteit af voor hun gebruikers. Ontwikkelaars die zich daarin willen verdiepen, zouden zich kunnen wagen aan Hui Jiangs Machine Learning Fundamentals: A Concise Introduction.