Home
Over System iMagazineAS/400 linksSearchContact
Vorige


Dagboek van een bijscholer

Steven Kuypers is begin 2000 bij SILVAC gestart als RPG/400-ontwikkelaar. In de afgelopen jaren heeft hij als iSeries-ontwikkelaar meegewerkt aan diverse projecten in de financiële sector. Eind 2004 is voor Steven het moment aangebroken om te starten met het bijscholingstraject voor ervaren ontwikkelaars naar WebSphere. In deel 1 beschrijft Steven waar hij gedurende dit traject tegenaan liep en hoe het is om deze omslag door te maken. Na de bijscholing gaat hij een stageproject uitvoeren om zijn opgedane kennis in de praktijk te brengen. Zijn ervaringen tijdens dit stageproject zal hij weergeven in deel 2.

Aan het einde van het vorige jaar ben ik, Steven Kuypers, begonnen aan wat wij bij SILVAC het ‘WebSphere-traject’ noemen. Dit betekent zoveel als: je stopt nu met RPG, CL, groene schermen, de F4-toets, commando’s met veel medeklinkers, en je krijgt een opleiding in Java en WebSphere. En vervolgens blijf je leren. En normaal gesproken (company policy) is er geen weg terug, oftewel: ik en de collega’s die hetzelfde traject doorlopen, zullen waarschijnlijk niet nog eens in een traditionele AS/400-omgeving worden ingezet. Een logisch uitgangspunt, want om thuis te raken in WebSphere, is toewijding en tijd nodig en daarmee is een afscheid van de AS/400 in de praktijk bijna onontkoombaar.

“Het leuke en moeilijke van Java en WebSphere zit hem met name in de objectgeoriënteerde benadering.”

Een pijnlijk afscheid
Hoe groot ook de uitdaging, soms, wanneer niemand het hoort (we doen desnoods eerst de deur dicht), verzucht ik met een aantal collega’s dat dit afscheid ons pijn doet.
Het platform waar we nu mee werken, heet Windows en dat heb ik jarenlang alleen geschikt geacht voor de computer thuis, niet voor serieuze doeleinden, of ten hoogste voor ondersteunende zaken: wanneer het werk (AS/400) klaar is, meld je dat met Microsoft Outlook (Windows).

Dit is ook een beetje ingegeven door de ervaring dat je veel problemen in een Windows-omgeving kunt oplossen door het óf nog een keer te proberen óf door eerst alles af te sluiten en het daarna nog een keer te proberen; iets wat op een AS/400 gewoonweg niet bestaat. Die is namelijk wat men noemt ‘stabiel en robuust’ en dat was wat mij betreft altijd aanbeveling genoeg. Eén van de collega’s die enige tijd terug de overstap maakte, gaf laatst nog hoog op van de ‘heerlijk duidelijke’ logging waarmee alles terug te vinden was...

Maar goed, tot nu toe had ik voornamelijk geprogrammeerd (en gedacht en gedroomd) in Asset, een tool die RPG genereert, en nu ben ik bezig met iets dat ik, eerlijk is eerlijk, toch leuker vind. Ik wilde maar even zeggen dat de AS/400 in mijn ogen niet heeft afgedaan.

De nieuwe uitdaging
Het leuke en het moeilijke van Java en WebSphere zit hem met name in de objectgeoriënteerde benadering, iets dat in huiselijke kring niet uit te leggen valt. Meestal vat ik het samen als ‘programmeren vanuit een andere gedachte, een ander gezichtspunt, een nieuw paradigma’. Dat heeft iets filosofisch, suggereert terecht een grote impact, en het mist zijn effect dan ook meestal niet. Als het zo uitkomt, voeg ik daar dan nog ‘culture shock’ aan toe en iedereen weet weer dat het in de ICT hard werken geblazen is.

Omdat ikzelf ook met vragen bleef zitten, heb ik het in mijn vrije tijd nog eens op internet gezocht en vond toen:
Bij deze zienswijze wordt de wereld beschouwd als een verzameling entiteitsoorten (objecten), die 1. bepaalde kenmerken (attributen) bezitten, en 2. operaties (methoden) kunnen toepassen.

Naar mijn oordeel is dit juist beschreven en vallen er twee dingen op. Ten eerste: een buitenstaander weet nu eigenlijk nog steeds niets. Ten tweede: ‘objectgeoriënteerd’ benadert de werkelijkheid in essentie beter dan de zienswijze (was die er?) van het programmeren in 3GL. In dit alles schuilt iets tegenstrijdigs en dat tekent weer een beetje de worstelingen op de werkplek: soms is de eerste gedachte de beste en wordt ze bemoedigend in ere hersteld door de derde gedachte, nadat ze dreigend is aangekeken door de tweede. Enfin, bent u daar nog?

Verwarring
Een ander aspect dat nog dagelijks opvalt is de naamgevingsconventie. Zo moeten namen van variabelen beschrijvend zijn en liefst uit hele woorden (geen afkortingen) bestaan. Met andere woorden, je zou een Java-programma kunnen bedenken waarbinnen een zinsnede als CoffeeCupHolder coffeeCupHolder = new CoffeeCupHolder valide en zelfs wenselijk is. Behalve dat daarmee in poëtische zin vooruitgang is geboekt, zie ik toch vooral voordeel in de compactheid van het principe. De CoffeeCupHolder is een herbruikbaar object en omdat het ooit al gecreëerd was, hoeft het wiel nu niet opnieuw te worden uitgevonden. Daarnaast zijn de variabelen van CoffeeCupHolder in feite ingekapseld, anders dan in bijvoorbeeld een RPG-programma waar de variabelen overal in de vele subroutines kunnen veranderen. Als je er even over nadenkt, is dat een kweekbed voor fouten, want deze gemeenschappelijke variabelen zijn niet beschermd tegen slecht geschreven procedures (en de procedure die de fout rapporteert, heeft hem wellicht niet zelf veroorzaakt...).

De bijscholing van ervaren ontwikkelaars naar WebSphere
Om volledig omgeschoold te worden van de traditionele ontwikkeling naar WebSphere-ontwikkelaar, dient kennis opgebouwd te worden van Java, WebSphere en Object Oriëntatie.

  • Java Programming Fundamentals
  • OO Concepts with UML
  • Java Programming Advanced
    (Sun certified programmer)
  • WebSphere Studio Workbench for Java Developers (WSAD)
  • WebSphere Introduction
  • WebSphere Application Server
    (IBM Certified Solution Developer)

Van theorie naar praktijk
Na mijn opleidingsperiode, waarbij ik soms dacht “een kind kan de was doen”, maar ook vaak “waar ben ik nu precies aan begonnen”, heb ik inmiddels mijn werkplek weer ingenomen en stel ik vast dat ik er elke dag wat bijleer. Overigens, het idee dat ervaring in 3GL een belemmering zou zijn voor het leren van objectgeoriënteerd programmeren, is niet juist. Ik zie beginnende programmeurs zich ook wel achter de oren krabben. Daarnaast is de grappige suggestie dat je eerst al je programmeerkennis overboord zou moeten gooien alvorens..., volgens mij ook niet echt afkomstig van deskundigen. Al met al blijft het dus nog even aftasten, maar de kop is er af.

Lees het vervolg van het dagboek

An unknown error occurred:
DBError
../db/reactie.db
Database file could not be found or opened

© Hilarius Media