Er zijn nu 2 dagen voorbij en het wordt tijd om hier eens een verslagje neer te schrijven…
Vrijdag had ik met Bart (mijn vervangend stagebegeleider) afgesproken dat ik maandag om 10h op Boondoggle zou zijn. Hij is er zelf nooit vroeger dan 10h dus anders kan ik daar toch niets gaan doen.
Hij had vrijdag al een poging gedaan om mij een korte uitleg te geven van mijn opdracht maar om eerlijk te zijn begreep ik er echt helemaal niks van… Dit kwam ook wel deels omdat de helft chinees was voor mij en de andere helft kon ik mij gewoon niet indenken…
Anyway. De opdracht:
Boondoggle heeft zijn eigen zelf geschreven “Project Generator”, dit is een applicatie waar de nieuwe projecten worden ingevoerd. Het is een soort van formulier waar je de klantnaam moet ingeven en de titel van het project. Vervolgens staan er een heleboel checkboxen voor onderdelen die de klant wenst aan zijn website/reclame/… Enkele voorbeelden voor de websites zijn: HTML, FLASH, CMS, SQL, … de rest ben ik eigenlijk al vergeten.
Als je dit formulier submit worden er in Visual SourceSafe een heleboel startbestanden aangemaakt. Dit zijn allemaal lege files waar je onmiddellijk mee aan de slag kan gaan. Natuurlijk moet je deze bestanden eerst “uitchecken” op de server en ze lokaal zetten zodat je andere hun werk niet kan vernielen. Wanneer je denkt dat je klaar bent met programmeren en je hebt een succesvolle build op je lokaal systeem, kan je de bestanden terug op de server zetten.
Nu moet je inloggen op het Draco.Net systeem en het project opnieuw laten builden. Om dit te kunnen doen moet je eerst in Draco een nieuw project aanmaken. Hier moet je zeggen waar Draco de bestanden kan vinden op de server, welke speciale properties je wil meegeven, wie de contactpersoon is, …
Mijn opdracht is dus het automatiseren van het aanmaken van de build taak in Draco. Wanneer in de project generator een nieuw project wordt aangemaakt, moet er automatisch in draco ook een nieuwe build taak worden aangemaakt.
Dit moet er voor zorgen dat het productieproces voor een deel verder geautomatiseerd en vergemakkelijkt wordt. Want nu gebeurd het soms dat de mensen van het designteam de build nodig hebben om te kunnen beginnen werken. Het probleem is dan dat ze niet weten welke opties ze moeten invullen om de draco taak aan te maken. Dan moeten ze de programmeurs lastig vallen die dan vervolgens hun werk moeten laten vallen om de anderen verder te helpen.
Mijn werk zou dit probleem van de baan moeten helpen.
Gisteren ben ik dus begonnen met te onderzoeken hoe de verschillende systemen werken en hoe ik ze bij elkaar zou kunnen integreren. Bart had gezegd dat ik op zoek moest gaan naar een API voor Draco die ik zou kunnen integreren in de project generator. Dit was volgens hem de makkelijkste oplossing.
Na 10 minuten googlen was al duidelijk dat er helemaal geen API bestaat voor Draco en dat ik iets anders moest bedenken. Gisteren heb ik dan de rest van de dag op Google doorgebracht zoekend naar mogelijke alternatieven.
Toen ik gisteren thuis kwam na mijn eerste werkdag was ik nogal depressief over mijn slechte prestaties van die dag… Gelukkig heeft een nachtje slapen mij geholpen met mijn probleem. Toen ik vanmorgen op Boondoggle kwam ben ik onmiddellijk naar de website van Draco gesurft en heb ik de volledige source van dit systeem gedownload. Ik ben door de code beginnen ploeteren om te vinden waar hij alle data opslaat. Bart wist namelijk ook niet waar Draco dit saved. Ik hoopte een databank te vinden waar ik dan zou kunnen tegen programmeren maar dit bleek niet het geval te zijn… Wat ik wel vond was een link naar een XML bestand. In deze XML wordt alle data opgeslagen over de verschillende projecten die in Draco reeds zijn aangemaakt en gebuild.
Dit XML-bestand ben ik op de server gaan zoeken en heb ik naar mijn laptop gekopieerd. Bart was heel tevreden met mijn vondst en vertelde me dat ik nu echt aan de slag kon gaan. Nu kon ik mijn eigen API beginnen te schrijven…
Toen ben ik beginnen programmeren tot ik naar huis mocht.. zo zal het ook morgen en de rest van de week zijn.
Tot zover mijn werk van de voorbije 2 dagen
Peace