Techdays
Gisteren mocht ik voor het werk een dagje van de Microsoft Techdays bijwonen. Het was de eerste keer dat ik naar een Microsoft-event ging en had me eerlijk gezegd aan veel show en weinig inhoud verwacht. In sterk contrast tot JavaPolis Devoxx, waar er veel inhoud en weinig show is. Achteraf bekeken viel dit eigenlijk enorm goed mee. Enkel de keynote ging er wat over. Een Developer Evangelist of Regional Director moet echt niet als één of andere superster worden aangekondigd met loeiharde muziek en lichtshow, maar dat is mijn mening natuurlijk.
Na de keynote heb ik de sessie over C# 4.0 gevolgd en dat was erg interessant. C# 4.0 belooft weer een versie te worden om naar uit te kijken. Eén van de nieuwe features is het dynamic keyword. Dit zorgt ervoor dat je methodes op het object kan oproepen waarbij de compiler niet checked of deze effectief bestaan. De check wordt pas 'at runtime' gedaan. Dit is erg handig om te integreren met andere talen zoals Javascript en Ruby.
Een andere interessante feature is 'Generic co- and contra- variance'. Hiermee kan je in speciale gevallen casts uitvoeren zoals:
1 2 | var list = new List<string>(); (List<object>)list; |
Ook optional en named parameters behoren tot de nieuwe features. Dit is ook erg interessant. Bekijk dit voorbeeldje:
1
2
3
4
56
7
| public void Order(string name, int amount = 2, int discount = 0) { ... } Order("jeroen", dicount: 5); // the first param - name - is not optional so a value must be supplied.// the second param - amount - has default value of 2 which we want to use // the third param - discount - has a default value of 0 but we supply 5 |
Enkele belangrijke punten bij het gebruikt van deze feature zijn wel dat je parameters absoluut als constante moet beschouwen. Je kan na verloop van tijd in veel gevallen immers niet zomaar de standaard waarde van een parameter aanpassen. Als je in voorgaand voorbeeld de default value van amount zou wijzigen in 3 zouden er plots veel klanten 3 items bestellen in plaats van 2. Ook is het wijzigen van de naam van een parameter niet meer zo vanzelfsprekend omdat deze naam nu ook buiten de methode wordt gebruikt.
ASP.NET MVC 1.0 Quickly
Today I was pretty surprised when going through my feeds to read that a friend of mine, Maarten Balliauw, has a written a book. The title of the book is ASP.NET MVC 1.0 Quickly:
It’s been quite a job, but there it is: Packt just announced my very first book on their site. It is titled “ASP.NET MVC 1.0 Quickly”, covering all aspects ASP.NET MVC offers in a to-the-point manner with hands-on examples. The book walks through the main concepts of the MVC framework to help existing ASP.NET developers to move on to a higher level. It includes clear instructions and lots of code examples. It takes a simple approach, thereby allowing you to work with all facets of web application development. Some keywords: Model-view-controller, ASP.NET MVC architecture and components, unit testing, mocking, AJAX using MS Ajax and jQuery, reference application and resources.
I always thought, and still think, that writing a book is a massive amount of work. Therefore i really have a lot of respect for people that have the courage to actually write a real book.
In his blogpost Maarten explains why and how he wrote the book. According to his time tracking software, it took him 100 hours to write the book, which is far less than i would expect. On the other side, if you can only use spare time to do the work, it is a lot of time. Maarten also explains that he used Subversion to keep his work versioned and that some people laughed at him for doing so. I don't think this is such a strange idea. If I ever would write a book (consider the chances small...), I certainly would use Subversion, or a similar tool, to store my work. In fact, when my girlfriend wrote her paper for her last schoolyear I also made her use Subversion to store her word-documents. But i do find it strange that you write a complete book in Word (which is a word processor btw, not a text editor ;) ).
I'm very curious to see and read the book. Btw Maarten, is that your own pair of glasses on the cover? Anyway, Congrats Maarten!
Weekendje Praag
Dit weekend hebben we nog eens een bezoekje gebracht aan Praag. Met een kortingsbon van bij de maaltijdcheques hadden we een goedkoop vliegtuig ticket gekocht en we konden logeren bij een Tsjechische vriendin van Tine. Toen we op de luchthaven aankwamen zagen we dat ons vliegtuig met 45 minuten vertraging zou vertrekken. De geruchten gingen dat de vliegtuigmaatschappij waar we mee vlogen op de rand van het faillisement staat en dat ze 9 vliegtuigen tekort hebben. Uiteindelijk hebben ze dan toch een Bulgaars vliegtuig gevonden waarmee we veilig en wel in Praag zijn geraakt.
Hoewel ik 8 jaar geleden al wel eens in Praag was geweest op eindejaarsreis, herinnerde ik mij toch niet veel meer van de stad. Met onze Praagse vriendin hebben we vooral veel door de stad gewandeld om het globale stadsbeeld te bekijken. Aangevuld met aardig wat pub-bezoekjes om af en toe terug op te warmen. Vrijdagavond zijn we ook nog eens goed in het nachtleven gedoken om al de vrienden en vriendinnen te leren kennen de Tsjechische bieren en sterkere dranken te proeven. Becherovka is best te drinken.
Praag is best een mooie stad om eens een weekendje in rond te lopen. Het communistische museum vonden we wat minder en het joodse kerkhof is ronduit schandalig duur. De foto's vind je in het foto-album.
Talenfestival & FOSDEM
Talenfestival
Zaterdag hebben we het Talenfestival in Leuven bezocht. Hierop kon je met verschillende talen kennismaken in voorstellingen van telkens een uurtje. We hebben Oekraïens, Vlaamse Gebarentaal, Tshiluba en Esperanto gevolgd.
Het Oekraïens was best leuk om te volgen gezien onze geringe basiskennis van het Russisch. Het geschrift is voor het grootste deel hetzelfde en ook een groot stuk van de grammatica komt overeen. Wat mij als grootste verschil opviel is de andere uitspraak van verschillende letters.
De Vlaamse Gebarentaal werd gepresenteerd door twee mensen, een dove en een tolk. Ook dit was erg interessant omdat je onmiddellijk ook twee mensen in het echt in gebarentaal kon zien communiceren. Ik heb er ook van bijgeleerd dat de grammatica van gebarentaal helemaal niet overeenkomt met die van het Nederlands. Zo begint men in een zin bijvoorbeeld met het woord dat het grootste object beschrijft.
Tshiluba is een taal uit de Bantu-familie die in Congo wordt gesproken. Ik dacht dat Russisch moeilijk was, maar tegenover Tshiluba (en vermoedelijk dus ook andere Bantu-talen), is het niets. In Tshiluba kunnen woorden in 7, 12 of 18 klassen worden verbogen (niet iedereen telt de klassen op dezelfde manier blijkbaar). Als een woord, ik denk het onderwerp, in een bepaalde klasse moet verbogen worden moet meteen heel de zin in die klasse verbogen worden. Opmerkelijk is ook dat woorden aan het begin worden verbogen en niet aan het einde zoals wij gewend zijn. Verder kunnen woorden samengevoegd worden, waardoor je iets in de stijl van 'dat is de plaats waar hij het aan hen gegeven heeft' als één woord kan zeggen. Zoek dat maar eens op in het woordenboek!
Het talenfestival werd georganiseerd door Esperanto3000, waardoor je hier en daar ook mensen onderling in het Esperanto kon horen spreken. Zelf heb ik al wel een langere tijd het idee om het eens te leren en was dus ook erg geïnteresseerd om de voorstelling van het Esperanto te volgen. Aan het begin van de voorstelling vertelde de presentator het verhaal over de Rattenvanger van Hamelen in het Esperanto met behulp van een beamer zodat we de prentjes en tekst ook konden zien. Vervolgens kregen we vrijwel alle grammatica die het Esperanto rijk (of arm) is uitgelegd, en werd er afgesloten door het verhaaltje nog eens voor te lezen, waardoor echt wel duidelijk werd hoe relatief eenvoudig deze taal in elkaar zit. Je kan Esperanto trouwens ook online leren op Lernu!.
FOSDEM
Dit weekend was het ook weer FOSDEM, de Free and Open Source Developers' European Meeting. Op dit twee dagen durende evenement in de VUB worden enorm veel presentaties, workshops,... gegeven over allerlei zaken die met Open Source te maken hebben. Eigenlijk is het de JavaPolis Javoxx van de Open Source, maar dan volledig gratis. De presentatie die me het meeste interesseerde ging over IronRuby. Toen ik echter om 9u (op een zondag!) op FOSDEM aankwam bleek dat deze voorstelling was afgelast omdat de spreker ziek was. Kan gebeuren natuurlijk... Voorstellingen die ik wel heb kunnen volgen waren: de inleiding in de Ruby-room, Prawn, Wine, OpenSUSE on netbooks, Ext4 en een basis inleiding tot objecten, classes en modules in Ruby. Thunderbird3 had ik ook graag gevolgd maar de zaal zat al snel volledig vol.
Natuurlijk zijn er nog tal van bij-activiteiten op FOSDEM, zoals een PGP Keysigning-party. Ook staan er tal van standjes van verschillende Linux distributies en andere Open Source projecten zoals PHP, MySQL, Haiku etc. Zo ben ik even langs de stand van Ubuntu-be geweest en met de hulp die ik daar heb gekregen werkt wi-fi op m'n laptop nu ook als ACPI niet aanstaat! Het was dus een druk maar leuk en leerrijk weekend.
Bestanden synchroniseren met Unison
Nu ik mijn laptop weer aan de praat heb gekregen en zowel m'n desktop PC als m'n laptop Linux draaien heb ik de manier waarop ik deze synchroniseer nog eens herbeken en aangepast. Toen mijn beide PC's windows draaiden maakte ik gebruik van Subversion, om de bestanden op de Desktop en Laptop te synchroniseren. Dit werkte vrijwel perfect om op beide PC's alle betanden te hebben en had als extra voordelen dat er een geschiedenis van wijzigingen werd bijgehouden (zo werkt SVN nu eenmaal) en, omdat de repository bij Dreamhost stond, dat ik ineens een off-site backup had. Er waren ook wel een paar nadelen aan verbonden. Om te synchroniseren moet je op beide PC's een svn commit doen en een svn update, soms meerdere keren als er op de beide pc's wijzigingen waren. Bovendien duurde het even omdat de wijzigingen moesten geuploaded worden naar Dreamhost en gebruikte ik het niet voor echt persoonlijke bestanden (bankafschriften etc) omdat de gegevens bij Dreamhost niet geëncrypteerd waren.
Nu gebruik ik twee aparte tooltjes voor enerzijds de synchronisatie tussen de twee pc's en anderzijds de off-site backup. Voor de backup gebruik ik Duplicity, waar ik niet verder op in ga. Voor de synchronisatie gebruik ik Unison. Unison werkt zowel onder Linux als onder Windows. Onder Ubuntu kan je het installeren (met GUI) door in de terminal sudo apt-get install unison-gtk uit te voeren.
Als je de GUI van Unison voor de eerste keer start wordt je gevraagd welke twee mappen je wil synchroniseren. Deze manier om Unison in te stellen is echter nogal weinig flexibel. Zelf bewerk ik altijd rechtstreeks de .prf bestanden van Unison. Deze zijn te vinden in /home/your-username/.unison/. Deze bestanden kan je in een text-editor zoals Gedit openen en bijmaken, op de pc vanwaaruit je de synchronisatie wil uitvoeren. In mijn geval start ik de synchronisatie altijd vanop de laptop dus het prf bestand staat op de laptop. Een voorbeeld van zo'n bestand ziet er als volgt uit:
1 2 3 4 56 7 8 9 1011 12 | # Unison preferences file root = /media/cryptdata root = ssh://192.168.1.112//media/DATA/ perms = 0 ignore = Path data ignore = Path _ARCHIVE ignore = Path music ignore = Path lost+foundignore = Path .Trash-* ignore = Path dev/repos |
Zoals je kan zien wordt de locatie /media/cryptdata (op de laptop) gesynchroniseerd met de locatie ssh://192.168.1.112//media/DATA/. Dit is een NTFS partitie die gemount is op /media/DATA op mijn desktop PC, die via OpenSSH bereikbaar is op ons lokale netwerk. Omdat de bestandsrechten op de NTFS partitie anders worden ingesteld dan op de laptop (Ext3) gebruik ik de optie perms = 0 zodat bestandspermissies worden genegeerd. Met de ignore-optie kan je bestanden en paden laten negeren, zoals je in mijn configuratie kan zien. Er zijn nog tal van andere opties die in de manual kan terugvinden.
Ik woon in Ekeren... naar mijn gevoel toch
Gisteres las ik op het weblog over Ekeren een interessant artikel: Respect voor de historische grenzen van de stad Antwerpen?. Het artikel behandelt de oorspronkelijke grenzen van Ekeren en hoe Ekeren alsmaar stukjes grond is kwijt geraakt. Zelf heb ik sinds mijn 3 jaar altijd in Ekeren gewoond, tot we vorig jaar een huis kochten. Dat ligt toevallig in de wijk Schoonbroek, waardoor we plots niet meer in Ekeren wonen maar in Antwerpen (3). Wij zijn echter voor zowat alles afhankelijk van Ekeren. De bibliotheek, de winkel, het café en jeugdhuis, ... Als mensen mij vragen waar ik woon zeg ik ook altijd Ekeren. Niet omdat ik niet wil zeggen dat ik eigenlijk in Antwerpen woon, maar gewoon omdat dat hetgene is dat er automatisch het eerste uitkomt. Naar mijn gevoel woon ik nog steeds in Ekeren en heb ik niets te maken met 't stad. Behalve dan dat ik plots op de luchtbal naar het districtshuis moet (waar de mensen overigens wel erg vriendelijk blijken te zijn). En dat we ook geen uitnodiging meer zullen krijgen voor de lentedrink van Ekeren (hoewel ik daar als ondervoorzitter van het jeugdhuis in Ekeren wel zal binnengeraken ;)).
Ik vraag me ook af hoe het juist zit als we binnen dit en enkele jaren zouden trouwen. Vermoedelijk moeten we dat dan op het stadhuis gaan doen. Dat zouden we erg spijtig vinden, want het park van Ekeren met het districthuis is zoveel mooier, gezelliger en dichter bij huis, dan het stadhuis waar we ons niet 'thuis' voelen.
Ik ben Ekerenaar en daar blijf ik bij
Update: Nog een interessante post over de situatie: De gemeentegrenzen van Ekeren voor en na 1929
Full Circle Magazine
Het Full Cirlce Magazine is een online tijdschrift dat iedere maand verschijnt en hoofdzakelijk artikels bevat die iets met Ubuntu te maken hebben. Omdat ik tegenwoordig nogal veel op de trein zit, zo'n 2 uur per dag, heb ik een tijdje terug alle 20 edities die momenteel verschenen zijn op mijn laptop gezet. Op die manier heb ik wat leesvoer op de trein. Vanaf editie 13 staat er een korte cursus in over The Gimp, waar de basis wordt uitgelegd om foto's te bewerken met The Gimp.
Hoewel ik The Gimp al verschillende jaren op m'n PC heb staan, ken ik er eigenlijk bitter weinig van. Zowat het enige wat ik er tot hiertoe mee deed was het bijsnijden van foto's en tekeningen. Tot daar mijn kennis... Ik was dus wel geïnteresseerd om eens wat meer te leren over The Gimp en heb de 8 verschillende episodes de voorbije weken doorgenomen. De artikels gaan niet echt diep in op de onderwerpen en raken maar aan een hele kleine fractie van de mogelijkheden van The Gimp maar het is wel een leuke introductie. Zo weet ik nu bijvoorbeeld hoe je één object in een foto zijn kleur kunt laten behouden en al de rest in het zwart/wit zetten. Voor de kenners is dat vanzelfsprekend a piece of cake, maar voor een beginner als mij was het een hele openbaring!
Het resultaat kan je hier zien:
. De foto is er overigens eentje dat ik heb getrokken op onze tweede reis naar Rusland in één van de straatjes van het erg mooie Suzdal (Су́здаль). Hier en daar zijn er stukjes van de auto, vooral het wiel, hun kleur kwijt, maar 'Gimpen' op een schokkende trein met enkel een touchpad is dan ook niet eenvoudig...
Nu ik deze basis heb doorgenomen ga ik mijn del.icio.us toch nog eens opentrekken en de andere Gimp-cursussen die ik daar al lang geleden heb ingestoken eens doornemen.
Touchpad ontdekking
Enkele dagen geleden heb ik toevallig een kleine functionaliteit van het touchpad op mijn laptop ontdekt. Zoals iedereen wel weet kan je je muispijl bewegen door je vinger op het touchpad van een laptop te plaatsen en met je vinger te bewegen. Links klikken gaat ook door je vinger even op te heffen en zachtjes op de touchpad te tikken. Wat ik echter niet wist is dat je ook met twee vingers tezamen kan tikken. Dit komt overeen met een middelklik van de muis (=klikken met het scrollwieltje). Ook met drie vingers tikken is mogelijk, wat een rechtse klik geeft.
Ik weet niet of dit standaard is bij alle touchpad's en of dit zowel onder Windows werkt of misschien enkel onder Linux/Gnome/Ubuntu... Weet het mij te zeggen of het bij jou werkt als je het eens probeert :).
eMusic 2009-01
Bij legale muziek downloads denken de meeste mensen waarschijnlijk onmiddellijk aan iTunes. Er zijn natuurlijk nog andere online muziek winkels. Zelf gebruik ik sinds januari 2007 eMusic. In tegenstelling tot iTunes, waar je per liedje betaalt, werkt eMusic met een abonnement. Je betaalt per maand een vast bedrag en daarvoor kan je een vast aantal liedjes downloaden. De prijs per liedje hangt af van je abonnement, maar vrijwel altijd onder de €0.50. Zin om zelf eMusic eens te proberen? Laat het mij even weten zodat ik je kan uitnodigen en je 50 gratis liedjes krijgt in plaats van 25!
Mijn eMusic downloads voor januari 2009:
Anne Clark: 'The Smallest Acts Of Kindness'
Hoe ik hier juist ben opgekomen weet ik niet meer, want het is niet echt het soort muziek waar ik zelf naar op zoek zou gaan. Ik vermoed dat ik ergens iets gelezen heb over Anne Clark en het dan op eMusic heb opgezocht. De muziek bevalt me in ieder geval wel erg. De muziek valt vermoedelijk onder de categorie 'spoken word', hoewel eMusic het klasseert onder 'Punk'. Er zitten zowel rustige stukken in als iets heftigere, met veel invloeden van andere genres. Zo kan je er hier en daar wel wat electro en jazz in horen. Een echte aanrader.
Confetti's: 'The Sound of C'
Deze single zal ongetwijfeld geen introductie nodig hebben. Op eMusic is het terug te vinden in een album met 10 verschillende versies. Eén versie vind ik wel genoeg, dus heb ik de 'Original 88 version' gekozen.
Kenny Werner: 'Naked in the Cosmos'
Deze CD had ik een paar jaar geleden al eens bij de bibliotheek ontleend. Toen was ik nog maar pas aan mijn ontdekkingstocht door de Jazz-wereld begonnen en vond ik het niet zo goed. Ondertussen is mijn liefde voor Jazz enorm gegroeid en breder geworden. Pianist Kenny Werner speelt samen met het Brussels Jazz Orchestra en dat levert knap werk op.
Scott Hamilton: 'Nocturnes & Serenades'
De laatste tijd kan ik echt genieten van de rustige en warme klank van saxofoon. Bij dit album kan je, je lekker rustig neerzetten en gewoon genieten van de rustige ontspannende Jazz. De muziek doet mij denken aan 'Nocturnes' van bassist Charlie Haden. Niet alleen hebben de twee platen een stuk van de titel gemeen, ook de cover heeft wel wat overeenkomst.
Taraf de Haïdouks: 'Maskarada'
Taraf de Haïdouks is een groep muzikanten uit Roemenië die vooral Gipsy muziek spelen. Gipsy muziek kan soms vrij chaotisch overkomen en enorm druk zijn. Hier valt dat echter nogal mee. Het is vooral erg vrolijke muziek en is toch weer wat anders dan de Gipsy/Balkan muziek die ik al eerder kocht, zoals Fanfare Ciocarlia.
Ted Nash: 'Still Evolved'
Ook dit is een Jazz album. Ted Nash speelt saxofoon en wordt in 4 liedjes bijgestaan door Wynton Marsalis op trompet.
Groententuin: het plan
Toen we ons huis hebben gekocht had ik al vrij snel het idee om een kleine groententuin te maken. Naast ons huis hebben we een stukje tuin dat niet echt voor iets nuttigs wordt gebruikt, op het padje na. Het lijkt mij dan ook een geschikt plaatsje om eens een groententuin te proberen aanleggen. Een paar dagen geleden las ik op LifeHacker een artikeltje dat voorstelde om nu reeds aan de planning te beginnen. Ik heb het stukje beschikbare grond opgemeten en met behulp van de tuinencyclopedie gekeken welke groenten we willen zetten en hoeveel plaats ze allemaal ongeveer in beslag nemen. De groenten die we gaan proberen zijn een courgette-plant, tomaten, één of twee komkommerplanten, boontjes, uien, aardappelen, enkele chinese kolen, (krul)-sla en wortelen. Hoewel krulsla niet onze favoriete sla-soort is, lijkt het wel een interessante keuze als ik de tuinencyclopedie mag geloven. Het groeit sneller dan andere soorten en je kan het boven de grond afsnijden en weer laten groeien voor nog een krop.
Tips zijn altijd welkom :)
