Lazy developers make for bad user experiences

March 18, 2013

As a developer I can appreciate that dealing with user input is a pain. Dealing with anything messy humans do is always more annoying than handling nice clean inputs from an API. Developers and designers are human too, and they should think about the experiences they are creating, and how a little bit of consideration for the user can turn a frustrating process into a moment of delight.

  • Required fields: Indicate visually when a field is required, and ask yourself if the field is actually required for what the user is trying to do (delight them and they’ll come back and share more information incrementally). Especially in a world of security leaks I like to minimize what I share and you should help with that.
  • Formatting (phone and credit card numbers) is irrelevant: Should I enter my cell as (425)-555-5555, 4255555555, 425 555 5555 or something else? Actually all of those should be valid as it doesn’t take much effort to strip out spaces, dashes and brackets when you’re validating a credit card or phone number. If you need a particular format for your database or display then re-format it… but don’t force the user to comply with a rigid structure to make your life easier.
  • Don’t be redundant: Don’t make me tell you what type of credit card I’ve entered the number for. Using a simple issuer lookup you can tell me if I just entered an Amex or a Mastercard. If you need me to write an look-up API for you I will, just leave a note in the comments.
  • Passwords are a pain to remember: Just because you think the password rules on your site are obvious (at least one capital, one digit, only special character is an underscore and it must start with a different letter than your username) users have lots of passwords. Give them a reminder next to a where they have to enter it what those arbitrary rules are, ideally on initial entry and as an absolute must if validation fails.
  • Don’t ask me the same thing twice: In the US a ZIP code can tell me the City and State. Same in Australia or New Zealand or the UK and pretty much anywhere else. Can anyone explain to me why I have to enter both 90210 and Beverly Hills, California on a million forms? By all means display the City/State for me to confirm but don’t waste my time asking me to do a computers job. That thing I said about look-up APIs earlier, still true
  • Don’t be forgetful: Computers are good at remembering stuff, if developers are not being lazy. If I fill in a field or check a box on a form and something goes wrong with validation the only field I should reasonably be expected to re-enter is the password (and if you validate that and it passes assume I know my password and don’t make me rekey those asterisks again). If I checked “accept Ts&Cs” or “Don’t email me crap” the first time… I probably meant it so don’t forget it because I didn’t get my phone number in exactly the format you like.
  • On-the-fly, context sensitive validation is awesome: Make use of onchange and onblur events and Ajax to check each field as I go to save the user scrolling up and down a page to find what failed. Basic validation, like credit card checksums, for fields that are easy to miskey should not require a full form submission
  • When things go wrong, show me: When you finally get to a full round trip validation and have to show the user some errors you need correcting don’t just bundle some obscure messages at the top of the page – use visual cues and clear explanations to guide them to get it right

By making the process simple and eliminating points where the user can stumble your helping ensure that your form is not a roadblock where the user might get frustrated and abandon the process. When you go to the supermarket you look for the shortest line, or the easiest way to checkout, and you get frustrated if the process isn’t smooth. It’s just the same on the Web.

Even if you think you’ve gone beyond the things I mention above have you gone far enough? Are you watching your logs and other telemetry to see what fields users are stumbling on? Could you streamline the process further?

Your challenge: As designers and developers you should embrace the opportunity to streamline your users experience, and use every tool at your disposal to deliver a great user experience.

Spam and security

March 5, 2013

With a series of high profile security breaches in recent weeks (Twitter, Evernote, LinkedIn and others) the obvious concern is that the attacker has access to your account. In some cases it’s more than that. Read the rest of this entry »

More TSA weirdness

February 27, 2013

As I travel a fair bit for work and pleasure I get to enjoy the TSA “Freedom Massage” and the rest of the theater on a fairly frequent basis. At the checkpoint I’ve seen fairly inconsistent behavior even at the same airport (and while there are some terrible jumped up lunchroom monitors wearing the uniform there are also some great folks manning the front line as well).

Not the main topic of this post, but as I’ve noted before I opt out for freedom. But when I do I also get to skip the metal detector. If I was really determined to get something sharp passed the pat down I’m sure I could find a way. Read the rest of this entry »

Off shopping for a Windows8 laptop

February 23, 2013

While I’m loving Windows8 via Fusion on my Macbook Air, my daughters HP tx2 has finally bitten the dust (two batteries, two chargers, a strip down to repair the fan) but it’s done a good 4 years of daily (and pretty unforgiving) use.

So it was time to go shopping.

Her requirements were pretty simple – about the same size as the tx2, a decent keyboard, WiFi and bluetooth (for the mouse) and good graphics capabilities.

Read the rest of this entry »

Connected healthcare – still a pipedream?

December 31, 2012

Connected Healthcare, Electronic Patient Records, the Quantified Self movement all promise a wonderful world of integrated, pervasive health monitoring systems that know all about us from cradle to grave and help make the path from one to the other as healthy as possible.

The problem that exists today though is that there are too many islands of data, too many attempts to create commercial silos, too many entrenched incumbents who don’t like the idea of opening up and too many fears about what insurance companies and employers will do if they ever get to see your data (Gattaca anyone?).

A few years ago I was excited when Microsoft launched HealthVault. Unlike Google’s offering it is still going, but it’s still got a long way to go and it’s a long way from providing a ubiquitous, independent platform for all the other pieces of the puzzle… I live just a few miles from Microsoft’s main campus and yet my doctor, dentist, chiropractor and gym have no clue what HealthVault is or how it could help consolidate and manage my data. It doesn’t help that having moved countries three times so far my historical records are scattered far and wide.

Services like 23andMe (I am a user) create a great pool of data, as does WellnessFX (trying to decide if the price is right) … but there’s no way to consolidate the information from one to the other to see if, for instance, my current bloodwork results indicate that one of the high risk genetic conditions is more likely to occur.

Tools like FitBit, Polar Heart Rate Monitors, Nike FuelBand or the BodyBugg also produce a bunch of data but… it’s all isolated islands (FitBit do sync data to HealthVault but it seems an exception rather than the rule and even then it’s not that robust). Solutions like EarndIt or EveryMove can take data from some of these sources and make it into a game where you’re rewarded for activity…

… But imagine if my pedometer, my scales and blood pressure monitor and glucose readings could be consolidated and fed back to a system which also had visibility into my genetic markers, blood test results, medication etc and apply the depth of analysis that “big data” is bringing to the world it seems like we could become much more proactive in both managing healthcare but also avoiding potentially life threatening mistakes (be it one too many candy bars or a contra-indication prescription) it would both help control the rising medical costs but also free doctors to go back to being able to care holistically for the wellbeing of their patients rather than running their practices as production lines that seem good as writing scripts for expensive medicine rather than actually making people better.

Maybe 2013 will be the year when an interesting startup comes out of nowhere with a plan to fight the incumbent interests and legislative red tape it will take to make this a reality…

Financial Helpers – 2012

December 22, 2012

Looking back over 2012 one of the smarter things I did was start using some smarter tools to keep track of finances and make some decisions that I hope will pan out well for the future. All of what follows is personal observation and experiences. I don’t even play a financial advisor on an internet TV show so really… don’t make any decisions without engaging your brain and, where necessary, getting the right professional help.

Betterment

Stocks, shares, trading, bonds, EFTs. I don’t pretend to know anything about them. Luckily Betterment not only understands but has done a really good job of putting a simple dashboard in place to let you balance your investment between bonds and the stock market and they take care of the rest. You can rebalance daily depending on your comfort (though they recommend to pick a profile and stick with it) and as well as the gains on the markets you get a small dividend income as well. Over the last couple of years we’ve seen a modest 3.5% return but that was because I ignored their advice and fiddled and made a bad decision which I didn’t correct soon enough… their what-if scenario view of how things would have panned out is a constant reminder that they know more than I do! [Free with a $100 monthly investment. Other plans available. Opening bonuses available]

BillGuard

One problem that has plagued us since we got to the US has been credit card fraud. 5 or 6 times in the last 6 years we’ve found spurious charges on different cards (two of which ended up with the abuser spending time in a correctional institution so it wasn’t all bad) but as a backup to the vigilance of our credit card providers (and I can’t rate Amex highly enough for that) I’ve been very happy with BillGuard for spotting some suspicious behavior. [Free, sponsor supported]

BillShrink

It always sucks to be paying too much. Cellphone, TV and Gas bills add up over time but BillShrink do a great job in helping you compare plans, options and savings. GasBuddy is another great way to compare gas prices on the go (and it has a really handy mobile app for most platforms). [Free, sponsor supported]

CreditKarma

Credit scores are hugely important. They determine interest rates (and even if you can get a loan) and have an impact on insurance. Keeping track of them can be expensive, or if you’re trying to navigate the options to get your federally mandated once a year free reports often confusing. Luckily CreditKarma provides a service which tracks your score, as well as explains why it is what it is and makes suggestions on how to improve it. [Free, sponsor supported]

FutureAdvisor

Planning for the future is tough, but if I could tell the 25 year old me one thing (apart from look after your teeth better) it would be start saving seriously now. The problem with most of the big 401(k) plans etc is that there’s so much information it’s hard to know if you’re making good decisions when it comes to balancing your portfolio, paying fees and maximizing your tax effectiveness. Luckily the team behind FutureAdvisor has made it their business to undertand this and provide some really simple tools to help you rebalance your portfolio to maximize your return (and keep reminding me how much more I need to save before I retire!). They helped me save on fees and improve the overall return on my 401(k) for a few minutes clicking through a wizard… a great investment of your time. [Free, though “pro” services coming soon]

LendingClub

Banks make their money by loaning your money to strangers and charging interest, and then paying you a tiny bit of it. Wouldn’t it be nice if you could lend money to random strangers and get most of that interest paid to you? Well, LendingClub facilitate just that. They review loan applicants and grade them based on a number of factors… the worse the risk the higher the interest rate they charge. Loans can be either for 36 or 60 months 9with the longer loans paying slightly higher interest rates). You select the loans you want to fund part of as a pool (in slices of $25) and they administer everything, hopefully returning principal and interest to your account every month which you can re-invest or bank. It’s a risk. Payments can be late and – as the banks know all too well – people can default on their loans. Over the last year I’ve seen a return of over 12% but have to balance that with 1 default and two or three loans that right now look like they’re heading the same way. 5 have fully paid off early though. There is a secondary market where you can trade loans if you need liquidity sooner than the term of the loan but it’s hit and miss what sort of return you’ll get there. [Free, with premier services available once you reach a certain investment level. Opening bonuses available]

Mint

Pretty much every bank gives you an online way to check balances and transactions but if you have more than a couple of accounts then it gets tedious. Mint brings all them together in one place as well as helps you categorize and track spending and prepare for up-coming bills. While the service is very broad supporting most financial institutions it seems to have some peculiarities in how it renames and categorizes items (and rather than getting better attempts by their new owners, Intuit, seem to be making things worse) which is creating opportunities for new services like Personal Capital. [Free, sponsor supported]

Zillow

As a homeowner knowing what your house is worth, and deciding if it’s a good time to try and refinance, is tough. Sure, the council will put a number on it for tax but how realistic is that? Zillow is best known for helping people buy/sell houses but a really handy side-effect of that is their Zestimate service which tracks a valuation for your property that matched pretty well to the professional valuations we’ve had done.

Mobile Browsers getting better

December 14, 2011

After struggling for years with sub-par browsers on small screen devices Apple did a good job raising the bar with Safari on the iPhone and now iPad. Google for some reason stumbled a little out of the gate with the browser on Android – rather than take their existing and proven Chrome they delivered an older and less capable core and it looks like only now with the 4.x generation devices that they’re finally starting to improve things (though that doesn’t help the 80-90% of their existing user base who will never get an upgrade to the latest goodness)

With the initial release of Windows Phone 7 it seemed like Microsoft had fallen into the trap of not treating mobile browsing as a first class experience and they shipped an IE7-like browser. That changed however with the release of v7.5 “Mango” which brought the full capabilities of IE9 (arguably the most standard adherent HTML5 browser) to the platform.

With people paying more attention to the mobile browser evolution and digging into capabilities (such as this review from Sencha) and arguing that the mobile web is not going away any time soon it would be great to see how the "Mango" with IE9 stacks up in these tests against the other two… Would be great to see Sencha or similar run their tests against all three? So far playing around with IE9 in Mango, it seems to do a really good job in most situations but I’ve not drilled down to quite the level of detail that they have yet.

playing a .pls source in the video tag

October 6, 2011

One thing that had been bugging me with the <audio> tag in HTML5 was that it while it was great at handling single files it doesn’t cope very well with being pointed at a shoutcast/icecast .pls file.

 

A bit of digging and I found that if you broke open the .pls file and used the actual stream source as the <audio src=”?”> parameter then it was quite happy to play the stream.

 

As a .pls file can contain a number of source files (subsequent items in a playlist, failovers in case one server isn’t running etc) the code also needed to cope with either an error or the selected stream coming to an end – luckily that isn’t too difficult with the event model supported by the audio tag.

 

I’ve shared a first cut of the code here on GitHub so feel free to edit/improve and share – for instance my code assumes that the NumberOfEntries parameter in the .pls file is the second line (in some instances it’s the last but one line) so there’s room to make it more robust.

 

Obviously it can’t perform magic … unless the stream is using a codec that your browser supports it will simply error out, but it does provide a fairly simple way to extend the capabilities of the <audio> tag

Standard laptop power supplies

October 5, 2011

I look around my office and I’ve got about a dozen different laptop power adapters – for current and dead machines. Even so I’ve spend the last few days trying to find a power brick to charge one perfectly good machine but neither the dedicated adapters or the three “universal” chargers I have support this particular connection.

Image001

I really like the Apple “mag safe” connector but sadly they won’t license that to anyone (or they probably would but it’s not economically feasible). The concept of a universal adapter is a good one but, having gone through the experience of Targus deciding to redesign their tips and stop making tips for new devices for their old chargers, I’m now rather cynical about how much of a solution they actually provide.

So I’ve wasted time and energy trying to track down a simple, yet crucial, accessory – without which I have a very nice, very shiny paperweight. Oh, and a growing loathing for yet another electronics manufacturer who doesn’t even maintain an up-to-date list of what models their own adapters work with online (and even after a couple of days the problem appears to have stumped their support team)

5 years ago I had a similar rant about cellphone chargers and it looks like things are finally settling down there with even Apple selling a micro-USB to iPhone dongle (maybe the iPhone5 will have micro USB only… we can dream!) – laptop, netbook, slate/tablet’s still have a long way to go :(

Standard laptop power supplies

October 5, 2011

I look around my office and I’ve got about a dozen different laptop power adapters – for current and dead machines. Even so I’ve spend the last few days trying to find a power brick to charge one perfectly good machine but neither the dedicated adapters or the three “universal” chargers I have support this particular connection.

Image001

I really like the Apple “mag safe” connector but sadly they won’t license that to anyone (or they probably would but it’s not economically feasible). The concept of a universal adapter is a good one but, having gone through the experience of Targus deciding to redesign their tips and stop making tips for new devices for their old chargers, I’m now rather cynical about how much of a solution they actually provide.

So I’ve wasted time and energy trying to track down a simple, yet crucial, accessory – without which I have a very nice, very shiny paperweight. Oh, and a growing loathing for yet another electronics manufacturer who doesn’t even maintain an up-to-date list of what models their own adapters work with online (and even after a couple of days the problem appears to have stumped their support team)

5 years ago I had a similar rant about cellphone chargers and it looks like things are finally settling down there with even Apple selling a micro-USB to iPhone dongle (maybe the iPhone5 will have micro USB only… we can dream!) – laptop, netbook, slate/tablet’s still have a long way to go :(


Follow

Get every new post delivered to your Inbox.

Join 543 other followers