Python Best Practices in Design

Masterclass verzorgd door: ir. Jacques de Hooge

Voor wie is deze masterclass bestemd

Je kunt goed uit de voeten in de programmeertaal Python met gebruikmaking van taalfaciliteiten zoals modules, classes, inheritance, tuples, lists, sets en dicts. Toch weet je dat er over het bouwen van professionele applicaties met deze taal nog veel te leren valt. In programma's van anderen kom je vaak het gebruik van speciale, handige faciliteiten tegen zoals metaclasses en operator overloading. Hoe zit het ook al weer precies met * en ** parameters? En properties? En hoe kun je eigenlijk een package beschikbaar maken via PyPI?

Door puzzelen kom je uiteindelijk overal wel achter, maar je zou meer overzicht willen hebben, ook over wat je nog niet weet, en je systematisch willen opwerken van Python ontwikkelaar tot Python expert.

Daarnaast is er de vraag hoe je, gegeven al die mogelijkheden, met deze taal een professionele, stabiele applicatie bouwt. Met andere woorden, hoe kom je van requirements via het doen van de juiste keuzen trefzeker tot een goede realisatie. Dit is grotendeels een kwestie van ervaring en maar gedeeltelijk in regels te vangen. Door dit proces samen hardop denkend te doorlopen en je op die manier inzicht te geven in de afwegingen die ten grondslag liggen aan gemaakte ontwerpkeuzen, help ik je je een denkwijze eigen te maken die tot goede resultaten leidt. Goed, niet alleen in de zin van een correct functionerende applicatie, maar ook in de zin van begrijpelijke, efficiënte en "mooie" code, geschikt om mee te groeien met veranderende eisen.

Wat leer je

Na afloop van de masterclass beheers je op professioneel niveau het gebruik van de volgende taalfaciliteiten in de juiste situaties:

Een aantal praktische zaken

Als je met mij een leerovereenkomst aan gaat, gaan we elkaar regelmatig zien. De vorm waarin is open. De meeste dingen gebeuren met een kleine groep, nooit meer dan 10 mensen. De kosten per les van 2 uur bedragen €60,-. Je ontvangt een factuur die je eventueel aan je werkgever kunt overleggen. Je werkt op je individuele niveau en krijgt individuele begeleiding.

De locatie hangt van de groepsgrootte af. Indien de situatie zich daarvoor leent, kan een deel van de begeleiding ook on-line plaats vinden, bijvoorbeeld als je ver weg woont of je beschikbaarheid beperkt is omdat je werkt.

Je leerovereenkomst sluit je rechtstreeks met mij, ook als je werkgever je opleiding vervolgens weer aan jou vergoed. Op die manier is de opleiding voor iedereen toegankelijk, ook als je op dit moment geen werk hebt.

Voor je met de opleiding begint, hebben we een startgesprek van een half uur. Hieraan zijn geen kosten verbonden. Afhankelijk van het verloop van dit startgesprek, hebben we allebei de vrijheid al dan niet met elkaar in zee te gaan. Mijn oordeel hierover baseer ik op jouw voorkennis en ervaring, maar ook op je bereidheid iets nieuws te leren. Hoe je tot jouw oordeel komt staat je volledig vrij. Waarschijnlijk wil je in ieder geval weten of je ik je iets te bieden heb waar je echt verder mee komt. Voel je daarom vrij om door te vragen. Tenslotte ga je hier tijd en geld in steken.

Als je een vak met succes hebt afgerond krijg je een certificaat voor dat vak en kun je een beroep op mij doen bij eventuele sollicitaties, om je toekomstige werkgever te overtuigen van je vaardigheden. Ik blijf graag bij jou en je loopbaan betrokken.

Tot slot

Als je goed thuis bent in het effectief ontwerpen met Python kun je op veel plaatsen aan de slag, maar ook als zelfstandig ontwikkelaar in minimale tijd professionele applicaties bouwen. Daarnaast leent de taal zich uitstekend voor het aanleren van effectieve ontwerp gewoonten, gebruik makend van object oriëntatie maar ook van functional programming en vooral gewoon van gezond verstand.

De Python masterclass biedt een unieke mogelijkheid het vak van software ontwerper te leren van een ervaren vakman die als lead designer aan te meest uiteenlopende applicaties heeft gewerkt. Het is me opgevallen hoeveel plezier mensen kunnen hebben in het verwerven van deze kennis. Het is alsof er, na het jarenlang consumeren van boekenwijsheid, iets op z'n plaats valt. Lopen en praten leer je door doen. Goed programmeren ook, naar blijkt. Voor velen gaat er dan een wereld open!