Meta: Outlink Design

I had completely forgotten my idea of posting a meta every now and then. For those unfamiliar with this idea: Simply put, metas are posts about this blog. (For a more elaborate description of the ‘meta’ concept, read this book.)

I was browsing through the WordPress settings, when I came across a feature called Proofreading. Basically, it scans your posts as you type them, and detects unusual sentence construction, repetition/clichés and highlights them. But another feature, which I am more interested about, supplies “Additional Post Content”: It identifies keywords or phrases in the post, hunts the internet for related links, and gives the writer the option of inserting any or all of them as links into the post.

Quite a few popular blogs that I have seen, are infested with these kind of links.. to the point of irritation at times, I think. I remember a time when I had fallen into the habit of randomly selecting and deselecting text with the mouse while reading anything, and I would invariably click on some or the other hyperlink in the process.

But let us analyze the function of these ‘outlinks’ from a Design perspective. For that, we need to first create a fictitious personality for the average reader, or what my last IDC course called a Persona. Now, this may not be the most accurate statement, but it is fair to say that the typical person who tends to read blogs (and several of them, probably), is fundamentally a reader. Further, people often do chain reading.. one article or post leading to another and so on. Also, the readers that land up on a particular post, via such chaining, may have very diverse origins and interests; so it becomes a must for any technical terms or names in the post to be properly defined or documented, in a way.

Looking from that Persona’s perspective, outlinks become very essential: A blog post that points to other sources of reading, is like a chain propagator, and is surely more welcome than one which acts like a chain terminator. And pointing to the definition/documentation for non-standard terms and names is a neat trick.

All this, in support of adding links. Any striking disadvantage of the same? Not that I know of, except that the visual flow and readability of the content is marginally reduced.

In short, you’ll find more outlinks in my recent posts, now that I have activated the Proofreading feature.

(PS: This is the first post that goes into all the categories. Time to add a new category next time…)


Hit Count? Read Count!

At the end of one of my recent posts, I had requested the readers to necessarily rate the post, as a means to know how many people actually read the post till the end. I considered this statistic to be as significant as the number of hits. Actually, I needed that number for this calculation I had in mind, that can potentially give us a much more powerful criterion to rank posts.. something that I am tempted to call “Read Count”.

So, the outline of this calculation is rather simple:

For a given post, the number of hits is essentially the number of people who read at least the post title; and the number of of ratings is the number of people who lasted through the whole thing. Now, the number of people who lasted, say, only up to halfway through the post, will almost always be some value between these two extremes. So in fact, one can try to fit a nice curve between the start of the post and the end, which shows how many people reached up to that point. Since we know the values of the curve at both ends, it only remains to determine how the curve will typically be shaped.. linear, concave or convex?

Now, since the curve also reflects the average readers’ interest that lasted up to that point, I searched for online sources that try to gauge the typical audience attention over a single activity as a function of time, and found that the curve is concave-up (note that this source is indicating the attention span length and not intensity, but it is easy to translate one into the other).

And finally, equipped with this killer graph, we determine its area-under-the-curve(codename for Integral), which is essentially proportional to the amount of time for which people have been actually reading your post. And this is what I define as the Read Count of the post.

Of course, there are much more direct ways to measure how much time people spend reading your posts: Simply hide a simple Javascript timer in the sidebar, that keeps ticking as long as the page is open, and also sends the elapsed time periodically via HTTPXML, to a PHP script located on some server, which keeps a track of these requests (or rather, when they stop coming in), to estimate the amount of time the page was open for.

That is a hardly “direct” way, but it is probably less indirect, to say the least. But that apart, what makes Read Count so powerful? Well, it is the simple notion of dividing this by the number of hits that the post got, to find out the mean attention span length of the reader base.. which in turn, can let you determine the very precise part of your post, around/after which people on an average, lost interest in the post! The ultimate debugging tool for any blogger, I’d say.

The possibilities of using the fresh curve are endless..

PS: Hence, Rate this post if you are reading this!

Conceptual Model:VLC

VLC, that brilliant media player with over 9 downloads each second for years!

If you don’t know VLC, the above line would have you think that VLC is some incredibly feature-complete, elaborate package (like iTunes), that pwns all that the user wants.

Fact: VLC has no way to adjust the stereo L/R balance!

There is an interesting reason why I was hunting for that feature. It is well known that many songs have different instruments sounding differently loud on the left and right channels.. it has a nice effect. But often, we are interested in listening to only a particular instrument, say. And that is why I was looking for the audio balance..

I couldn’t find it in the VLC options; nor was there any mention on the Wiki. Some forums had even discussions about how this feature simply has not been implemented.

What? How could this feature not be implemented in something meant to be a sane media player?

As it so happens, the developer’s aim is very clear; and that is what they’ll do. So, from what little feature-study I have done, this is the precise conceptual model in the developer’s mind (and we thought only the consumer’s mind mattered):

Developer’s Conceptual Model of the functioning of VLC:


All the filtering operations are performed as operations of single channels; but the stereo function involves the interaction of channels with each other, which simply cannot be achieved by this model.

And therefore even though everybody knows that audio balance is a very basic thing, it was not implemented it because it wasn’t there in the model!

This is a brilliant example, showing how the developer’s conceptual model also matters in shaping the product. Another, less dramatic one is the homepage of Blender, the 3D modelling/animation software which is truely loaded with the most sophisticated features (except GIobal Illumination, pardon me :D), yet user friendly and inviting for beginners. Andrew Price pointed out in his presentation at Blender Conference last year, that Blender can shape the homepage to be more user-oriented than developer-oriented, and probably get more traffic. Because currently, 60% of the area is occupied by Developer’s News, BlenderNation Updates, and links to the Blender Conference or the Developer Forums. There’s nothing in there for the new user except a Download link.. kind of let the user know only by trying it out! So Andrew suggested that there could be some basic information about what Blender exactly is, or examples of some brilliant artwork done in Blender.

The aim of the website has been like an announcement/meeting area; though now we are seeing it slowly get in shape for the users as well, I think.

And suppose some VLC developer does read this, and decides to implement it. I think this is what may happen: VLC won’t have just one tiny audio-balance knob added. Instead, it will probably come up with a huge linear filter/convolution module, where you can upload a small program in a C-like dialect(called VLC), to get the channel mixing the way you want. Then, they’ll provide a few presets like 80-20.c, 50-50.c, for the user’s convenience of course. (Note the similarity to the Spatializer/Graphic Equalizer.. fine individual sliders, and some presents, but no “group sliding” or “stick-together” of the sliders)

Well, I’ve probably let my imagination run a bit there, but you get what I mean. Each software project tends to have a certain kind of persona/image as seen on the whole. If you though that VLC is an incredibly feature-complete, elaborate package (like iTunes), that pwns all that the user wants, ironically, it is an incredibly feature-complete, elaborate package (like iTunes), that pwns all that the developer wants. Still, one just can’t do without it!

The developer’s conceptual model, as discussed here, probably matters only at a very deep level of structuring. But deep is where it gets subtle and beautiful!

If you have read this far and want the short of the rest, it is “Rate this Post!”, but at length:

Rate this Post! because I want more statistics.. number of hits is one thing, but I want to know how many users actually reach the end. If you rate this, the count can provide me this statistic.

Mobile Phones: microDesign

Till now, all Design-related posts talked about design issues that were directly perceptible to us. Like shape/colour, layout, or work-flow. But today, I am going to discuss a design point that is “minute” in nature.. i.e. beyond what our senses can easily detect.

Mobile phones. A device that is used by everybody today. Not just to talk, but to do absolutely everything.. But using the same buttons/touchscreen. So often, we are playing a game, say, and vigorously jabbing some menu key. And then a call comes.. and you accidentally disconnect it. Nothing could be more irritating.

So, let us understand in slow motion, what are the events happening in that fraction of a second: your mind is playing the game, and you are pressing the buttons in some fashion according to some calculation in your mind. Then, a phone comes, the first to know was the mobile.. it flashed the screen.. your eyes pick it up, your brain is told, and then the fingers pause. So now, the really crucial question is: when does the menu button’s function switch over from the game to the “Answer” key, or, say, “Reject” key? A well designed mobile will do this switch only after allowing a calculated delay from the first time the screen is flashed.

Now, this calculated delay, which equals the total response time of the eyes->brain->finger action, must be in the order of a fraction of a second. But, if the mobile does wait for that much time, consider how much it suddenly adds to the user experience! The user would just ‘know’ somehow that the device is better, but the reason is beyond their ordinary sense of perception.

(Note that even in the very old analog land-line phones, this issue is present: instead of a visual signal, we have a loud audio bell, and instead of a button-press, we pick up the handset.)

An interesting point that this raises: It might very much be the case that someone thought of this many years ago. But during the times of the first phones, it might not be possible to engineer such minute time delays into systems. And today, with microchips, this is doable. This shows that just having great ideas is not enough.. your production technology must keep in step with the requirements of your ideas, which keep growing.

I think that the world is full of so many opportunities of microDesign, that can simply change the way we do things, without actually feeling any change.

911: Defective by Design?

Taking courses in Industrial Design implies that one begins to critically analyze every object, concept or even principle that one encounters. In this post, we compare and contrast various choices of emergency telephone numbers. The well known 911, vs the 100/101/102 native to us, vs what I think is a far better choice: 787.

So, the starting point is purpose: The number should be chosen so that it can be dialed as quickly and easily as possible, by the maximum number of people, including the elderly, children, and the differently abled. For example, the blind. And this is where both 911 and 100 disappoint, 100 in particular. The distance between the ‘9’ and the ‘1’ on a mobile, is comparable to that between adjacent keys on an old-fashioned landline handset. So, thinking from a blind person’s perspective, he has to pres the “9”, and then feel around for a distance of 2 keys to locate the 1. The thing becomes even worse with 100, where, even accepting the fact that the “0” is uniformly placed at the same location for all phones, it is still located right at the bottom, i.e. a taxi-cab distance of 4 from the “1”.. not desirable.

Also, both 911 and 100 have the repeated digit.. horrible, because then, one has to wait for a fraction of a second before jabbing it again, else the second jab won’t register as separate, maybe, on some handsets. And then, there is a chance of accidentally double-pressing the key when dialing some other number, say I was dialing 9123456789, and I am an old fellow who held the “1” in too long, or pressed it unsteadily, and it registered a second time. Bad.
The result of the above analysis: keys should be adjacent, but no consecutive repeated digits.

And the last point to be considered: Consider that you are stuck in a corner of a room, under a heap of rubble due to an earthquake, you can’t move, but your hand can barely make it to the pay phone on the wall. How exasperating it would be, if you can’t dial 911 because the “1” is too far up in the top row, out of reach! Or connsider a small, short child who can barely make it to the buttons by jumping, but can reach only the bottom row.  Conclusion: The keys used should preferably be on the bottom row. Both 911 and 100 fail to satisfy this.

So, keeping these points in mind, the number 787 seems good. It has adjacent keys, so no feeling around needed. No consecutive double pressing involved, and only the bottom row is used. (Of course, using 789 is silly because little children might just press it in that order for fun’s sake.. 3 buttons in a row is tempting, even to some grownups :))

There is this (funny) consideration: children are taught to count gradually from one onwards, the use of “larger” digits like 7 and 8 is bad if, for example, the child knows only the first 5 digits till now. Still, that doesn’t make 100 a better choice than 787, because ideally, the child shouldn’t know “0” either. Or atleast, the full beauty and appreciation for the need to know zero is not apparent until we really need to start writing numbers beyond 9. But of course, this consideration is more for the purposes of humour.. To “trade off” a tiny child who knows all the digits, but is not tall enough to reach to the “1”, in exchange for a child who can reach out to the digits, but cannot count beyond 5, is silly.

The reader might be thinking that all the above are marginal considerations, and don’t deserve so much a drastic action as adding an emergency line. But in a world where A/B testing makes companies pay others and share valuable sales data just to know what colour the Buy button should be, I think any zero-cost measure that saves even one extra life, deserves thought.

Football: Defective By Design?

In case the title hasn’t already made clear, I’ll do so here explicitly: I hate football. Both the playing part and the watching part. And I am really puzzled as to why football is such a globally followed thing. In all frankness, from the game-theoretic design perspective, cricket is better.

Let me put forth my prime concerns with football. In any game, there are what-are-called “flukes”. An unintended touch of the ball, and it goes in the goal. Or, a very well planned complex move, but at the last moment it hit the pole, and no goal. Even in cricket.. a bad ball hit even badly and the inside edge brought it onto the stumps. Or the tail-enders just flexing the arm: it’s a six!

Flukes are part of the game, nobody can change that. However in football, flukes are far more likely to change the eventual result of the game than in, say, cricket. In cricket, a random six off the last man matters in maybe only 2% games. A lucky wicket could matter more, maybe. But in football, where results are of the order of 1-nil, 4-2, and hardly any game has more than 4 goals, a fluke causing or not causing a goal is a very important event for the course of the game.

Another design flaw in football: Why would I want to go and watch football? Sure, for the expert analyst, all those failed goal attempts in football are intriguing. But for the random guy, he just wants to scream when something happens. And a 90 minute game, typically having 2-3 goals, say implies that there are just 2-3 dramatic moments where I get to scream the hell out. Compare to cricket, where every single four or a six or a wicket offers me a chance to celebrate.

So, somehow, I feel that cricket is better designed both from the game-theory perspective as well as popularity perspective. Then, why is it not as religiously followed around the world as football?

I think the answer may be simply that people also don’t have time for day-long matches. That is where ODI cricket fails. But cricket learns, and creates 20-20.

(Meta: I’ll keep reminding for a few days, till it becomes a habit. Rate this post!)