Afgeronde projecten

Kleverrr

Voor de verandering eens een spelletje. Kleverrr is een website waarop je jezelf kunt testen op verschillende onderwerpen.
Geef aan welke onderwerpen je interesseren en je krijgt de ene na de andere vraag op je afgevuurd. Antwoord goed? Je kan dan gelijk door met de volgende. Bij het verkeerde antwoord krijg je te zien wat het antwoord wel moet zijn. Bij elk onderwerp zit een eigen kleurenthema met bijpassende achtergrond, het is dus afwisselend en spannend genoeg om te doen. Speel het elke dag en je merkt dat je kennis met stappen vooruit schiet.

NetTV

Steeds vaker zijn televisieprogramma’s live te volgen op internet. Sommige internetproviders broadcasten zelfs hun hele zenderaanbod live. Omdat mijn provider dat ook doet en ik graag TV kijk tijdens het computeren ben ik dus in het “IPTV” gebeuren gerold. Na een tijdje gewoon met Windows Media Player naar de streams gekeken te hebben, begon het me steeds meer te irriteren dat je WMP niet boven andere vensters kunt plaatsen zonder dat die steeds verdwijnt. Ook was het niet mogelijk om een lijst met alle TV zenders te maken.
Van het één kwam het ander, en zo maakte ik dus mijn eigen IPTV speler genaamd NetTV. Standaard blijft het programma boven alle andere geopende vensters staan, krijg je netjes te zien hoe ver de zender die je wilt bekijken is met bufferen (vooruitladen) en kan je makkelijk wisselen tussen zenders door de zenderlijst op te vragen en gewoon aan te klikken wat je wilt zien. Ook even snel zien wát er nu precies bezig is op TV is simpel, er is namelijk ook een knopje waarmee je zó naar de website van het TV station dat op dat moment aan staat kunt gaan.

sqlite emulator

SQL is een standaardtaal om met databases te praten. Het bevat maar een paar simpele commando’s waarmee je elke bewerking kunt uitvoeren die je maar wilt. Veel mensen gebruiken SQL in combinatie met PHP of ASP om dynamische websites te maken. Helaas is het installeren van een SQL server en de koppeling tussen de programmeertaal en de database vaak lastig te leggen. Hierdoor haken veel mensen al af met SQL vóórdat ze zijn begonnen met SQL commando’s.
Om hier verandering in te brengen, heb ik een online versie van een SQL client gemaakt. Je hoeft niets te installeren, maar kunt direct beginnen met het opzetten van een eigen database. Om te zorgen dat verschillende gebruikers elkaar niet in de weg zitten, wordt elke SQL-sessie gekoppeld aan het IP adres van de gebruiker. Mocht deze later terugkomen, dan krijgt hij of zij gewoon weer z’n zelf gemaakt database te zien. Doordat de emulator gebruik maakt van sqlite, zit niemand elkaar dan ook in de weg. Je kunt dus écht oefenen met SQL, zonder hiervoor enige moeite te hoeven doen!

Heggle.com

Een oud klasgenoot werd gevraagd een website te ontwikkelen waarmee gebruikers kunnen zoeken naar allerhande content zoals filmpjes, afbeeldingen en spelletjes. Om aan links naar deze content te komen, moest er ook een spider applicatie gemaakt worden dat de belangrijkste video-, afbeeldingen- en spelletjeswebsites kon benaderen en uitlezen. Het ontwikkelproces van Heggle en de bijbehorende spider applicatie heeft slechts 4 dagen in beslag genomen.
Om te zorgen dat het indexeren van websites goed verliep en dat gebruikers snel kunnen vinden wat ze zoeken, is er een database opgezet die totaal toegespitst is op zo snel mogelijk resultaten te kunnen vinden. Het resultaat daarvan is dat Heggle.com in nog geen twee maanden tijd al ruim 120.000 items heeft geindexeerd van 100 websites, aantallen die gestaagd blijven oplopen.

Voetmuis

In de ICT wereld (en ook de rest van het bedrijfsleven) krijgen steeds meer mensen last van RSI door het vele muizen. Er zijn al honderden apparaten op de markt om dit tegen te gaan; trackbars, joystickmuizen, tabloids, enzovoorts. Waarom niemand ooit bedacht heeft een muis te maken waarbij je je armen niet nodig hebt is mij nog steeds een raadsel. Daarom hebben we met een project op school een voetmuis ontwikkeld.
Het gebruik van de voetmuis is extreem simpel. Je zet je voet erop, doet het klittenband om en je bent klaar voor gebruik. Nu komt het volgende punt dat misschien wél een probleempje kan zijn. Stel dat de gebruiker ergens op wil klikken. Je kan de voetmuis zo maken dat je met je voet kunt klikken, maar als je dan iets wilt verslepen op je scherm en je moet je voet een aantal maal optillen om de muis te verplaatsen (omdat je een groot scherm hebt) dan kan je de knop niet ingedrukt houden. Onze oplossing hiervoor was om gewoon softwarematig te klikken. Naast het inpluggen van usb connector van de voetmuis in de computer, moet je ook een klein programma’tje installeren dat reageert op een toetsenbordcombinatie en in reactie daarop een muisklik simuleert.
De voetmuis is geen vervanging voor een gewone muis, maar een toevoeging. Als je even snel surft of een tekstbestand tikt heb je genoeg aan de voetbediening, maar als je daarna foto’s gaat bewerken is het gebruik van een gewone muis net zo fijn. De voetmuis kan zowel met het linker als met het rechter been gebruikt worden aangezien er tussen beide voeten niet zoveel onderscheid in precisie is als bij je handen. Daarnaast is het gebruik ervan ook nog goed, omdat je dan niet de hele tijd stil zit op een stoel maar de beenspieren stimuleert.

Middelpolder Ziekenhuis

Twee ziekenhuizen in Amersfoort zijn gefuseerd en hebben een nieuwe Service Desk afdeling nodig. Omdat de helpdesksystemen van beide ziekenhuizen niet op elkaar afgestemd zijn, zijn jullie gevraagd een nieuw systeem te ontwikkelen.
Bovenstaande tekst is zeer kort de opdrachtomschrijving van het project Middelpolder Ziekenhuis. Naast een Service Desk applicatie moesten er ook enkele andere applicaties geïnstalleerd en geconfigureerd worden en moesten enkele documenten geschreven worden over bijvoorbeeld (draadloos) netwerk beveiliging, een onderzoek over netwerkbelasting van digitale röntgenfoto’s en moesten de processen van de Dienst ICT in kaart gebracht worden.
De ontwikkelde helpdeskapplicatie is zeer simpel in gebruik. Het bevat een viertal tabbladen waar de Service Desk medewerker stap voor stap doorheen kan bladeren. Het eerste tabblad is om in te loggen, daarna kan er een klant gekozen worden, de calls van de klant ingezien, gewijzigd en toegevoegd worden en met het laatste tabblad kunnen alle open calls weergegeven worden. De applicatie maakt gebruik van een Microsoft Access database dat op een gedeelde netwerkmap op een server staat. In dezelfde map is ook een submap waarin bijlagen automatisch worden geupload als de Service Desk medewerker deze via het programma toevoegt. De applicatie is gebaseerd op de ITIL principes voor Service Desks.

Virgo B.V.

Tijdens de laatste onderwijsperiode van schooljaar 2004/2005 moest er door projectgroepen een fictief bedrijf opgestart worden. Een belangrijk onderdeel van dit project was het maken van een informatiesysteem om de administratie van een winkel te beheren. In acht weken tijd hebben we met zes projectleden het bedrijf Virgo B.V. opgezet, een computerwinkel gezeteld in de Breestraat in Leiden. Virgo verkoopt zowel computers als computeronderdelen en verleent reparatiediensten.
Om het de medewerkers van Virgo zo makkelijk mogelijk te maken, is er een ingenieus systeem ontworpen waarbij alle mogelijke administratieve handelingen via één scherm te benaderen zijn, een zogenaamde Multi Document Interface. Door te kiezen voor het juiste menu item wordt het betreffende onderdeel gelijk opgestart. De winkel bevat meerdere kassa’s, kantoren en werkplaatsen, dus is er gekozen om een Microsoft SQL server op te zetten waar alle clients verbinding mee maken. Deze SQL server bevat onder andere de productenvoorraad, reparatiestatussen, facturen en offertes, klantgegevens en enkele administratieve zaken.
Naast de opdracht om een intern informatiesysteem te maken, hebben we ook nog een website ontwikkelt. Deze website maakt gebruik van dezelfde Microsoft SQL database als de interne applicatie waardoor bezoekers informatie kunnen zien over onze producten. Daarnaast kan men gelijk bestellingen plaatsen in de vorm van een offerte, zodat de klant met de uitgeprinte zelf samengestelde offerte en/of enkel het opgeschreven offertenummer in de winkel de offerte direct om kan zetten in een factuur en de gekochte producten meteen meenemen naar huis.

Taskbar Projects

“Tabbed” is in. We doen aan “tabbed webbrowsen”, “tabbed tekstverwerken” en zelfs MSN heeft tabbladen. Waarom gebruikt Windows ze dan niet standaard bij de taakbalk? Je kunt wel knoppen per applicatie groeperen, maar je wilt ook wel eens per groep programma’s kunnen sorteren.
Taskbar Projects kan dit. Het bestaat uit in totaal zes tabbladen waar je zelf een tekst op kunt zetten en waaraan je programma’s kunt toewijzen. Ben je bijvoorbeeld met een werkstuk bezig, maak je een tabblad werkstuk en kieper je daar alle programma’s in die met dat werkstuk te maken hebben. Om niet zo afgeleid te worden door vrienden, stop je MSN en ICQ ook weer in een eigen tabblad. Windows Media Player, Kazaa en je Mp3 map stop je vervolgens in de muziek tab, enzovoorts. De tabbladen verbergen zich automatisch als je met andere dingen bezig bent en komen weer tevoorschijn zodra je met je muis aanstalte maakt om op een knop op je taakbalk te klikken. Zo maak je dus met een kleine aanpassing extra ruimte en kan je dus veel makkelijker switchen tussen programma’s.
Taskbar Projects werkt zowel op Windows XP als op Windows Vista, beide met bijbehorende visuele thema’s.

Wikipedia

Wikipedia, wie kent het niet tegenwoordig. Dé plek om informatie te vinden over wat je maar kunt verzinnen. Ik gebruik de online encyclopedie dan ook regelmatig. En daar komt ook gelijk mijn reden voor dit programma. Als je de Nederlandse versie van Wikipedia wilt gebruiken, krijg je eerst altijd een voorpagina waarin je je taal en dialect moet kiezen, wat niet automatisch wordt opgeslagen, het moet dus elke keer opnieuw. Echt snel is het dus niet op deze manier. Een ander punt dat ik jammer vind aan Wikipedia, is de menubalk aan de linker kant die zoveel ruimte inneemt met functies die je toch nooit gebruikt als je even snel iets wilt opzoeken.
Om verlost te zijn van deze problemen, heb ik een Wikipedia browser gemaakt. Het programma nestelt zich tijdens het opstarten automatisch in het systeemvak naast de klok, waardoor je het met één keer klikken kunt openen. Als je zoekt naar resultaten worden van tevoren netjes alle menu’s weggehaald, net als de [bewerk] links. Ook worden de bezochte pagina’s en ingetypte zoekwoorden automatisch onthouden, zodat je snel terug kunt bladeren naar een eerder bezochte pagina.

Block PC

Deze applicatie heb ik gemaakt voor een programmeerwedstrijd waar het goed was voor de tweede plaats. Block PC is eigenlijk hetzelfde als het normaal locken van je computer zoals je doet door op Windowsvlaggetje+L te drukken. Het verschil zit ‘m erin dat Block PC bij elke poging tot inloggen een foto maakt met een aangesloten webcam. Op deze manier kan je zien of terwijl je weg was, iemand heeft geprobeerd in te loggen.
Zowel bij een goede als een verkeerde inlogpoging wordt een foto gemaakt. Als je het goede wachtwoord hebt ingevuld krijg je een overzichtscherm te zien met foto’s van de laatste 9 inlogpogingen. Je ziet het dus zo als iemand heeft geprobeerd met je computer te rommelen.

Batch scanner

Om in plaats van losse pagina’s in te scannen en dan te zitten met tientallen JPG bestandjes, kwam ik op het idee om ingescande pagina’s automatisch te bundelen. Het enige bestandsformaat dat hiervoor in aanmerking kwam, was PDF. En zo flanste ik dus op een regenachtige zondagmiddag een Batch scan applicatie in elkaar.
Een paar simpele drukken op de knop, even geduld tijdens het scannen en er rolt zó een keurig PDF bestandje uit met een digitale kopie van een boek, werkstuk, fotoalbum of verslag.

COD-Tracker

Online multiplayer spellen zijn vaak leuk om te doen. Veel voor mensen is de lol er alleen snel vanaf als ze niet bij kunnen houden hóe ze spelen. Ook willen sommigen pochen met hoe goed ze wel niet zijn. Bij een aantal spellen, zoals America’s Army: Special Forces, worden deze gegevens automatisch bijgehouden. Voor het spel Call of Duty bestond deze mogelijkheid echter nog niet. Met COD-Tracker bracht ik hier verandering in.
COD-Tracker bestaat uit een website en een applicatie die mensen die Call of Duty speelden moesten installeren. Deze applicatie werd automatisch geactiveerd als je Call of Duty opstartte en stuurde dan vanzelf statistieken door van hoe het de speler verging. Installeren van het programma was simpel. Men downloadde het installatiebestand, opende het, klikte een aantal maal op Volgende, vulde zijn of haar login gegevens van de COD-Tracker website in (of registreerde zich) en COD-Tracker werd geactiveerd.
De statistieken die door COD-Tracker werden verzameld werden automatisch geupload naar de COD-Tracker website. Hier werd het verder verwerkt, werden bepaalde killratio’s uitgerekend en werd netjes weergegeven dat de speler online was. Andere spelers en belangstellenden konden al deze gegevens live opvragen en zo de vorderingen van hun vrienden bijhouden. Het was zelfs mogelijk om met één klik op een link rechtstreeks Call of Duty op te starten en naar dezelfde server te gaan als waar vrienden speelden. Ook was het mogelijk voor mensen om hun statistieken op een eigen avatar neer te zetten, om deze zo op elk forum aan mensen te kunnen tonen.
Met het uitkomen van Call of Duty 2 is het ontwikkelen van COD-Tracker stopgezet omdat er nog maar weinig animo voor de eerste versie was. Daarnaast was het door bugs in de Call of Duty 2 3D engine niet meer mogelijk om degelijke statistieken te verzamelen. COD-Tracker is 10 maanden online geweest en heeft in deze tijd rond de 18.000 mensen van statistieken voorzien. Daarnaast heeft de website in deze periode ruim 500.000 pageviews gehad wat neerkomt op ongeveer 1800 pageviews per dag. Een doorslaand succes dus.

Forum Check-up Tool

Voor de tijd dat RSS en XML geaccepteerde standaarden werden om informatie van fora, weblogs en websites te distribueren was er al wel de noodzaak om goed op de hoogte te blijven van ontwikkelingen. Eén oplossing was alle fora die je bezocht openen met je browser zodra je je computer opstartte en dan elke 10 minuten op de F5 knop te drukken. Een andere oplossing was de door mij gemaakte Forum Check-up Tool te installeren.
De Forum Check-up Tool was een klein programma’tje dat automatisch in de gaten hield wanneer er op een forum een nieuw bericht werd geplaatst. Als er een nieuw bericht was gevonden, werd dit aan de gebruiker gemeld door middel van een popup zoals MSN Messenger dat ook doet bij nieuw ontvangen berichten.
Forum Check-up Tool was zowel een oplossing voor gebruikers, als voor server en forumbeheerders. Voor de gebruikers was het gemakkelijke gebruik één van de grote voordelen. Voor serverbeheerders was het vooral het lagere dataverbruik dat interessant was. Het programma deed namelijk één maal per 10 minuten een aanvraag bij de server om na te gaan of er nieuwe berichten waren. Dit kostte slechts 90 bytes, tegen de 20 KB (exclusief het laden van plaatjes) dat een normaal bezoek van een gebruiker aan een forum kost. Voor forumbeheerders was het grote voordeel dat bezoekers vaker terugkwamen en dat men sneller op geplaatste berichten reageerde.
Het programma is in anderhalf jaar tijd door ruim 50.000 mensen gedownload, geïnstalleerd en gebruikt. Vooral het verspreiden van het programma in samenwerking met het reeds opgeheven YourForum heeft het gebruik een flinke boost gegeven.

MyWebFTP

Alhoewel er veel Content Management Systemen zijn, zijn er maar weinig CMS-en die om kunnen gaan met PHP bestanden. Omdat ik vaak kleine wijzigingen aan sites wil maken, heb ik daarom een online bestandseditor gemaakt, MyWebFTP.
Met MyWebFTP kan je navigeren door mappen, bestanden en mappen maken, bestaande bestanden uploaden en bestanden wijzigen. Verwijderen en verplaatsen van bestanden is expres niet geïmplementeerd, omdat anders het gevaar bestaat dat je met één verkeerde muisklik een hoop werk kwijt bent. Daarnaast is het doel van MyWebFTP ook alleen het snel aanpassen van bestanden zonder daarvoor allerlei FTP en editor applicaties te openen.