Friday, September 29, 2006

The Concurrency Adventure

Growing increasingly tired of his journey, spanning many horizons over the four years the journeyman began to wonder what was on the next horizon. The journey started out well, with good intentions, high hopes and spirit. Ready to tackle and take on anything at hand. It had been tough, misguided at times, but plenty of refreshments offered along the way in the form of inspirational peers, friends and lecturers to help him through. Alas, he began to grow weary as he had been left with distaste in his mouth. Burnt out by the negative forces in the form of a final year project gone bad. Like a life force drained, weakened by the heavy depletion throughout the year it spread to drain everything else around him. The accompanying subjects undertaken, that proved a three year wait, were suppose to be fun, but were found to be otherwise, as they had also been tainted by the evil life force. The journey halted at this point, whilst the adventurer took out his map; contemplating foreseeable shortcuts, anything, that would slow or nullify the drain. Instead of a map, he found a strange but refreshing ailment in the form of concurrency. It provided an entire new adventure with an entire new set of beasts to tackle. It helped take his mind off his old journey. Embarking on his new journey, the evil life force began to slow as it lost grip in this new realm. There was no room for it where the journeyman was going, that adventure would inevitably pose beasts of its own. The concurrency journey had beasts appearing in many shapes and forms. Deceptive in nature, they would awaken from seemingly nowhere. These were harder to spot too. They did not follow conventional tell-tale signs. Questions regarding the new journey sprang to mind throught the treck; "do you want to take the blue pill or the red pill?". "How far do you really want to go". As Alice once had to decide, "how far down the rabbit hole do you want to go?". So did the journeyman. Concurrency by it's very nature interconnects a slew of concurrent beasts. Each of which strike at the most inopportune of times. But an ally in the form of a brave lecturer had a keen eye for such things. Having braved many of these beasts in his time, he could offer valuable assistance. Attempting to help tame these beast with his magical potion; appearing in the form of a test case, he only made them madder. They roared with bestial vigor, almost bringing this journeyman, accompanying ally, (and many others he had run into along the way) to his knees. The journeyman was to quick to jump at the knees of a 'quick cure' and his flippant actions cost him many, many hours stuck in a void; looking over his code line by line. Determined to be the better of the beast, as it pulled him from the life drain. He helped stir the next batch of potions offering further testing where he could. A few hours had passed and it seemed the ally, though hasty in nature, had provided a strong remedy this time. All tests began to pass, lines of code blissfully executed one by one, never halting, sleeping, locking for longer than anticipated. This time, it seemed the beast had been chained. How long would those chains hold? Only time will tell. These concurrent utilities, multi-player zork server and Airport Simulator (on the horizon), have done well at revealing the concurrency beast. In doing so, infused the journeyman with a new strength to tackle the last four weeks of his journey. Concurrency IS very unlike single threaded programming. When you really start to explore it you realise how temperamental these beasts are. The farther down that hole you go the madder they get. To hear the concurrency story from the brave lecturer, please click here :)

2 Comments:

Anonymous Andrew Cain said...

Great story :)

10/02/2006 08:40:00 AM  
Blogger Joshua Hayes said...

Inspired by a concurrency story not unlike your own :)

10/02/2006 11:22:00 PM  

Post a Comment

Links to this post:

Create a Link

<< Home