Monday, July 31, 2006

Billy Joel tickets - but events were conspiring against me

Billy Joel tickets went on sale here in Melbourne at 9.00 am this morning. Not a concert many would imagine would be hard to get hold of, but guess again. It took me 36 minutes but not without the rest of the world conspiring against me.

It all started last Friday night. The ongoing construction here at work, meant the power was going to be out for some time of the weekend. Due to the fact that we have no production systems yet (are still desperately chasing the last ounce of start up capital required) we decided that rather than push our backup power supplies to the limit, and most likely beyond, we'd simply shut down the servers for the weekend - no undue duress on any users - simple stuff. I would arrive earlyish Monday, which I usually do anyway and get things rolling and there would be zero impact. My network administrator is going to be in late, but no major hassles - until that is, an inbound accident on the West Gate Bridge, had two of the four lanes closed and traffic backed up about 35 kms out of the city. A 20 mintue trip on a normal day was now reading 89 minutes on the traffic indicators! This puts me at the office, another 15 minutes beyond where the traffic indicator was pointing, by after 9.00am - still with no servers, and worse, no Billy Joel tickets.

The news improved a bit though, as the traffic seemed to lift a little, as a result of clearing the accident I guess, and I arrived around 8:45am. Servers came up no worries, but both phone lines and web site at Ticketek were inundated. After much retrying, and managing to lock my network account after authenticating incorrectly to our internet proxy server three times (D'Oh!!) I snaffled some tickets in what might as well be the light towers outside by about 9.36am. This will be my 5th Billy Joel concert - I can hardly wait.

Thursday, July 27, 2006

A pleasant surprise

In just over a week we are all (the family - my wife and two boys) heading off to New Zealand for 10 hectic days and nights catching up with familty and friends.

We just purchased a portable DVD player - quite a bargain as we were able to buy at cost price through my cousin, who works for a electronics retailer - anyway, we bought the DVD player for the kids on the plain and as we drive around the north island of New Zealand.

Something I hadn't even thought about though was the MP3 playing capabilities of these devices. For the past month or so, I have been downloading podcasts (I.T. related) to play on my 3 hour round trip to and from the office every day. It's been a great and productive way to spend the time, but it does take a lot of effort downloading, then using Windows Media player to burn the MP3 files to CD - converting them to audio files that will play in the portable CD player I have in the car. Not to mention the AA bateries I've been burning because the AC adapter for the car won't fit in the confined space available in my car.

So what a bonus with this new DVD player. Not only does the car adapter fit my car, saving me batteries, but I just burned all 49 podcasts I've downloaded so far, and used about a third the capacity of a DVD. Previously I'd burnt and entire CD case full of CDs and not burnt all the shows I'd download - very cool!

Tuesday, July 25, 2006

My own private greenhouse effect



Quite off topic for this blog so far, but here goes... I live in Victoria, the southern most state of mainland Australia. The weather gets quite cold (by Australian standards) in the winter. I like to grow my own vegetables - strictly hobby stuff, the family could live for more than a couple of days on what I grow, but it's good fun.

Most years though, I wind up planting seeds around August, just prior to the southern hemisphere Spring, and in our cold Victorian winter they struggle along okay, by the time I get them in the ground, I don't get much of a yield, in particular capsicums, a fruit I love, and have had very little success growing.

So this year, I decided to get started earlier - but winters are just so cold down here, that no seeds will ever germinate this time of year. So I decided that a little shelter was required. I got the idea from the planter boxes you see in more hardware shops, but being a cheap-skate, I thought I'd make my own. So I hacked together a few old pieces of chip board into a kind of half box shape - then thought, "if I can cover the rest with some clear plastic, the sun will still get in, but the budding, would be seedlings will be protected from wind, rain, frost etc.

Great idea, I tried some old clear plastic I have lying around, but it just didn't cut it. So I splashed out and spent 15 bucks on some more heavy duty plastic from a hardware store close by, and with the help of some velcro tabs, managed to come up with the creation you see below - a planter box, covered with clear plastic, I can open to water any time I like.



We had a couple of quite cool - 12 degrees celcius, but quite sunny days here. I noticed quite a bit of condensation forming very quickly in the box, and decided to grab a thermometer we had lying around at work. To my surprise, after just half a day in the sun - 12 degrees outside mind you, the temperature inside the box, was tipping 40 degrees!! (Celcius). I was amazed, and pleasantly surprised. I left a small container of water in there, and after just a few hours, the water was really warm to touch.

I shouldn't be surprised I guess, but how good is this?!? Anyway the seeds went in just two days ago, and I'm expected nice early germination, meaning I can get the capsicum seedlings transplanted nice and early, and hope to be eating juicy, home grown capsicums, tomates and zucchinis, all summer.

I've always relied on the kindness of strangers...

How generous are some people when it comes to helping out on newsgroups and forums? I know this is far from a new phenomenon, but just this week I have had a real curly problem solved by a helpful soul, on the Microsoft, .Net newsgroups.

It made me feel all warm and fuzzy, that a complete stranger, would read my post and take the time to respond, not once, but twice, and help me resolve a strange issue I feared I might have been stuck with for a long time.

Now the point that was made was possibly common knowledge to many, but it wasn't to me. That's the point I guess, and now it is common knowledge to me...

So thanks to "Joanna Carter from TeamB" - whoever she may be, for helping me out over on the .Net general newsgroup and also the Microsoft MVP who replied to the same question in a .Net Development Center forum. And if you've ever helped out an anonymous fellow developer in need - thankyou, on their behalf.

If you've been helped yourself, and possibly posted in multiple places, I think it is important to return to those open posts, close them off with a link back to the solution. How frustrating is, Googling for a solution to a real tough problem, only to find a post somewhere obscure that describes exactly the problem you're having, only to find a followup post from the same guy saying - "thanks anyway, solved it now..." Aaaarrghh!

Now I'm off to troll the newsgroups and forums, for a question easy enough for me to answer - just to give a bit back - the problem is, most people don't need to ask, what ever it is I can help with... :-(

Wednesday, July 12, 2006

Don't ignore warnings...

A very good practice I've picked up from some of the smarter people I've worked with, and also from reading Steve McConnell is not to ignore compiler warnings. Sometimes it's so tempting - you know, "it's compiling, it must be working, who cares about that..."

Well today, after a real dumb mistake on my part, a warning that I didn't ignore, just saved me hours of pain a few days from now.

It was a stupid mistake on my part, but then, the real doosies alway are aren't they.

If had an if /else if/else statement. I was doing some ANDING on a certain status and basically wanted to intialise a message based on the status - 0 = OK, 1 = Partially OK, 2 = Screwed, but then there is other information built into this status, like, "future dates found in result set" and "errors logged" = 8, so , a result of 9 means Partially OK, errors found in the log, or 6 means "No Processing and Future dates found - yes it is possible for this status to be 4, which would mean "all processing occurred but errors were logged" - this is a success, of sorts...anyway I digress...

I had this if/else if/else statement set up to initialise the message about the status,

if (result.ok & result)==result.ok
do stuff
else if ((result.partial & result)==result.partial
do other stuff
else if ((result.stuffed & result)==result.stuffed
do more stuff

I was getting a warning on the first "else if" that said "unreaschable code detected". A fairly shicking warning none-the-less" After a little checking it dawned on me that the value of result.ok was 0! Of course the first condition will always be met!!! Stupid? Yes. This wouldn't have shown up though, until every message from this component came back the same. Worse still, it possibly would never have shown up, because the component would have always returned a positive response - my little SMS message each morning that is derived from this service, would have had me merrily going about my business, oblivious to the fact that things were not as they seemed....so....don't ignore warnings....

A simple restructure of the statement quickly resolved the issue of course, and a quick review of just how "ANDING" works...

Friday, July 07, 2006

It takes work to truly be lazy.

There is a great article about two kinds of lazy - good and bad lazy - on FTP Online.

Everyone should be made to understand this concept before opening a copy of any development tool or running any compiler.

You need to be a member of FTP Online - but it's free to sign up, so check it out here.

Saturday, July 01, 2006

A set-back or an opportunity?

I may have mentioned here before, I am an I.T. Manager at a start up finance company. This start up business is a tough gig.
We have three executive directors that are pouring their hearts and souls (and more than their share of blood sweat and tears) into this business. It's taken two years so far, and in that time they've had some crushing blows - from narrowly missed opportunities which are par for the course for business life, to dishonest dealings, a bit of naivete and just plain rotten luck.
In the early days, these guys invested wisely and well in I.T. infrastructure that seemed like a bit of overkill at the time, but gave us great scope for growth. They contracted a real "high flyer" for a three month period to assist (read teach) me to get things going and also built a small I.T. department (a sys-admin a very capable lead developer and a junior developer, who thanks I like to think to my careful hiring) progressed really well.
Six months ago, at the height of one of the many hard luck stories, when things were dire, we received a life line, from a construction entrepreneur who had the wealth we needed, but many would argue not the finance industry acumen we were looking for - but as I said, this was literally a life line, things were dire, and with our own executives leading the way, finance industry experience isn't what was needed anyway.
There was more bad luck to come. A large (and I mean telephone number large) amount of money was not far away for our new "white knight", but Foreign Investment Review Board (FIRB) approval was holding things up, so we limped along, scratching from pay cheque to pay cheque (and sometimes a little beyond) waiting for this elusive investment to land. We have customers ready and waiting to go, systems in place, being tested and growing each time we realize we have a little more time to do so. It is a credit to the executives we have, that we are still in the race here. Alas, approval from FIRB was slow in coming and really making things tough.
In March this year, we (as the I.T. department) suffered our first loss - remarkable considering each employee had already made it to the average length of employment in this industry, and we had still not done a days work as a fully fledged live and operating finance company - when one of our developers made the personal decision to return with her (now) fiance back home (to England - we're in Australia). Naturally, given the nature of operations, she wasn't to be replaced just yet. A perfectly understandable decision. We pushed on with myself, our sys-admin and our lead developer. A fortnight ago, about the time Microsoft lost Robert Scoble, we lost our lead developer. This was a huge loss as he was responsible for so much that was brilliant about our systems. Of course he will be replaced but again, not until that elusive money lands and we know exactly where we stand.
In the past two years we have built a few really impressive systems, and poked a prodded around the edges of some other third party systems, that with the benefit of hindsight may not have been required in the form we originally thought - 20/20 hindsight right? Anyway, at any point in that time we've thought we were no more that 2 months away from "going live" and as such proceeded with caution. Good systems and processes were in place, with different team members taking responsibility to various ones. As I.T. manager I have been across all these systems but haven't micro-managed (not too much I don't think) and as such have been a little foggy on every detail.
Now, with an I.T. team of two, for the foreseeable future, myself as the only developer, I see an opportunity to get my hands extremely dirty in all aspects of our systems. It means I progress at snails pace but it also provides me with a great opportunity to learn about the intricate details of a broad range of systems, processes and techniques implemented by some of the smarter people I've worked with. I intend to fully understand the nitty-gritty of everything from maintaining the firewall and proxy server, to administering the automated build process and conversing with our SMS modem.
We had some good news this week, in that the approval has been granted for the investment to go ahead, meaning our new illustrious leader will have his money in about six weeks - it's in writing this time!! The I.T. department will one day return to it's former glory but before that time I have a huge opportunity to become an incredibly well informed, "across" everything I.T. manager when time comes to rebuild the team. Then, comes the challenge to let go, when I employ people vastly more qualified to take over and improve the systems and processes we build. I'll let you know how that goes...