Kijkje in een wijkcentrale van reggefiber

Door onok op zaterdag 19 april 2014 12:36 - Reacties (9)
Categorie: Persoonlijk en overige, Views: 8.157

Vandaag was er bij ons in de wijk (Stadshagen Zwolle) een open dag in een van de wijkcentrales (POP) van Reggefiber. Ik was wel benieuwd hoe zo'n ding er van binnen uit zag, en ik mocht ook foto's maken.

Het was wat kleiner dan ik had gedacht. Deze POP (Point of Presence) is nog vrij leeg, alle woningen moeten immers nog aangesloten worden, ze zijn net begonnen met aanleggen in onze wijk.

http://nokj.nl//user_images/600/1h6ac.jpg
Buitenkant. Het gat in de muur rechtsonderin is om een noodstroomvoorziening (bv. aggregaat) aan te sluiten als de stroom meer dan een uur of 4 uitvalt. Zolang houd de interne noodstroomvoorziening het ongeveer uit.

http://nokj.nl//user_images/600/ex528.jpg

http://nokj.nl//user_images/600/rkkjj.jpg
De grijze kast is de interne noodstroomvoorziening.

http://nokj.nl//user_images/600/7ew8f.jpg

http://nokj.nl//user_images/600/n0csq.jpg

Na 5 jaar terug op Dreamhack

Door onok op vrijdag 23 november 2012 12:45 - Reacties (9)
Categorie: -, Views: 3.272

Wat is Dreamhack
Om te beginnen maar even voor degenen die niet weten wat Dreamhack is: Dreamhack is kortgezegd de grootste LAN-party ter wereld, en wordt 2 keer per jaar gehouden in Zweden. Waar in Nederland de grootste LAN-party ooit bleef steken op bijna 2500 man (als je events als HAL meetelt is het iets meer, maar dat vind ik niet echt een LAN-party), heeft Dreamhack het wereldrecord in handen van maarliefst ruim 13.000 "connected devices". Hoeveel deelnemers er inmiddels exact zijn weet ik eigenlijk niet precies.

Van toen naar nu
Ik ben voor het eerst naar Dreamhack geweest in 2004. Het was toen nog een stukje kleiner: ze verbraken dat jaar hun eigen wereldrecord met ruim 6000 deelnemers.

In 2007 werd voor de eerste keer in Nederland Pack4Dreamhack georganiseerd. Pack4dreamhack is in feite een gesponsorde bustrip naar Dreamhack. Danzij sponsoren als Intel en Logitech hoeven deelnemers alleen maar toegang voor Dreamhack zelf te betalen, de busreis krijgen de deelnemers bijna geheel gratis. In ruil hiervoor wordt er van je verwacht dat je wat promotie maakt door weblogs, social media sharing, en natuurlijk het dragen van het Pack4Dreamhack T-shirt of sweatshirt/hoodie waar de sponsoren op staan. Een uitstekende deal als je het mij vraagt.

In 2007 was ik er dus ook bij. De groep bestond toen nog uit bijna 20 man. Met 2 busjes gingen we op pad. Dreamhack was toen alweer flink gegroeid. Het aantal deelnemers was gestegen naar 10.000. Het begon ook steeds meer te worden dan alleen maar een LAN-party. Zo was er een flinke expo / beurs gedeelte bijgekomen, een beetje zoals de game expo die je vroeger op de HCC dagen had. Ook zijn er diverse optredens en shows.

Inmiddels zijn we dus 5 jaar verder. Pack4Dreamhack werd alweer voor de 10e keer georganiseerd, en ik vond het hoog tijd om weer eens een keer mee te gaan :) De groep is inmiddels gegroeid naar 80 man en de 2 busjes zijn ingeruild door een grote dubbeldecks toeringcar met chauffeur. We hoeven dus ook niet meer zelf te rijden ;)

Voor je beeldvorming
Hoe ziet Dreamhack er nou precies uit? In beginsel is het gewoon een LANparty zoals we die hier in Nederland ook kennen. Iedereen die dat wil kan zich aanmelden. Je neemt je eigen PC mee en sluit deze aan op het netwerk van Dreamhack. Het gaat 24 uur per dag door en als je je eigen slaapspullen (luchtbed/matje, slaapzak) meeneemt kun je slapen in de slaapzaal. Het event duurt 3 hele dagen; van donderdagochtend tot zondagochtend.

Er zijn natuurlijk wel veel verschillen. Ten eerste is er de krappe tafelruimte. Om het grote aantal deelnemers te realiseren, zit je hier heel erg hutje-mutje (of voor de positivo's: lekker knus ;)). Op een gemiddelde LAN in Nederland heb je 1 meter tafelruimte. Hier is dat 80 cm, en de tafelrijen staan ook dichter op elkaar. Ook hebben ze geen echte tafels, het zijn europallets met planken erop. Het resultaat is dat je eigenlijk veel te laag zit omdat de tafel te hoog is. Je mag wel je eigen bureaustoel meenemen, maar dat is niet echt een optie als je met 80 man in een bus moet. Verder is het vrijwel continu behoorlijk lawaaierig, zeker in hal D.

Over de hallen gesproken. Het gebouw waar Dreamhack in gehouden word, is een soort Jaarbeurs (Utrecht) achtig complex. Er zijn 4 grote hallen aanwezig, en een aantal kleinere. Hal D is de grootste. Dreamhack is veel te groot om alle deelnemers in 1 hal te laten zitten. Zelfs in 2004 waren er al 2 hallen in gebruik. In 2007 was het hele complex al in gebruik, en dit jaar is er zelfs een groot stuk bijgebouwd, speciaal voor Dreamhack.

Hal A is de slaapzaal, Hal B, C en D zijn LAN-party hallen. Een groot gedeelte van hal B is ook de beurs/expo. Hal D is de grootste hal (ca. 5000 plaatsen) waar ook de "mainstage" staat. Zoals gezegd worden er ook optredens en shows gegeven op Dreamhack. Die vinden allemaal plaats in hal D. Dit is dus ook de lawaaierigste hal op Dreamhack. Het volume tijdens de optredens is namelijk aanzienlijk :P De meeste panorama foto's die je van Dreamhack ziet zijn van hal D. Dat komt doordat dit de grootste en mooiste hal is, en er bovendien tribunes aan de zijkant zijn waarvan je die mooie foto's kunt maken ;)

Wij zitten in hal B. Hier is het een stuk rustiger (maar nog steeds vrij druk), en er hangen enkele grote schermen waar alles wat er in hal D gebeurd live gevolgd kan worden. De game expo/beurs is ook in hal B. Hier staan onder andere Logitech, Asus, Telia, het zweedse leger, Coca Cola en nog veel meer. Hal C tenslotte is de die-hard gamehal. Hier is het vrijwel helemaal stil, en is dus de ideale plek voor pro-gamers. Hier zitten ergens rond de 2000 man. Hier worden ook diverse tournaments gehouden, waarbij prijzen te winnen zijn die net ff iets verdergaan dan alleen een moederbordje.

Verder zijn er nog ruimtes waar bijvoorbeeld wedstrijden te volgen zijn. Ook worden er diverse demonstraties gegeven over van alles. Zo zijn er "bekende" pro-gamers die vertellen hoe het toch komt dat ze zo goed zijn. Best grappig om te zien.

Er is 1 grote arena waar de finales te zien zijn van de game tournooien. Dit is zo'n grote happening, dat je er aparte tickets voor moet kopen. Bizar toch? :P Er is plaats voor een paar duizend man. Dankzij onze sponsoren hebben wij er ook tickets voor. Morgen worden de finales gespeeld, dus ik ben benieuwd.

Techniek
De techniek die hier op Dreamhack gebruikt wordt is te waanzinnig voor woorden. Om te beginnen het internet. Waar je in Nederland op een LANparty een kabel of ADSL lijntje (of als je geluk hebt glasvezel) met alle deelnemers moet delen, is er op Dreamhack voor iedere deelnemer een volledige 100mbit internetverbinding beschikbaar. Ik weet niet wat de totale uplink capaciteit dit jaar is, maar het is meer dan 100 Gbit/s. Er zijn ook Gbit plaatsen te verkrijgen, maar hier moet je extra voor betalen. Maar dat betekend wel dat je dus een volledige 1000/1000 mbit internet verbinding hebt.

Dan is er de mainstage. Zoals eerder verteld zijn er diverse optredens en shows. Het podium dat hiervoor opgebouwd is, is groter dan ik op sommige dancefeesten in Nederland heb gezien, inclusief een dikke geluidsetup waar Emporium nog iets van kan leren, een dozijn lasers en een gigantische lichtshow. Alle camera's en beamerschermen (stuk of 20 op het hele event) zijn full-HD en van topkwaliteit. De meeste optredens zijn live op Youtube te volgen in full HD. Zelfs de airco is bijzonder, waardoor de temperatuur (tenminste hier in hal B, in hal D is het wel wat warmer) zeer aangenaam is. Het gebouw wordt op temperatuur gehouden door koelwater afkomstig van een vlakbij en iets hoger gelegen meer. Hierdoor is de koeling zeer energiezuinig.

LAN-party of Hardstyle feest?
Gisteravond stond er hollands glorie op de mainstage, namelijk Headhunterz. De toeloop was enorm, en hal D veranderde in een dik hardstyle feestje, compleet met lasers en een lichtshow die net niet het niveau heeft van Qlimax, maar er dicht in de buurt zit. Je kunt je afvragen wat zoiets op een LANparty doet. En dat deed ik dus ook, maar het was best leuk om te zien en de sfeer was uitstekend. De dikke bassen waren tot ver buiten hal D te voelen. Al met al best aangenaam dus ;)
Maar het blijft vreemd om te zien: Je kijk naar voren en je ziet Headhunters met een dikke show, een dikke stuiterende menigte (ca 1000 man) ervoor, en vervolgens kijk je opzij en je ziet iemand een potje Starcraft spelen. Weird. Die jongen hoort echt niks van z'n spelletje, hoe goed je headset ook is ;)


Verslag van onze trip naar Dreamhack in 2004 (30 mins)



Pack4Dreamhack Winter2012 opening Movie



Headhunterz @ Dreamhack winter 2012


Heel veel foto's: https://www.facebook.com/Pack4DreamHack/photos_stream

Howto: Infinite scroll in Jquery

Door onok op vrijdag 12 oktober 2012 21:35 - Reacties (13)
Categorie: Webdevelopment, Views: 4.840

Ik heb al een tijdje niet meer geblogd, dus het wordt wel weer een keer tijd :)
Deze keer een blokje in de categorie webdevelopment. Heb je niks met javascript, dan zou ik deze vooral skippen :)

Ik wil een uitleg gaan geven over hoe je op een webpagina een zogeheten "infinite scroll" maakt. Wat bedoel ik daarmee: Stel je hebt een pagina met een hoop content. Bijvoorbeeld veel reacties op een nieuwsitem. Een leuk effect is dan om dit in stukjes in je pagina te laden, ipv. alles in 1x. Dit zorgt ervoor dat je pagina sneller aanvoelt. Bovendien kan het serverload schelen. Bekendste voorbeelden zijn Facebook en Twitter. Tweets en updates worden niet allemaal in 1x geladen, dit zijn er immers veel teveel. Er worden er pakweg 20-50 geladen, en vervolgens als je naar beneden scrollt, wordt de volgende batch (ofwel pagina) geladen en direct eronder getoond.

Er zijn wel plugins voor, maar ik vind het steeds vaker leuk (en vooral leerzaam) om zulk soort dingetjes zelf te maken. In dit geval bleek het zelfs best simpel :)
In deze How-to gaat het voornamelijk om de javascript (JQuery), de achterliggende server(php,asp, whatever) code mag je zelf uitzoeken ;)

Wat gaan we precies maken?
Ga er vanuit dat je een simpel HTML element hebt, waarin je de content laad. Het makkelijkst is een divje.

HTML:
1
<div id="mycontent"></div>

Het werkt het makkelijkst om deze div een vaste hoogte en breedte geven. Belangrijker is om er "overflow: auto;" aan toe te voegen.
In je CSS ziet het er dus zo uit:

Cascading Stylesheet:
1
#mycontent{width800pxheight600pxoverflowauto;}

Ik ga verder niet teveel op de styling in, dit kun je zelf aanpassen aan je wensen. Zelf pas ik de hoogte en breedte met javascript aan zodat dit m'n beeld uitvult. Maar dat is voor dit voorbeeld niet belangrijk.

Normaal vul je deze div met de html, je items / reacties. We gaan er in dit voorbeeld even vanuit dat dit een list is (<ul>) met een hele hoop list-items (<li></li>). Maar het kan het zo goed een lijst met div's, img's of een table zijn.

Deze div gaan we nu met ajax calls vullen. We gaan 10 items per keer laden. Je kunt dit aantal zelf aanpassen. Als je kleine stukjes tekst hebt (Tweets bijvoorbeeld) is een groter aantal beter, maar je kunt het ook met foto's doen, en dan is 5 of 10 wel een mooi aantal. Experimenteer gewoon en kijk wat het beste past bij jouw situatie.

Voordat we naar de javascript gaan, moet je dus eerst aan de serverkant ervoor zorgen dat je van je lijst stukjes kunt laden, ipv. alles in 1x. Ik ga er even vanuit dat er PHP gebruikt wordt.

Aan de serverkant
Ik verwacht dat de meesten wel weten hoe je een lijst met items in meerdere pagina's kunt opdelen, maar voor degenen die het niet weten even een korte uitleg.
Stel, je hebt het volgende stukje php code om de lijst te laden:

PHP:
1
2
3
4
5
6
7
8
9
10
<div id="mycontent"></div><ul>
<?php

$result=mysql_query("SELECT * FROM mytable");
while ($row=mysql_fetch_array($result)){
    echo '<li>'.$row['itemname'].'</li>';
}

?>
</ul></div>

We hebben een querystring variable nodig om te bepalen welke "pagina" er geladen moet worden. Deze noemen we simpelweg 'p'. Deze gaan we straks dus ook in javascript gebruiken.

PHP:

1
<?php
$p = intval($_GET['p']);
?>

De PHP functie intval zorgt gelijk voor de input validatie. Ik weet nu 100% zeker dat $p altijd een integer is. Die hoef ik straks dus niet meer te escapen.
Vervolgens kunnen we het stukje LIMIT van de mysql query gaan opbouwen:

PHP:

1
2
<?php
$p=$p<1 ? 1 : $p;
$limit=($p*10)-10 . ",10";
?>

Korte uitleg: Als $p kleiner is dan 1, wordt deze 1. Ik begint bij het tellen van pagina's altijd bij 1 en niet bij 0, dus 0 wordt 1. Dat hoeft niet per se, maar vind ik zelf makkelijker. Vervolgens wordt het $limit stukje opgebouwd (start,aantal) wat je aan je mysql query kan plakken. Je kunt hier verder nog een stukje validatie bijmaken dat er voor zorgt dat $p niet groter kan zijn dan het totaal aantal pagina's, maar ga ik verder nu niet op in.
Vervolgens moet je alle HTML code weghalen die je maar 1x nodig hebt en dus niet bij iedere pagina. Het resultaat is als volgt:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
<?php

$p = intval($_GET['p']);
$p=$p<1 ? 1 : $p;
$limit=($p*10)-10 . ",10";

$result=mysql_query("SELECT * FROM mytable LIMIT ".$limit);
while ($row=mysql_fetch_array($result)){
    echo '<li>'.$row['itemname'].'</li>';
}

?>

Met de bovenstaande code worden er steeds maar 10 items geladen. De querystring variabele p bepaalt of dit de eerste 10 items zijn, de 2e 10 items, enz.

Zo, heb ik toch een stuk servercode gedaan. Krijg je cadeau :P

De javascript

Dan nu aan de client kant. We passen onze HTML aan zodat we het <ul> element en het <div> element hebben. Die hebben we immers weggehaald bij het stukje php-code dat aangeroepen wordt tijdens de AJAX calls. De HTML wordt dus:

JavaScript:
1
<div id="mycontent"><ul></ul></div>

Dan komt nu de magie. In Jquery hebben we de functie .Scroll() nodig. Deze wordt bij iedere scroll-actie aangeroepen. Dit kan een muiswiel-scroll actie zijn, maar ook het schuiven met de balken, of javascript-scroll actie werken. In javascript:

code:
1
2
3
$("#mycontent").scroll(function(){
// functie komt hier
});


Ik kwam er echter al snel achter dat het event heel vaak achter elkaar fired - oftewel: de functie wordt heel vaak achter elkaar aangeroepen als je een keer scrollt. En we willen straks niet dat er 10-tallen ajax-requests achter elkaar worden uitgevoerd. Om dit op te lossen gebruiken gaan we een techniek gebruiken die ook wel throttling wordt genoemd. We gebruiken de timer functies van de browser om ervoor te zorgen dat een functie maar 1x wordt uitgevoegd ipv. heel vaak. Dat kan bijvoorbeeld zo:

JavaScript:
1
2
3
4
5
6
7
var mouseScrollTimeout;
$("#mycontent").scroll(function(){
    window.clearTimeout(mouseScrollTimeout);
    mouseScrollTimeout = window.setTimeout(function(){    
        // functie komt hier
    },30);
});

Dit stukje zorgt ervoor dat mijn functie niet vaker dan 30 miliseconden wordt uitgevoerd. Dit getal lijkt laag, maar in dit voorbeeld ga ik zelfs dubbele throttling gebruiken, namelijk ook nog een keer bij de daadwerkelijke ajax-call. De exacte timing is iets waar je zelf mee moet expirimenteren in de browser. De waardes uit het voorbeeld zijn ook de waardes die ik in m'n eigen projectje gebruik.

De volgende stap is kijken wanneer we precies een ajax call moeten doen om meer content te laden. We willen dat immers pas doen als iemand bijna aan de onderkant van de lijst is, en niet bij elke scroll actie. Er zijn meerdere manieren om dit te doen, maar ik doe het als volgt: Ik kijk eerst hoe hoog alle elementen die al in de lijst zitten bij elkaar opgeteld zijn. Vervolgens gebruik ik de JQuery functie .scrollTop() om te kijken hoever er al naar beneden gescrollt is. De hoogte van de elementen bij elkaar optellen gaat als volgt (en ik heb er even een aparte functie voor gemaakt voor de overzichtelijkheid):

JavaScript:
1
2
3
4
5
6
7
function GetListHeight(){
    var h=0;
    $("#mycontent li").each(function(){
        h+=$(this).height();
    });
    return h;
}

Je selecteert alle <li> items, gebruikt de functie .height() om de hoogte in pixels uit te lezen, en je telt ze bij elkaar op voor alle items in de lijst. Simple as that. Je kunt immers niet $("#mycontent").height() gebruiken, omdat hier in ons voorbeeld altijd 600 uitkomt. Als je het op deze manier doet gelden wel een paar voorwaarden: de <li> items moeten allemaal block elementen zijn (display: block;), en ze mogen geen padding of margin hebben. De functie .width() berekend namelijk de hoogte zonder margins en paddings. Omdat je dit waarschijnlijk wel wil hebben kun je 2 dingen doen: Of je stopt nieuwe blok elementen (bijvoorbeeld een div) in elk <li> element, die je vervolgens de juiste paddings en margins geeft (dus dit in je php code doen: <li><div>itemnaam</div></li>), of je past de bovenstaande GetListHeight() functie aan zodat van elk <li>-element de paddings bij het totaal opgeteld worden. De eerste manier is makkelijker.

Goed, we kunnen nu de hoogte van de lijst berekenen, en we weten hoever we naar beneden gescrolld zijn. Door de totale hoogte van de scroll-top af te trekken, weten we hoever we van de onderkant van de lijst afzitten. En dat getal hebben we nodig. Als dit getal onder een bepaalde waarde zit, gaan we de ajax-call doen en meer items toevoegen aan onze lijst.

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
var mouseScrollTimeout;
$("#mycontent").scroll(function(){
    window.clearTimeout(mouseScrollTimeout);
    mouseScrollTimeout = window.setTimeout(function(){    
        if (GetListHeight()-$("#mycontent").scrollTop()<1500){
            var page=$("#mycontent li").length/10+1;
            $.get("http://mijnurl.nl/index.php?p="+page,function(data){
                $("#mycontent ul").append(data);
            });
        }
    },30);
});

Het getal 1500 is ook weer iets waarmee je moet expirimenteren. Het hangt ook af van de hoogte van je $("#mycontent") element. Verder zie je dat ik op regel 6 bepaal welke pagina er precies moet worden geladen, simpelweg door het aantal <li> items te tellen, dit delen door 10 (we doen immers 10 items per "pagina"), en +1 voor de volgende pagina. De response die je krijgt is als het goed is de html van de volgende 10 items van de lijst, en deze voeg je simpelweg toe aan de lijst met .append().

Er is nog een kleine toevoeging nodig, want met de bovenstaande code krijg je nog steeds veel te veel ajax calls, en ook meerdere calls tegelijk. En vooral dat laatste moeten we niet hebben, want je zult zien dat je dan items dubbel te zien krijgt. Om dit op te lossen gebruik ik een 2e throttle, zoals ik al eerder zei.

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var loadMoreLoading=0;
var mouseScrollTimeout;
$("#mycontent").scroll(function(){
    window.clearTimeout(mouseScrollTimeout);
    mouseScrollTimeout = window.setTimeout(function(){    
        if (GetListHeight()-$("#mycontent ").scrollTop()<1500){
            if (!loadMoreLoading){
                loadMoreLoading=1;
                var page=$("#mycontent li").length/10+1;
                $.get("http://mijnurl.nl/index.php?p="+page,function(data){
                    $("#mycontent ul").append(data);
                    setTimeout(function(){loadMoreLoading=0;},1000);
                });
            }
        }
    },30);
});

Dit is een beetje dirty code, maar het principe is duidelijk denk ik. Ik gebruik een javascript variabele loadMoreLoading om aan te geven of er een ajax call bezig is. Ook wordt deze variabele pas weer na 1 seconde na een afgeronde ajax-call teruggezet. Het resultaat is dat er geen nieuwe ajax calls gedaan worden als er al 1 bezig is, en dat er niet meer dan 1x per seconde een nieuwe call gedaan mag worden.

In de globale opbouw van je pagina moet je er natuurlijk eerst voor zorgen dat de eerste 10 items worden geladen, anders moet een gebruiker eerst in een leeg vak scrollen :+ maar ik denk dat het idee wel duidelijk is. Je moet er ook nog voor zorgen dat er een detectie is wanneer je aan het einde van de lijst bent (als er dus niet meer items zijn). Maar dat laat ik aan jezelf over ;)

Dit was m'n eerste HOWTO, dus als ik dingen kan verbeteren hoor ik het graag. Als de reacties positief zijn zullen er meer volgen ;)

Diablo 3 failz

Door onok op maandag 21 mei 2012 14:20 - Reacties (9)
Categorie: Games, Views: 5.624

Zoals je vast niet ontgaan is, heeft de langverwachte launch van Diablo 3 nogal wat probleempjes gekend. Overigens niet geheel onverwachts.

https://encrypted-tbn3.google.com/images?q=tbn:ANd9GcS_jXzEdgKx9V243NdVGJ76o_yxhxLrZvOnUGGoOAijJ2QhnB5_Ig

Het levert wel een hele hoop leuke plaatjes en filmpjes op. Ik heb ze voor uw viewing pleasure verzameld. Have phun :)

(en als je er nog meer kent, post ze dan vooral in de reacties)

Filmpjes







plaatjes

http://farm8.staticflickr.com/7074/7210605762_525b3323b1.jpg

http://farm6.staticflickr.com/5155/7210363456_33760b366f.jpg

http://gamingillustrated.com/wp-content/uploads/2012/05/Error37Meme_6.jpeg

http://angryjoeshow.com/wp-content/uploads/2012/05/D3servers2.gif?9d7bd4

http://www.theshirtlist.com/wp-content/uploads/2012/05/Error-37-640x440.jpg

http://www.dorktower.com/files/2012/05/DorkTower10711.gif

http://cdn.memegenerator.net/instances/250x250/20438754.jpg

Ziek en Campzone

Door onok op maandag 01 augustus 2011 16:35 - Reacties (4)
Categorie: Persoonlijk en overige, Views: 3.469

Ik ben al een paar dagen ziek. Geen griep, want ik heb nauwelijks tot geen koorts. Een flinke, uit de hand gelopen verkoudheid. Keelpijn, dikke roggels ophoesten, je kent het wel. En totaal geen energie. Niet echt moe in de zin van ik moet slapen, maar totaal geen in om in beweging te komen, of om na te denken.

Normaal ben ik nooit zo lang ziek. Ik voel me wel eens een dagje niet lekker, maar zolang ik al voor dezelfde baas werk (bijna 5 jaar) ben ik nooit meer dan 1 dag achter elkaar ziek geweest.

De timing voor mij is echt slecht. Voor de baas minder erg omdat we nu net in een rustige periode zitten, maar slecht voor mij omdat ik net een weekendje Campzone had gepland. Ik was namelijk al 2 jaar niet geweest (Daarvoor was ik een die-hard campzoner vanaf editie 2). Dat had niet echt een specifieke reden, m'n interesse begon gewoon een beetje af te nemen, en meestal waren m'n vakantiedagen toch al op omdat ik andere dingen had gepland. Dit jaar begon het toch weer een beetje te kriebelen, maar ook nu weer waren m'n dagen op. Dus ging ik over tot het boeken van een weekendje.

Afgelopen donderdagmiddag begon het: keelpijn kwam opzetten, hoestbuien en een lichte hoofdpijn. Vrijdagochtend voelde ik me dermate kudt dat ik twijfelde of ik wel naar campzone zou gaan. Nou, dan ben ik echt ziek hoor! Ik werkte 2 paracetamol naar binnen en ben een uurtje gaan liggen. Warempel, in de middag voelde ik me al stukken beter en besloot toch om te gaan.

Vrijdagavond ging het allemaal prima. Zelfs nog zin gehad in een biertje, en ik ging pas 3 uur naar bed. Minecraft is fokking verslavend. Zaterdag voelde ik me toch weer vrij kut, ook omdat ik erg slecht geslapen had. Na weer een gram paracetamol ging het iets beter. Weer minecraft, maar deze keer geen bier en om 12 uur naar bed. Ik begon al te denken dat het verstandiger was geweest als ik niet was gegaan.

Gelukkig de 2e nacht iets beter geslapen, maar zondagochtend voelde ik me nog steeds niet heel jofel. 's Middags ging het alweer wat beter (zie je het patroon al?), en 's avonds sloot ik het weekend af bij m'n ouders met de jaarlijkse mosselen traditie. Dit keer met extra knoflooksaus, anders proefde ik natuurlijk niks.

Thuis heerlijk in de watten gelegd door m'n vriendin en na een heet bad vroeg naar bed gegaan.

Het is nu maandag, en ik ben nog steeds ziek. Toch heb ik stiekum geen spijt van Campzone ;)