Subscribe to Updates

Click here to subscribe to new posts by email. We use Google FeedBurner to send these notifications.

On the Problems of Designing User-Friendly Software for PDAs and Smart Phones

Posted on: April 21st, 2008 by Craig Rairdin 13 Comments

A comment from one of our PocketBible 4 beta testers got me thinking about the nature of what we do and what users complain about. I’ve expressed this with respect to the iPhone but I haven’t put it into a larger context that might help people understand what software designers are up against when we implement a solution, regardless of the platform. These issues are especially true of the mobile device market but the same ideas apply to the desktop and other general-purpose computing platforms.

If you start from the beginning, you find a user with a problem. It might be: “How do I take my contact database with me?” or “How can I work on my spreadsheets on the train?” or “How can I browse the Web when I’m away from my computer?”. Hardware companies like Sony, Apple, HP, and HTC get together with software companies like Microsoft and whatever Palm is calling itself today and come up with a device and operating system software that address those problems. In the course of doing so, they create a way for third parties (that’s us) to create software for their new device/OS platform.

By the time we consumer software companies (independent software vendors or ISVs) get our hands on these products, we’re no longer solving the original customer problem. Instead, we’re programming for a device, and the device is solving the problem. When we program for a device we have certain limitations imposed by the hardware and software. The screen is only so big. There may or may not be a keyboard. There may or may not be much memory. There may or may not be good internet connectivity. The tools provided by the OS software developer may not be very powerful. There are a host of these limitations, and we have no control over them. It is the sandbox in which we have to play if we’re going to play at all.

We might have solved the customer’s original problem differently. But that’s water under the bridge. We can only operate within the limitations of the platform.

Some of the limitations imposed on us are not necessarily firmly fixed in hardware. They might be user interface standards that are intended to give the user a common UI experience as he or she moves from application to application on the device. So we all put scrollbars on the right even though lefties might like them on the left. Menus, buttons, toolbars, etc. are generally drawn from a common source so they all look the same and are sized and placed the same in all applications.

Obeying the philosophical limitations is just as important as obeying the hardware limitations, even though the former is not as rigidly enforced. Depending on the platform, a device from another manufacturer might expect you to have followed the rules. It may implement new features, which, as long as you’ve followed the rules, fit seamlessly into your existing program with no changes. So it’s to our advantage (and by extension, our customers’ advantage) for us to play within all the rules.

So what does this all mean? It means that when you have an iPhone, you don’t have a clipboard. It’s not the case that iPocketBible doesn’t have a clipboard, it’s that your iPhone doesn’t have a clipboard. As of right now, it means that you depend on Internet access because all your third-party apps are Web-based. It’s not that Laridian screwed up by only providing a Web-based application for your iPhone, it’s that Apple screwed up by not supporting native, third-party apps right out of the box.

It means if you have a Nokia phone you can’t tell if software is going to run on it because it doesn’t tell you anywhere what version of the operating system you’re running. Yes, if you’re an expert user you already know you have an S60 or whatever, but the average person who reads the Bible and bought a Nokia phone “because it’s blue” isn’t going to be able to tell whether a particular piece of software will run on the phone or not.

It means that if you have a Pocket PC, it’s hard to operate programs with your fingers instead of a stylus. The buttons are too small, the keyboard input methods are too dumb, and many of the controls are simply impossible to operate with something as big as a man-sized finger. It doesn’t mean that PocketBible is hard to operate with your fingertip, it means that Microsoft expects you to use a stylus and designed their device that way.

Sure, we could make our buttons really big and give you all kinds of flexibility for defining how the d-pad buttons work with our program, but eventually you’re going to have to type a note on that little software keyboard that pops up at the bottom of the screen, or select an option from a little combo box or menu, or try to tap on just one Strong’s number in a sea of blue underlined links. We can’t do enough to overcome the limitations imposed on us by the underlying software and hardware, for which we have no responsibility.

It’s fairly common for people to complain to the wrong party about these things. Since we’re the last link in the OEM – OS – ISV chain, we get blamed for a lot of the problems of our software running on these devices — problems that actually are the result of limitations dictated to us by those who came before us. So if you have fat fingers or you don’t have WiFi at your church, I’m afraid we can’t help you. Someone else stuck you with a bad solution before we got to you. The best we can do is create software that works well on the platform you’ve chosen. Whether that platform is right for you is a decision you have to make, and one that the OEMs and OS developers are more responsible for than we are.

13 Responses

  1. MarcT says:

    As a software developer, I feel your pain. Thanx for continuing to put up with us and giving us the best Bible software you possibly can.

  2. Jerry Koerkenmeier says:

    The only problem I have with this explanation is that other Windows Mobile software vendors have been able to deal with the same limitations in more user-friendly ways. For example, the biggest impediment to one-handed operation of the PocketBible app is the way dialog boxes are handled. Most WM application use modal dialog boxes that have softkey support (i.e. “OK” and “Cancel”). But in PocketBible, dialogs like the Find, Add Book, and Change book have no softkey support, and use a non-modal window (i.e. does not use the standard WM “X” button to close the window). Clicking a hardware “ok” button or the WM “X” button will exit the PocketBible application, not just the window.

    While most parts of the application look great and are very user-friendly and customizeable, the dialogs are not. I really like the application in general and mean no offense, but these dialogs look clunky and out of date.

    For an example of apps that work they way I am describing, open a dialog box in Google Maps (Options->GPS Settings… for example). Do the same in Resco Explorer (Options->General…).

    If PocketBible used a “modal” dialog, that should resolve this roadblock of otherwise issue-free one handed usage of the application. Softkey support would just be icing on the cake!

    In fact, it seems like that would do a better job of following “user interface standards that are intended to give the user a common UI experience as he or she moves from application to application on the device” even more closely than the app currently does, as that is how all the built-in applications use dialogs (i.e. messaging, pocket IE, calendar, contacts, etc.)

  3. A modal window is one that does “takes over” the application and doesn’t allow anything behind it to be active. It doesn’t have anything to do with how you close it. All our dialogs are modal.

    PocketBible 4 will have (already has) OK/Cancel soft key support on all its dialogs.

    One of the challenges with adhering to user interface guidelines on the Windows Mobile platform is that Microsoft assumes that all Pocket PC users scrap their devices and buy a new one every time MS releases a new version of the OS. The latest development tools do not support WM2003, 2002, or 2000 devices, which are actively in use by many of our customers. In order to continue to support the devices our customers use we have to develop with an older version of the SDK. This makes it somewhat challenging to keep up with UI changes — not so much because we can’t do a thing with the old SDK but rather we don’t have the latest documentation. And even with the new docs we sometimes have to interpret and interpolate to figure out how to accomplish the same thing with the older SDK.

    I think you’ll like PocketBible 4 a lot more than 3. It’s loaded with “modal” dialogs. :-)

  4. Jerry Koerkenmeier says:

    I am in the beta and using PB 4 with WM6, but I don’t see the OK/Cancel soft key support on the Find, Add Book, and Change Book dialogs. I also still see the three round buttons in the upper right corner (?) (X) (ok). Tapping the Windows Mobile “X” button closes the entire app when in one of these dialogs. Do I not have the right version?

  5. Peter says:

    I understand the pain/frustration. WM devices really are considered disposable for some odd reason. I’ve paid $300-$400 for each of mine and I don’t consider that disposable by any means. Of course, if we want the latest OS, we often have to do just that.

    I have to admit that I’m looking forward to iPhone v2, just because it will include those local apps. I don’t plan on getting one, but the competition should really change once that happens. I think that MS will implement more “touch” type devices, but I really hope they don’t do away with the keys in that process. Just the lack of need for a stylus for everything is useful. I find that using SPB Mobile Shell (or similar apps), I can do quite a bit without ever taking the stylus out, especially on a device with a keyboard.

    For my part, I use the menu keys an awful lot, but have trouble when there are a lot of choices. I have the “3-tap” method for navigation and find that relatively easy to do with just the hardware keys. Whether I do that or not usually depends on whether I’m holding the stylus or not. It’s still pretty convenient.

    As for those rules, I seem to remember reading that MS just recently relaxed the rules to allow “certified” apps to have an Exit/Close feature instead of just the minimize behavior that so many users know and typically dislike. That seems like a prime example of working within those limitations to follow the rules, even though the end-user may not like it. I know a lot of devs kind of slipped something else in there to actually force an exit, but it was still a point of contention an awful lot of the time. :P

  6. Jerry: Check your email for a description of the work done over the weekend, which includes OK/Cancel support for all dialogs. You don’t have the exe yet.

    I now see what you’re saying about the red X. It is working very differently in WM6 than it did in WM2003. In the older version it just minimized the app, which is what we expect. In WM6 it first cancels the dialog, then minimizes the app, making look as if it closed the app when you open it again.

    Anyway I think the OK/Cancel support will resolve the issue. And we’re still not sure if the round buttons will go away or not. We can talk about this further through the beta ticket system if you want.

  7. Jerry Koerkenmeier says:

    Thanks for the assistance Craig!

  8. Kyle says:

    I’m sure everyone would like certain things a different way, etc., but I mean, no software will ever please everyone all the time. But your software is BY FAR the best out there. It’s not even close.

  9. Jerry Koerkenmeier says:

    Kyle – I agree on both counts. You can’t please everyone and PocketBible is truly the best by a long shot.

    But wait till you see how Craig cleaned up the dialogs in PocketBible 4 (at least for WM 5 or 6 devices). You will see how smooth and clean it makes the experience.

    Craig – Nice work!

  10. Richard says:

    I have been a user of the pocket bible for many years on all types of “Windows Mobile” devices.

    Just wanted to say, I think you do an awesome job on your GUI. It took a bit of time to get used to the new way things worked in version 3, but after a short re-training of what I expected, I grew to love it.
    Your pre-view of how it works on the iPhone also looks very well done.
    Keep up the good work!!
    (Love it so much, I purchased the Windows version. Yahoo!)
    – Richard.

  11. Derek Barrett says:

    I have used a Palm PDA (Tungsten T3) as well as a separate cell phone for many years. Now I am wondering about getting one device that can do everything instead of carrying two devices. The Nokia E71 loooks attractive and most of the Palm software I use regularly is also available on the S60 platform. However I cannot find any equivalent for “My Bible” that will operate on the S60 platform. Craig can you help? Do you intend to release “My Bible” for the S60 soon?

  12. Even though there are lots of S60 phones, the selection of software for the Nokia/Symbian line is very limited compared to Palm, Windows Mobile, and iPhone. The Palm software that is available is mostly for the now-obsolete Palm OS. There is not much software yet for the Palm Pre (WebOS — the new Palm operating system).

    I don’t recommend Nokia phones for people who are interested in third-party software. If you can accept AT&T as your carrier, the iPhone is a good choice. Otherwise Windows Mobile would be the second choice.

  13. Fung Siong says:

    Hi, I have been a user of PocketBible for years as well (v2 to 4) and it has been awesome. Recently I migrated from Dell Axim x50v to Samsung B7330 Smartphone runing Windows 6.5. While I really appreciate Laridian licensing policy on Bibles bought, I realised that Smartphone version does not have the copy verse option or in fact copy any text.

    This has been the best feature in my trusty Axim, since I can copy the verse into my notes during the sermon so easily…

    Will it be added as additional feature for WinMo 6.5 Smartphone (non-touch screen) devices?

    Thanks for the excellent software!

Leave a Reply

©2015 Laridian