Blog entries from November, 2007

The third and final day of OSDC2007

Friday, November 30th, 2007 at 10:27pm

I am now back in Melbourne, but what happened yesterday, on the final day of OSDC2007?

After taking it easy in the morning I learned when and why Ruby on Rails would be an option, saw how an enterprise wide SSO solution can be built, how to optimise for wetware, gave a lightning talk, and heard the trends that should shape the future.

After the official close of the conference, ‘networking’ continued well into the night back at the Brewhouse.

Something I was very happy about was that my flight back wasn’t until the next afternoon as people dropped out throughout the evening to either catch a flight or return to where they were staying in order to get up for an early flight. If I were to change anything I’d make my flight early afternoon to reduce the amount of waiting around after checking out of the hotel.

Tagged with: , ,

The second day of OSDC2007

Thursday, November 29th, 2007 at 11:27am

It is now the morning of the third and final day of OSDC2007, but I should say something about yesterday…

First up Rasmus (the creator of PHP) demonstrated how broken the web is and why you should never click on a link. I also saw how to script tests for web applications, what is coming in CPAN 1.5, a reminder on testing, how spammers operate, and a method of server side components that are connected together to enable client side mashups. Finally the evening was capped off by Paul’s thoroughly entertaining Illustrated History of Failure at the dinner.

Strictly speaking the dinner wasn’t the end of the night. The Belgian beer garden was.

Tagged with: , ,

First day of OSDC2007

Tuesday, November 27th, 2007 at 10:19pm

Today, the first day of OSDC2007, started with breakfast at the hotel and finished with a few beers up the road at The Brewhouse.

However, in between I did go to a few talks.

I heard why C is still has a place, what behaviour driven development is, the experience of running a small business, why to package up your perl as if it were on CPAN, what Perl 6 features can be used right now, and how to (try to) manage email overload. There was also a lightning talk session that was as varied as usual with the talks ranging from informative to entertaining.

After the conference I’ll clean up my notes and put them up. But for now I’m just taking advantage of the conference wireless that I can reach from my room.

Tagged with: , ,

Travelling north

Monday, November 26th, 2007 at 08:03pm

After a taxi, a plane, a train and a walk I am now in my hotel room in Brisbane. As there is no daylight saving (local time is 7PM) and I am further east than Melbourne it is already dark and I am about to venture out in search of some (cheap) dinner.

However, my first priority was to check my email and make this post. While the room has an internet connection it was a simple decision after looking at the prices to not use it. Instead I dialed into work (nationwide number so only a local call) and connected to the VPN.

It is pretty sluggish using intense sites like google maps (ie everything that uses ajax or looks fancy) but the sensible sites work fine. Tunneling a VNC connection is even more painful. I need to look at another client for OSX that can use compression and drop the colour depth, etc for performance.

Tagged with: , ,

Off to Brisbane for OSDC

Sunday, November 25th, 2007 at 11:02pm

Tomorrow afternoon I’m flying up to Brisbane for this year’s Open Source Developers’ Conference which runs from Tuesday through Thursday.

Currently the plan is to post a couple of times a day about the talks I go to. We shall see how well that goes…

Tagged with: , , ,

A correction to my paper from OSDC2006

Thursday, November 22nd, 2007 at 07:01pm

In my paper at last year’s Open Source Developers’ Conference I said that one of the negatives of Class::DBI was that it connects to the database at module load. If this fails an exception is thrown which can cause issues when the Class::DBI code is just one part, for example in a web server.

It looks like we were causing this behaviour, instead of it being how Class::DBI operates.

By default DATE fields in Oracle are formatted for year, month, and day even though the field includes hour, minute and second. In order to get the complete date and time our base class changes the default formatting with a line similar to:

__PACKAGE__->db_Main->do(
  "ALTER SESSION SET NLS_DATE_FORMAT = 'DD:MM:YYYY HH24:MI:SS'"
);

It is this line that triggers a connection on module load. If it is removed then the classes can be loaded even if the database is dead. Connection is now only attempted on first action which is a much more approriate time.

I’m not sure what the documentation said about it when we put the line in, but Setting Session Globals and Working With Oracle Date Fields on the Class::DBI wiki warn about using it in a mod_perl environment and that it will initiate a connection when the modules is used.

Over the next few days the commercial product that this database is used with is being upgraded. During this time the database will be unavailable for use so we revisited the issue of how to get the classes to load cleanly. These investigations found the root cause and we now have a solution; alter the base class so that the date formatting is altered whenever a connection is initialized (using information from how to use multiple databases), not when the class is loaded.

Now, although we have solved this issue, having to solve it wasn’t trivial as we were required to dig through some of the Class::DBI and Ima::DBI internals to mimic its behaviour.

Tagged with: , , , ,

Playing with my handheld GPS unit

Tuesday, November 13th, 2007 at 08:12pm

After I posted my thoughts on getting a handheld GPS unit last week I realised two things:

  1. I do not need the electronic compas or barometric altimeter. So I could step down from the eTrex Vista Cx to the eTrex Legend Cx.
  2. I do not really need the basemap in the unit to be for Australia. Most of the units I was looking at on eBay were US models that had Australian maps loaded.

So on Sunday I was the winning bidder for an eTrex Legend Cx with Australian maps for two thirds of the cheapest price I could find locally.

It arrived today and for the past couple of hours I have been playing around with it. What do I now know?

  • The Australian maps take up 96MB of the 128MB microSD card (included instead of the supplied 64MB card) so it might be necessary to get a bigger card, especially if I do by detailed maps. Currently a 2GB card is under AU$40.
  • Logging the track to the card means they are available to any computer without special software by putting the unit into mass storage mode.
  • The Trip & Waypoint Manager software that came with the unit lets me upload a route to the unit. The track log can also be downloaded using this software.
  • Routes exported from Bikely as GPX need modification (stripping out elevation tags) before the software will accept them. I just used gvim but a simple perl script should also do the trick and could automate other cleanup tasks.
  • With only 500 possible waypoints, any route that I plan out using Bikely will need to be drawn fairly coarsely. But that is ok for a plan.

Tomorrow is the monthy Melbourne Perl Mongers meeting so I won’t be riding to work. But I will take the unit with me to record my journey anyway. I also bought a bicycle mount, from a different seller on eBay, that should arrive in a few days, ready for my first ride with a GPS on the weekend.

Tagged with: , ,

Thinking about a handheld GPS unit

Thursday, November 8th, 2007 at 09:52pm

Over the last few years I have periodically thought about getting a handheld GPS unit to take with me on rides. Not for navigation with maps, but to record the ride for later review.

Although Ride to Work Day didn’t get any new participants from our office this year, I did suggest a couple of routes using Bikely. While I was doing this I decided to have another look at Google Earth, in particular loading in kml files exported from Bikely.

In turn, this renewed my interest in a GPS unit.

Since I wasn’t interested in mapping, just logging, I had a look at a GPS unit designed for cycling, the Garmin Edge series of units. As the new models with maps are not yet available, I was looking at the Edge 305 which also has a wireless cadence/speed sensor so it does not rely solely on GPS for speed.

What were the positives?

  • It is designed for cycling.
  • The default behaviour is to log where, when and how fast you were going.
  • It seemed to be possible to load a route (originally drawn up in Bikely) to follow onto it.

I almost made an impluse purchase, but there were some negatives:

  • A battery life of 12 hours wouldn’t suit for day to day use as a replacement for my current bicycle computer. It has been years since I replaced the battery in that.
  • It wouldn’t be useful away from the bike.
  • The route capabilities seemed to be a hack for what I wanted to do.

Because of these I went back to looking at handheld units that are primarily designed for bushwalking or similar:

  • It wouldn’t be tied to the bike, so I wouldn’t be obliged to use it day to day.
  • There was a much wider range of options.
  • It could have the capability to load maps.
  • The maps could even be used for driving directions.

At this point I recalled that a co-worked had gotten such a unit a year ago so at the next opportunity I asked him about it. It turned out that one of the uses he has for his unit is to take it on rides with it mounted on his handlebars.

The specific unit he has is the Garmin eTrex Vista Cx that was, at the time, the top end model that Garmin has for that style of unit. It has a (relatively) high resolution colour display, mapping capability, electronic compass and a barometric altimeter.

This does seem to have all the capabilities I need. Including some that I might not. Since the Vista Cx is fairly expensive (over AU$500) a cheaper option is the Legend Cx (around AU$450) which appears to be identical except it does not have the compass or altimeter. After you add another AU$250 for Australian street maps this does start to become expensive. Considering that navigation units for cars can be had for around AU$400. But they don’t have the non-road and logging capabilities of a “proper” GPS unit.

So what are my actual requirements? My current thinking is that I would do something like:

  1. Plan the ride out in Bikely or Google Earth
  2. Export the planned route and load it into the GPS unit
  3. Go for the ride. The loaded route will show if I deviate from the plan and the unit will be logging where I actually go.
  4. Export the log from the unit and use it to more accurately show the route in Bikely or Google Earth.

Over time I would have a series of logged routes that I could view through Google Earth.

For now I will continue investigating my options. Including whether to get it from an actual store, an online store, or through eBay which is the cheapest option I have seen. But the support may not be the best…

Tagged with: ,

Processing my Inbox

Sunday, November 4th, 2007 at 07:41pm

A month ago I installed a Thunderbird extension to give me a simple feature that has made the processing of my Inbox easier.

Ever since I started using SpamAssassin on my incoming email I have had two SPAM folders one that procmail automatically moves messages identified as SPAM into, and another that I manually move SPAM messages that were not identified as such.

Every few months I then run the contents of the manual folder through sa-learn to train the bayesian classifier.

So why is this significant?

Ever since I started to use rss2email for reading RSS feeds I have been running through the messages in my Inbox at least once a day in order to process it to (nearly) empty in a (sort of) GTD manner. As the majority of the messages are from RSS feeds the my most common action is delete, via the toolbar button (I click on the article link to bring it up in a new tab in Firefox and then return to my Inbox).

My next most common action is to move the message to the Spam/Manual folder. Even though it isn’t very complicated, every so often I drag the message to the wrong folder in the list down the side of the window. This was an annoyance and I wished that there could be a button to move the message.

A month ago I found Buttons!, an extension for Thunderbird that allows you to add a number of additional buttons to the toolbar. One of these is Archive! which moves the current message to a predefined folder.

So I now have two buttons; the standard Delete and right next to it a button that moves the message to Spam/Manual. This covers almost all of the actions I perform to process my Inbox.

In hindsight this doesn’t seem like much. But an optimisation of a daily process can be worth a lot more than you think.

Tagged with: , ,

It’s just a bikeshed

Thursday, November 1st, 2007 at 05:43pm

After reading my conclusion regarding the Forms That Work training, Hamish asked me if I had ever posted about the bikeshed.

I took him literally and replied that I had; at first when they were installed and again when I first used them.

He wasn’t talking about the actual lockers where we store our bicycles at work. He meant the proverbial bikeshed that doesn’t get painted because everyone must have input on the simple decision of selecting a colour. The other part of the proverb is the billion dollar atomic power plant that is approved right away because it is too complex to grasp, and thus few feel that they must have input.

When I think about it, bikesheds occur far too often. In my experience, most of these are “it’s just” situations:

  • It’s just another web page,
  • It’s just another web form; or
  • It’s just another link.

I’m not going to expand on these “it’s just” situations at the right now. They could be good topics for future posts…

Tagged with: , ,