L-P Huberdeau


Diagnostics

Posted in General by Louis-Philippe Huberdeau on the September 27th, 2007

These days, due to my internship at Autodesk, my on-site availability is quite limited. The bad part is that after a deployment, quite a few questions come up and some minor corrections have to be made. Giving instructions over email to non-technical staff isn’t quite that easy, but it was easier than going on site. Of course, the problems came back and those procedures I was nearly 100% certain of didn’t work.

After going on-site today, I realized that the fixes were in fact correct. My failure was to provide steps to diagnose wether the fix worked or not. In order to process data properly, the system had to be placed in a state where some data had to be processed. Without this crucial step, there was simply no output.

Of course, I did have some real issues to fix and training to provide, but I did learn something today.

On a different kind of diagnostic, when analyzing a large code base and trying to find the location of branching between two behaviours is a lot easier by performing a diff on the backtrace than by walking in an interactive debugger. This is especially true if the diff tool can highlight differences within a line and not only the entire line. This way, you can see the changes in parameters passed to functions. I actually got the idea after reading Beautiful debugging in Beautiful Code. In the article, they use divide and conquer algorithms on the program states or change sets to identify bugs. That was a little too hard to set up and I wasn’t really looking for a bug, but it’s the kind of article that reminds you that tools can be combined in different ways.

CodeFest 2007 and OpenSource Collaboration

Posted in General by Louis-Philippe Huberdeau on the September 10th, 2007

When leaving RoCoCoCamp a few months ago, we began to think about holding an event to implement OpenID in multiple content management systems. CodeFest 2007 was born and is happened during the week-end. Saturday morning, 12 of us woke up early to get to work and some other joined later. Evan Prodromou, who implemented a Mediawiki to support OpenID a long time ago, gave us a presentation to explain the concepts. A total of 6 projects were represented, all of which now have a working implementation of OpenID, either client or provider.

  • Mediawiki
  • Tikiwiki
  • Xoops
  • WifiDog
  • Habari
  • Crash at mine

All projects encountered similar problems during the implementation. Being together certainly improved the quality of the products built and gave us confidence. At any time, we could ask if we were heading the right way. Evan was a great help. Since he went through all the steps before, he could answer the questions that came up when the first projects encountered them, which saved a lot of time.

Hopefully, there will be many more CodeFests. It’s good for the projects, it creates bonds between the communities and it’s a lot of fun. This really is all you need:

  • A location: A pub or café open from early in the morning to very late in the night. The place must also tolerate a dozen individuals with laptops.
  • Internet access: what can you do without it?
  • Money: because developers need to eat and drink all they want. Getting a sponsor or two for the events is not too hard.
  • And of course, projects: without community involvement, the whole effort is futile.

Special thanks to Yann Larrivée for taking care of the logistics, Evan Prodromou for his time and generosity, High Touch Communication abd PHP Quebec for sponsorship and to all those who attended and made the event so much fun.

First day at Autodesk

Posted in General by Louis-Philippe Huberdeau on the September 4th, 2007

As part of my degree, I have to complete a final internship and choose to do it at Autodesk. Today was my first day of “work”. Nothing like work really. All I did was sit in a conference room to get the basic training required and meet co-workers. For the first time, I got to see what a software-centric business was all about. In the past, I always worked in a context where software was only a support to a greater purpose. At Autodesk, software is an end. Of course, there is a greater purpose. Software built is used by clients, but as far as the internals go, everything is focused on software development.

How often can you get to sit in an intern welcome presentation and see non-software developers not feel at their place? Seriously, in most companies, software developers sit there knowing that nothing said really applies to them.

It’s good to see an environment with nightly builds, a testing crew and proper configuration management. I don’t know precisely what I will be working on at this time, but I will soon find out.