| By Yakov Fain | Article Rating: |
|
| March 12, 2009 12:15 PM EDT | Reads: |
1,966 |
When you design UI, it has to be intuitive. If a user does something wrong, the first reaction of rookie developers is, “Stupid Users!”.
While some users may not be exceptionally bright, if they make mistakes using your software, most likely it’s your fault. I ran into a couple of such issues within the last three days.
1. While placing an order in one online store, I’ve entered my credit card number and pressed the button Submit. After a round-trip to the server (this was a thin client Web application), I got an error page stating that the credit card number is invalid. Actually, the error message was very friendly and warm. It suggested, “Consider removing spaces from the credit card field”. I was so grateful! Indeed, I’ve entered my CC number as groups of four digits separated by spaces. Removed the spaces, another round trip to the server, and it took it!
Now I’m talking to you, the moron programmer who implemented this form. Have you heard that coders are allowed to perform string operations? Some advanced programmers even know how to programatically remove spaces from a string of characters. Guess what, it take less time than to program an error message stating that this stupid user should remove the spaces.
2. I spent two days in Atlanta attending Devnexus conference for Java developers. On the way back, I was checking in at the Delta’s kiosk. To identify myself, I’ve inserted my credit card into a special slot. The checking process was fast. I arrived earlier, and Delta’s software suggested that there is another flight to Newark, NJ an hour earlier and for mere $50 I can get a seat on that plane. Being a cheap bastard, I politely rejected this option. I can spend this hour having a dinner in a restaurant with my laptop and Boingo Internet, which I’m subscribed to.
So I picked up my boarding pass and started to look for a cozy place that has martini and an electric outlet in the wall. All of a sudden, this thought came to my tired mind, “Taking an earlier flight costs an extra fifty bucks, but on the other hand it’ll save me money on dinner at the airport. Eureka!”
While walking back to the Delta’s kiosk, I opened my wallet - the credit card was neither there nor in any of my pockets. I left it in that stupid slot in the Delta’s kiosk.
The kiosk was still there, but the card was gone. I asked the Delta’s workers behind check in counter – no one returned my CC. A quick call to my colleague (thank you, Anatole) and that CC was canceled.
Of course, you may say that I’m an idiot, but let me respectfully disagree. Yes, I was really tired after delivering two presentations in one day and the last thing that was on my mind was removing CC. But now I’m talking to you, the moron Delta programmer. Why did you print my boarding pass without forcing me to remove the credit card first? You didn’t thinks about it? Then don’t complain when your employer will file for bankruptcy once again, and this time it’s going to be Chapter 7.
While standing in line in the unemployment office, think of that stupid customer that decided not to use Delta any longer just because you didn’t care to write one extra if-statement suggesting that each user has to remove his/her stupid credit card from that stupid slot in that Delta kiosk.
Published March 12, 2009 Reads 1,966
Copyright © 2009 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Yakov Fain
Yakov Fain is a Managing Director of Farata Systems, consulting, training and product company. He has authored several Java books, dozens of technical articles. SYS-CON Books released his latest co-authored book , Rich Internet Applications with Adobe Flex and Java: Secrets of the Masters in Spring 2007. Sun Microsystems has nominated and awarded Yakov with the title Java Champion. He leads the Princeton Java Users Group. He is an Adobe Certified Flex Instructor. Currently Yakov works on the book for O'Reilly "Enterprise Application Development with Flex". He twits at twitter.com/yfain.
- The Case for Single-Purpose Services
- Oracle-Sun: IBM Reportedly Behind Delay
- Current Trends in the Data Management Market
- Cloud BI & Amazon VPC
- IBM Puts Systems Chief on Leave of Absence
- GITEX TECHNOLOGY WEEK 2009 Exhibitor Profiles
- The Curious Case of Build Release Management eBook
- Cloud-Oriented Switch Start-up Valued at $230M
- Tips for Efficient PaaS Application Design
- Reporting Solutions Using Crystal Reports for Eclipse
- Java Kicks Ruby on Rails in the Butt
- Interviewing Java Developers With Tears in My Eyes
- The Case for Single-Purpose Services
- Oracle-Sun: IBM Reportedly Behind Delay
- Open Source Selenium Web Application Testing System
- Configuring the PHP Version of Eclipse 3.5 RC4
- Current Trends in the Data Management Market
- What Could You Do with Your Code in 20 Lines or Less?
- JSR Watch: Here’s to Progress
- Cloud BI & Amazon VPC
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- Creating Web Applications with the Eclipse Web Tools Project
- Eclipse Special: Remote Debugging Tomcat & JBoss Apps with Eclipse
- The Next Programming Models, RIAs and Composite Applications
- Where Are RIA Technologies Headed in 2008?
- How to Bring Eclipse 3.1, J2SE 5.0, and Tomcat 5.0 Together
- SYS-CON Webcast: Eclipse IDE for Students, Useful Eclipse Tips & Tricks
- Eclipse: The Story of Web Tools Platform 0.7
- "Eclipse 3.0 is a Great Leap Forward," Says JDJ's Dudney




































