Friday, December 16, 2005

How to piss away your brand-name

With v5 of its great WRT54G wireless router, Linksys went from a Linux-based OS to a VxWorks-based OS. Why? Hardware. Even a free Linux has its costs: it required them to use twice as much RAM. The Linux based product is one they've been debugging for many years; there are probably millions out there. The VxWorks one is brand new, and going through all the obvious quality pains you would expect. One classic issue that has returned is the timeout of inactive connections. Tech support was ever oh-so-useful. Check out how it's supposedly confidential, too. Bleah.
\n\n
Subject
very short timeout in WRT54G v5
Discussion Thread
Response (Xxx Xxxxxx X(00000))12/16/2005 10:25 AM
Dear Valued Linksys Customer, Thank you for contacting Linksys Technical Support. Look for a “keep alive” option on the SSH client software and enable it. If you have any further questions, feel free to visit our Knowledge Base at http://www.linksys.com/kb/ or send us an e-mail at support@linksys.com so that we can further assist you. Thank you and have a nice day! Sincerely, Xxx Xxxxxx Badge ID 00000 Linksys – A Division of Cisco Systems, Inc. Product Support Specialist Website: http://www.linksys.com Network Setup: http://www.linksys.com/edu This correspondence is considered confidential and any reproduction for the purpose of public disclosure is forbidden without written permission by the author signed above. Please keep all previous emails as a point of reference.
Customer12/15/2005 09:02 PM
If I leave a telnet or ssh session open for ten minutes with my WRT54G, the connection is forcibly closed. This wasn\'t a problem with my previous WRT54G. I am running "Firmware Version: \tv1.00.4, Dec. 8, 2005" How can I change or eliminate this value? This correspondence is considered confidential and any reproduction for the purpose of public disclosure is forbidden without written permission by the author signed above. Please keep all previous emails as a point of reference.
Customer12/15/2005 09:02 PM
If I leave a telnet or ssh session open for ten minutes with my WRT54G, the connection is forcibly closed. This wasn't a problem with my previous WRT54G. I am running "Firmware Version: v1.00.4, Dec. 8, 2005" How can I change or eliminate this value?
Egads.

Thursday, December 08, 2005

Bad E-Commerce Interfaces

God rest ye merry merchants, may ye make the Yuletide pay. Shop enough on Amazon.com and you realize just how difficult some e-commerce sites make it for you to give them money. I give a lot more latitude to smaller companies. But when the major vendors screw these things up I wonder why someone hasn't been fired. Here are some big ones I've been running into this holiday season: 1. Shipping is $100. I'm not kidding. Now I know why they can charge $30 less than anyone else for a hard drive. An inevitable side-effect of the price-comparison websites. 2. Please correct this field. Often times it's obvious what's bust up. Other times I'm not exactly sure how they want my phone number broken up over multiple fields. Which brings us into... 3. Needing fields If you guys can't parse "617-864-4120" on your own, are you really going to process my credit card information correctly? Which brings us to... 4. Not accepting free form credit card numbers I know there's a Computer Science fetish about validating input. We all learn the importance of it in school. I also understand why this fetish would apply extra strongly to the credit card field; botches of credit card numbers make the national press. You want to be sure that it's right. But entering a 16 digit credit card is very prone to user error. If I type in "371449635398431" I have to check back-and-forth many times. In fact, that credit card number only has 15 digits. That's because it's an American Express card. (Don't try that specific number; it's a dummy account AmEx has for testing purposes.) Let me use spaces. Let me use dashes. All you care about is the digits themselves. I can sum it up with this axiom: The fields that are most important to get right should be the most accepting of any user input. 5. Having a "Clear All Fields" button If a geneticist ever examines the history of web forms, they'll wonder how the pernicious "Clear" button ever survived. Like nipples on men, they only exist as vestigial organs, cluttering up HTML's DNA for the times they are actually needed. The "Clear" button essentially says "irretrievably destroy all my work." It doesn't work like "Undo" which 1) can often be undone itself, and 2) only undoes one thing. Computer manufacturers have gradually subdued the "Reset" buttons on the fronts of their machines, some just recessing them, others getting rid of them entirely. This was a good move, since hitting "Reset" was something you rarely wanted to do and doing accidentally would have a tragic outcome. This probably deserves a post all of its own. 6. Long pages all at once It sucks to navigate through 12 screens to buy something. It also sucks to have to deal with one big webpage. usairways.com has this problem. Once you've chosen the ticket you wish to purchase, you need to work over a page containing the flight information, an "I agree with the terms", a "select seats" button, your personal information, your billing information, and a button that says "purchase." I buy tickets there fairly regularly, because it's cheaper than using Orbitz and they give me frequent flyer bonus miles for doing so. More than once I've just thrown in the towel and bought the ticket from Orbitz, though. You want to press "select seats" before you select "purchase." Better hope you didn't get anything wrong because... 7. Not maintaining state If you bounce the user back to the webpage they were just on to correct something, it is critical that you leave all the information that isn't broken alone. This sounds obvious, but usairways.com clears the "I agree" button each time you go back through the page. When I'm trying to fix what's broken, I don't want to double-check the entire page to see what has been changed on me. That one webpage seems to have been designed by vandals. 8. Not letting me check things over After I enter all my information and everything is finally complete, I want one last page that says "okay, here is your order. Press BUY to buy." So many things can go wrong when entering information, particularly if I had to wrestle with multiple of the above problems. 9. Saying "Purchase" multiple times. Here's another usairways.com problem. After you select the ticket you want to buy, it pops you to a webpage where you enter your username and password, and has a radio button saying "Purchase ticket" next to the button "Continue." "Purchase" might be the most nerve-wracking button someone can encounter. I'm always worried that when I hit it, a page will pop up saying "Thanks! We're sending your item with $200 shipping!" or "we're mailing out the 3 hard drives now" when all I asked for was one. Keeping on saying "Continue" until I'm at my confirmation screen. 10. Saying "Don't Hit Submit More Than Once" This is a trivial computer science problem. It's extremely easy to generate a random number, hide it in the form, and make sure that only one form with that number gets accepted. This is a sure sign of an e-commerce site put together by fools. Thankfully it seems to be fading. Ten is a nice round number. I think I'll stop there.