The Lair

Do not meddle in the affairs of dragons, for you are crunchy and taste good with ketchup

Archive for January, 2007

Habari

January 30th, 2007

A few weeks ago, there was a huge buzz around a new blogging software project named Habari. I heard of it then and wandered over to the IRC channel to take a look at the product. The people behind the project were already known to me through other IRC channels and I was quite keen to find out what they had been cooking up.

Other people have already done the introductions and the guiding principles behind Habari. They’ve also partly addressed the FAQ aspect; particularly a generic answer to why we need yet another blogging application in a market that is already rather crowded. Wordpress works, doesn’t it? Why do we need to bother reinventing the blog software wheel?

I run Wordpress on the Lair, as I have done for the last couple of years. It’s not everything I want it to be - but realistically, I don’t know if any blogging application could be that without a lot of custom additions. I’ve also been following Wordpress development (and development of some of the plugins) for a while and I’ve occasionally given back fixes, albeit minor ones. But there’s no reason why blogging software development couldn’t be done differently; or dare I say it, better.

I think it’s more interesting for me to explain why I personally decided to contribute to Habari development.

Read the rest of this entry »

honey I broke the build

January 25th, 2007

Like most practicing software engineers today; I’ve worked with version control before. Only, I’ve been involved in commercial projects with lots of rules (mandated automatic checkouts, lots of JUnit tests run before and after changes) and a fair degree of stricture.

Today, I uh … checked in a piece of code to a public open source project. As per my luck, this piece of code promptly barfed and left a messy stain on the keyboard and carpet. Not to mention more than a little egg on my face.

Can you imagine the stress that people face when there is a deadline looming and they’re scrambling to finish something? Trust me, it’s nothing compared to the feeling of utter panic that sets in whch you realize that you’ve ummm.. broken the build for potentially hundreds of people and you’d better fix it. toot sweet. And the tooter, the sweeter.

Some faffing around and ineffectual flailing later, I actually backed out the broken changes, tested, checked out to make sure there were no subsequent revisions, tested again and committed. Order was restored. Apparently, this process took 40 minutes. It seemed like much less at the time. Unfortunately, it didn’t happen before a few bleeding edge SVN updating hawks had noticed the breakage. Gah. BURRRRRN.

According to the Pragmatic Programmers, breaking the nightly build gets the luckless developer an award of a dunce cap. I think I’ll hunt around for some headgear for the rest of the day.

so how was your weekend?

January 23rd, 2007

Last year, he choked. This year, Peyton Manning finally broke the family jinx, gave away his ticket to watch the game from the stands and will have a chance to play.

Will he choke? I rather hope not. Yes, that was the NFL, folks. Superbowl in a couple of weeks and I’ve been watching the playoffs as usual.

In other news, I am not buying the Arsenal is a young team, full of promise business… but I’m definitely not the only person amused by Chelsea’s spectacular implosion. So, I’m probably one of those masochists who are less interested in a team that’s winning easily (as Chelsea were for the past few years) and more interested in a team that wins under pressure or in times of strife. Most other teams in the league have that quality. Chelsea have never really been challenged, have they? About time it started for them.

Pick of the league so far this year? Reading. It could all go horribly wrong for them yet but they’ve gotten some scary results. Now if only they don’t do a Wigan or Charlton next season.

in a summarized form

January 22nd, 2007

The gods of Winter have finally decided to make an appearance around here. Not particularly nice to be greeted by a faceful of icy sleet as you step out of the house but at least it fits the most miserable day of the year tag.

My bi-annual visit to town yesterday was made more eventful because the Ouse was being stroppy. Gawked at the floodwaters for no apparent reason (once you’ve seen one flood someplace, you’ve pretty much seen them all); gave my best Yorkshire accent impersonation to random tourists who wanted to know the name of the river and wandered around town.

I was in town to perform the last rites yesterday on a consult/contract job I was doing for most of last year. Not really sure about how to sum up the experience actually. My expectations of employers in the software industry are so laden with cynicism that it takes a fair bit to surprise and astonish. This gig actually did surprise me (in a good way) but unfortunately, the parts that didn’t surprise - or perhaps more appropriately, met my preconceived expectations - ultimately did the deal in. It was, in my personal nomenclature to describe jobs, a grey experience. A lighter shade of grey with the paler positives predominant over the darker negatives, to be sure. It was also an excellent learning experience at the higher end of the curve; the sort of stuff that doesn’t involve writing a single line of code.

And I also have a stock of war stories to rival the best (or worst) that Scott Adams can think up.

Selectivity in recollections is a strange thing, really. Sometimes the good stuff sticks, sometimes the bad stuff does. Years after the fact, it’s no longer possible to even remember the specific incidents or events that led upto the conclusion that something was good or bad - but the conclusion does hang around a lot longer.

I don’t have time for this

January 19th, 2007

No, really. I don’t. Someone said in IRC last night: “I don’t have time to type these words to you now”. Except he was in the channel and typing them out anyway.

Life in drac land has been littered with an assorted series of road blocks recently. First, I made the traumatic decision to turn off Tab Mix Plus this morning. I say this with all the pathos of someone forced to switch off a life support machine. I think I’m justified because my browser essentially is my life support. I spend an embarassing amount of time in front of a LCD screen these days (as I have done for years now) and a good proportion of said time is spent staring at a browser. How my browser is behaving at any point in time matters for this reason.

It’s not really a secret that Firefox can be problematic at times. My biggest bugbear in the pre 2.0 days was the ghastly memory leaks. Spend a few days using the same Firefox instance and the memory usage jumps to obscene proportions. I thought I had it narrowed down to Greasemonkey and a couple of other extensions so I didn’t install them. Unfortunately, Firefox 2.0 introduced a horrible (for me) feature of a scrolling tab bar.

A scrolling tab bar is great if you have about … say … 10 tabs open at a time. I guess. I rarely have less than 30 tabs open. Yes, really. I can probably justify three quarters of those being left open all the time. [Random tip: that many tabs and Reload Every obviate the need for a separate RSS reader]

But I digress

30 odd tabs make the scrolling tab bar malarkey seem ridiculous. I can’t even remember if I have a tab of my customized slashdot home page open and if I did, it’s probably on the wrong end of a long long scroll; so I open another tab on this end. And so on and so forth. When I can’t see all the tabs I have open in one glance; my lousy memory dictates opening another tab anyway. And so the number of tabs open climb, even when they don’t need to.

Tab Mix Plus has a killer feature of being able to show all open tabs in multiple rows. None of this scrolling business. Wonderful. Never mind all the other nifty bonus features; that multi-row tab bar was what I really wanted. And then Tab Mix Plus (it seems like) started leaking memory on me.

Update: No, it’s not TMP but Firebug causing the memory leak nastiness and instability. W00t! I can live with a selective enabling of Firebug when I want it, living without TMP is enough to drive me to Opera. And yes, Firebug is still a beta so I should have checked that first.

Add to that a date mixup between the campus authorities and the department authorities (which I had to try sorting out), an impending supervisor meeting where I needed to mug up on several papers (but haven’t yet), random frustrations with the slow (glacial) pace of writing up and you can probably understand why I want this week to go off into a corner and die a quiet death. None of this kicking and screaming, don’t go all drama queen on me; just go away already.

And yet, the cotton wool escapism of a weekend of sports TV (Masters Snooker, Aussie Open and ODIs); not to mention the kickoff episode of American Idol await.

how to wee for dummies

January 15th, 2007

Has anyone realized that the near ubiquitous series of books titled For Dummies is tackling subjects no dummy should be allowed near with a ten foot pole?

I mean.. come on. Service Oriented Architecture for Dummies? What’s next? Nuclear Physics for Dummies? How to build your own fission reactor for Dummies? Mandatory reading material for all PHBs, Software Project Management for Dummies? Explosives, Running with Scissors and other amusements for Dummies?

It gets better (or more idiotic). Not to be outdone by Wiley, Penguin has charge of a series titled Complete Idiots Guide To …. With guaranteed hits such as “Idiots Guide to Dream Jobs”, “Idiots Guide to Body Language” and “Idiots Guide to Restoring Collector Cars”. Right. Because idiots are exactly the sort of people you’d trust with a collector car. How about an Idiots Guide to medicine in the A&E (ER to the Americans) while you’re at it? There was another title I had in mind; but that’s already been written.

And in the first part of my oddly titled post, A 28 year old who died of water intoxication. She was (and dear gawd, the jokes write themselves) taking part in a competition titled “Hold your wee for a Wii”. Or, when you think about it, “When there’s a Wii, there might be no wee”. Yes, I am eWiil. Also, an excess of water can kill. And you thought too much booze on a night out was bad for ya. Looks like even water isn’t safe anymore.

carbon finance

January 12th, 2007

Heard of carbon finance? It’s

… resources provided to a project to purchase greenhouse gas (GHG) emission reductions

A dangerously high amount of greenhouse gases are emitted into the atmosphere by our activities. To prevent global warming and other environmental catastrophes, we need to spend to reduce said emissions. That’s our carbon budget, the basis for the whole carbon finance idea. In Nicholas Stern’s climate change review; there is an estimate of 1% of global GDP required to reverse the adverse effects of global warming if we act now. If we leave it till too late, however, that number goes up to 15% - 20% of the global GDP. The old adage of prevention being a darn sight cheaper than cure applies, I suppose. Unfortunately, I very much doubt that humanity will collectively give a damn about greenhouse gases till it all goes pear shaped.

Read the rest of this entry »

by the seat of your pants

January 10th, 2007

Old aviation parlance, apparently. Anyone who read Biggles books should have known that already.

I spent days trying to figure out a structure and plan of attack for this problem I’ve been having recently. How does one automatically (by which I mean, with a computer program) determine the intent of a phrase (as opposed to a single word)? A single word is easy. Or at least, less difficult than it used to be. Phrases are still voodoo territory. Hell, even distinguishing a phrase amongst the adverbs and amibiguity in a sentence can be a non-trivial problem.

Plan of attack, ok… even if most of the things I tried didn’t work (leading to considerable frustration), it’s still decent research. A structure and reasons why it all collapsed like an incompetent civil engineer’s bridges? Nope, I was lacking a clue.

So my supervisor, anxious to hear what I had been busy discovering (I forgot to mention Ach, Grapevine and all the other distractions) scheduled a meeting for this afternoon. I had lots and lots of pieces of paper but no structure. I spent a fair bit of time this morning trying to impose some structure on the unholy mess that are my results and failed. Abjectly. Went to the meeting with pieces and fragments of research sticking out in all directions… rather like someone’s hair after a go by a lunatic hairdresser ODing on caffeine.

Sat in the chair. My supervisor waited expectantly.

And suddenly, I had this epiphany.

World peace, a cure for cancer or a solution to global warming it may not be - but my results suddenly and startlingly slipped into context. Everything made sense, for a fleeting moment in time.

If only this was the first time this happened… but it wasn’t. What becomes clear is that I need to either swipe the chair in my super’s office (because it has magical properties) or that I need to move into my supervisor’s office (because the environment has magical properties) or I need to be put on the spot more often.

Now, next time I need to take a notebook and write all that shit down when I’m spouting it. Apparently, only the blunt force trauma of a supervisor meeting enables the clarity of thought required for this piece of research.

I really mean it this time

January 6th, 2007

A bride-to-be in Austria got a nasty surprise recently. No, it wasn’t size related. Pervs. When asked if she took the man next to her to be her lawful wedded husband, she said no. Neigh. Nein. Nada. Rumour has it that she was only joking. Freud may have thought otherwise. Unfortunately, the Austrian authorities conducting the wedding ceremony didn’t see the joke. They promptly stopped the ceremony and refused to restart. It seems that decorating the car with condoms (preferably unused) and other pieces of confetti for teh wedding funneh is a lost art. Even kissing the priest for shock effect is passe…No, this woman wanted to brighten up the morose demeanour of authority and ended up being bitch slapped instead. There has to be a lesson in there somewhere.

Also, what else could the authorities do? Imagine the precedent if they had accepted the bride-to-be’s frantic plea that it was all a joke, didn’t really mean it, I just wanted to make you guys laugh. Next thing you know, people will be turning around and doing a Britney Spears. “Oh, yeah. I said yes but I was joking. Please fix, kthx”. No, I will refrain from using a Britney Spears song title for an obvious attempt at humour.

And since I am in the mood for amusement, it seems that somewhere, a Brazilian judge doesn’t really understand this whole intarweb thing. And from there, we saunter straight into the observation that Ronaldo dumped his model girlfriend and shacked up with his dentist. If anyone wishes to speculate about the amount of drilling going on there, please refrain.

fewer features fewer problems

January 4th, 2007

There is a school of thought out there, simply expressed, that says fewer features are better. This is classic 37 Signals ethos. If you’ve never heard of 37 Signals, well … long story short, they focus on minimalism in their online software offerings. Both figuratively and literally, you’re not missing much if you’ve not heard of them before. But their software is still very shiny and functional and most importantly, it works.

This is hardly a new concept; see paying more for fewer features. But from my point of view, putting in fewer features focuses the mind wonderfully on things that are most important (or core) to the application. It forces me to think about what I want to see in there, rather than running around with a gigantic shopping trolley in the feature supermarket and having a nasty shock at checkout.

Read the rest of this entry »

in the ascendant

January 2nd, 2007

With the possible exception of The Silence of the Lambs, every effort is made to portray Hannibal Lector as someone merely tragically flawed rather than an out and out psychopathic monster. He is often shown acting appropriately for the hero of the piece instead of the villian. Therein lies the moral dilemma. You want him to go down. Yet, he’s smarter than the opposition and you feel sympathy for his torment at losing his family. James Hadley Chase might have had Hannibal Lector committing suicide or running heroically into a police cordon only to be gunned down in a hail of lead in the final moments. Not Thomas Harris. Hannibal Lector escapes, gets the girl (well, sort of) and lives, as far as we can tell, the carefree life of the wealthy-enough-to-not-care.

If I wanted to compare Thomas Harris in Hannibal Rising with a completely different author, an easy jump would take me to Without Remorse by Tom Clancy. Just substitute profiteering Hiwis for drug dealers and the plot line runs essentially the same way. John Clark never did cannibalism though… “A brouchette, cheeks and morels” may well be the new “I ate his liver with fava beans and a nice chianti”.

Oh and major spoilers for Hannibal Rising follow..

Read the rest of this entry »