Posts Tagged ‘Management’

Freedom and All That

Tuesday, March 3rd, 2009

I’ve just finished posting a new blog entry on XP-Dev.com on the definition of Stories, Tasks and Bugs from XP-Dev.com’s point of view. However, the beauty of it all is that users make XP-Dev.com their own. They end up using it for various other purposes other than software development (and agile at that!). They are free to use it whichever way they see fit.

In my blog entry, I said:

However, this article (and future ones) are only guidelines – you are free to decide on how you’d like to use XP-Dev.com.

“Free to decide” – these words triggered a memory from the past.

Back in 2003 I was doing an summer internship/job with Lec here in the UK and was rushing back to their office from Victoria station in London. I was running late and did not have enough time to read the notice board on which platform I was meant to catch the train from.

I ran to the first person who looked like he worked at the station, and I asked him which is the next train to Bognor Regis (Lec HQ). Apparently there were 2 – one that was leaving at that moment, and another that was leaving in 30 minutes. I wasn’t too sure which one my ticket was for, and showed him my tickets and asked “I’ve got these tickets – which train can I board?”.

As soon as I finished my question, he immediately replied “Take which ever one you’d like – it’s a Free country”. He didn’t bother even looking at the tickets!

With adrenaline still rushing through my heart, I thanked him, ran to the train and boarded it. The train left a minute later.

I have always comeback to this little episode whenever I think of usages of a tool or even idea – let it be a handy tool (screwdriver, etc) or even an edit (one of the team asking whether its OK to use Vim instead of Emacs). I have a 2 second flashback to that moment in Victoria station and reply to them in the same manner – “Its a free country. Do whatever you want.”

And this is the beauty about building tools that people use, like XP-Dev.com. Everyone has their own way of using it and it should be just like that. No hard rules, everyone gets to do it their own way, and everyone is happy.

There’s a saying “With freedom comes responsibility” – so, just don’t do anything unlawful.

Managing People in 15 minutes, or is it Micro-Management ?

Wednesday, February 25th, 2009

I enjoy reading HarvardBusiness.org. There are some really insightful articles there, and I think about some of the better ones days after reading them.

When I first read How to Manage People in 15 Minutes a Day by Daisy Wademan Dowling, I thought that it was a fairly good article. It was short and to the point. 10 minutes went by and that’s when its struck me: it’s rubbish.

Now, the article gives out 4 pointers on how to manage people in 15 minutes a day. My feeling is that its geared towards the busy manager/executive who will need to squeeze out every second of the working day to ensure that the team is working at 100%.

These are the 4 tips that were listed:

  1. Turn dead time into development time. Walking back to your office after a meeting? Use those two minutes to give your direct report feedback on the presentation, and on how he could do better next time. He didn’t have a speaking role? Ask him how he thought the meeting went and how he might have made certain points differently — and then offer feedback on that. Direct, in-the-moment feedback is your single best tool for developing people.
  2. Constantly spot dead time. Look for every two-minute stretch in your day during which you could be talking to someone else — most often, that’s travel time — and convert each into a coaching opportunity. Walking down to Starbucks to get a coffee? Driving to the airport? Headed out to your car at the end of the day? Ask one of your people to come along with — and talk to them about their goals and priorities.
  3. Show up in their workspace. Employees expect you to stay in your seat. Don’t. Once per day, get up and walk over to the desk of someone you haven’t spoken to recently. Take two minutes to ask her what she’s working on. Once she’s done answering, respond “What do you need from me to make that project/transaction successful?” Message to employee: I know who you are, I’ve got high expectations — and I’ve got your back.
  4. Make two calls per day. On your way home from work, call (or email) two people you met with that day, and offer “feedforward.” “I like what you’ve done with the Smithers account. Next time, let’s try to keep marketing costs down. Thanks for your hard work.” Always make “thank you” a part of the message. Employees who feel appreciated, and know that you’re trying to develop their skills, stay engaged over the long run.

I won’t go into the details and analyse each and every point. However, here’s my feedback to these 4 tips:

Points 1. and 2. is essentially time management. Its not rocket science and the subject been there since the dawn of modern management. So, lets not kid ourselves that we’re actually gaining new knowledge by coining it in new, fashionable ways. Nothing new here. Telling managers that they need to make sure every second of their time is used effectively is just pointless. Everyone knows about the importance of time management, but most get stuck on how to implement/execute it. For execution, there’s a plethora of seminars, books, papers, conferences around the subject.

When I was managing teams and projects, there were days that felt endless. I usually started work at 7am, and at 8am sharp 5 people decide to whack in 5 different meetings throughout the day at different times. Managing those days were challenging, but its was not rocket science. On days like those, every 5 minutes free time was spent with someone, which is a trait I picked up from my director at that time. I’ve sat in countless of meetings that I had lunch in. You just have to make every moment count.

However, the rubbish part comes on points 3. and 4. If you read them carefully and picture yourself as the manager, it makes sense. But lets remember – management is not about you, it’s about them. Now, put yourself in the place of the your direct report and all of a sudden points 3. and 4. suddenly feel like you’re being micro-managed. This is not the way to lead a team. To be honest, if I had done that to my teams in the past, the consequences would have been dire. Admittedly, managing developers is different from managing a team of say, sales people. However, micro-management is always a bad thing to do. It undermines, demoralises and makes the person feel utterly useless.

Now, it’s not normal to find such low quality content on HarvardBusiness.org, and this one has to be one of the worst I’ve read. Infact, head over to the article right now and just read the comments that were submitted. Not entirely good feedback at all.

Royal Mail Fail

Tuesday, February 24th, 2009

I just managed to get my Tier 1 visa approved a couple of weeks ago.

For those who don’t know what that is, Wikipedia has a short description about it.

It was a painful experience, one full of anxiety and frustration. It’s not down wholly to the application process, Royal Mail added their incompetence to it and made the whole process that much worse.

I applied back in November 2008 and it took a whole 10 weeks before I got the letter and my passport back. During this time, I did not manage to get hold of anyone from Home Office (BIA) to get an update on the progress of the application.

Job Security

Now, some of you may know this, but I work at an investment bank. Right now is the worst possible time to have a bank as an employer and your visa sponsored by the bank. If the bank goes belly up, you’re out of a job. You have a month (I think) to get a new one, or you’re out of the country. Good luck getting a new job in the banking sector in this climate (I heard rumours of 200:1 ratios for job openings, scary stuff).

Having the Tier 1 visa puts less pressure for me to get a job if the bank was ever to go belly up.

“Sorry You Were Out” Card

Anyways, so, it was 10 weeks pulling out my hair, wondering WTF happened to my application.

Until…

Until the fateful day that was Thursday, 5th February 2009. When I got home from work, I received a card telling me that Royal Mail tried to deliver a letter to me, but I was not at home. Yes, one of these:

The card said that I could collect this letter in 48 hours from a post office nearby (a 5 minute slow drive from where I stay). So, on Saturday (7th Feb) early morning, I went there to collect the letter, and I was really eager to get hold of it (for the reasons mentioned above).

However, the letter was not there. Apparently the post man responsible for the delivery had not returned the letter to that office. I was turned away with the phone number for one of the branch managers. They took my phone number and said that they will call me once they have the letter with them.

Tracking the Letter

I had a tracking number and went to Royal Mail’s website to find out where the letter was, and this is the response that they had on the website:

Recorded Signed For™ items are only tracked after the item has been delivered. Depending on whether the item was sent first or second class, this may be a few days after posting. Please try again later.

Information on your item is not yet available online.

Now, forget the fact that my letter was just a “Recorded Signed For”, which may not come with on-the-dot-accurate tracking. But how useful is a tracking system that only “tracks(ed) after the item has been delivered” ?  I’m not entirely sure which planet they come from, but here on Earth, tracking an item means seeing where the f*ck it is en-route between source and destination, and not after the fact that it has been delivered. That’s not a tracking system. It’s not tracking anything at all! It’s a reporting system.

Customer Service, Anyone ? Royal Mail Do Not Need It

I returned back on Tuesday 10th of February, thinking that it might be worth trying my luck. Still no letter, but the 5 minute trip to the post office was worth it. I learned a few things about the Royal Mail:

  1. Apparently ALL letters go to the head office before getting routed to the branches, even for letters that failed the first delivery attempt has been made.
  2. Being rude to a staff member of the Royal Mail is bad, frowned upon and there are signs everywhere to tell you not to do it. But, a Royal Mail staff being rude to a paying customer who is speaking softly, slowly and politely is perfectly fine.

During the conversation (where I was treated like I had the plague), all I wanted was clarification on a couple of things:

  1. The branch phone number, including the manager’s phone number is  either engaged or rings endlessly.
  2. In the past when I gave them my phone number, no one bothered to contact me when the letter/parcel had actually arrived.

Now, I was not looking for a dossier on these two facts. All I wanted was a “We’re sorry, but we’ll try our best next time. Thank you”. Instead I got a “so, whatdoyouwantmetodo ?” which was very appealing to hear at 7.45 in the morning. I was turned away again.

The Lie That Reveals Everything

For the rest of the day and following day (10th Feb) I checked the status of the letter on their tracking site every few hours and was told the same thing – “Items are only tracked after they have been delivered”.

However, on 11th Feb morning, the message changed on their tracking website:

We have tried to deliver your item from our ROTHERHITHE Delivery Office before 09:43 on 11/02/09 and we have left a while you were out card.

You can arrange a redelivery online,  call the number on your card to arrange a re-delivery, or collect  the item from your local enquiry office by bringing your card and proof of identification and address.

So, now it can track items before they are delivered. They’ve lied! And guess what ? When I got back home that day there was no “while you were out card”. A second lie!

At this point I had a hunch – that status on their website might indicate that the letter has been delivered to their local post office, and it was actually there physically.

<Geek talk warning>

See, plenty of these tracking systems are essentially the same in the core. There is a finite state machine which reflects the status of an item in the real world, and you need some intervention to move between the states. So, you could have the states “Dispatched”, “On the way”, “Delivered”, etc and on each state have a location attached. You could have a fully automated method to move between the states, or just a manual one.  Most of the time you’d use a bar code scanner to reduce the manual data entry task.

Moreover, most of these systems have a fallback state which gets reached in dire circumstances – human error, system crash, etc, to be able to recover.

My theory is this (there’s no way to prove it): The message I was getting initially which said “items can’t be tracked” on their tracking website is a generic way of saying “we have no f*cking idea what is going on”. The second message which said “we tried to deliver it” was the human intervention that recovered the state of the letter in the system. It probably was someone checking/scanning in the letter at the delivery office and tinkering with the state to say “We tried to deliver” rather than the actual “We have it at our delivery office”.

</Geek talk warning>

And guess what ? I went back to the delivery office the following day, and the letter was there!

It does not end there, and here’s the punchline: while driving back home from the post office, I got a call from them saying that there was a parcel for me. OK, so, they do call and I was wrong. But they called the wrong person. They attached my phone number to the wrong letter.

Lessons Learned

Here comes my analysis of the Royal Mail disaster described above:

  1. It took them 1 whole week to take a letter back from destination to local delivery office which is a slow 5 minute drive.
  2. They (including the systems) were utterly clueless on what’s actually going on.
  3. Being rude to paying customers is perfectly fine.

It all boils down to one word: incompetence. It’s incompetence in every single stage. Incompetence in management, the delivery post man, the lady behind the desk, their phone systems, the works.

Now, I have read Allan Leighton’s (current Royal Mail CEO) book “On Leadership” and in there he goes on about putting the customer first, leading from the front and working as a team. All abysmally executed here. He even has a website dedicated to leadership. I do respect and admire what he has done for Asda in the past and it was a difficult task of bringing one of the sluggish retail brands to one of the top 3 largest ones in UK. He executed that wonderfully. But he has failed when it came to the Royal Mail. My only hunch is that in Asda, it was easy to convert the team culture to one that was more productive. However, with the Royal Mail, their culture is so ingrained that no human being could possibly save it.

The Times reports that Royal Mail is due to slash 16000 jobs to cut costs. They only have themselves to blame. I think its good that they want to cut costs, but I don’t think its enough. For the Royal Mail to be able to delivery more value with less workforce is as good as asking the sun to rise in the west, i.e. “no f*cking way”. It needs more than a job cut. It needs to be revamped and it’s culture re-energised with some grain of simple business principles.

It needs to get rid of incompetence at all levels.

Update: Apparently there are plans to part-privatise the Royal Mail. I, for one, am happy to see some improvement. Time to kick some incompetence out!

Update 2: BBC have an article on the row over privatisation of Royal Mail as well.

Update 3: Andrew Ellson from Times Online writes about his frustrations as well.

Taking the Stairs

Friday, January 30th, 2009

I have been awfully quiet since the beginning of the new year and I have to appologise. It has been extremely busy at work, and along with the ambitious plans that I have for XP-Dev.com, I never seem to have any spare time left.

Now, one of the things that I have missed out was blogging about my resolution for this year. 2008 has been a real roller coaster for me – both, professionally and personally, and I do want to share one of my observations which happened at the end of December 2008.

Lazy ?

I work (at an investment bank doing IT “stuff”) on the 6th floor of my building, and one day, the lift stopped at the 2nd floor to let someone in. This lady (she looked young, maybe late 20s) steps in and calls for the 3rd floor. Yes, she just went up one floor, and to make matters worse, there’s a fully functional escalator literally 20 metres away from the lefts.

At that moment, I was just thinking “Jeez, one floor? AND there’s an escalator just there. This is just pushing it. She should have just taken the stairs” (escalators in this case).

And that’s when it struck me – 2008 is the year the world paid the price for the finance industry not taking the stairs.

Her action to take the lifts instead of the escalators, cost me and 4 others in the lift a few seconds each, but it was just plain lazy and inconsiderate.

Reflection

I have only ever worked for 3.5 years, all of it in investment banking. In my short professional career, I have been a developer, a mentor, a manager, an architect, and a general noise generator (the actual label was worse, filled with profanity). I have seen systems and businesses fall to their knees, while others have run perfectly, some flourished and even some failures to take off (i.e. projects/businesses that seem to just go on with no delivery/product/end in sight).

Looking back on these 3.5 years, I noticed that the ones that failed had just taken outright shortcuts. The finance industry, in their goal of getting rich fast took plenty of shortcuts. They were not prudent enough to sit back, reanalyse the situation and figure out the right way to move forward (and actually do it even though its hard work).

Everyone is paying the price for it. Jobs are being cut everywhere. Businesses are failing – all due to the finance industry not taking the stairs. Their actions of taking shortcuts to generate revenue has cost everyone else a lot of grief – physical (monetary, etc) and emotional (job loss, security, etc).

Wake Up

Personally, I hate having to do a half-ass job. I hate taking shortcuts. I like to get to the bottom of things and nip the problem in the bud. I have to admit that there have been times when I did take the shortcuts.

So, my goal for 2009 is simple – take the freaking stairs, and you should too. Whenever you’re in a situation that requires a decision, or solving a problem, just keep asking yourself “What is the actual problem? What is the right solution?” and just do it!

Out of the E-Mail business (for now at least)

Sunday, January 11th, 2009

I used to offer free 4GB mailboxes for email over at Duzle.com including some basic features like anti-spam filters, big attachment sizes, and basic search facilities. It even had access for authenticated SMTP and IMAP, so users will be able to send/access their email using their own email client, rather than using the web frontend (Squirrelmail).

Sounds like a good deal, right ? I mean – you get 4GB, no ads, anti-spam filtering, search, web access, SMTP access, IMAP access (including SSL!).

Try to guess how many users I managed to bag in the first month ?

Just try it. Pick a number.

1000?

100?

10?

No – zero!

I’m not kidding – the site was live for a whole month and no one even bothered registering. One thing I have to admit at this point – I did not bother marketing/advertising it out, and that’s my fault. I was too occupied in way too may projects to focus on just a couple of high priority, large, workable ones (mentioned here as well).

However, there are other factors that lead to the zero subscriptions in the first month.

The Market

The e-mail provider market is saturated. I’m not kidding, there are the big guns – Yahoo, MSN, Google, etc. Then there are the smaller providers (they’re still relatively large) – Mail.com, GMX.de, etc.

Googling for “free email” gives out plenty of providers in one form or another. Some only offer 15MB on their free plan, others offer much more but with ads, etc.

How is David supposed to knock down Goliath in this market ? It is really tough. Hundreds (if not thousands) of competition with a plethora of different offerings.

The only way to break the market is to get the users in, and they have to come in by the millions, not meager thousands. However, that will require a good amount of capital expenditure in infrastructure, advertising, marketing and development – which I as a one man team just did not have.

The Differentiator

I had nothing on offer that made a difference from the competition. There are tons of free webmail clients out there, but they are all bog-standard clients, and do not offer anything special to users. I just wanted to offer e-mail, but there was nothing that I was offering that was different from the competition. Well, there were a couple of differentiators – I was giving out 4GB with no ads, a simple webmail client (back to basics) and spam filtering. But this is not good enough a differentiator.

Have a look at how Google, who were a late joiner in the e-mail provider market, took a chunk of market share – they had a very sleek web client that made the competition feel like the 1970s called in to ask for their webmail client back. Now that’s the level of a differentiator that’s needed – not minor ones, but disruptive ones.

Again, I did not have that.

The Users

Lets move on to how the two factors (market and differentiator) above affect the end user.

Users looking for free email have tons of choice, and one can argue, too much choice and that causes a ton of confusion – which is not good for them. It is really time consuming to look at all the minor differentiators between the various providers.

So, how do new users ultimately pick providers ? Actually, they tend to just look at large differentiators and recommendations from their friends/colleagues. If you think about it, this is a closer pattern to the social networking market rather than an internet service market.

What about current users who are already have emails at GMail and MSN ? How do I convert them to my service ? I needed a BIG differentiator, and I don’t mean something like “4GB, no-ads, spam filtering“, but more along the lines of – “This email service will give you a new meaning to email and how it interacts with you from a day-to-day basis“.

Moreover, it’s an outright pain to switch email providers. You need to tell your family, friends, colleagues, update your letterheads, business cards, etc. What about your business contacts ? What about all those 100s of websites and social networking sites that you’ve registered with your old email address ?

There’s a huge cost associated with moving email providers. What I needed to offer had to give users a much higher return than these costs put together.

In the end

There are other factors that I have not listed here that resulted in no one signing up, but I think these were the major ones.

That does not mean that I won’t be coming back – I do have some thoughts on how to re-enter the market, and I am in the middle of putting down some of these thoughts to discuss with a few people. I think the new idea is a paradigm shift on how we look at email, and its role in our everyday life. Rather than thinking it as yet another communication channel, it will look at it as an integral part of everyday life, and making it less “sucky” to use (in so many words) and interact with. It does venture into other communication channels and integrates those as well.

So, I’m out of the e-mail business for now, but (hopefully) will be back in the near future.

(hint – there’s a small project in here to create a review website for email providers – one that’s focused on free email providers, does not suck, leverages other reviews on the net, and allow users to rate + review as well. Anyone who wants to pick this up, please do! If you need some help/feedback/opinions, please do get in touch and I’ll be more than happy to provide my 2 cents.)

Human Gratitude

Thursday, November 6th, 2008

Seth Godin’s latest blog has some real wise words:

Your customers and employees and investors will remember how you treated them when times were tough, when they needed a break, when a little support meant everything.

No one in particular will remember how you acted during the boom times.

I just smiled when I read that – it is very very true. I suppose it stems from the fact that people are more appreciative when they are in a sticky situation themselves and suddenly notice the efforts made by everyone around them to help them out.

It happens everywhere – at work, at home, with kids, with parents, with your better half, etc. From the people I’ve met in the past, I can actually see most of them either having gone through this, or was on the the other end of the stick – not appreciative enough. There’s nothing wrong with not being appreciative – most of us do not realise it. When good times are good, we take things for granted. I have to admit – there have been times in the past where I’ve fallen under this category.

However, there are some very, very nice people out there, who notice other people’s efforts with such attention that they do not fail in missing out anyone when offering praise and thanks. Just need to weed out the ones that give praise to everyone regardless of merit and those who do it genuinely. The latter are good leaders and excellent mentors.

Reading Seth’s blog took me back to all those times when a simple thank you would have been a blessing to others. Quite an eye opener – I’m humbled by his words.

Free Subversion Hosting

Saturday, November 1st, 2008

Many people over the past few months, have been asking the same questions over and over again about the services over at XP-Dev.com. I don’t mind answering them with the same answers, but I think it is time to put all of these questions into one place and discuss them.

Why are you offering Subversion Hosting for free ? Is it too good to be true ?

Let me set something straight:

I offer it free because I really do not believe that anyone should pay for something so simple to setup and run as Subversion.

Here is the reality: I setup Apache using mod_svn, mod_dav, mod_ssl and mod_auth_mysql once. Believe me: only once and never ever ever ever (ever!) touched it again. No, I am not kidding – only once! No tinkering needed, it just runs like Forrest Gump (no pun intended to all you Gump fans out there).

It does cost $$$ to host it, including my time to add more features to it. Disk space and bandwidth is getting cheaper. They are not free, but then again, if you average it across the number of users that I have on XP-Dev.com, the figure looks really, really small. It is a cost nonetheless, which I’ll try to cover below.

So, we’ve established it does cost money, how are you covering these costs ? Are you really rich ?

OK. I wish I was rich, but the truth is – I am not. I could claim I was rich and lie to you all, but then I would not get any glory every time I look at my monthly bank statements.

So, where does the money come from to pay for the services ? Well, at the moment, I am paying for it. But I won’t be doing this forever.

I have got a few models to generate revenue and these models will be implemented in the next few months. I can’t reveal them to the public just yet, but rest assured that the usage of Subversion and project tracking on XP-Dev.com will always remain free. This is how I started and envisaged XP-Dev.com, and that is how it will always be.

Free Subversion Hosting and Project Tracking on XP-Dev.com is a life-time guarantee.

You’re offering a free service. There’s a catch to it, right ? Are you selling our code to someone else ?

No. Nada. No catch. I am not a petty code trader. I don’t go around knocking on other peoples doors saying “PHP codez $4 per line! .. $3.50 per line! .. $3.40 per line! ..”. I could not even be the least bothered about what everyone else is coding. I have my own ideas to push forward and materialise (one of them is XP-Dev.com, there are a lot more in the pipeline).

So, your code is safe on our servers. No one else other than the ones you have permissioned are looking at your repositories. We do have backups that run every night and copied over off-site, but they are all encrypted before leaving the server.

I put all my code on XP-Dev.com. I am a consumer of my own service. I believe that anyone who offers a service should always be their own users/clients/customers. You should see your service from the customers point of view.

If someone else looked at my code and data, I’d be really worried. I respect that tremendously and try my very best to lock down the server.

What you see is what you get – WYSIWYG. There are no catches at all. Your code and data are safe. We have a “no prying eyes” and “mind your own business” policy.

OK. So it is a genuine service that is FREE with no strings attached. Then I suppose it will have to be an overloaded, slow service ?

Never! This is one of the things that come out from being a consumer of your own service. If the services do get slow, there’s going to be one really noisy, angry, verbal user – me. And I’m really scared of him.

On a serious note, I’d be disappointed with myself if the service ever comes to a unacceptable quality. At the moment it’s fast and quick and I intend on keeping it that way. If it every becomes slow, I’ll be there in front of the queue shouting.

I’m not too sure if this is a good thing, or a bad thing – I’ve only ever worked in the Front Office for Investment Banks building real-time (well, its near real-time) trading and pricing system. They are all high performance scalable systems. The systems I work on can cost a trader anywhere between $100,000 to $500,000 if latency went up a nudge above 10ms (yes, that’s milliseconds!). XP-Dev.com is a testament of my experience building & architecting these crazy systems (trust me, they are crazy!).  If performance degrades, it will be a major failure on my part and I’m a really proud person :) .

It is a great service. How can I help ?

This reply is a cliche. There are a few ways you can help.

If you are not a user, register now!

If you are a user, and have any problems, queries or just want to say thank you, then please tell me, or email admin@xp-dev.com. Every single non-spam email that goes there gets a reply. If you don’t get a reply in a few hours, then it’s probably SpamAssassin acting up. You should use this form instead.

If you are a user, or not even one just yet – you can help by telling your friends, mom, dad, brothers, sisters, relatives, neighbours, cats, dogs, fish and everyone else about XP-Dev.com. Digg it, Buzz it, Reddit. Do whatever. Just keep spreading the word. I really appreciate it.

If you have any other questions or concerns, please post them as comments to this blog entry, or do contact me directly.

Software Metrics

Friday, July 4th, 2008

I’ve been reading Bruce F. Webster’s articles and blogs lately. He’s written an article on project management metrics (more directed on IT and software development) on BaselineMag.com. In his article, he quotes The Metric Law of 90s:

The first 90 percent of a development project
takes 90 percent of the schedule.
The remaining 10 percent of the project
takes the other 90 percent of the schedule.

I have to agree with this! When I first started working (not 3 years ago!), a former colleague once told me (tounge-in-cheek): If you ever have to put a date on a delivery for the business, think in your head how long you think it will take, and then multiple that estimate by 3.

Task and project management

Tuesday, February 26th, 2008

I’ve always found myself in the situation where I need to keep track of the list of things to do (or plan to do), especially when it comes to developing systems and managing projects. The problem is that there aren’t any tools out there that is simple enough to use, where the process of tracking does not become a significant overhead. I really liked XPlanner, but the problem it is that it’s trying to satisfy way too many people and the process of project planning/tracking can sometimes really be an overhead, especially when it comes to managing the stories and tasks.

The way I like to think of a project is that it is defined as a set of stories, and each story is defined as a set of tasks. To track a project, and ensure that you can meet your deadlines and delivery dates, the estimates (metric should always be in no. of hours!) should really be assigned at the task level – NOT at the story level. Stories should be best described as an atomic user case in a system, and the underlying tasks should define the implementation of the story. Think of it this way – a story is a plan/proposal and the tasks actually get you there.

So, ideally for me, a project planning tool should capture these fundamentals:

  • Each project has a set of stories
  • Each story has a set of tasks
  • Each task should have an estimate no. of hours
  • Each developer adds hours spent to a task
  • Each iteration should be defined as a set of stories (from any project)
  • Managing the above should be as simple as possible, and not an overhead to the actual development of the project

The are other nice things to know: for e.g. reports that tell you how far along you are in a project/story (and whether you’ll have to tuck your tail between your legs to senior management in the weekly review). But I’ll get back to this later.

XPlanner is the closes tool out there that manages to get most things right. However, it can be a little clunky when you actually get down to managing tasks and story. I used it about a year back and maybe it has moved on. The clunky interface is actually a burden on the developer. I was working on a pretty high profile project in my bank when I was using XPlanner, and I found that the developers were spending more time surfing through the tool, trying to look for one single feature (for e.g. adding hours to a task), rather than developing. Now, this is an investment bank, where 3 developers wasting 20 minutes each a day is a big major NO NO practice. Every minute counts! So, XPlanner was not ideal for me.

Coming back to project management. Let me reiterate the traditional constraints: scope, quality, time and cost. Very important to always keep this in mind when running any project. I have found that many project managers are actually missing these fundamentals when pushing for projects to meet deadlines and not reporting back to management/clients on these. There will be times where the clients are really impatient, and won’t really understand the constraints. But generally, most of them do understand it and will decide on which of the fundamentals they would like to have delivered (Funnily enough, I’ve found that at times quality is not one of the fundamentals in Investment Banking. However time is almost always one of that clients would like delivered).

From my experience in the past, you can at most keep 2 or even 3 of the fundamentals at any one time, and your tool that you use for managing projects should relay this information to you as clearly as possible. The problem here is that I have yet to find a tool out there that can do this seamlessly.

The other issue that I noticed is that the development team that I used to manage always worked on multiple projects. No matter what period of the year it was, there was always 2 to 3 concurrent projects running for a team of 5-6 developers. This is a constraint that I have seen in many project management tools out there. They tend to defined an iteration based on a project. So, project A will have a current iteration and you can add stories A1, A2 and A3 to it and kick off the iteration. This never worked for me, at work and on my own personal projects. I needed a tool that I could arbitrarily define an iteration as a delivery target for a number of projects and systems (time constraint). In each one of these iterations, we will deliver some functionality/fixes (scope constraint) given the current resource levels (cost constraint). So, what does this really mean ? Say, I had a release cycle of every 2 weeks. Within those 2 weeks I really need to convey to all the business lines that I can deliver parts of project A and B. Within those 2 weeks, I will get out functionally defined by stories A1, A2, B1, B2 and B3. I kick off the iteration and keep track on how they are progressing. There will be ongoing risks that I will convey back to the clients. My tool will tell me how much work is outstanding, and I can then give early warnings to the business that we need to readjust our constraints. Sound simple enough ? Again, no tool.

Long and short of it – I decided to write my own project tracking tool. I’ve put it up on XP-Dev.com. Its currently only single user: i.e. if you’re in a team, then you can’t really collaborate with each other on the projects. Its a little rusty here and there, but it does what it says on the tin. At any one point, I can see where I stand on all my outstanding work and projects.

I use it extensively for my personal projects and seems to work pretty good. The one thing I really liked about XPlanner (and I’ve shamelessly copied) is the task list. At any one point I can see the tasks that are outstanding to me from all projects and keep knocking them one by one off the list. This is follows the Getting Things Done time management (Next Actions list).

Give it a go, and if you have any requests, please do contact me and I’ll ensure that it gets done.