-
Geslaagd!
Ik ben geslaagd! Alweer meer dan een week, maar gewoon geen tijd gehad om erover te schrijven. Op 19 juni hield ik mijn eindpresentatie en na een vrij lange ondervraging/discussie kreeg ik het eindoordeel: Geslaagd!
Een tag-wolk van mijn afstudeerverslagIk ben eens met Wordle aan de slag gegaan om een leuk plaatje te maken van mijn afstudeerverslag.
Intussen werk ik nu bijna een maand bij ISAAC en het bevalt me wel! De collega’s zijn leuk en de projecten uitdagend. Er is alleen meteen wel weer een hoop nieuws te leren… Ach ja, zo is het nou eenmaal. ISAAC wil dat ik mijn SCJP haal, dus zit ik weer lekker te studeren, en eigenlijk bevalt dat ook wel.
-
Verhuisd en wel...
Zo, alweer een heel ruime maand geleden dat ik hier schreef. Het is dan ook een erg drukke maand geweest met eerst een hoop geklus, dan een hoop geverhuis (is dat überhaupt Nederlands?) en daarna nog een hoop geschrijf aan m’n eindverslag.
Maar het eind is in zicht! Komende maandag lever ik m’n verslag in bij de afstudeercommissie. Die bestaat uit m’n begeleiders Kees Huizing en Ruurd Kuiper en daarnaast uit Huub van de Wetering, die ook m’n begeleider van de stage in IJsland was.
Daarna geniet ik nog even van drie dagen rust, om vervolgens een weekend naar Zweden te gaan voor de bruiloft van de zus van Marly, vervolgens op pinkstermaandag naar Breda te gaan en op dinsdag m’n eerste werkdag bij ISAAC te hebben! Ik ben heel erg benieuwd naar het werkende leven, zal wel even wennen zijn.
Ons huisje komt ook stapje voor stapje steeds verder af. De plinten hebben inmiddels weer twee kamers meer gevuld, nu alleen de slaapkamer nog. De studeerkamer moet alleen nog hevig opgeruimd worden.
-
We hebben de sleutels!
Gisteren was het zo ver, de dag waar we zo lang naar uit hadden gekeken. We zouden het huurcontract kunnen komen tekenen en de sleutels in ontvangst nemen. Na de formaliteiten zijn we de woning in gegaan die nu dus écht van ons is. We liepen de opleveringspunten nog even na, namen de meterstanden op, controleerden de sleutels… Alle negen (ja, we hebben NEGEN huissleutels gekregen)!
Het klussen kan gaan beginnen!
-
De Laatste Loodjes
Nog een paar weken, dan is het gebeurd met de studententijd! Het werk aan CoffeeDregs is af, het is in mijn ogen (en gelukkig ook in de ogen van m’n begeleiders) een leuke tool geworden. Ik heb twee experimenten met studenten gehouden en beiden waren erover te spreken, om verschillende redenen zelfs! Om te kunnen testen of CoffeeDregs een beetje iets is had ik wat programmeeropdrachten gegeven, waarbij ze enerzijds van een bestaand programma moesten voorspellen en verklaren wat het deed en anderzijds een niet-werkend programma moesten aanpassen.
Nu ben ik aan het schrijven aan m’n verslag. Hopelijk is het eind van de week zo ver gevorderd dat we kunnen spreken van een eerste conceptversie. Dat betekent namelijk dat ik waarschijnlijk nog in april mijn presentatie kan gaan houden en dus nog een maandje vakantie heb voordat ik bij ISAAC(Internet Strategy and Automation Company) ga beginnen.
Jawel! Ik heb vanaf 1 juni een baan bij een snel groeiend web- en softwarebureau in Eindhoven, schuin tegenover het Parktheater, met klanten als Megapool, Modern Electronics en IKEA Family. Ik ben erg benieuwd!
Het is grappig, want onze wasmachine gaan we nu waarschijnlijk bestellen door gebruik te maken van code die door mijn toekomstige collega’s is geschreven.
-
Ons nieuwe hutje: Woningjacht voorbij!
In november schreef ik over m’n jacht naar een woning in Eindhoven. Aan die jacht is bijna een einde gekomen, want in april krijgen we de sleutels voor ons eigen appartementje!
Op 30 maart werden we door Woonbedrijf uitgenodigd een kijkje te komen nemen in ons nieuwe appartement. Wat vinden jullie ervan? Laat een reactie achter!
-
Ryanair weet zich geen houding te geven op internet
PR op internet, het is niet altijd even subtiel en doordacht, zo bewijst Ryanair. Jason Roe, een software developer uit Dublin vond op een goede dag een leuk bugje in het boekingssysteem van Ryanair, waardoor hij gratis een vlucht kon boeken.
Ok, As I was booking flights down to cork for the blog awards, I noticed something a bit strange. When I went to change my flight times, all of the prices on the flights had changed to “Total Cost of Flight 0.00”.
De (bevestigde) reactie van Ryanair
jason! you’re an idiot and a liar!! fact is! you’ve opened one session then another and requested a page meant for a different session, you are so stupid you dont even know how you did it! you dont get a free flight, there is no dynamic data to render which is prob why you got 0.00. what self respecting developer uses a crappy CMS such as word press anyway AND puts they’re mobile ph number online, i suppose even a prank call is better than nothing on a lonely sat evening!!
of dit juweeltje:
If you would work in your pathetic life on a such big project in a such busy environment with so little resources, you would know that the most important is to have usual user behavior scenarios working rather than spending time on improbable and harmless things.
Ongeacht of Jason nu wel of geen gelijk heeft, het is natuurlijk niet zo verstandig om een klant publiekelijk uit te maken voor een idioot en een lunatic. De officiële reactie van Ryanair hierop is nóg grappiger:
Ryanair can confirm that a Ryanair staff member did engage in a blog discussion. […] It is Ryanair policy not to waste time and energy corresponding with idiot bloggers and Ryanair can confirm that it won’t be happening again. […] Lunatic bloggers can have the blog sphere all to themselves as our people are far too busy driving down the cost of air travel.
Wat een hilariteit. En alsof het allemaal nog niet genoeg is moeten we straks ook nog betalen als we naar de WC gaan (dat is trouwens wél een heel slim gespeelde PR-stunt). Alsof dát de prijzen kan laten dalen.
Beste Ryanair, een tip, kijk eens hoe Iceland Express omgaat met bloggers en publiek en PR in het algemeen: Ze zijn net zo looney als de bloggers zelf!
Heb je zelf nog leuke PR-missers die het vermelden waard zijn? Plaats een reactie!
-
CoffeeDregs in Supremum
De redactie van de Supremum, het periodiek van de studievereniging GEWIS, vroeg of ik een stukje wilde schrijven over m’n afstuderen voor het derde nummer van het jaar. Nou, dat wilde ik wel. De deadline kwam en de deadline ging en ik was een paar dagen te laat, maar… Het stukje kwam er wel!
Ik weet zeker dat een paar van jullie na het lezen van dit stukje hadden gewild dat ik een paar jaar eerder was begonnen met afstuderen. Het onderwerp van mijn afstuderen is namelijk het uitbreiden en verbeteren van CoffeeDregs, een tool die het begrijpen van object-georiënteerd programmeren in Java voor beginnende programmeurs moet vereenvoudigen. Kort gezegd biedt CoffeeDregs je een (beperkt en daardoor aangenaam) kijkje in de virtuele machine van Java.
Laat ik mijzelf eerst even voorstellen. Mijn naam is Christian Luijten en loop alweer een paar jaartjes teveel rond op onze universiteit. Vorig jaar augustus ben ik begonnen met afstuderen bij dr. Kees Huizing en dr. Ruurd Kuiper die een deel van het programmeeronderwijs aan de TU/e en op een aantal VWO-scholen in Eindhoven verzorgen. Ze hebben hiervoor hun eigen lesmateriaal ontwikkeld, waarin ze een visueel model voor de uitvoering van (Java)programma’s gebruiken. De oorsprong van dit model ligt al in de jaren zeventig, toen een soortgelijke methode werd voorsteld voor processen die een blokstructuur vertonen (verreweg de meeste moderne “general purpose” programmeertalen voldoen hieraan). In het model wordt uitgegaan van een set distincte objectruimten in de tijd en de overgangen hiertussen. Je zou het dus als een soort transititesysteem kunnen zien.
CoffeeDregs geïntegreerd in NetBeansAls je een Javaprogramma start, zal Java als eerste op zoek gaan naar de
static void main(String[] args)
methode in de klasse die je hebt opgegeven. Van hieruit kan je als programmeur zorgen dat de rest van het programma wordt geladen. Wat we in CoffeeDregs doen is alles wat vanuit deze eerste klasse ontspruit in beeld brengen, in de meeste gevallen zijn dat instantiaties van klassen. Zowel klassen als instantiaties worden weergegeven als een doosje met een titel en een inhoud. Die inhoud zijn bijvoorbeeld de klasse- of instantiatievariabelen en de actieve methoden die zelf ook weer als doosjes worden weergegeven. Wordt een methode meerdere malen aangeroepen, dan zul je deze ook meerdere keren terugvinden.Wanneer een variabele een referentie bevat naar een instantiatie, wordt een pijl getekend van die variabele naar instantiatie. Zodoende bouw je een graaf van object-referenties op. Naarmate de kennis en oefening van de programmeur vordert, worden zijn/haar programma’s groter en complexer. Als er veel objecten in het spel komen, heeft de visualizatie dan ook de neiging om nogal onoverzichtelijk te worden. Het is daarom belangrijk te filteren welke objecten wel en welke niet van belang zijn voor de programmeur.
Objecten waarin geen functionaliteit zit, maar alleen data, blijven bijvoorbeeld standaard als dichtgeklapt klein doosje zichtbaar op het scherm. Referenties van buitenaf zijn zichtbaar, maar waar de referenties van het dataobject heen gaan wordt verborgen, net als alles wat er verder nog achter hangt. Denk hierbij aan de structuur van een linked list, of een of andere geavanceerde boomstructuur. Het blijft wél altijd mogelijk de doosjes open te klappen en te volgen waar de referenties heen lopen. Als in een object een methode wordt aangeroepen, wordt het bijbehorende doosje opengeklapt om de effecten goed te kunnen bestuderen. De uitgaande referenties worden dan getoond en de “buurobjecten” worden zichtbaar gemaakt.
Op een gegeven moment in de executie van het programma zullen er meerdere methoden actief zijn; het is immers vrij normaal dat de ene methode een andere aanroept, die weer een andere aanroept enzovoort. Zonder visuele hulp is het dan lastig de vraag te beantwoorden welke methode welke andere methode heeft aangeroepen en waar de huidige plek van executie is (waar komen we vandaan? waar gaan we naartoe? het kan er filosofisch aan toe gaan!). De methoden worden in CoffeeDregs verbonden met een pijl die letterlijk als een rode draad door het programma gaat. Heeft je programma meerdere threads, dan krijg je ook meerdere losse draden te zien.
Het ontwerp- en implementatiedeel van mijn afstuderen is nu grotendeels afgerond en ik ga me nu richten op een kleinschalig onderzoek naar de inzetbaarheid van de huidige staat van CoffeeDregs in het programmeeronderwijs van volgend jaar. Hiervoor heb ik een aantal experimenten voorbereid om op verse studenten los te laten. Je kan hierbij denken aan het gedrag van een programma te laten verklaren terwijl het uitgevoerd wordt of een kleine aanpassing maken zodat het programma doet wat je wil dat het doet. Dat alles uiteraard met hulp van CoffeeDregs.
Wil je je eigen Java-programma’s eens aan de visuele test onderwerpen? Op https://svn.win.tue.nl/trac/CoffeeDregs/ vind je de website van het project en een link naar de source code. Er is ook een plugin voor NetBeans beschikbaar. Over niet al te lange tijd zullen ook binaire versies van CoffeeDregs op de site komen te staan.
-
Ugly Betty heeft geen stroom nodig
Even goed kijken…
Hee kijk nou, Betty kan een iMac gebruiken waar geen stroomkabel in zit :-P
-
Collalbo 2009
Ik ben alweer even terug uit Italië, twee weken om precies te zijn en ik heb hier nog helemaal niks over Collalbo geschreven!
We zijn dus op 31 januari met Isis naar Collalbo afgereisd op trainingskamp. Collalbo, ook wel Klobenstein genoemd, ligt in de Italiaanse Alpen. Als je over de Brennerpas gaat is het nog maar zo’n veertig kilometer. Geen wonder dat dit stuk ook behoorlijk Oostenrijks aandoet. Voor de Eerste Wereldoorlog wás dit gebied zelfs Oostenrijks en nu nog steeds wordt er veel Duits gesproken.
De onoverdekte ijsbaan ligt op 1198 meter hoogte, wat je zou kunnen merken in verband met een verlaagd zuurstofgehalte in de lucht. Zelf had ik hier eigenlijk niet veel last van, maar anderen raakten echt buiten adem. Ik heb geen idee waarom ik er geen last van had, in 2005 in Zwitserland had ik hetzelfde, misschien heb ik overcapaciteit in m’n longen die ik in de bergen kan aanspreken?
In ieder geval, het ijs is prachtig, heerlijk glad, geen bobbeltje in te ontdekken en het rijdt superfijn. Zelfs als je niks doet, ga je nog vooruit. Dat ligt er waarschijnlijk aan dat je op één recht eind altijd wind mee hebt en het andere rechte eind een klein beetje afloopt (volgens Jos).
Er ligt overal een dikke laag sneeuw, behalve op het ijs, want dat houden ze netjes schoon… Tot donderdag dan, want toen had het toch iets te hard gesneeuwd en was het bovendien vastgevroren aan het ijs. Resultaat: Een op natuurijs lijkende kunstijsbaan met een laag sneeuw waar je amper meer op doorheen kon ploegen. Dat was het laatste wat we van het ijs hebben gezien, de rest van de week moesten we ons vermaken met alternatieve activiteiten, die toch ook erg leuk waren.
Alles bij elkaar is het een leuke week geweest, jammer van de sneeuw op het eind die roet in de afsluitende wedstrijd gooide, maar daardoor weten we nu wel wat Nard met een krokodil doet.
-
Koffiedik kijken met CoffeeDregs
In augustus had ik hier al geschreven dat ik koffiedik zou gaan kijken. Nu, vijf maanden later is het werk aan CoffeeDregs grotendeels klaar. Ik ben nu nog een beetje aan het schaven om de laatste probleempjes eruit te werken, maar het grote werk is af.
Een screenshot van CoffeeDregs in actieDe gebruiker kan nu een Java-broncode inladen en deze met behulp van de tool uitvoeren. Je ziet dan de objecten gecreeerd en verwijderd worden, referenties gelegd, methoden aangeroepen worden, hoe waardes in variabelen veranderen. We (m’n begeleiders en ik) hopen over een paar weken een aantal studenten met de tool te laten spelen en kijken hoe ze ermee omgaan, om te zien of het bruikbaar zou zijn om vanaf september in het programmeer-onderwijs in te gaan zetten.
Helaas maak ik die lancering natuurlijk niet meer mee, maar interessant gaat het zeker worden; ik heb dan toch een klein beetje een stempel weten te drukken op het onderwijs van de TU/e!
De komende twee maanden ga ik m’n verslag schrijven en de experimenten uitvoeren en dan ben ik hopelijk afgestudeerd!
-
Reacties vernieuwd
Vanaf vandaag op Logging the Switch, een daadwerkelijk werkende reactie-pagina! Hoera :)
Ik gebruik nu het systeem van Disqus om de reacties te verwerken en te tonen. Het voordeel van Disqus boven HaloScan wat ik voorheen gebruikte, is dat de comments nu wél volledig onder mijn beheer zijn en ik ze ook kan opslaan naar een bestand, iets wat bij HaloScan dus niet kon. Sterker nog, de reacties werden “eigendom” van HaloScan, wat natuurlijk belachelijk is.
Bij Disqus kan de
reaguurderreageerder zelf bepalen of deze een anonieme reactie plaatst óf er een account maakt en reacties onder eigen naam wegzet. Daarbij blijft de reactie altijd van jezelf, van jou, je eigen, jouw precioussss. Met de license die je er zelf aan hangt.Via de samenwerking met seesmic is het nu bovendien mogelijk videoboodschappen achter te laten.
Dus… Vanaf nu voor elck wat wilsch!
-
Chris Witty - Raket onder de Diesels
Gisteren nog op Studio Sport een interview met Chris Witty – de trainer van de besten van Isis – en vandaag al op deze website: