Michel Vuijlsteke's weblog

Tales of Drudgery & Boredom.

Debugging

Het heeft zo zijn voordelen, met een klein team ontwikkelen. Veel nadelen ook, vooral als “klein team” eigenlijk betekent “één mens alleen die ontwerpt en programmeert en test”, maar ook een aantal voordelen.

Het grootste voordeel is wel dat er geen tijd verloren gaat aan coördinatie tussen programmeurs. Geen coderingsafspraken, geen code reviews, geen roadmaps, niets behalve wat in mijn eigen hoofd zit—al is er uiteraard wel een roadmap en een as-I-code-it-handleiding, en zijn er richtlijnen waar ik me aan houd.

Geen CVS nodig ook—al zou ik er wàt graag één installeren, de tijdskost is niet te verrechtvaardigen: als er ergens iets gewijzgd is in een bestand, is het (in principe) mijn eigne verantwoordelijkheid.

Ook geen bug tracking ding: al zou ik er, opnieuw, enorm graag één hebben om (vooral anderen) wat meer zicht te verschaffen in planning en dingen, de moeite is de toegevoegde waarde niet waard.

…en dus is dit voor het ogenblik mijn planning en mijn bug tracking in één (klik voor detail):

Debugging

…een boekje, een pen, en quality control door de Little Gods of Debugging.

En behalve dat: ‘t zijn de domste bugs eerst natuurlijk. Pak nu het vierdevoorlaatste item op delijst met te fixen bugs voor vandaag: “highlight day when in day overview”.

Ik laat ergens een kalender zó verschijnen:

Response.Write(getCalendar(DateSerial(thisYear,thisMonth,1), beginDay, endDay))

 …en dat werkt niet. Doet niet wat het moet doen. Het zou moeten een maandkalendertje tonen met daarin de dagen tussen beginDay en endDay in een ander kleurtje, maar de dagen blijven gewoon niet-gekleurd staan. Alle code is juist hoor, en als ik bijvoorbeeld

Response.Write(getCalendar(DateSerial(thisYear,thisMonth,1), 21, 24))

zeg, dan worden proper de 21ste tot de 24ste gehighlight. Zo’n typische typing-issue, want dit werkt wel, als ik het er vingerdik op leg dat het om getallen moet gaan:

Response.Write(getCalendar(DateSerial(thisYear,thisMonth,1), beginDay+0, endDay+0))

Ja, ik weet ook niet waarom. Ik dacht nu echt dat asp vbscript weak typing deed, dat het niet uitmaakte of ik een getal als een string dan wel als een getal doorgeef… nee dus.

Geschreven al luisterend naar: Claude Nougaro – Au théâtre des Champs Elysées disc 2 – Comedie musicale

11 Comments

  1. CVS? Subversion bedoel je 😉

    SVN met Trac is een aanrader voor kleine-tot-semi-grote projecten. Wiki, roadmaps, ticketting systeem en repository browser… Heel eenvoudiger te installeren dan pakweg Bugzilla 😉

  2. Euh ja, ik bedoelde “een cvs”, niet “CVS”.
    Als het een versioneringssysteem wordt, wordt het wellicht Subversion. Met het machtige TortoiseSVN.

  3. Op de ene server zal het wel werken op de andere niet heb ik al gemerkt.
    Optie is cInt(beginDay), cInt(endDay) te doen maar dan wel zorgen dat het getallekes zijn anders errorken.
    Of in uw getCalendar functie die cInt doen natuurlijk…

  4. SVN installeren is zoveel als “svnadmin create myrepo”. Tot zover het tijdsargument 😉
    Je gemoedsrust zal vele graden stijgen als je weet dat je wijzigingen ongedaan gemaakt kunnen worden.
    Qua issue tracking systeem heb je wel het beste systeem gevonden. Ipv sterretjes gebruik ik echter vierkantjes, waar je dan een grote V in kan zetten als het gedaan is.

  5. In mijn ervaring is iets dergelijks niet alleen maar drie woordjes intypen. 🙂

    Het allemaal uitleggen aan iedereen bijvoorbeeld, of bekijken wat er gebeurt als er alsnog mensen buiten het systeem om files gaan wijzigen, of zien wat het doet met Visual Studio als die dingen gaat zelf op eigen houtje wijzigen, of begod met Frontpage als er ergens een onverlaat een “publish” doet naar een afgelegen stukje intranet.

    En ik wil dat allemaal eerst in een testomgeving in een Virtual PC zien werken, zowel server als client, en dan wil ik een case maken voor het IT-departement, die uiteindelijk toch met de support-vodden gaan zitten, en, en, en …

    😀

  6. ik prefereer cint(var) over de +0 hack.

  7. @oozie, inferis: groot gelijk, groot gelijk. Ik wist zo direct niet meer hoe casten ging, en +0 werkt normaal gezien altijd met van die weak typing-talen. 🙂

    Ik zat met var.toInt() of (int)var in mijn hood, vandaar.

  8. Ik blijft erbij dat JScript zowieso een betere optie is dan VBScript, ook voor server side ontwikkeling. ’t is een redelijk deftige programmeertaal, en als je dingen nodig hebt die alleen in VBScript bestaan, is er altijd het [script runat=server language=vbscript]…[/script] blok ter redding. Je kan daarin functies definieren die je ook in JScript kan aanroepen (omgekeerd werkt het ook, natuurlijk).

    Ah, The Joys Of ASP Programming.

  9. Mij kan het allemaal niet zo erg schelen. De ene file is VBScript, de andere JScript. En nog een andere is ASP.NET C#.

    Ik ben al content dat ik sinds vandaag weet dat er geen COBOL tussen zal zitten. 🙂

  10. Berusting mijn beste, berusting. 🙂

Zeg uw gedacht