Peter Vandenabeele

About me

Having fun, always learning and making money along the way

I am Peter Vandenabeele, entrepreneur, father, sailor, developer, ... 46 years old. Currently having fun with the kids, Ruby on Rails and sailing.

Mission statement

My LinkedIn profile shows a list of previous and current occupations and projects. The professional mission statement I extracted from this is:

"Make and sell a product or service that users adore,

deliver it in an exceptional way,

have fun with it and while at it,

try a little improvement of the world."

Contact

My contact info is:

Don't hesitate to mail or call me with any question or feedback. Always trying to help.

Peter Vandenabeele

Check list voor zeilen

Dit is de Nederlandstalige versie van mijn check list voor het zeilen. Onderaan staat ook nog een lijstje met zaken die ik toelicht aan nieuwe mensen aan boord.

An english language version is here: check list for sailing.

1. Veiligheid/algemeen
2. Controle binnen in de kajuit
3. Voorbereiden zeilen
4. Voorbereiden van het uitvaren op motor
5. Toelichting voor nieuwe personen aan boord

Check list for sailing

This is my check list before sailing out.
Underneath is also my check list of items to explain to new people on board.

Een Nederlandstalige versie is ook beschikbaar: Check list voor zeilen

1. Security/general
2. Check inside
3. Prepare sailing on sails
4. Prepare sailing on engine
5. Explanation for new persons on board:

Program of the Ruby on Rails devroom at fosdem 2009

The program is ready for the Ruby and Rails devroom at fosdem 2009 (on Sunday 8 Feb 2009 09:00 - 17:00). It has come packed with 10 presentations (we had to reject a few abstracts to fit it all in 1 day). Last year we had 4 presentations, so interest is clearly going up. The program is available as flat text, odt and pdf.

http://vandenabeele.com/files/Ruby-Rails-fosdem-2009.txt

http://vandenabeele.com/files/Ruby-Rails-fosdem-2009.odt

http://vandenabeele.com/files/Ruby-Rails-fosdem-2009.pdf

Installing Ubuntu 8.04 on a Sony VAIO CR41Z/R next to Vista/Longhorn

Bought a Sony VAIO CR41Z/R yesterday in Fnac Leuven Belgium (999 EURO incl. VAT).
Nice machine :-)

Spent a few hours to get the _pre-installed_ Windows Vista (SP1) updated and less than 1 hour to get the Ubuntu 8.04 installed next to it.

Follow commercial ship routes (and ferries) with AIS

As I am preparing for the ROC VHF/SRC exam, I got more interested in marine electronics and safety systems. One aspect is that all new SOLAS ships over 300 gross tons since July 1, 2002 (and some other conditions as commercial passenger transport) must carry an AIS system (Automatic Identification System). This system will transmit (in channels 88A and 88B in the VHF range in GMSK, that is around 162 MHz) a signal that carries the position, course and speed of the vessel.

Trapeze

Terug van Bombannes, vlakbij Bordeaux. Een stage
Catamaran Perfection 2-3
gevolgd en voor de eerste keer trapeze gedaan op een Catamaran. Soms met 2 wanneer er volop wind was. Spijtig genoeg geen foto's beschikbaar (in het midden van het meer bij strakke wind op een Catamaran was een fototoestel niet echt aangewezen, mijn horloge ligt nu al ergens op de bodem), maar het ziet eruit zoals op deze video:

Workaround for an REXML bug in 1.8.6 (does not find non-namespace qualified attribute names)

I was fighting for some time with the problem that a certain type of XPath query did not work correctly in REXML Ruby 1.8.6. Specifically, this type of query

top_pattern = "//*[@id=\"content\"]"
REXML::XPath.each(xml_body,top_pattern) do |xml_entry|
...
end

did not yield any results if top_pattern selects based on attribute names. It did work when top_pattern only contained descriptions of the style:

top_pattern = "/html/body/table/tbody/tr[2]/td"

Shallow string copies in Ruby

I got stung today by the shallow copies in Ruby. The problem is demonstrated in this snippet:

a="raam"; b=a ; b.squeeze!; puts a # --> ram
a="raam"; b=a ; b[0..1]="tr"; puts a # --> tram
a="raam"; b=a ; a[0..1]="tr"; puts b # --> tram

What seems to happen is that b is only a shallow copy of a. Actually, this behavior is much closer to the string behavior that I know well from C/C++ programming than I had expected for a "pointer-less" language. So, it seems still usefull to understand pointers (and strcpy for that matter), even for Ruby...

Presentations thinktomorrow.eu online

The presentations from thinktomorrow.eu are online. This also includes my short presentation on allejobsinleuven.be among the elevetar pitches of Allejobsinleuven, Synergetics, Xpertize, Paladares, Wwaow, Wygwam, Whatever/Knowledge Plaza, iStockcv, IntroNiche and Winkwaves.