Alan Cooper (the father of Visual Basic) in his famous book – About Face: The Essentials of User Interface Design, talked about how we have to build software that matches the user’s goals. Much of software even today (after nearly two decades of this book) is built by developers to meet their development goals. If I remember correct, in one of the chapters Cooper talks about how almost all the word processing software including MS Word asks “Do you want to save this document” when you are closing a window with an open document. What a stupid question. “Yes” I want to save it, that’s why I spent last 1 hour in typing the document. He argues a better interface will be to first ask for the title when you create the document and when you close automatically save it. Of-course now MS Word has an option to Auto-Save option, but not the way Cooper would have liked it.
This style of poor UI from Windows world have been to a large extend carry forwarded to the Web world. In many of the websites even today when you do something, you are asked to confirm it. I can understand this method is useful and needed for transactions like a purchase or banking, but why on a simple email program or when I change my profile. Talking of this, I have seen two examples of what I think is a better interface in Google’s Gmail and YouTube. I have shown them below.
1) The first one happens when you had a favourite in YouTube. You are given an option to Undo rather than asked to confirm before saving (which will surely be an hindrance). Statistically most of the time you are not likely to add a wrong video as favourite and even if you do nothing bad to world peace is going to happen.
2) This one is in Gmail when you delete an email (or an conversation). They sport an Undo option.
Having said the above, as a Software Engineer I am comfortable with Undo’s; I am not sure whether a normal user will prefer this option to something else. Let me know more such good examples of good user interface and your thoughts in the comments link above.