Cache Me Not

Today I worked on an interesting bug that required us to forcefully push out a new copy of a file to any client that connected to our web application. The file was a javascript file containing several functions which are used by our application, one of which was modified and is now used as a trigger for an important part of the application (don’t ask why). Clients to our application are the general public, so forcefully clearing caches was certainly not an option, but our solution might have been made easier if we were allowed to change the name of the file, or even the name of the function. Unfortunately other existing technical requirements did not permit this.

A quick google-later gave me enough evidence that header tags like <META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE"> (for HTTP 1.0), <META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> (for HTTP 1.1), and <META HTTP-EQUIV="EXPIRES" CONTENT="0"> would not be enough to trigger a refresh of the client’s versions. Some sites described that writing out values in the HTTP-Headers might also work, but I wanted to avoid it for not being a very simple solution.

In the end, the solution we deemed acceptable was to simply add a query string to the end of the file so that clients would be tricked into thinking that it was a new file, turning something like: <script src="/scriptForRefresh.js" type="text/javascript"/> into: <script src="/scriptForRefresh.js?forceMeTo=refresh" type="text/javascript"/>

A New Year Day @ BBQ Breaks

Well I hope that everyone had a very good New Year’s Eve. Mine was a relatively quiet one, being a good time for reflections on the year just gone, contemplating both the good times and the not-so-great times had. New Year’s Day was spent attending BBQ Breaks held at Friday’s at Eagle Street Pier.

Yesterday’s perfect weather added to the fantastically charged atmosphere and the huge number of artists that played made it an awesome way to continue celebrating the New Year. Just a small sampler of those that played included: Kid Kenobi, Cut La Roc, Deadly Avenger, Kid Kay Ferris, Tipper, Tom Middleton, Soma Rosa and Ian Pooley.

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

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.