The Roads Less Travelled …

Living on Google Apps

Posted in Computers & Internet, User Centered Design by sriyansa on April 22nd, 2007

Michael Calore, a Wired news editor, recounts his month long sojourn into the world of web applications away from the world of traditional desktop applications. Makes for interesting reading and allows one to gauge to an extent if web apps are ready for prime time.

While his overall experience sounds great, he does raise a couple of very valid points about the viability (and areas of improvement) of web applications in general and Goggle Apps in general.

1. Interoperability: Ideally we should be moving into a world where open standard would make this word a redundant issue. However considering the length of time we have stuck to our closed boxes (read desktop applications) this is going to be a major pain in the a*#. Web applications being new would need to integrate into the historical apps rather than them adhering to standards. This would become important in large organizations and groups.

2. Security: Michale talks about the fears people have regarding the security of their data. Sadly, it seems to me that Google is playing down those fears as being invalid. Yes, we do not understand how the current desktop applications work. And yes, they do have security loop holes. But the scepter of all my data lying around in the data center open to anyone with admin access on the Google data center in scary. And then I really do not know what Google is doing with my data. And since it has all my data it becomes much easier to target me. I am not saying they are valid fears, but they are genuine fears that consumers have and Google and others like Zoho attempting to wean away people from desktop applications have to understand and ameliorate.

3. User Experience Paradigm: Again, I see here Google trying to play down the nature of the problem. If web application suites are to make money by themselves (for Google this might very well not be the case), they better take this into account. The people deciding things in an organization will be the ones tied to the desktop metaphor and they will be loath to change their styles and the young turks entering might find it better to adapt to the desktop metaphor rather than fight for the validity of the using the web application style of doing things. They would have, I am sure, other important battles to fight.

However, Michael’s experiment has demonstrated that Web Apps do present a viable alternative to small groups and organizations where everyone is committed to using the same platform. Personally, I have almost shifted to the web for email and chat. The office suite however remains solidly in place.

Some rants on usability

Posted in Computers & Internet, User Centered Design by sriyansa on February 4th, 2007

My laptop has these nice buttons that help me control my music player (Winamp, in case you are curious) physically rather than alt-tab to the application. The volume controls are also in the same physical panel. I am very happy with it, since it causes me the least distraction from my work and allows me to be more lazy. Now Opera, which is my preferred browser when I am, well, browsing (since now I also read RSS feeds, write blogs, upload photos to Flickr and stumble around the web using the browser), for some weird reason deactivates these controls making me very very unhappy. Opera is an awesome browser, with probably the fastest rendering engine in business but simple things like these will make customers turn away from them.

On a complete different level, and related more to privacy and security issues rather than usability is Google’s use of the cookies to remember your identity once you have logged in from a certain machine. John Batalle here, links to a story which describes in detail how someone using a computer, you logged into months ago could potentially be privy to your most recent searches. As far as I know, the same model holds for Gmail also though I have not tested it yet. However, for Orkut the model is different. Clearly, technology is not the problem here. Is the drive to garner personalized data on the user so focal to Google’s strategy that it has pushed these issues under the carpet. And some will argue that since Google is a free service, if you don’t like them, you can ditch them. This would be completely opposite to what Google actually intends; since these customers coming to the main site by millions in a day fuel its ever growing ad revenues.

Web 2.0, X Internet and all that Jazz

Posted in Computers & Internet, User Centered Design by sriyansa on November 3rd, 2005

What exactly is Web 2.0? Tim O' Reilly defines it here. What then is X Internet? Forrester Research's G.F. Colony defines this here. Both of the above terms, especially the former, seem to be in vogue today and with almost no one very sure of what these mean. No wonder then that Joel Spolsky is slightly skeptical.

However, the fact that there is something afoot is hard to argue against. We are seeing a deluge of ideas today on how applications are to be built. WWW as a platform. Syndicate. Share. Tag. Rich User Experiences. Thin Clients. Quick release cycles. Products as services. Web 2.0 is more or less an overarching term that encapsulates these ideas. This ambiguous and pliable definition, is probably one reason why there are many who pose as Web 2.0 applications. The desired end product is however the same. Simple workflows for the user. And this goal is not new.

What then is new?

User expectations for one. The user today is not satisfied with static content from the web. He wants the content he sees to be dynamic as per his needs. If he wants stock quotes at the top of his website so be it. And if he is barely interested in the NY Times best seller list, they should not even occupy an inch of the precious screen real estate. He wants information painlessly and fast. The burgeoning expectations have in turn forced the major players to forget the old product management cycles, while focusing on quicker releases and frequent but painless updates. They have also forced them to think what the user really needs rather than what they think is good for the user.

And second, certain disruptive technologies [AJAX, RSS etc]. AJAX has shown that the richness of the desktop applications can be achieved with web applications also. RSS and Atom standards have made syndicating data [both in and out] relatively painless. Windows Vista will have RSS integration built into the OS itself, allowing application developers to use the incoming data in a myriad of ways we probably cannot dream about. But the best thing is that RSS today seems to be becoming a standard in which a considerable number of major players are investing in (except Google).

It is with this background that one has to see Microsoft's unveiling of their new live.com service. At the outset, one would be lulled into believing that this is just a clone of another Microsoft site start.com. In fact, the later is much better site with support for Firefox also present. The new site is half baked - not very stable. But it seems Microsoft is finally entering the world where Google seemed to be the only player. And a brief tour of what the Live service will offer in future will leave no pretensions about the scope of this endeavor or the fact that MS is entering the space in a big way. (That the half baked release might come back to bite them, as Joel here says, is a completely different matter.)

These steps are however small steps in the grand dream of finally allowing the user to have everything as a service rather than handing him the entire product in one shot. Everything in this world should be rentable, and more so those things whose frequency of change is high - like software. How it happens can yet be conjectured? Will the browser be the new OS? Or will desktop apps make a comeback? But the end result is can probably be taken for granted.

[Book Watch] The Design of Everyday Things - Donald A. Norman

Posted in Books, User Centered Design by sriyansa on August 20th, 2005

Think of how many times you have pushed a door on the wrong side, turned the knob of the water faucet in the opposite direction or just stared blankly at some new funky looking gadget, which seems to have come from outer space and you cannot fathom for what earthly reason it could be used. And then waltzes in, the great all knowing dude to give you the knowledge to overcome the gaucheness on your part or maybe if you are of the adventurous sort you discover the knowledge for yourself after numerous hits and trials. But will there always be a omniscient guy around to help you or there be enough time for hit-trial methods when there is a fire in the building. Welcome friends to the brave new world of bad designs - the world where you and I live.

I have been ranting about usability for some time. But reading this book gave me a much clearer insight into the challenges and pitfalls of user interface design. And yes, it did convince me that by ranting about these things I do not prove myself to be dumb. I just have better things to do rather than remembering the shortcut keys to the new mobile phone in the market.

The author talks about three major things in the book - visibility of possible actions, evaluation of the results of those actions and allowing the user to build an accurate model for the object in use on the basis of causal inference. Additionally the author gives designers a new vantage point for viewing the eternal design anathema - user errors.

First rule of design - show the user what actions are possible. By its very appearance every object makes itself more suitable for certain tasks and at the same time ruling out others as unsuitable. Further constraints in terms of standards, cultural mores etc reduce the infinite set of possibilities into a limited set. The challenge for the designer is not only to make this set atomic and concrete but to expose the mappings that would allow users to explore the entire spectrum of possibilities.

When a user does something, show him what happens. Unless the user sees something concrete happening it is assumed by him that the action is redundant. Proper feedback is especially necessary for allowing the user to build a correct conceptual model, since it is the conceptual model, that is responsible for the users actions when an out of the ordinary situation, ill affording mistakes, arises. Further proper feedback will allow the user to backtrack if discovers that his actions are not producing the wished for effects and thus preventing some major error on his part.

Users will make errors. And they are not necessarily to blame. The author states that using an object can be seen as a dialogue, between the user and the designer, with the difference that they only communicate via the object in question. And as always, there are gaps in communication. And these are what we normally term as errors. Designing therefore, is not only about weeding out possible errors. It is about making the possible errors less malicious and hopefully completely reversible.

The author has lambasted the design of daily usage articles, doors, faucets and telephones enough in his book, so I won't be attempting to do that. Rather I will focus on computers, not again as a tyro, but from the viewpoint of someone who had been using one on an average of 8-10 hours a day for the last 6 years. Most of the time I have spent with computers are on very few types of applications - email and IM clients, editors and word processors, web browsers and development environments. A general survey, of applications used, might add a spreadsheet application, a PowerPoint like application and an image manipulation application to, and remove the IDE from my list. However the fact remains that the basic functionality required by an average Joe is not gargantuan. However it would be hard to find a user who is satisfied with his experience with this limited set of applications.

One reason for this disillusionment, is the lack of a common thread in the working of these applications. Each application demands a separate causal model. And I am not talking here of applications doing different things; even ones apparently doing the same thing probably will not lend themselves to a single model. If you want to try ask a hardcore Outlook Office user to shift to Thunderbird as his email client? I will not even go into the Unix\Linux and Windows dichotomy. This apparent lack of a common thread is probably due to the fact that most of computer applications tend to hide a lot of things. Hence the cause-effect relationship as understood by the end user is distorted, ending up finally as twisted user model.

As an example I remember of a situation I confronted some time back. I was talking with ,my colleague my hands resting on the keyboard; a pop-up suddenly appears says something will be disabled or enabled and I being engrossed in an interesting conversation just hit ENTER. Nothing happens. I go back to work and everything is fine till the evening when I had to cut-paste something and I discovered to my horror that the SHIFT-ARROW combinations have stopped working. It took me close to 2 hours to resolve this issue as nobody knew what it was nor I could remember accurately what had caused it. it turned out that I had pressed the SHIFT key for more than 10 seconds and something called STICKY KEYS was affected. These days while carrying around my laptop, I often have the same problem since SHIFT and ENTER keys are nearby. I just dread to think what would have happened one of these days had I not faced the problem earlier. I would not have actively done something and my computer would still be not doing the right thing.

As a result of these malformed signals to the user and the consequent distorted model, computer applications have the deserved reputation of needing high thresholds of learning ability thus scaring away an entire generation, who think their learning days are behind them, and for whom they might actually prove to be the most beneficial. And for me the real problem is fact that till today I continue to invest substantial amount of time troubleshooting various issues, when I cannot read as many books I want to because of lack of time.

The book, DOET, has become a bestseller. Things also have changed and usability issues are being given more thought every passing day. However, for every well designed Apple IPod I see a badly designed mobile phone, digital camera and a search site. We still have a long way to go on this road.

NOTE:: As a personal opinion, I did not think very highly of the way the book itself was designed. My copy is the standard international copy, available at Amazon, so I do not think I was shortchanged by a cheap edition. Test referred to pictures in different pages, notes which could have been made footnotes were added to the end alongwith others and the cover distorted itself after the first reading. Some of things I definitely don;t look for in a good book.

A Simple World??

Posted in Computers & Internet, User Centered Design by sriyansa on July 10th, 2005

Is technology making this world an easier place to live in? Abhijeet recently put up a post with his thoughts on the subject. I had some time ago also put my thoughts on what the people really need from the IT industry.

However the recent blog of Abhijeet did make me think some more on this topic. It is true that technology today is moving at a breakneck pace, and even truer that not many of these innovations reach the man on the street - definitely not in a place like India. This time I when I went home I did a simple experiment - to check how simple the things are when it comes to computers.

Google prides itself on being the single stop to search information. I told this to my father - who refuses to do anything with computers, saying it makes his life complicated - and asked him to try it out. What I realized after this was that even for a simple action like typing out some words and hitting on 'search' there is a lot of implicit knowledge that a person needs to have. He needs to know that buttons are the equivalent of switches which have to hit upon to produce some actions, also to know which button to push. He queried about what exactly is the 'I am feeling lucky' thing, and I explained that to him and then he asked me why is it needed. The way he saw it was that people like him would have more confusion trying to figure out which button to hit. And then I asked myself, how many times have I used that feature? Is it a necessity or is it just a way of exposing your geek quotient? This simple experiment made me realize yet again, that how far are today's applications are from being intellectually accessible to the common man.

It has also become fashionable for people to brand anyone as inane and bucolic based on his comfort level with the latest gizmos. What they fail to understand are that others have different things which interest them and not gadgets. What they fail to see are that these things have not become interesting enough; they do not give enough return on investment, in terms of both time and money. Yes, one can do really amazing stuff on a cell phone these days but only after spending 3 days checking out its features. Who has that kind of time these days?

And then there is the great issue of money. Today technology at least in India is an elitist passion. The latest cell phone would probably cost a average middle class Indian 3/4ths of his annual salary. A decent desktop would cost him 3-4 months in wages. How much can money affect the propagation of technology? A lot would be my answer. The case to quote here would be the telecom revolution in India. 10 years before, families used to stay up late because after 11 p.m. the rates were 1/3rd. And then at 11 all the lines would be busy and people would end up waiting for days to talk to someone. Today any call at any time within 500 kms is a local call. Pricing slabs are gone. There is talk of making the calls within the country as local. Upshot being even my remote village is well connected by telephone. And telecom with all these strides has still not permeated the lower strata of society.

Coming back to the real question, if usability and cost are the real demons why are we fighting other battles.

Any latest technological revolution, is brought about by people who understand the technology. For these people it is extremely difficult to sit in the place of an average person who has no clue about what this thing is. I being a developer face this problem everyday. The moment I start thinking of the user, it opens a can of worms and my task appears insurmountable. And I more often than not end up making a lot of implicit assumptions about the state of the end user. However what is heartening is that today most of the big players realize that usability is a big ticket item and they are spending considerable time and effort doing that.

As for the cost thing, they are coming down but slowly. The system I brought 2 years back for Rs. 50K is today available for 25-30K. Though not exactly accessible a reduction by almost half in price is not something that has to be scoffed at. The problem however is that the very latest system even today would cost 50-60K. So the reduction in price is also seen as depreciation rate of the product. Sometime back I realized for most of the tasks of a everyday user you do not need a latest system. Unless you are doing programming or are heavily into gaming you do not need the latest P4.

And lastly about the rat race and the quest for truth. What he terms as rat race I term as evolutionary selection. The best will survive and the rest will perish. And as for truth, it does not come to you, you go in search of that. Hence the need to keep doing things, keep innovating hoping that this idea will hit the target. There is no other way.

The bottom line, things are not hunky dory and picture perfect, but the movement is towards the right direction.

Vox populi, Vox Dei

Posted in User Centered Design by sriyansa on November 4th, 2004

The voice of people is the voice of god. The motto of the Roman Senate is nowhere as valid today as in the software industry. As the influence of computers pervades every aspect of modern life, it becomes imperative that IT systems, which till now mainly are seen as "geek bastions", turn into accessible tools for the common person. The key challenge here is to considerably reduce the steep learning curve that novices have to face.

 

Engineers (like me) might object to this whole debate saying that the user interface has come a long way since the days when using a computer implied typing commands on the command prompt. Having come from that background, they fail to estimate how difficult it is for a tyro to even comprehend basic principles of computing. One reason for this high learning requirement is the richness of features that many of the common software products possess. Consider this simple scenario -

"A Martian is given a plug which is connected to a bulb and is taken near a socket, how long will it take him to figure out that once he puts the plug in the socket and inverts the switch position he gets light. And to it compare him trying to make a written text bold in Windows Word, probably the most used software".

Word is more difficult to learn than switching on the light because of the multitude of choices that the user faces when trying to accomplish the very basic tasks. The above probably is a measure of the nature and magnitude of the work that needs to be done to make computers the ubiquitous entity, which everybody expects it to be in the near future.

 

Economist, the UK daily has brought out a special report on the dual conundrums of reducing the complexity of IT systems and defining intuitive and usable interfaces. The two largely go hand in hand. The report goes on to demonstrate that the complexity of computer systems is a dual bane - it reduces the efficiency of people using it and it costs them more to maintain them. To it I should add, it costs them more when they buy it. The future challenge therefore lies not in adding new functionality but to define concrete, intuitive and extensible interfaces for the end users.

 

This turn for a simple usage should I believe stick to what Einstein once said, "Things should be made as simple as possible. But not more". Simplicity does not imply reducing the smart things engineers do today make the systems work. It implies hiding them. And this task of hiding is techinically more challenging than putting it all there on the top. One does not have the cushion of asking the user things that he does not have to do but are still necessary. It might also imply giving more floor space to basic features so that once the software is started what is to be done just stares at your face. It also means that a consumer should be able to add on to his existing product any additional functionality without much of an overhead in time or expense.

 

Tragically, such a switch could spell doom or atleast the end of the hegemony of big few in the IT industry. Simplifying products would be tantamount to courting competition. Once interfaces become simpler and the basic functionality less you do not need a huge corporation like Microsoft to write something like MSWord. Or you would not need scores of Infosys employees to maintain the decades old mainframes. Nevertheless, as Google founder Sergei Brin would probably say, "This is the good way to do things"