I’m 30…

24 September 1983. I’m born.

Since then, damn, already 30 years… I’m not going to talk about my life, it’s not even interesting to myself. I’d rather give a brief history of the IT background I’ve learnt during the last 21-something years. It all started when I was 9, in the primary school classroom where my father had managed to have decommissioned Commodore 64 machines be given to the school.

71161commodore-64.system

This is the first machine I learnt to program, most probably on BASIC v2. The only “program” I remember writing was asking a single-question and produced an infinite loop of any ASCII char, the funniest being, of course, the filled-smiley.

Then came the DOS-based machines, an XT, then a 286, 386 and 486 at home. This 486 is the first machine I crashed, I was probably about 11 year old. At boot time, you have three choices: Yes, No or F1. Tried Yes, nothing happens. Tried No, nothing… Tried F1, all data lost and computer back to factory settings, content of the hard disk vanished. The 486 was of course the “family PC”, while the 286 was my own, and crashing it would have been far less problematic… Thinking about it today makes me smile, the now-me would probably be able to get the data back from the HDD and recover the machine rapidly.

12-14 year old, spend most of my time either cycling in the parks with friends or racing Grand Prix 2 on the family computer in the living room. Big fan of racing, but also big fan of cheating, I spent a lot of pocket money on Joystick, the only French-speaking magazine that provided cheat-codes along with game tests. 1997, internet becomes available for the public in Belgium. First MP3 downloaded from any website possible, taking on average 30min to 1hr to get 1 song. Rapidly abandoned the idea.Hours (and hours!) spent on Yahoo! Chat, together with my sister, chatting with anyone and everyone.

96b6uw

Around that age, I learnt how to create “applications” on Microsoft Access, building useful things like address books, invoice manager, and a new software for the school library. That was the first (and, uhm, the only?) time I’ve been paid for a programming work I’ve done. The old software was a DOS-based BASIC program using some DBF. I had to create a database-exporter from scratch in QBASIC before being able to import the book catalogue in Access. Fun, and long, too.

Carmageddon_2_in-game_screenshot_(Windows)

Carmageddon, THE ultimate racing game was the first game I really “hacked”. I loved spending dozens of minutes in a map, rather than the 3 minutes allowed on the “Race” mode. I discovered that once a race was initialised, the corresponding file was loaded and copied to some temporary location within the folder structure of the game on my Windows machine. Editing this file with notepad and reloading the race gave me 99 minutes of race, enough to crush all the characters present on the map. I did the same with Supreme Snowboarding, very funny to edit the physical properties of the snowboarders and of the boards. A negative friction value for a board was fun, but not really easy to drive!

Around 1999, first website hosted on http://hlm.le-village.net, some kind of community portal that tried to be a local Second Life. The hosting was free, no adverts. Microsoft Frontpage-powered website, that was! I remember being very proud of the counter! Yes, that was HTML, with a tiny little javascript to remove the adverts that finally appeared on the free hosting.

17 year old (almost 18), arrive at ULB, Science Faculty, Geology Department. Knows how to dismantle a computer, Windows, DOS, qBASIC, VB, Access, HTML and… that’s it. Fair enough, the IT-course exercises are to be done using TurboPascal. Quite easy, and funny to try creating 2 or 3 working codes using different levels of algorithms (1 for me, 1 for the others). 2005, I buy my first domain name, IDLY.be. Stands for I Don’t Like You. Still existing, but sadly unmaintained. IDLY was running on my own PHP-MySQL written CMS, until somewhere in 2008 when I installed WordPress. Since then, WP has been powering all my websites, from IDLY to this one.

wordpress-logo

2005, beginning of my Master Thesis, a colleague of the now-me tells me Python could be a great tool to analyse electrical resistivity tomographies, and so I jump in the Py-World. During 2005-2006, became a great fan of Enthought and Mayavi2, learned about Traits the hard way (documentation was inexistent). 2006, beginning of my PhD, can’t imagine using anything else than Python for the analysis of seismic and geophysical data. Whenever possible, I wrote IO-scripts for the necessary black boxes and generated my own graphical outputs. Beginning of 2007, started to think about a replacement software for the analysis of seismic waves in order to locate earthquakes. 2010 marks a big jump on this project with the first distribuable-version of the application. 2013, we use it in the daily routine for the last 3 years, I’m happy!

During the last 7 years, I’ve been advocating for Python, tirelessly answering the “Why Python?” questions. Python is now mature, and well established among the scientific community. For my needs, Python is not slow, and when it is, I always find ways to optimize it. Python is fun, but somehow hard to learn from scratch. Well it’s hard for those who haven’t programmed ever. For any PHP, C or Java coder, that’s probably really easy to jump in. While I continue to publish codes and tutorials on this website, I want you, reader, to understand that I don’t do it to advertise for Python. That is a side-effect, not the main one. The point is to provide useful examples to make your life easier, as they made mine. Nice if it’s with Python, but I don’t care if you implement it in your Excel or Matlab workflows.

I’m 30… I use Python every day. I code PHP for WordPress at least once a week. My desktop machine is Windows 7 and I develop on it. The servers are Linux, and that’s fine. And man!, I don’t see any reason 1) to change and 2) why I should convince people to do the same. I don’t care, at all!

 

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *

*