Friday, April 10, 2009

OK, back to work

I've been paying a little too much attention to this blog over the last couple of days.

Now it is time to do some work!

(don't expect comments to be answered/ responded to in any reasonable time frame. if anyone needs to say anything urgently use email)

Hey I know that lady!

Outlook India has an article on Ministhy Dileep, a DM (District Magistrate) who has been raising hackles in the badlands of Indian politics by scrupulously enforcing the laws.

Ministhy was my batchmate at the College Of Engineering Trivandrum. Ministhy was doing her BTech in Electronics while I "studied" Industrial Engineering. (The quotes around studied == I was never in class and was always doing other .. ahh .. interesting things, while Ministhy was a model student).

Anyhow it is good to see her play such a crucial role in the functioning of our democracy.

Way to go Mini!

Wednesday, April 8, 2009

The Agile Consultancy Scam

Luke Halliwell wrote a nice blog entry titled "The Agile Disease" as a reaction to some Scrum "Masters" trying to "agile enable" his (games) company.

he says "The games industry is rushing headlong to Agile development methodologies just now; it’s a great source of excitement for some, with conference sessions and magazine articles left, right and centre, and “evangelists” spreading the word.

I’m sick of it. I can’t wait for the day when everyone realises how much of a fad-diet, religious-cult-inspired, money-making exercise it is for a group of consultants."

Of course this brought all the usual suspects out of the woodwork, raining down hellfire and brimstone on poor Luke for daring to question their cult. (A similair thing happened when Alex Payne moved some backend components from Ruby to Scala because (surprise surprise) Ruby turned out to be an inappropriate choice for heavy duty infrastructure code - and the *ruby* fanboi crowd crawled out of the woodwork to defend their particular illusions, but that's a post for another day).

This post is a slightly reworded form of a comment I made on his blog so here goes and makes a different point than he does.

I've written before of the phenomenon by which people who can't code for nuts set themselves up as "gurus" who make their living telling other people how to code.

What's happening when so called "scrum masters" advise game companies is a variation on the same theme - the blind trying to lead the sighted.

*Most* of these so called agile "gurus", consultants, and "masters" of various stripes have experience only in enterprise software, and even there often don't write production code on a regular basis.

Of course, most of them (Kent Beck and Robert Martin being the exceptions) don't have any code we can look at to validate their claims of excellence. And yet these folks have no shame in selling their "wisdom" to game companies.

If I wanted to learn how to make good films, I would apprentice myself to or learn from the works of directors I consider *brilliant*. Why would I pay attention to people who've never made a movie in their lives (leave alone a path breaking or massively successful movie) but still prattle on on how to make one?

If I were running a games company and I wanted advice on how to (better) develop games I'd listen to people who can claim things like "I developed or led the team that developed , Doom/Quake/Unreal/WoW, EVEOnline, Baldur's Gate ... let me tell you how I did it", NOT those who say "well yeah, once upon a time I tried to write a sudoku program - I never could get it to work with my fancy methodology but I can teach you how if you give me lots of money to be a consultant or 'agile coach' ".

When John Carmack or Tim Sweeney or Warren Spector or Peter Molyneux credit "scrum" with their success, I'll listen. (Why do I think it will be a VERY long time before this happens? ;-)).

Any moron who sat through a 2 day conference and claims "mastery" therefrom (which is what a "Scrum Master" is - Scrum Certification is the most brazen con game in the *history* of software methodology snake oil schemes) and tells hard working developers how to organize their work should be smacked silly and booted out into the street pronto.

In another set of posts, Luke stomps the "software metrics" crowd. These people aren't as visible these days (or as deranged) as the Agile Sellers, but they do lurk in dark corners. But I'll let you read Luke's blog. He is a fine writer and knows what he's speaking about.

PS: If you are an Agile Consultant trying to defend your livelihood, first send me the urls to code you've written with your cool methodology and *then* comment. As evinced above I have no patience for "codeless wonders".

If you've written a best selling ground breaking game using Agile, iow if you are someone of the calibre of Carmack or Sweeney and have used agile, *then* we have the basis of a discussion. Thanks in advance.

Update: This thread is a perfect example of some agile "gurus" (keep reading down the thread, you'll recognize the names) make perfect asses of themselves talking to games programmers. I couldn't invent this if I tried :-)

Voting against Shashi Tharoor

I'll be writing a detailed blog post on this later, but Shashi Tharoor, who is the Congress candidate from Thiruvananthapuram in Kerala (my home state) is, in my opinion, the worst kind of carpetbagger ever in my electoral district's history and I will not be voting for him.

He has never lived in Kerala (as far as I can make out), leave alone Thiruvananthapuram, can't speak the local language (, has no political experience (I guess losing the fight to be the UN Secretary General *is* experience ;-)), can't stand being questioned on his beliefs (he walked out of a TV interview because he thought the crowd was "unruly") and has no distinctive ideas I can make out from his writings. Apparently his academic qualifications and his diplomatic experience, such as it is is supposed to make up for his not being able to converse with his constituents, leave alone understand them. He was imposed on this constituency as a candidate, over ruling local part sentiment by the Congress "high command" which is another strike against him in my eyes.

I am electorally neutral and I don't belong to any political party, but I'd vote for anyone but Mr.Tharoor in this election.

Any Tharoor supporters on the intarwebz please don't bring up the Obama comparison. Obama is a Harvard grad , but he also has the street smarts of a Chicago politician, superb communication skills *and* ideas of his own.

I hope and pray Mr.Tharoor goes down to a massive defeat, thus sending a signal to other would-be carpetbaggers. I'll go out on a limb here and predict that Mr T will lose badly in the 6 way contest.

Of course, India being a democracy, I can only cast *my* vote as I see fit. If the majority vote goes to him, then he becomes my MP and that is as it should be. May that day never come!

Friday, April 3, 2009

I need a new blogging platform

I notice I am not updating my technical blog because most of the things I want to write about need converting formulae (from Latex) to images. Yes I could use javascript to convert at display time but what I really want is a blog engine that would recognize a latex entry and automatically do the conversions before the text leaves the server. I hate WordPress (and PHP) with a passion so that isn't an option.

I have my nose well to the grindstone and have practically zero free time till September end. Then I'll probably whip out a tiny Django based blog engine with exactly the features I want and then it's good bye blogger.

Stuck in Code

An ex colleague let's call him.. uhh .. Vivek, who was my peer at MegaCorp many years ago who is presently VP of R&D at [very well known company, a variant of MegaCorp] called up a few minutes ago to see if I could help make a connection to someone he wanted to meet up professionally with. I am fairly well connected in Bangalore, having lived here more than a decade. In the chit chat that followed he asked "So what are you doing right now? " And I answered, "well I was coding when you called ...". His response was "You are still stuck coding!!!?"

Umm.. yeah. Kinda Sorta. I am still coding. I am not really stuck though. "Stuck" implies an involuntary inability to change position.

My last job title had "Program Manager" in it. I've turned down multiple offers to "move up".. I am good at what I do, make more money than many "Directors" and most importantly am happy building systems (vs managing people who do).

I think it is a very *Indian* (or perhaps Asian) thing to expect good developers to "move up" to be managers or directors or Vice Presidents. We are a very hierarchical society and people are very often judged on where we are seen to be on some arbitrary hierarchy. People who work with their hands (or their keyboards) are often considered "inferior".

One of my friends who is an engineer at a Japanese automaker's Indian subsidiary told me about how the visiting Vice President (who was Japanese) rolled up his sleeves and jumped in to fix an engineering problem that had come up on the line and of the hush that fell on the factory floor with the Indian managers looking distinctly uncomfortable.

Specifically in software, when is the last time you saw someone very high in the company hierarchy do a code checkin? My last boss at MegaCorp was hired later than I was and the first thing he said to me when we met was (remember I was also a "manager" on paper), "You know, any monkey can code, but we need good managers". :-).

I think one of the main reasons is that we in India still don't have any local role models for people who made a great deal of money (or had a significant impact on the world) by writing code.

Once we have our Torvalds and Stallmans and Brins and Pages and Grahams and Norvigs "coding" won't be such a dirty word after all.

Meanwhile it is very amusing to see the contortions people go through to (a) deny that they are "just" developers or (b) "move up" to management. The lack of early stage startups doing innovative cutting edge software in India and the preponderance of "India Development Centres" (set up to grind through the crappiest work in the company) contribute to this state of affairs.

In the Indian Software Industry, *most* "managers" (or directors or .. whatever their titles are) have no real power within the company at large and their responsibility is just to implement decisions made in California or Boston or Tokyo. The most important game is "climbing the corporate ladder" and the most important subgame is "suck up to the boss". Why would anyone (who has a choice) **want** that life?

At ThoughtWorks, when I worked there, we had an inside joke.

Every technical person would call himself "Just a Developer" and there weren't any hierarchies among developers except ones of peer acknowledged competence (though I hear that things have changed and there's all kinds of intra developer hierarchy these days , based more on "years of experience" than skill levels, but that is hopefully just a rumor) .

When teams from other companies would visit us, as the round of introductions progressed, all the TW technical people would introduce themselves as "My name is ... . I am Just A Developer". Sometimes the visitors would get completely bewildered at all the "low ranking" developers attending important meetings, and hilarity resulted.

To conclude, I am "just a developer". I actively choose to be one of "those people" :-).

Thanks for your understanding. :-)

Update: The point I was trying to make is NOT that managers don't add value. Many of them don't to be sure, but many of them do. And some add very significant value, sometimes far more than an individual developer can, especially in large corporations.

my point was about how people *assume* that one wants to "move on" from being a developer or creator to someone who manages development.

Wednesday, April 1, 2009

DevCamp Bangalore is like BarCamp Bangalore

without all the vague weirdos (SEO folks, "entrepreneurs" who have "ideas" and are looking for some developers to "join the startup"/code for free, "movie enthusiasts" etc) who throng BCB.

The idea of a devcamp is that it is an "unconference" for *developers* (hereby defined as people who work on interesting stuff, not a warm body who does J2EE/ ROR crap in the office and never breaks open an editor away from work).

In an ideal case (a) there would no hangers on, everybody would be presenting (b) there would be no "Introduction to Fad of the day" type sessions, and more "here is some code I was working on and here is what is interesting from an *experienced* programmer's pov" type sessions.

DevCamp Bangalore 2 is being held at ThoughtWorks on April 10, 2009. So if you are a good developer with some insightful code to demo, please attend. (I am not in Bangalore that weekend and so won't be attending. My experience report of last years Devcamp is here)