Future of Web 2.0

The Futurist has an interesting post that surmises that human laziness is the bane of social networking (in it’s various forms), – the hallmark of “Web 2.0”. I’m not so sure that I completely agree with this in that I think “time” and it’s availability is more of a factor.

I know how hard it is for me to update my blog regularly and it’s simply because I have no time or I’m not willing to work 16 hour days (is that being lazy?). Over time, will I stop maintaining it semi-regularly? Only time will tell. I have gone for months without posting anything new to my blog before. I have also observed that most blogs of technocrats that I read are not updated regularly anymore.

In 1999, online chat rooms were the “in thing” and I participated in them religiously. However, with time I found myself having no time to participate. While I imagine that people are still participating in online chat rooms, I do wonder how popular they currently are.

There will always be a crowd for social networking, the size of the crowd will determine how prevalent social networking sites are.

Makes you wonder what Web 3.0 will be.


The Art (or Science?) of Estimation

Recently, I’ve come across the articles “Estimate Individually – Fail Globally” and “The Art and War of Estimating and Scheduling Software”.  Coincidentally, I also happened to read Steve McConnell’s book “Software Estimation: Demystifying the Black Art” which I feel is a required read for program managers, project managers, development managers and senior technical individuals.  The combination of these events has got me thinking about estimation, again.

Simply put, estimation is hard because there are so many variables that come into play.  Factors such as skill level, new technology, sick days, wrong specifications etc all have the possibility of throwing off an estimate.  This is why I think that a minimum, estimates must:

  1. Be done for all roles in the development lifecycle
  2. Be based off on evidence (historical) data
  3. Be range-based e.g. 20 – 50 days

The numero uno mistake I see is that only “coding” is estimated and  then decisions are based solely on this.  There are multiple roles involved in the process, they should all be included in the estimation process.

The facts that estimates need to be based off of evidence also means that once an estimate is done, it should not be changed.  The “actuals” need to be maintained appropriately so that future estimates can be interpreted correctly based on previous estimates and actuals.  These values (ideally) should not be stored in spreadsheets (or MS Project) but should be in a true work-item tracking system (maybe TFS?).

There is always a best case/worse case scenario and that’s why we need ranges. Even the smallest activity  (such as coding “Hello World”), falls within a time range.

Ultimately these estimates need to be rolled up into something meaningful that can be presented to management.  Maybe that’s a post for another day.

Golden Eaglets Soar

Nigeria’s U17 team aka the Golden Eaglets, recently won the Fifa U17 World Cup held in South Korea.

Interestingly enough, this is the third time that Nigeria has won this tournament and every tournament win has been in Asia. I don’t know if that is just coincidence.

I watched all of the team’s games and I was pretty impressed with their level of play. They were definitely not the most technical team at the tournament but they were extremely consistent and efficient during the run of play. I think their last game against Spain was poorest showing but they were still able to win the match in penalties.

I’ve observed that some Nigerians are critical of the makeup of the team noting the players hailed predominantly from one part of the country and that certain parts of the country had little or no representation. As a Nigerian, this should be a non-issue. The makeup of the team shouldn’t matter when it comes to player selection. All we should really care about is whether the players delivered or not. In this case, they delivered and delivered good.
Sports has the ability of bridging gaps that exist in the society (at least temporarily) . It brings people from different tribes and races together for a moment. In Nigeria, it brought people from all parts of the country together for 3 weeks. I long to see the day when I’m looked at by my fellow Nigerian simply as a Nigerian and not as an “Ibo man”.

Congrats Golden Eaglets and thanks for unifying us for at least a short while.

Code Or Contract? It’s All In The Mind

“Code First” Web Services Reconsidered is an article out on InfoQ and there have been different responses and comments about it.

First, a disclaimer – I am not a fan of WSDL because of its focus on “operations”, give me SSDL instead. Having said that, the reason why you don’t want to do “code first” is because folks start creating operations such as “placeOrder” on a service i.e. they think “methods” instead of “messages” and then everything falls apart.

This is not to say that we can’t do the exact same thing with WSDL ( after all it is operation-based), but if we think contract (message) first, then we may just come to the realization that we are exchanging messages and not calling methods and that’s the beginning of an epiphany!

It’s all in the mind….