Swimming in the sea at Noosa Heads
Last weekend, Chris, mum, dad and I went to Noosa in Australia for a wee break. 5 days only, not 5 weeks like Camp Europe.
I gotta say – I absolutely love Noosa. It’s the second time I’ve been there and I’d definitely go back for more. The best thing about Noosa, apart from the hot weather, is the sea. The sea water is crystal blue and SO warm! Seriously, I don’t know exactly how warm the water was because I don’t typically carry a themometer around with me, but trust me, if I’m raving about it – it’s gotta be warm. I won’t touch New Zealand waters because well, what’s the point? You’re basically in pain getting in to the water and back out again. It’s more like torture than a nice relaxing swim.
We stayed at Noosa Pacific Riverside Resort – very nice self-contained, fully-furnished and most importantly, AIR CONDITIONED 2~3 bedroom apartments that overlook tennis courts, a swimming pool, a spa and a sauna. There is also a nice gym for your work-out pleasure. Very nice indeed, all for a very reasonable price of $110 AUD per night. The only downside to staying at Noosa Pacific is that it is a 5~10 minute drive (30 minute walk) away from Noosa Heads itself, where the marvelous beach I mentioned above is. Next time I go to Noosa I might try looking for somewhere a little bit closer to the beach itself (without paying thousands of dollars per night that is).
While in Noosa we also walked around the Saturday markets at Eumundi, visited a small town quite high up in the hills called Montville, spent a day at Australia Zoo (saw lots of koalas and kangaroos, cute!), and went shopping at Maroochydore Sunshine Plaza. Wow, so much in only 5 days!!
Anyway, I’ll throw a couple of photos up here to make you all jealous :)

Sunset at Noosa Heads, Australia

Some iguana lizard thing at Australia Zoo

A little kangaroo at Australia Zoo
dotTrace – a cool profiler for .NET applications
Ever wondered why your application is chewing up so much of the processor? Or where all that memory is going?
Introducing dotTrace – a profiler for .NET applications, both desktop and web apps. It lets you run up a web app and take snapshots of it’s profile whenever you want. One view shows you a summary of the bits of code that the threads are busy executing complete with precise execution times, while another view shows you where the memory is being allocated, specifically which types of objects are using up the memory.
Something I particularly liked about dotTrace is its ability to show ‘hot spots’ – essentially a summary of functions that are using up the highest percentage of the thread’s time and effort. It shows how many calls to these functions are being made and where from. This quite nicely highlights some functions that are perhaps being overused in your applications (functions such as Concat and ToLower), allowing you to fine-tune your (already perfect, of course) code for performance.
Anyway, I’ve downloaded it and had a bit of a play – so far so good. Unfortunately, you either have to buy it (and it ain’t cheap) or deal with a 10 day trial license key. Still, I guess there’s no such thing as a free lunch!!
Read MoreIE Conditional CSS Comments
I know this has blogged about many times over, but I recently came across this really handy CSS hack (yes, I think this qualifies as a hack) specifically for styling sites in IE.
Basically, only Internet Explorer (5 and onwards) on Windows can read these ‘comments’. Therefore, any CSS styles written within them are only interpreted and applied by IE. And better yet – you can write ‘if’ statements within these comments so that your CSS styles are only applied to particular versions of IE.
Pretty handy huh?
Here’s a quick example:
<!--[if gt IE 5]> table#content { width: 100%; !important; }
<![endif]-->
Here are the different ‘if’ operators:
<!--[if IE]> This comment applies to all versions of IE from 5 to 7.
<![endif]-->
<!--[if IE 6]> This comment applies to version 6 of IE.
<![endif]-->
<!--[if lt IE 6]> This comment applies to versions of IE less than version 6.
<![endif]-->
<!--[if lte IE 6]> This comment applies to versions of IE less than or equal to version 6.
<![endif]-->
<!--[if gt IE 6]> This comment applies to versions of IE greater than version 6.
<![endif]-->
<!--[if gte IE 6]> This comment applies to versions of IE greater than or equal to version 6.
<![endif]-->
There are a couple of gotchas you should be aware of before you use this great little hack.
- Only IE on Windows will interpret these comments. Read: this hack will not work for IE on a Mac. If you need to style something for IE on a Mac, think about checking for the user agent using whatever script you’re programming in, if you’re using one at all, and including styles based on that instead.
- Conditional statements just use the normal HTML comments and therefore can only be used in HTML pages. Read: this hack won’t work when written in a CSS file.
I know the pain web designers and developers go through trying to get their sites to look the same in all browsers (trust me, I know!) so it might be quite tempting to use this hack all over your code. But keep in mind that this is just a hack and you should try to find more standards compliant ways of styling your sites using CSS that works well in all browsers (or at least that are important to you).
Read More
Interviewing for a Software Engineer position at Google
About a year and a half ago (October 2005), I tentatively applied for a Software Engineer in Test position at Google. When, to my surprise, a recruiter actually emailed me moments later and scheduled my first interview, I panicked and dug out all my old Computer Science notes and textbooks from my 4 years at uni. I had read that Google’s interviews were tough, so I thought I had better get studying. Over the course of a few months, I stressed out heaps, reviewed all my old comp sci notes (really, who remembers how to implement B-Trees, A* Search algorithms and MergeSort after leaving university?) and had 5 hour-long hard-core technical phone interviews with software engineers and testers at Mountain View.
Anyway, although the recruiter I was dealing with told me I had done very well during my interviews and that everyone was very impressed, I was eventually given the bad news – there wasn’t really anything for me at that time. I was pretty gutted but glad that I had gone through it all for the experience – no interview from then on would ever be as difficult as the ones I’d just undergone.
How wrong was I? About a year later (December 2006), one of the recruiters I’d dealt with during my interviews emailed me and asked if there was any chance I could come in for an interview for the same position at their Zurich office while on my holiday in Europe. Apparently they were expanding their test team and thought of me :). Well, since I was going to be in the area anyway, I said sure. However, since I was going to be on a much anticipated holiday, study and stress were not an option. I just accepted the fact that this meant I was going to totally suck at any tricky technical interview questions – but I thought, what the hell, I might as well.
All I can say is: yikes. As you can probably guess, I didn’t get the job, AGAIN. But this time I felt I actually did quite well in the interviews, despite the lack of study. Google flew me (and Chris) down to Zurich from Copenhagen and put us up in a really flash hotel for a night. The following day I had a full day of interviews on-site at the Zurich office. Basically this translates to 5 hour-long interviews with 5 different software engineers and testers. The questions they asked were very technical and covered a lot of different technologies. Towards the end of the day I was totally knackered and found it really hard to think straight, whether in code or in plain old English. 5 hours of hard-core technical questions when you have only a few seconds to think up a good answer and write code on a white board is TOUGH, no matter how much of a geek you are. NOW I’m pretty sure I’ve experienced the toughest interviews I will ever have to.
Anyway, I guess the moral of all this is that if you are given an opportunity to try out for something you really want but are pretty sure you’re not going to get – give it a go anyway. Sure, it’s gonna be hard and you’re gonna stress about it. Sure you’re gonna feel pretty crap about it if it doesn’t work out. But you will gain SOMETHING from it – even if it’s just the experience. In my case, apart from being forced to review a whole bunch of pretty cool geeky stuff that I’d totally forgotten about, I got a cool trip to Zurich, paid for by Google, I got to meet a bunch of really fun and talented software engineers (who by the way took Chris and I out for a great Swiss-fondue dinner after my day of interviews in Zurich) and basically I feel pretty good about the fact that I even got the chance to interview with Google. And as I mentioned above, I am now confident enough to believe that I can sit through any technical interview known to man (or woman) :)
Read MoreMonkey Kick Off
OMG. This Monkey Kick Off game is horribly addictive. I hate it.
No, I don’t really. I just can’t afford to waste any more time on it.
But that’s alright, coz I beat Chris, which is really all that matters (until he gets a better score than me, in which case I”ll just have to kill him… muahahahah).
I must say, however, that Chris did put up a good fight with his best score – 4734.
Anyway after about 4 (ok maybe 5) hours I was successful in my mission to WIN. That’s right – check out MY score: 4859.
OOOhhh YEAH!! Bring it ON!!
Read More
