November 16, 2005

Aesthetics & Sensibilities

People with journalistic backgrounds are not bothered by what their blogs look like, says Vulturo, elaborating on his contention that mainstream media (MSM) bloggers don’t care about aesthetics. I believe the point that he is making is a bit of extreme conjecture, unless he has interviewed a major percentage of the MSM bloggers and asked them if they care enough about it or if they would like to change the way their blog looks, provided they have the time and effort to spare for it.

There is a famous geek saying that there are only 10 types of people in the world, those who understand binary and those who don’t. Inherent in the saying is the fact that people who understand technology generally look down on the rest who do not understand it, and the comment on aesthetics is yet another one in the same vein. In a world where the geeks still have not figured out which is the better markup to be used, I think a reading of HOWTO Spot a Wannabe Web Standards Advocate is in order here.

Adding links to a template, forget changing a blogger layout, in itself is a hard ask for most people whose only interaction with technology is to start up their computer, browse a bit and check their email. A majority of the users on the internet belong to this group, which is one of the reasons why blogging is big now. If everyone was capable of doing hand-coded HTML pages and using FTP later to publish them, we would not have needed Blogger, Wordpress, Typepad etc.

Expecting that lot to change the way their blog looks, beyond the content they provide, is asking for too much. Blogger’s template tags are the easiest to master compared to Wordpress (which is done using PHP code), MovableType and Serendipity (Smarty templates). Even then, it is hard for an average user to understand what a conditional tag is and asking him/her to modify it with markup that validates is even more absurd. Yes, we all would love to have a perfect world to live in, but it is not something that will ever happen.

Moving on to Vulturo’s next point that he would be “happy if Mainstream Media portals as well moved to an OpenSource solution such as Drupal or Mambo” I can only assume that he has not ever dealt with a real world situation of trying to come up with a solution by using a (well, somewhat) boxed solution to suit the varied needs of different media set ups. Yes, it is very hard “to adopt and customise a content management system” be it free, open source or proprietary.

In any case, the open source and free point is more or less bunk. The Indian Express Group websites run on Linux, Apache, PHP, Postgresql and a bit of MySql. The same is the case with The Business Standard. Rediff, from what I remember, for most parts, run Apache, Linux and Resin for their CMS and some form of HTdig or Lucene for their indexing needs (this I am guessing, feel free to correct me if you know better). As you can see, it is not like free and open source solutions are not used at all.

And that takes us to the next point, why the wheel is reinvented in the first place. Most of the times, it is reinvented because the original wheel was just not good enough to meet the requirements. Mambo is a fine CMS, but the interface is really slow and speed is of the essence in a breaking news environment. Drupal too is pretty fine too, which is why sites like The Onion use it, but it is a pain to customize and run. Besides, it is very community oriented, which is not what most media houses ask for.

If I remember right, way back in the dotcom boom era, someone had tried convincing Zdnet India to shift to Zope/Plone, since it was meant to be absolutely rocking from a geek point of view. That experiment did not go down well with the end users and it ended pretty much there. Being sexy from a geek’s point of view is very different from what it looks like from the end-user’s point of view. Case in point: there are a lot more of users on Blogger than Freeflux, though the latter is better for a geek any given day.

In the past four months, I have been pretty much doing the reinventing business at the new jig. I had evaluated most of the free/open source options and found none of them, other than the exception of Midgard, to be good enough to fit our needs. Most were either too complex or were too simple and I would rather have my team work with a set of known problems than have them dig around nested directories of endless libraries which might or might not break every time I want to customize the site or add a new feature, which would require hacking the existing code.

Even with Midgard, there is a problem of not knowing how it will scale up when it has to survive traffic close to at least a million page views in a day. It is a comprehensive application framework, which means that the potential bottlenecks are strewn all over the place. I do not want to wake up one fine day to discover a new bottleneck which might be at its core. When I am reinventing the wheel, I know that I can either reverse proxy the front end pages (throw in more Squid servers to the cluster to scale it up) with a load balancer in front or use a MySql/Postgresql cluster (write to master, read from replicated slaves) in case of a dynamic data intensive website.

Then there is the issue of the actual requirements. The Indian Express has two kinds of editions, one for the print edition and the other for the breaking news site. Right now, there is nothing out there that addresses the two differing requirements using the same solution. And the Indiatimes group of websites uses a monster of an (somewhat) internally developed IIS-based framework that handles everything from the front end page serving, connection pooling and caching to the backend for managing the content. In either case, the spokes would really have to be bent to fit the wheel.

Eventually, when you take your product proposal to the management and tell them the best avenue for technical support for your solution is an IRC channel, don’t be surprised if they totally freak out on you, which is why a lot of media organizations sign up for outrageously priced Microsoft-based solutions. They don’t want to understand the technology and there is no reason why they should. All they want is a single point of interaction at which they can throw both feature requests and problems. How it is done is not their problem in life.