Ramblings of a man
Zever van een kieken klinkt niet zo goed
zondag, september 20, 2015
  Barcelona day two

For people who like abstract art, the Miro museum is a real treasure. For people who like sports there is the Olympic stadium. And for the people who like nature there are beautiful gardens. All on Montjuice.

Readers who are asking why i change to English, that is because my Spanish isn't good enough to make a decent article.
Like The Netherlands who seem to learn everyone dutch, Spain is making everyone talk Spanish. For some reason it seems more mandatory than France, Germany or the UK with their language.

But i don't fear the task, i welcome it. The more I know the more i can use.

After my siësta i went to Badalona to eat by the sea but i couldn't find the place with the right vibe so I folded back to my favorite Barcelona quarter, Passeige de Garcia. Met an American in my favorite tapas bar. Are all the Americans named Bill, or just the ones that come oversea?
Anyway it was a pleasant conversation.

Then i searched for a good place to get a night cap, so I found a terras an went into the place. Asked for a good rum, ron in Spanish, and just sat at the bar.
Some guy came inside, asked if they spoke English, No habla of course. And the real insult was they looked for another bar. Try that in any bar anywhere in the wold and they send you in the wrong direction. But the people were correct and that is for me a good indication how people from Barcelona act with visitors. It's such a visited place they accept stupid behavior from tourists.

These two days where the weekend for people from Barcelona, so I guess they also mingled with the tourists. Lets see who tomorrow goes. Mondays are always a good way to see people in their day to day rhythm.

 
zaterdag, september 19, 2015
  Eerste dag in Barcelona

Zoals mozes van de berg kwam met de tien geboden, ging ik het avontuur aan om van mijn hotel naar het strand te gaan.

Het eerste wat me opviel is dar Barcelona overal goed geregeld is. Er is veel groen zodat je geen benauwd gevoel heb die je krijgt in steden met voor het merendeel steen en glas. Daarnaast vind je ook overal afvalcontainers. In de Barelona versie van linkeroever staan die op straat en bij de chiquere wijken zijn ze ondergonds. Maar ze staan wel overal en dit heeft volgens mij het effect dat je geen zwerfvuil ziet. Bij ons zijn gewone vuilbakken veel te klein maar zelfs glascontainers worden met moeite leeg gemaakt.

Het strand vinden in een stad waar de bergen uitlopen tot de zee is niet zo gemakkelijk. Ik dacht naar beneden blijven gaan en eens je beneden bent zal het strand wel niet ver af zijn. Barcelona lachte in zijn vuistje.
Na ik tegen een grote bouwplaats uitkwam die in mijn weg stond kon ik oversteken op een voetgangersbrug. Maar het desolate van de bouwwerf was een voorproefje van een parking die in Belgïe gewoon niet kan bestaan omdat de plaats ervoor niet bestaat. Eens ik van de parkeerplaats af was kwam ik de busstelplaats tegen. Ik was dus in de industriële wijk van barcelona beland. En tussen al die magazijen zag ik het volgende.

Je zou denken dat dit een bokszaal is maar dit is het uithangbord van een restaurant. Dit was nog maar de eerste eigenaardigheid in een kwartier tijd.
Dit is een padje gelopen door de mensen van de buurt omdat ze geen zin hebben om de voetgangersbrug te nemen die naast de brug voo auto's staat. Niet lang hierna begon ik te duizelen van de warmte en dook ik de metro in op de paarse lijn naar Badalona Pompeu Fabra. Daar volgde ik een paar toeristen en kwam ik in de Nieuwstraat van Badalona. Op het einde van de straat zag ik de zee en dat was alles wat ik nodig had om ervoor te gaan. Ik heb wel nog even gestopt om een smoothie te bestellen die ik met veel genot opgedroken heb op een bankje dat het strand overzag onder een palmboom met papegaaien in. Na mijn siësta ging ik weer de stad in en heb ik voor het eerst kennis gemaakt met spaanse tapas. Ik heb op twee plaatsen geweest en ik was even voldaan als na een drie gangen maaltijd. Dus voor de rest van mijn vakantie elke avond tapas. Bij het terug komen zal ik weer iets raars, nu op de metro.
Het was warm. De laatste keer dat ik nog zoveel openbaar naakt zag was op Pukkelpop dit jaar en daar waren ze nog meer bedekt. Maar dat je slippers uitdoet omdat het te warm is dat lijkt me een overstatement. Om mijn avond af te sluiten ben in nog even blijven hangen in de velodrome net naast mijn hotel. het was net het Catalaanse kampioenschap piste rijden.
Een dagje de toerist uithangen door te proberen te doen alsof ik van Barcelona was heeft me een leuke dag bezorgd.
 
vrijdag, december 19, 2014
  ES6 head first

After being exited about the way the ES6 changes allows me to write cleaner code, it was time i actually wrote some.

The first problem: how do I write ES6 code which is usable today?

There are probably more options but traceur, 6to5 and typescript are the most common.

Typescript isn't an option I explored because next to ES6 syntax it adds its own. For example it has static typing, hence the name.

I tried traceur but the dealbreaker was the need of a runtime for the ES5 code.

So I will use 6to5. For modules you need to add requirejs but that is something I can live with.

The second problem: how do I structure my project?

I'm going to make a ES6 version of the livevalidation library because it is complex enough to go from babysteps to running.

The library usage needs ES6 syntax, this means the tests also need to be written in ES6.
Node supports ES6 using the --harmony flag, but it doesn't support all the 6to5 features.

The solution

This makes it easy to version the code.

Of course there is a node_modules directory, but which javascript project hasn't one these days.

The project setup

After npm init I run npm install 6to5 mocha should --save-dev

On line 7 you see the commands that transpiles the library and test code and starts the testrunner.

Start coding (tossing and turning)

The base of the validation library is the validate class that holds the checks you need to determine the form is valid or not.

The most used check Presence has following tests:

For the people who aren't familiar with mocha and should I will explain them briefly.
Should extends variables, functions and objects with a should namespace and in that namespace there are assertions that need to be met for the test to pass.
Mocha is a test runner that goes through all the files in the test directory and executes all describe function calls. The it function calls contain the actual tests.

As you can see above the there is one positive test and two negative tests.

You may have noticed I'm using the ES6 (fat) arrow function syntax. Why should I write function(){ when I can use less characters.
Line 1 is the ES6 module syntax.
The rest of the code must look familiar for people that used livevalidation and/or mocha-should before.

Now lets write the code to pass the tests.

I'm going to add the original code as a reference.

As you can see instead of using an object expression to create the class, the ES6 code uses the keyword class.

Another thing you might notice it uses a functioncreatelike syntax instead of a jsonlike syntax. The keyword static looks very recognisable for people who have used object-oriented languages.

The last ES6 syntax related code of the Presence method is the default value for the paramsObj.

As you can see the class method only contains the actual code, which makes it easier to read than the original code.

The last line of the class file is the ES6 syntax for modules. Each module can have multiple exports, but it can only have one export default.

Crawling

Now that I have written code you can find in all the ES6 tutorials let's go a step further with the Numericality method.

ES6 has the default parameters, but because it is a single parameter it will not keep the default values once you add an object in the function call.
To keep the defaults there needs to be a method that merges them with the object in the function call. A simple method for this is:

static mergeObj(out, replacements = null){
  if(!replacements){ return out; }

  for(let attr in out){
    if(replacements.hasOwnProperty(attr)){
      out[attr] = replacements[attr];
    }
  }

  return out;
}

This allows me to create a NumericalityConfig method which contains the defaults object and calls the mergeObj code.
Now I can write my tests.

There is only one positive test because the output of all the assertions is the same and there are 12 negative tests.
The ES6 syntax you can see in these test is a template string. Instead of writing "My name is " + name you can write `My name is ${name}`. It gives more context to the variable. Because a template string is executed directly you need to wrap it in a function to defer the execution.

Lets look at the code of NumericalityConfig and Numericality.

Again you see the method only contains the code needed to do the checks.
You also see that the error messages with a template string get called with the value(s) that are needed in the string.

Taking a break

If you would copy all the code and run the tests it would would fail. This is because I haven't shown you the error code of the validate class.

It already has been a lot to take in so I'm going to end it here. Later posts will show the other parts where ES6 improves the code.

 
woensdag, december 03, 2014
  Wearable revolutie

Velen denken dat er al te ver gegaan wordt met de fitnesstrackers en smartwatches, maar dit is maar een klein deeltje van wat er gemaakt wordt om gedragen te worden.

Laten we beginnen met de voeten. Hang eens iets aan je schoen om je prestaties bij te houden en je routes te onthouden.

Ben je niet zo sportief. Doe dan een paar rolschaatsen aan met elektrische aandrijving.

Wil je weten hoe de andere delen van je lichaam bewegen, hang een bewegingssensor waar je wil.

Er is zoveel plaats aan je rok of broekrand om dingen aan te hangen, waarom geen thermometer of uv meter en waarom geen lucht kwaliteits meter.

Om jewat meer zichtbaarheid te geven, doe eens een led lamp riem aan.

Fitnesstrackers zijn maar eenzijdig, dus waarom geen fitnesstracker met noodalarm. Nu het over veiligheid gaat geef me dan ineens maar een wachtwoord vervangende armband. Omdat je op je handen loopt doe eens een wandel houding verbeteraar armband aan.

Vergeet het uurwerk niet, maar waarom een smartwatch als je een zonnepaneel annex uurwerk.

Je smartphone vasthouden dat is niet meer van deze tijd, dus draag je de smartphone band.

Voor je vingers ga je low tech met pen/stylus ring en high tech met de smartring.

Waarom zou je handshoenen alleen maar aan doen bij koud weer als ze je muziek kunnen aansturen.

Waarom zouden halskettingen alleen maar mooi mogen zijn. Hang er eens een camera aan. En zorg voor je nek met nektracker.

Omdat google glas creepy is draag je beter een zonneklep.

Als je alles filmt wat voor je gebeurd waarom ook niet alles wat achter je gebeurd.

 
zaterdag, februari 19, 2011
  Bernard, me and my girl

Ik weet niet wat het is om een baby te hebben maar ik voel me wel als een vader waarvan het kindje de eerste nacht thuis is. Gisterenmiddag lijkt een eeuwigheid geleden.

Iets na drie uur kwam Bernard aan. Mijn zus haar honden, een kruising en een chihuahua, waren er ook omdat de laatste anderhalf jaar bij me heeft gewoond. De chihuahua zetten zijn muil open vanaf de deur open ging maar Bernard stond er nog een halve meter af omdat de kruising en meis hem aan het besnuffelen waren.

De kruising ging nog even de honden van de buur een deur verder verlekkeren door er wat dom naar te staren. Alsof hij wou zeggen, ik weet waarom jullie aan het blaffen zijn achter je omheining kijk naar mij ik ben vrij.

Vanaf de leiband werd verwijderd liep Bernard naar de keuken en liet hij zijn geurspoor na op een rieten stoel. We hebben hem dan maar snel buiten gelaten voor hij het hele huis begeurde.
Hij heeft later nog de zetel willen markeren maar daar waren we snel goenoeg bij of er zat niet meer genoeg in om zichtbaar te zijn.

In de tuin viel het op hoe hyperactief hij was. Het laatste platform van mijn terras is ongeveer een meter hoog maar in plaats van de trappen te nemen sprong hij er ineens op.

Aangezien het een jonge reu probeerde hij ook keer na keer meis te bestijgen, maar zij was daar niet van gediend dus blafte ze hem van haar af.

Nadat de vorige baasjes weg waren besliste ik om het energie niveau wat te verlagen door een wandeling te doen.
Wat een opluchting toen ik voorbij de blaffende honden van de buren ging en hij niet aan het hek begon te protesteren. De chihuahua heeft het gedrag van meis zo veranderd dat zij wel aanviel, dit ga ik haar moeten afleren want twee berners die gaan sleuren zouden me omver kunnen trekken.

Ik hield hem strak aan de lijn om hem naast me te laten lopen, ik was nog niet het nieuwe baasje. Toen we aan het deel van de wandeling kwamen waar ik de honden loslaat liet ik meis los en koppelde ik de uitrolbare leiband aan Bernard aangezien ik hem niet te ver wilde laten lopen en er toch nog wat controle over had.

Natuurlijk begon Bernard weer meis te bestijgen en je kon merken dat ze er niet graag bij was als hij in de buurt kwam. Zijn drang was zelfs zo groot dat hij zich uit zijn halsband wurmde. Berners hebben veel los vel tussen de onderkant van de muil en borst waardoor het lijkt alsof de halsband goed vast zit maar dat is niet het geval.
Toen hij dit wist is hij nog een tweede keer uit de halsband geraakt. Omdat ik zijn halsband op dat moment niet kon kleinder maken heb ik hem meis haar halsband aan gedaan.

Het laatste stuk van de wandeling ging al beter. We kwamen aan de hond in het begin van de straat en ze snuffelden allemaal door het hek. De chihuahua was eens onder het hek geraakt en toen wist hij even niet wat te doen. Maar voor hij weer kon beginnen blaffen heb ik hem er terug onder getrokken.

Eens thuis ging het spelletje van bestijgen en duracell konijn gewijs het huis verkennen verder. Eerst probeerde ik zelf nog het bestijgen te stoppen maar toen kreeg ik het idee meis op de zetel te laten liggen en haar van dat hoogte voordeel te laten profiteren om Bernard te tonen dat je geen huisgenote bestijgd.

Na een paar uur begon ik er zelf ongemakkelijk van te worden dus zette ik de bench op en stak hem erin. Hij werd gek en begon zich als een langdurig gekooid dier te gedragen. Ik haalde hem eruit en stak hem in de berging van de keuken. Daar was hij stil.

Aangezien ik geen eten meer in huis had ging ik naar de frituur. Ik haal meestal een curryworst voor de hondjes, zeg nu maar honden, doe hem in stukjes en geef het hen als ze koud zijn. Vanaf het eerste stukje dat Bernard kreeg had hij geen aandacht meer voor meis. De mens met het eten is altijd baas.

Na nog een paar uur van afbijten ging ik slapen en stak Bernard weer in de berging. Daar stonden nu ook zijn mand, zijn eten en een bak met water.
Om twee uur werd ik wakker en Bernard was aan het zeuren en af en toe aan het blaffen.

Ik liet hem uit de berging en nu begon hij door te krijgen dat hij het bestijgen maar beter laat. De foto is getrokken bij een van de laatste pogingen. Tot dan was het onmogelijk hem te fotograferen met een gsmcamera.

Rond een uur of vier ben ik dan terug gaan slapen en toen ik wakker werd zonder gegrom of gezeur te horen wist ik dat Bernard een nieuwe thuis had.
 
zondag, februari 07, 2010
  Plaatselijk sneeuwvlokje internet editie


Een video over een lang vervlogen man met een passie voor fotografie en sneeuwvlokjes.
 
dinsdag, december 15, 2009
  Drie voor een uitverkoop
druk treinverkeer

Al verschillende weken hoor ik 's avonds omroepen, wegens het drukke treinverkeer heeft de trein naar Kortrijk vertraging. De vraag die ik me stel is waar komt dat drukke treinverkeer vandaan? Als ik het niet mis heb wordt alle treinverkeer gepland zodat ze cijfertjes kunnen voorleggen van hoeveel mensen geholpen gaan worden en hoeveel er schade gaan ondervinden. Maar stel je voor dat er opeens spooktreinen gaan rijden.

Nee spooktreinen dat is wat teveel fantasie. Als alle treinritten van het personenvervoer gepland zijn dan moet het toch mogelijk zijn om de treinen voor het goederenvervoer er tussen te schuiven dus daar zou ook geen probleem van kunnen komen.

Het rare is dat er een staking is geweest en dus zouden er minder treinen moeten rijden maar waarom roepen ze dan om dat er druk treinverkeer is? Is de omroeper een robot zonder realiteitszin en kraamt die maar wat uit als excuse?

Bereid de NMBS ons voor op de vrijmaking van het spoor waar verschillende maatschappijen op de sporen rijden en het aanbod zo vergroten dat de treinen bumper tegen bumper rijden. Stel je voor dat je treinticket dan ook maatschappij gebonden is zoals bij vliegtuigen, dan moet je zorgen dat je een uurregeling hebt van die maatschappij.

Wat als Ryanair Ryantrain wordt gaan we dan allemaal leuningen krijgen waar we moeten gaan tegen staan als plaats in de trein om maar zoveel mogelijk mensen per wagon te kunnen vervoeren. En een Qatar airways die Qatar trainways wordt waar je in een cocon zit met geprojecteerde beelden die je tot rust doen komen terwijl je het laatste nieuws leest dat geprojecteerd wordt op je hand terwijl je met de andere hand kaviaar op foie gras in je mond steekt.

Zullen er in de toekomst nog treinen zijn die zo een rigide spoor volgen zoals nu of zullen ze ooit treinen kunnen maken die over elkaar kunnen glijden omdat ze magnetisch worden aangedreven.

fluo fietsers

Waar komt de trend vandaan dat fietsers fluovestjes dragen?

Fluovestjes vallen op dag en nacht maar die rennerspakjes die de wielerliefhebbers aandoen vallen evengoed op. Het voordeel van de fluovestjes is dat ze nog niet zo aversie opwekken als de rennerspakjes. Mensen in rennerspakjes zijn de BMW/Mercedes/Porche/... bestuurders op de fiets. Autobestuurders, en zelfs busbestuurders, zouden ze nog liefst van de weg rijden en af en toe gebeurd het ook.

Fluovestjes verhogen de veiligheid door betere zichtbaarheid. Moesten ze nu airbags hebben dan zouden ze echt nuttig zijn. Ik zou liever een vest dragen met explosieven als ze bij een aanrijding of val me beschermt van groter gevaar van wat blauwe plekken, schaafwonden en gekneusde beenderen.

Volgens mij zijn fluovestjes asociaal omdat ze rekening houden met autobestuurders die zich zo weinig aantrekken van fietsers dat ze er niet opletten. Als er maar een klein lichtje is dan mag je er eens tegen botsen en daarna gewoon doorrijden. Zou het dan niet beter zijn om motolichten op de fiets te zetten want daar lijken autobestuurders wel nog respect voor te hebben.

Ofwel heeft de politie het opgegeven om fietsers te controleren op verlichting en gaat binnenkort een fluovestje gelijkgesteld worden aan fietsverlichting waardoor je de fietser maar opmerkt eens je erop schijnt.

Voor de duistere fietsers zal er in de toekomst een verlichting worden uitgevonden die alleen maar aangaat als er anderen in de buurt zijn. Ze zullen dan ook in luchtschrift berichten kunnen tonen of emoticons schijnen op de wolken zodat de m&m's je dag komen maken.

Plaatselijk sneeuwvlokje

Het moet zowat het meest poëtische zijn wat ik een weerman heb horen zeggen. Een plaatselijk sneeuwvlokje, kijk het dwarrelt neer in de grillige winterwind, het hangt aan een denneboom en die is nu oh zo mooi.

Bladeren van de bomen zijn even mooi en complex als ze van de boom vallen maar een sneeuwvlokje komt uit de lucht gevallen als bijbels mana. De mooie vorm is ontstaan in ijle lucht en wekt afgunst bij beeldhouwers en juwelenmakers.

Volg het plaatselijke sneeuwvlokje naar de pot met witgoud als je het grote geluk hebt het te zien. Je zou bijna sneeuwbuien gaan verwensen omdat ze het enkele sneeuwvlokje dat je een fortuin kan opleveren doen versmelten in een wit tapijt.

Ze zouden het spreekwoord beter een vogel in de hand dan tien in de lucht moeten aanpassen naar beter een plaatselijk sneeuwvlokje in de lucht dan een vogel in de hand. De vogel in je hand is gevangen en waarschijnlijk opstandig terwijl het sneeuwvlokje je vrij is en je het niet eens wil vangen want anders smelt het en dan ben je een mooie droom kwijt.

Een plaatselijk sneeuwvlokje is het aardse equivalent van een vallende ster. Misschien is de vader en moeder van het sneeuwvlokje wel een vallende ster en welke krachten zou het dan hebben.

Ik wens voor iedereen een plaatselijk sneeuwvlokje.
 

RECENT
WIDGETS
ARCHIEF
augustus 2006
september 2006
oktober 2006
november 2006
december 2006
januari 2007
februari 2007
maart 2007
april 2007
mei 2007
juni 2007
juli 2007
augustus 2007
september 2007
oktober 2007
november 2007
januari 2008
maart 2008
april 2008
mei 2008
juni 2008
juli 2008
augustus 2008
september 2008
december 2008
februari 2009
april 2009
juni 2009
december 2009
februari 2010
februari 2011
december 2014
september 2015