Friday, July 27, 2007

"That Agile Crap"

I have recently started a new job. In my experience, I usually drive home from my first day thinking one of two things: either I am wondering how I landed such a great job, and just can't wait to get to work tomorrow to gert started on some of the challenges ahead, or I am asking myself if I made a huge mistake and what can I do now to fix it. For me, there is usually not much middle ground here.

Having been such an advocate of Agile Methodologies, I was very interested to see how (if at all) agile processes had been implemented here, and what my role would be in either implementing or improving them. My first day was full of one-on-one meetings, where I was able to meet some of the key decision makers in my new organization. As I like to do when starting a new job, I asked each of them what I could do to be successful in this role in their eyes. One answer evoked a surprising comment about agile development - which was a real surprise, since I didn't mention agile or development practices at all (I try not to reveal my feelings on the subject yet, as I don't want to taint the well, so to speak).

I was told that a particular project was in disarray. As we talked about the reasons, he said something like "the development team keeps re-working things, and they keep doing the same thing over and over. You know, its because of all that agile crap".

Once again, it seems that Agile is being blamed for bad development practices. Either that, or the development team is using Agile as an excuse for not delivering - I guess I will have to figure out which it is. Either way, it seems that Agile development is always an easy scapegoat for projects gone bad.

While it is true that an agile approach leads to some re-work, it is also a key agile principle that the output of the agile team must meet the customers needs, and re-work should only occur if it is in direct response to a real customer need, not a perceived future benefit that has not yet been requested by the customer.

It seems that the real problem here is that the customers requirements are not understood by the developers working to solve their problems. Where the source of that breakdown is I don't yet know, but the failure certainly is not because of the "agile crap" - it is more likely that either the development team doesn't understand the customers real needs, or they are not practicing true agile principles.

So, on my long drive home, I found myself thinking about my day, and I did indeed fall squarely into one of the two camps I mentioned above. Which one it was should be quite obvious to anyone who knows me...

Wednesday, July 11, 2007

Ajax and Nielsen Ratings

I was very interested to read that Nielsen/NetRatings will change the way that they rank websites - mainly in reaction to the adoption of Ajax technology. Rather than ranking pages based on clicks or views, they will now rank pages based on amount of time spent on the page.

Of course, this is because of Ajax - referred to in the article as a "software trick". As this technology is becoming more popular, the page views are naturally reducing, as this is one of the key concepts of Ajax. Pages can refresh and update data without requiring a new page view request.

This is really quite interesting to me, because we have long fought with this concept as we try to report on time spent on the Internet in our product. How do you know if someone has their eyeballs on a page, or if they browsed to a page and then became distracted, or even left the room completely, but left their browser sitting open? Ad revenue will now be based on this concept of time spent, rather than page views, and (in my opinion) may be much less accurate. When you factor in the tabbed browsing capability, this has the potential for being very inaccurate, and a poor measure of true website popularity.

The article reports that this benefits AOL, since now all time spent on their Instant Messing is counted as part of this new metric. Thus, AOL ranks first with 25 billion minutes for May. Of course, this also means that Yahoo! ranks above Google, since they have different strategy with regard to web search - Yahoo! wants to provide you with data to read on their sites, where Google wants to link you over to your data as fast as possible.

When trying to determine popularity of web sites, and how much to charge for ads on those sites, I suppose it is necessary to find a better metric than page views. I am just not sure that time spent is the right one either.