One-Handed Computing

Yes, you probably went here as soon as you saw the phrase “One-Handed Computing”:

"Successories" style poster featuring a woman gasping as a man shows her something on his computer: "Your Porn Collection. Probably best kept to yourself."

But in this case, I’m talking about what Jason Kottke is talking about — those times when you use mobile technology while your other hand isn’t free because you’re:

  • Eating
  • Drinking
  • Carrying or feeding a baby
  • Walking the dog
  • Carrying groceries
  • “Straphanging” on a train or bus
  • Getting by with a broken arm

In the cases above – and I’m sure you can think of many more – you’re accessing computing resources in a very undesktop-like way: with only one hand, and even then, a limited portion of that hand since most of your fingers are busy holding that phone. You’re likely using only your thumb, as shown below:

windows mobile 6.5 and thumb

There are lots of times when users are stuck in “one-thumb mode”. If you’re building mobile applications, you should keep that in mind and make sure you design your user interfaces accordingly. You might need to consider things like:

  • The size of touchscreen controls: make them too small and they’re not thumb-friendly.
  • The number of controls on the screen; the maximum number is dictated by their size.
  • Navigation in your app. Hierarchical arrangements make sense to developers, but lots of user experience people will tell you that ordinary people don’t get hierarchies.
  • Which functions will your users use most often? You should make those very easily accessible. Which functions will your users use less often? You might be able to put them on a secondary or tertiary screen.
  • Can you get information without making the user enter it? For example, can you infer information based on the user’s location, which you can grab from GPS instead of asking for him/her to enter it? Can your application remember your user’s most often-used data?
  • Can you get other kinds of one-handed input, such as from the camera, accelerometer, magnetometer or other sensors?

That’s a fair bit to think about, and I might have to present some ideas at the upcoming Toronto WinMoDevCamp (and yes, I’ll also blog them).

This article also appears in Canadian Developer Connection.


TechDays Halifax / Halifax Coffee and Code Next Week!

halifaxTechDays, Microsoft’s cross-Canada conference for developers and IT pros took a break in October, but returns in November to complete its tour of the five remaining cities, starting in Halifax!

I, along with the rest of the TechDays team will be in Halifax and places nearby starting this weekend and for most of next week:

  • We’ll be around on the weekend doing setup and rehearsals for the TechDays conference
  • The TechDays conference itself will take place on Monday, November 2nd and Tuesday, November 3rd at the World Trade Convention Centre Halifax.
  • On Wednesday, November 4th, I’ll be hosting a Coffee and Code event at the Just Us Cafe (1678 Barrington Street) from 2 to 6 p.m.. That means I’ll be working from that cafe – drop by and chat!

And don’t forget that TechDays Canada is also visiting these cities:

  • Calgary: November 17th and 18th
  • Montreal: December 2nd and 3rd
  • Ottawa: December 9th and 10th
  • Winnipeg: December 15th and 16th

Tickets are a still available for these cities.

In case you’ve forgotten the TechDays formula, here it is again:

TechDays = Content from premium conferences far, far away + Delivered by local speakers at venues close to home + Extra events and goodies for you to enjoy

See you in Halifax!

This article also appears in Canadian Developer Connection.


WinMoDevCamp Toronto: Wednesday November 11th at Microsoft’s Mississauga Office


WinMoDevCamp, the worldwide series of development workshops for Windows-based mobile phones, is coming to Toronto on Wednesday, November 11th! If you want to learn how to develop applications for Windows Phone (the mobile operating system formerly known as Windows Mobile), this full-day workshop will give you the opportunity to get some hands-on training and experience. We’ll have all kinds of people speaking and attending, including:

  • Mobile developers
  • Web developers
  • .NET developers
  • UI/WX specialists
  • Software testers
  • Device manufacturers
  • Canadian mobile carriers

…all at this workshop, all working – either solo or in teams – on a Windows Phone project. (While you can choose to work solo, you’ll miss out on the brainpower, business and social opportunities that teaming up will provide).

At the event, you will:

  • Create a new application for the Windows Phone platform and mobile apps that support Windows enterprise applications
  • Meet and work side-by-side team members from the Microsoft Mobile Developer Experience team
  • Get help porting your existing iPhone, BlackBerry and Palm Pre apps to the Windows platform
  • Interact with reps from a number of Canadian mobile carriers, including Bell, Telus, Rogers and WIND

This free event will take place on Wednesday, November 11th at Microsoft Canada’s headquarters in Mississauga (1950 Meadowvale Boulevard, just off Mississauga Road north of the 401) from 1:00 p.m. to 9:00 p.m.. We’ll serve snacks and dinner, so you won’t starve while you create mobile apps. And yes, I’ll be there, helping out and even writing code.

If you’d like to attend WinMoDevCamp Toronto, all you have to do is register! (And if you need a lift out to Mississauga, drop me a line and I can give you a lift from High Park subway station to Microsoft and back.)

Clik to register for winmodevcamp

This article also appears in Canadian Developer Connection.


Azure/Silverlight Hallowe’en App

archetype pumpkin carver

Archetype have put together a cute little Hallowe’en pumpkin-carving application built with Silverlight and hosted on Azure. It lets you “carve” a pumpkin, complete with backlit glow from the candle, and send the resulting image to a friend. Give it a try!

This article also appears in Canadian Developer Connection.


Spider-Man on Chat Rooms

Spider-Man: "I get into costume and boom, I'm the snarky wise-guy. Anonymity's liberating. There should be rooms where people could go to chat using fake identities. They'd spend hours being jerks to each other."

This article also appears in The Adventures of Accordion Guy in the 21st Century.


Computer Problem of the Day

how do i turn off caps lock


Is Your Code a Candidate for “There, I Fixed It”?

There, I Fixed It is a hilarious photoblog that catalogs kludges, jury rigs and hastily-improvised duct-tape repairs and modifications to everyday objects. The photos below are a sample of some of the quick fixes shown on the site, each one somewhere on the spectrum spanning “clever and thrifty” to “cheap, shoddy and frightening”:

There I Fixed It

(Regarding the photo in the right column, second one from the bottom – the piece of paper attached to the pencil sticking out of the computer says “Pull to turn on”. It’s a jury-rigged replacement for the power switch.)

Sloppy work like this isn’t limited to the physical world. I’ve seen (and okay, sometimes I’ve written) code that could’ve been a candidate for There, I Fixed It, and chances are you have too:

  • Some of my hacks were a little more elegant and useful in the long-term, as long as you weren’t going to be too fussy about aesthetics. They were the software equivalent of the CD-ROM drive installed below the car radio and attached to it with a cable with 1/8” stereo jacks. They weren’t pretty, but they were solid, reasonably maintainable and viable in the long term.
  • Others were terrible kludges that were originally intended to be temporary solutions that forgotten and lived much longer than they should have. They were like fixes shown in the two photos on the bottom (the hasty bridge repair and the car exhaust held together with zip-ties).
  • I’ve also copped out by glossing over bad user interface design with some explanatory text or dialog box instead of actually correcting the design. This is not unlike labelling a doorknob “hard to open” or a hastily-improvised switch “pull to turn on”.

Be sure to check out There, I Fixed It. They’ve had some pretty hilarious pictures lately, and perhaps it’ll inspire (or shame) you to eschew the quick fix or kludge in favour of putting some time and thought into writing better code and building better user interfaces.

This article also appears in Canadian Developer Connection.