News In Very Bad Taste

I don’t think I need to go into how terrible the whole earthquake and tsunami event has been. Were CNN.com really that desperate for news they had to go and publish this article?

The Playlist Meme

Thought I might give this whole Playlist Meme thing a go. My disclaimer is that I only have the music I’ve managed to put onto my laptop (which is still a pretty good sample of my music collection). Here are the rules:

  1. Open up the music player on your computer.
  2. Set it to play your entire music collection.
  3. Hit the “shuffle” command.
  4. Tell us the title of the next ten songs that show up (with their musicians), no matter how embarrassing. That’s right, no skipping that Carpenters tune that will totally destroy your hip credibility. It’s time for total musical honesty. Write it up in your blog or journal and link back to at least a couple of the other sites where you saw this.
  5. If you get the same artist twice, you may skip the second (or third, or etc.) occurences. You don’t have to, but since randomness could mean you end up with a list of ten song with five artists, you can if you�d like.
  6. - source

Artist Song Album Pat’s Misc Note
The Strokes You Talk Way Too Much Room On Fire Bought this CD when I was in LA working for my last company in November last year
Starsailor Music Was Saved Silence Is Easy
Lamb Merge Lamb
Mylo Drop The Pressure MOS Clubber’s Guide to Summer 2004 A big dance anthem for 2004 for sure
Ant Miles and Red One Bring It On Kosheen Presents Bass ‘n’ Drum Reborn My first drum & bass album
Linkin Park Part Of Me Under Attack (B-Sides)
Alicia Keys Harlem’s Nocture The Diary of Alicia Keys
Metro Area Caught Up Ian Pooley’s nite:life 06 My first Ian Pooley album
Sum 41 Nothing On My Back All Killer No Killer I remember hearing this song being covered when I went skiing for the first time during my exchange to NY in 2001
Xavier Rudd A 4th World Solace Saw Xavier’s awesome solo performance at Splendour this year

via Sam

Merry Christmas

To everyone who gets to read this and I hope you all have a safe holiday period.

The Telegraph Rib Room @ GPO

Last night marked my last Christmas function for the year, and was a simple celebratory dinner with the usual gang at the GPO Hotel. The GPO Hotel is situated in Fortitude Valley and, as the name suggests, is actually the now renovated and currently heritage listed General Post Office building. Styled with warm Italian colours and fitted with modern decor, the building can cater for many different groups having numerous function rooms, a couple of bars, a wine cellar and restaurant.

We spent most of our time in restaurant part of the GPO Hotel called The Telegraph Rib Room, sitting at their biggest table for the night. The actual dining area does not fit that many people but it was good to see that they did not try to overcrowd the area with too many tables. The table service was excellent for most of the night, with little things such as plates being taken away, or water being continually filled without request, all completed without any noticeable distraction to the diners.

The menu is well presented but be warned that the selection of dishes available for both entrees and main are rather limited because it apparently changes from week to week. Our menu tended to be fairly steak-heavy so there were not many options for vegetarians. For starters, we all decided to get some turkish bread that was accompanied with a rather bland hummus dip and a salty goat’s cheese spread that actually went quite well with the bread. It seemed like the two most popular dishes for the evening was the Steak and Bugs, and the Duck. I was told that the steak was cooked quite well, but the bug meat did not appear to be very much and was seemingly cooked from a defrosted state. The duck (which I had) was cooked to a perfect state although we all found the dish was not very balanced. The fruit sauce in addition to the caramelised onions made the dish excessively sweet. The sweetness overpowered the natural flavour of the duck and could have been balanced by something that was relatively salty.

It was still a good night overall and a great time to catch up with everyone.

First Aikido Grading

Amongst the many other things that happened this weekend, I managed to complete my first Shinsa (grading). My first ever Shinsa was a long one, spanning almost three and a half hours where we had to sit, as much as we could, in the tireless Seiza (sitting with legs folded underneath our bodies) position. I had been training quite hard for the level I was grading for, but was still anxious at the possibility of making a mistake during the very formal testing process. Thankfully it all paid off, and I received my certificate and stamp tonight, testifying to my completion of the 9th Kyu Shinsa.

The whole testing process was rather enlightening as everyone is expected to stay there for everyone else’s grading (all 36 for this one). As one of the beginners in the dojo, I probably got the most out of it, witnessing everyone else complete their more advanced routines. For me, the most fascinating part was probably watching and appreciating how advanced the basic moves we learn in class can be pushed and applied so effectively. I always find it very motivating to watch people demonstrate just how far your skills can be developed and refined.

Mount Cootha Climb

I had heard much about cycling up Mount Cootha and today was that day for actually completing the big ride. We opted to meet at 7:30am for departure from The Regatta in order to avoid the heat that was guaranteed if we left any later. I haven’t done any cycling on a mountain before whatsoever, either uphill or downhill, so I knew it was definitely going to be challenge.

I was taken up the front way of Mount Cootha since I was told it was the easier way for climbing and I really had no idea what I was in for. I do not have any record of how long it took us to get up to the top, but let�s just say it was definitely the most difficult ride that I have completed. I was in my lowest gear for most of the climb, and was riding out of my seat a fair bit to get more leverage. I was somewhat comforted by watching a number of other cyclists cycling just as slowly as me, with one of them even turning around, no doubt, too exhausted from the climb.

We finally reached the top of the mountain where we took a much needed rest, as I was completely out of breath. Going down the mountain was definitely worth the climb, as we flew down in a few minutes and reached a maximum speed over 65km/hour. At the bottom of the mountain, I was presented the choice of either going up the mountain again (this time the back way) and a single river loop, or to continue the descend and do a double river loop around Brisbane. I probably made the wrong choice (or more naive) and foolishly decided to go for the first option.

A fantastic weekend ride that went for just over two and a half hours and totalled almost 60k! Somehow I don�t think I�ll be going for a big ride tomorrow.

Maintenance Programming’s Da Bomb

I was in a situation this week, where I have been fixing bugs in one particular part of our system for total of two weeks. This situation was created by too many reasons to really list (or perhaps warrants its own separate entry) and is a relatively unusual circumstance for our project since a maximum of two days is all we tend to need for each iteration. Being immersed in ‘maintenance mode’ for so long has really highlighted the different set of skills you tend to draw upon in contrast to our normal operating mode. It has also brought to my attention a few issues that can really help or hinder you when working in this mode. Here’s a few of them:

  • Good logging statements (being careful not to damage the readability of code) that detail the complex state of a system in a readable is definitely helpful as you don’t need to add them yourself or to your debugger.
  • Fast unit tests help to give early feedback when making changes to the system and a change breaks its contract with other components.
  • Fast integration tests gives you the confidence that your system will continue to operate as it has in your production environment.
  • Identifying a bug in business requirements before code is written is definitely cheaper than fixing it later on.
  • Poor exception handling can mask the original source of error. For example, on a previous project, I remember the overly complex exception handling architecture triggered a NullPointerException when handling a simple business exception.
  • Code smells tend to become even more offensive as you wade through its source, which at least helps to identify areas that are good candidates for heavy refactoring or redesign).
  • Repeatable test scenarios for a reported bug which are then translated into code are important against protecting against regressions.
  • Though I agree with the whole philosophy of self-documenting code, I still find comments are important. I find the best ones tend to explain why a block of code was written in a particular way instead of another or the potential side effects changing that may have.

Robust Java by Stephen Stelting

I came across this book when I was trying to compose my next Amazon shipment of books. It caught my eye because I have not read much literature or talked to many people about exception handling best practices. It is certainly a topic that was never taught at University in great depth and something I find tends to be neglected in the workplace.

My initial impressions of the book after reading the foreward and first few chapters is that it is a very well written and a well published book. The author sets the expectations of his readers early with what he is trying to achieve and manages to accomplish his goals in the rest of the book. The format is well laid out and the excellent quality of the editoral work is evident by the ease of reading attained without the interruptions typically caused by poor spell checking or grammatical errors.

(more…)