Improving UX on the Cheap

Being an app developer is a lot like being a parent: You never want to hear that you have an ugly baby.

But in the case of the developer, a bit of criticism can lead to improvement. App builders can avoid a lot of pain down the road if the bad news comes early enough in the software lifecycle. Smaller shops and individual developers can test early iterations of their apps on users, and the resulting feedback can inform subsequent versions that win over customers.

Usability testing is one technique for flagging dire problems before an app is unleashed on an unsuspecting world. Usability testing provides a snapshot of a user’s initial reaction to an app, while other methods may be employed to track longer-term usage.

Testing requires planning and the ability to craft focused and probing questions. As for monetary investment, tests don’t have to be expensive. There are plenty of low-cost DIY affairs, and even those involving an outside testing firm need not break the bank.

Testing Approaches

Usability testing can help developers unearth some scary app-killing deficiencies. “Usability testing is a wonderful, powerful research technique that finds the big hitters, the big problems that will shatter the user experience,” says Gavin Lew, managing director of User Centric Inc., a user experience research and design firm based in Oakbrook Terrace, Ill.

Developers should quickly build a simulator that users can test as opposed to taking the time to create a “gorgeous prototype,” suggests Lew. The objective is to focus on a handful of core app functions that naive users can interact with and put through their paces. Users may stumble on some features and find that others work well. The resulting feedback should help guide subsequent app iterations.

“Usability testing and the interactive design process are all about making mistakes faster,” says Lew. And fortunately, the user test population doesn’t have to be enormous to obtain actionable results.

Blink Interactive Inc., a user experience research and design firm in Seattle, Wash., recommends having eight to 10 users for simple studies, says Tom Satwicz, user researcher at Blink, on the company’s blog.

Developers that are concerned with focus group size -- and, more to the point, cost -- can use Blink’s usability sample size calculator to get an idea of what to expect. The calculator lets developers adjust such factors as the number of user groups to be compared (e.g., novice and expert users) and the number of designs to be compared, for example.

Lew, meanwhile, says seven participants will work for a usability test. With usability testing -- also called formative or iterative user research -- major issues that unravel the user experience tend to manifest quickly and often, he notes. “So, if a user can test these two to three features in a 60-minute, one-on-one usability testing session -- without introducing undue bias from the feature use -- pragmatically speaking, seven participants is sufficient,” says Lew.

Lew’s company can conduct an application test involving two or three features in a single day, which shouldn’t be cost-prohibitive, he says. User Centric’s one-day test includes the user test and a workshop with developers to explain the results. Developers should participate in the one-day test to watch the user test to get a firsthand look at the users’ experience and understand the context of use, says Lew. 

The usability test isn’t the only one developers should consider, however. Usability testing, says Lew, works well when it comes to gauging the first hour or so of a user’s experience. After that point, other forms of testing will be required to determine how the user’s experience evolves over a week or a quarter of ownership. 

“You have to recognize that usability testing is not the only technique,” he says. “We must use other research techniques to truly create engaging user experiences.” He cites soak-testing and longitudinal studies as examples of tests that track an app over an extended period of use.

 

Test Preparation

Tests that focus on the user experience require planning to get the most out of the process.

Developers should take the time to define what a meaningful research question is before pursuing a user test, says Lew. Just asking users if they like an app isn’t particularly revealing. The idea is to focus on specific instances that can generate design insight.

“The point is to not have blanket statements like, ‘What are users doing?’” says Lew. Align your questions to business goals (e.g., features) and to whether the users actually use the features as the business intended, suggests Lew. “This way, the research is grounded. We can relate observations and findings to business objectives. This makes context and recommendations much more relevant.”

Some companies offer assistance with creating tests. UserTesting.com, a Mountain View, Calif., company that provides a usability testing service for websites and mobile apps, offers a Task Bank from which the company’s clients can draw upon when setting up their mobile tests, notes a company spokesman.

UserTesting.com also lets customers select a test’s participants from the company’s user panel. The company is still in the process of growing its mobile user panel, so at this point the only demographic selectors are age range and gender. But a strategy game developer seeking strategy gamers could list “special requirements/demographic requirements” in the “Scenario” of the test. Users self-select based on the information listed. UserTesting.com charges $39 per test participant.

Photo: @iStockphoto.com/hocus-focus

What’s Your Android Distribution Strategy?

435,502. That’s how many Android apps were available on April 28, 2012. Depending on when you’re reading this, that number may have grown by at least 5,000.

Those numbers are good news for Android developers because a broad, deep and growing selection of apps helps attract more users to the platform. However, it can also be bad news -- or at least a challenge -- because the more apps there are, the more difficult it is to stand out from the pack.

How can you make sure your app gets noticed by Android users? Try these distribution strategies to overcome the challenge.

Play by Google’s Rules
Android Market’s March 2012 transformation into Google Play was more than just rebranding. It also expanded the store’s lineup to include books, movies and music, which means more shoppers and thus more potential customers for your app.

Google Play’s online store and app both have an Editor’s Choice section on their opening page. Google doesn’t explain its selection criteria, but developers whose apps have made the cut say they’ve got a few hunches.

“As far as I could tell, Editor’s Choice and Staff Picks are exactly what they sound like: apps that people at Google happen to like,” says Sterling Udell, whose apps have been featured twice. “As with any other group of people, there’s no real way to predict what they’ll like, nor is there any published way of bringing potential candidates to their attention. It appears to be that they find apps just like anyone else, and they’ll feature those they like. And because the editors and staff are Googlers, apps that have geek appeal probably have a better chance.”

The editors and staff also seem to prefer apps that don’t play fast and loose with Google’s rules, particularly its terms of service. Quality also matters, including a user interface (UI) that looks great on any device.

“There are a lot of bottom-feeder, low-effort apps that can be discounted right away,” says Udell. “Apps that closely follow Google’s various UX guidelines probably have a much better chance. I suspect Google wants to feature apps like that. For example, I have little doubt that you get points if your UI scales nicely between phones and tablets.”

Sell Through Amazon
The Amazon Appstore launched in March 2011 and provides another opportunity for mass-market exposure. If you’re targeting Amazon’s Kindle Fire, which now has 54 percent of the Android tablet market, Appstore is the place to be because Google Play is available only to Fire owners willing to root their device.

Some developers say third-party stores such as Amazon’s are useful for making a sale, but not necessarily for getting on customers’ radar screens in the first place. “I’ve had a fair amount of sales from third-party stores -- enough to make them worth doing,” says Udell. “It’s generally quite hard to tell if they’re raising awareness of my apps, though.”

If that’s the case, it could be yet another example of the showrooming that Amazon and other e-tailers are known for. One reason is because each day, Amazon selects a paid app to give away, so parsimonious buyers might hear about an app someplace else but then wait for it to go on sale at Appstore. Of course, not all customers are willing to wait. So becoming Appstore’s freebie doesn’t necessarily cannibalize sales -- especially if you have additional revenue streams.

“If your app involves in-app payments, you won’t have any worries,” says Joseph Farrar, president of JoeDeveloper. “I’m not even sure you would need to worry about one day’s worth of sales for your app. The amount of exposure and word of mouth might just be worth it in the long run.”

Know Who Knows Your Market
Another strategy is to identify bloggers, websites and magazines that have a devoted following in your target market. For example, if you have an app for shortwave radio hobbyists, trying pitching it to the editors of enthusiast publications such as Popular Communications.

“Tech blogs are a great way to build awareness,” says Farrar. “AndroidPolice.com, for instance, has an entire series dedicated to profiling new apps, as well as longstanding apps in the Android Play store.”

But even large, well-staffed websites don’t always have the time to ferret out cool apps to bring to their audience’s attention. AppCarousel aims to eliminate that hurdle by doing the research and then bundling those apps into a mini app store that websites can embed.

“We offer people with particular verticals the ability to showcase a bunch of apps,” says Terry Hughes, who developed apps such as momentem before becoming AppCarousel’s managing director. “They don’t have to write special app-showcasing code for their website or add deep links to Android Market.”

AppCarousel’s existence is just one more example of how challenging it is for Android apps to stand out from the pack.

“This whole notion of curating is really the buzz for 2012,” says Hughes. “As the market segments itself, that’s a better approach than hoping these great, big app stores do everything for you.”

Photo: @iStockphoto.com/juniorbeep

Power Your Apps With GPU Programming

A computer’s CPU traditionally carries the application workload, but developers can now tap a programming approach that engages the graphics processing unit (GPU) as well.

The concept, referred to as General Purpose GPU, or GPGPU, essentially makes the GPU available for computing chores other than graphics. The ability to offload tasks from overtaxed CPUs can boost application performance. In addition, writing programs to leverage more resources make for improved energy management -- tasks can be targeted toward the parts of a system that consume less power.

A couple of key frameworks make GPGPU happen. OpenCL, a Khronos Group specification, provides an API set and programming language that lets coders write programs that use all of a system’s resources. On the proprietary side, NVIDIA’s CUDA, which the company describes as a parallel computing platform and programming model, also makes use of GPU power.

To date, GPGPU, or GPU programming, has made the biggest mark on desktop and notebook computers. But mobile devices -- processor-constrained smartphones and tablets -- also stand to benefit. However, widespread use of GPGPU in the mobile app development space may be a couple of years away.

The Benefits of GPU Programming

“The key benefit of programming GPUs is high performance of calculation operations,” says Eugene Filipkov, senior game developer at Eligraphics Studio in Minsk, Belarus. “GPUs can carry out an enormous number of simple operations in parallel to CPUs -- more complex operations can be calculated by CPUs and simpler operations by GPUs.”

As a game developer, Eligraphics limits its involvement with GPU programming to the vertex and pixel shaders for games, Filipkov explains. He suggested the company’s use of GPU programming could increase in the future. If Eligraphics decides to create its own 3D engine, for example, the effort would involve parallelizing tasks and transitioning elements of computing to the GPU.

Arnon Peleg, software products marketing manager at Intel, says he takes a broader view of GPU programing. He points to OpenCL as a key enabler. “We are talking about platform programmability and not only CPU or graphics,” he says. “OpenCL is a standard programming language. What it brings to you is a way to access the computing firepower of the entire platform.”

At this point, Intel supports OpenCL on client PCs and Ultrabooks. The company has not announced support for OpenCL on smartphones and tablets. But in the case of Intel-equipped Ultrabooks, for example, OpenCL lets developers access both the CPU and Intel HD graphics in a standard manner.

“The performance on the entire platform is the key here,” says Peleg. “It is the ability to program the overall platform and utilize the power of the entire platform and get the most power efficiency.”

As for the latter point, a developer can program an application to run code on the least power-consuming system component, which is typically the graphics component. Developers who balance their code between the CPU and Intel HD graphics can, potentially, create applications that use energy more efficiently, notes Peleg.

GPGPUs: Shifting to Mobile Development

Neil Trevett, vice president of mobile content at NVIDIA and president of Khronos Group, says GPU and cross-platform programming will eventually work its way down to mobile devices.

“Silicon and IP vendors are working now to build CUDA/OpenCL-programmable GPUs into the power budget of mobile phones at a useful level of performance,” says Trevett. He calls that task a non-trivial exercise. That said, he says he believes the next two years will see multiple system-on-a-chip integrated circuits for phones and tablets emerging with that capability, making it a useful feature for developers to target.

“I think the first beachhead applications to take advantage of GPU programmability will be image and vision processing, computational photography and video editing/analysis,” says Trevett. “Also, games will use this capability to accelerate physics and simulation engines -- just like desktop games today.”

YOUi Labs, based in Ottawa, adds Natural User Interfaces (NUIs) to the list of software that can benefit from GPU computing. The company, which focuses on developing NUIs for embedded platforms, reasons that NUIs require more computational power than traditional graphical user interfaces. A YOUi Labs whitepaper states that making use of available GPU cycles is important for maximizing the hardware’s capability for an NUI.

“This process of using GPUs as [GPGPUs] has been traditionally limited to desktop computing platforms, but as portable devices are becoming more powerful, encompassing multiple-core CPU and GPU elements, implementation becomes crucial for efficient use of the hardware’s capability,” the whitepaper says.

Jason Flick, chief executive officer of YOUi Labs, says GPU programming is headed for mobile devices, noting that OpenCL drivers are already showing up on pre-production hardware. He says about half of the development boards in the next six months will have OpenCL support, although at the moment only a few have that feature.

“It certainly will be moving into that space,” he says of GPGPU and mobile devices.

Image: Corbis

Is iOS Fragmenting?

For developers, one of iOS’s benefits is that there are so few device models, a lineup that avoids the UI/UX fragmentation that plagues Android. But rumors persist that Apple will release a smaller iPad, a larger iPhone -- or both -- later this year.

“Personally, I think they’re both pretty likely,” says Matthew Vartabedian, iGR vice president of wireless and mobile communications research. It’s a scenario worth pondering now, as any additional form factor(s) would affect developers. But exactly how much of an effect is up for debate. Vartabedian thinks that any additional form factor(s) wouldn’t have a major negative effect on developers.

“I would think that Apple has included the major developers in its roadmap and that we’ll see the release of the ‘big’ apps -- Netflix, Pandora, Angry Birds, etc. -- shortly after the (hypothetical) devices are released,” he says. “Other iOS devs will just follow along.”­

Keep in mind that more than 55 companies make Android phones and tablets. Even if Apple does release new models, all iOS devices still would come from a single company. That level of control should mean far less UI/UX fragmentation than with other operating systems.

It’s also important to consider why Apple would release additional form factors: to go after new demographics. If that strategy pays off, developers would benefit from the larger pool of potential customers. That’s also an example of why Android developers should pay attention to any changes in the iOS lineup.

“I’m specifically thinking of the possible 7-inch iPad, which I’m also assuming will be in the $200-$250 price range and will likely gut the Android tablet market, though we haven’t done anything specific research-wise on the pros or cons of a 7-inch iPad versus the competition,” says Vartabedian.

New iOS Form Factors: Are You Ready?
How much reworking can iOS developers reasonably expect to do if Apple launches additional form factors? There’s no definitive answer. One big wild card is whether a new form factor will change just the size of the device or the aspect ratio too.

“If Apple keeps the aspect ratio of either iPhone (3:2) or iPad (4:3), it likely won’t be a significant issue for most iOS developers since they hopefully already have elegant solutions in place,” says Charley Price, Hidden Variable Studios co-founder and creative director. “Since Hidden Variable develops for both iOS and Android simultaneously, we already have to handle everything from fairly wide iPads to narrow NOOKs (16:9).”

Like it or not, coming to terms with additional iOS form factors comes with the app developer territory.

“As mobile development diversifies and Android marketplaces such as Google Play, Amazon and Barnes & Noble become more viable, more and more developers are going to need to address these types of issues and integrate flexible UI elements into their apps to accommodate as many future devices as possible,” says Price. “Of course, there are a host of other variables that come into play with Android devices due to the sheer diversity of hardware specs out there. But if you’ve designed your app with a flexible UI system, at least you can rule out aspect ratios as a significant concern.”

For example, Hidden Variable’s “Bag It!” game has several UI elements that anchor the screen’s edges. The score anchors the upper-left corner, the pause button anchors the upper-right corner and so on.



 
“If you look at the game on various devices, there may be larger or smaller spaces between these elements, depending on the aspect ratio,” says Price. “But as long as your extreme cases look good, you’re generally in good shape on most devices in between. In terms of the background art, we basically fill the height of the device and then crop or expand the width of the view as needed. As such, our background elements -- the shelves behind the bag, the floor, the conveyor belt, etc. -- are all designed to accommodate the widest possible screen or be cleanly cropped to the narrowest possible screen, without compromising gameplay.”

Fragmentation: A Wake-up Call?
Each developer’s background would affect his or her ability to accommodate additional iOS form factors.

“When I worked at Google to help bring games to Android, a common pain point for developers who were porting from iOS was the screen size variety,” says Chris Pruett, chief taskmaster at Robot Invader, which specializes in games. “Developers porting from PCs or developing from scratch generally didn’t have much problem with the variety of screen sizes and resolution on Android devices because they saw it coming and designed for it. IOS developers, on the other hand, were often trying to port code that was based on a fundamental assumption that the screen size would not change. When this assumption failed, a lot of their code also failed and required a lot of rework.”

So for some developers, additional iOS form factors could be a wake-up call. “IOS has been so consistent for such a long time that it’s caused some developers who are not thinking long-term to fall into bad habits,” says Pruett, who writes all of his Android and iOS games to be screen-size independent. “So I think that if a third aspect ratio iOS device arrives, it will be pretty painful for some developers. Others, who already designed for this because they support Android or some other non-iOS platform, probably won’t miss a beat.”

Developers: Microsoft Wants You

Windows Phone 8 is set to debut this fall in roughly the same timeframe as the Windows 8 OS for desktops and laptops. And Microsoft is working hard to attract developers to the platform.

The company already runs a series of promotions and developer competitions around Windows Phone and will provide more Windows Phone 8 developer information as the launch date draws closer. Joe Belfiore, corporate vice president at Microsoft, noted in a June blog that, later this summer, the Redmond Company will have “much more for developers on the Windows Phone 8 Software Development Kit ... and the new Visual Studio 11-based development tools.”

To win over developers, Microsoft must overcome its smaller slice of the market, some technical limitations with Windows 7 and additional issues such as backward compatibility. On marketshare, developers gravitate to platforms with the greatest user reach and, thus far, Microsoft has underperformed its mobile rivals. In a July report, The Nielsen Company pegged Windows Phone 7’s U.S. marketshare at 1.3 percent. Microsoft’s predecessor mobile OS, Windows Mobile, did slightly better at 3 percent. Android, on the other hand, captured 51 percent of the market, with Apple’s iPhone commanding 34 percent.

Windows Phone 8: Shared Code Base

Nevertheless, some developers look forward to the release of Windows Phone 8. Plusses for the new OS include a shared code base with the Windows 8 OS, say developers. The two OS’s will share the identical kernel, file system and device drivers, among other components, according to Microsoft.

Glenn Schoonover, senior security engineer at KoolSpan, a maker of secure connectivity software, says the shared code base means developers will be able to develop one core version of an app and tweak the interface to suite desktop/laptop, tablet and phone platforms.

“We won’t have three different versions,” explains Schoonover. “That will really ... reduce development time and simplify our time to market.”

For customers, the common code base would create a unified cross-platform user experience in the Microsoft environment. This approach may prove particularly appealing to large enterprise accounts that use Windows heavily on the desktop and tap Microsoft for messaging and collaboration as well.

Ira Entis, president of Advanced Technologies at Agilex, a professional services firm with a mobile app specialty, says Microsoft’s mobile efforts may lag behind the curve in the consumer market, but notes the story becomes markedly different in the enterprise space.

“In the enterprise, they are not at all behind,” says Entis. “You can argue that they have a massive advantage in terms of the enterprise footprint.”

Microsoft has a bit of timing in its favor as well. Large customers of RIM’s BlackBerry are beginning to explore alternatives amid the uncertainty surrounding that platform. That’s the case in the federal government sector, where most agencies are weighing their BlackBerry options, says Schoonover.

“Some have active programs evaluating new options for Android, iPhone and Windows Phone while others are in the data collection phase,” explains Schoonover. “This is driven by a combination of factors. One is the uncertain future of RIM as a business, and another is the cost of the RIM ecosystem.”

The BlackBerry price tag includes costs associated with client devices, BlackBerry Enterprise Server licensing and application development, says Schoonover. Agencies with enterprise licensing agreements with Microsoft may find Windows Phone 8 would integrate seamlessly into their existing infrastructure, notes Schoonover.

“We definitely think Windows has the strongest ability to displace BlackBerry in the enterprise space right now,” adds Entis. He says Android and iOS clients -- and associated third-party device management and security tools -- can meet a BlackBerry customer’s expectations. But Windows may offer a level of comfort to organizations in transition.

“Windows, in many ways, has a more familiar management approach in the enterprise that Microsoft provides natively,” says Entis.

Issues to Address

Microsoft’s enterprise play could help the company recruit business app developers. But to attract developers and keep them in the fold, the company will need to address such issues as backward compatibility.

Rashid Khan, founder and chief executive officer of Chatty Solutions, says Microsoft must make the Windows Phone 8 transition smoother than its Windows Phone 7 introduction.

Chatty Solutions provides a platform for creating forms and data-centric mobile apps that require no coding. The company, says Khan, used Windows Phone 7/7.1 SDK extensively to build a platform that lets users develop and deploy native Windows Phone 7 apps without any knowledge of that platform. He says the Windows 7 SDK provided a powerful tool for developing business applications, noting that Microsoft included additional features, such as enhanced push notification support, after the release of Windows Phone 7.5 SDK.

“Microsoft has indicated that they are going to support older SDK applications on Windows Phone 8, which is very important to build the library of apps and also increase developer loyalty, which is a major challenge for Microsoft,” says Khan.

Windows Phone 7 lacked backward compatibility with Windows Mobile 6.5, so developers of apps for the latter OS “were left high and dry,” according to Khan. “The company cannot afford to do it again in the transition to Windows Phone 8.”

One issue Microsoft appears set to resolve is Windows Phone 7’s lack of MicroSD card support. KoolSpan found that omission particularly problematic since its voice and SMS text encryption app’s security token is based on a MicroSD card. The company was able provide a product based on Windows Mobile, but was compelled to skip the Windows Phone 7 generation. Microsoft’s Windows Phone 8 announcement, however, indicates that the OS supports removable MicroSD cards.

“That is a big positive change that will allow us to get back in the game with a Windows Phone solution,” says Schoonover.


Photo Credit: Getty Images