Glue is the thing that … well … glues everything together.  You don’t see glue (if the product is made right) but it plays an important role in the overall satisfaction with the product.  If you buy a bird house that has bad gluing technique or not enough glue, you will be upset when the first bird flattens the house.

The same hold trues for mobile apps as well as web and desktop applications.  For sake of this discussion, I’m limiting myself to mobile apps and mentioning some specific iOS technologies.

So much time is seemingly spent on visual design and user experience that occasionally the glue doesn’t receive the attention it should.  Glue is everything that the user doesn’t see outright in your app:

  • Persistence / State Restoration
    • Core Data
    • Data Synchronization (iCloud, Dropbox, Simperium, etc.)
    • UIStateRestoration
  • Performance
    • Power
    • CPU
    • Memory
  • Integration & Networking
  • Internationalization
  • Dates & Times
  • Accessibility
  • Unit Testing

It’s easy to get hung up on the visual details and leave some of these incredibly important things to the side.  Users may not see the problems outright but they will come to associate a bad feel with your app if things don’t work quite right.

Example: The Nike+ Fuelband App

I’ve been an avid Fuelband user for almost two years now.  I’ve come to treat the device as something that I use every day and pay attention to how much activity I’ve done for the day.  Getting to green is my goal and it irritates me when things don’t work.  Some of the glue that has been broken lately includes funky sync over Bluetooth LE and bad dates/times when syncing with their web app.  The web app itself has also been flaky and slow.  This is a good example of when a beautifully designed app fails the user and causes distrust of the entire brand.

The Recourse

Admit your mistakes and start fixing them.  The WordPress iOS app has been around for quite some time but had been unstable for a while.  The nature of open source software means there are so many hands touching it.  We started focusing on the glue to make the experience better overall.  Once we got some of the stability back into the project, we moved forward with the UI changes for iOS 7.  Things are improving with every release – especially when we are able to spend the time to replace aging code.  Core Data has a big role in the application and stabilizing the stack there with multithreading has made a huge improvement.  We have big plans for further UI improvements!  Get involved at http://make.wordpress.org/mobile if you’re interested. 🙂

The Balance

A balance has to be maintained between visual and the non-visual elements of an application.  If you’re in charge of running a mobile project, make sure the people paying the bill know upfront what’s important to keep in mind when developing an application.  If they don’t want to pay for what you’re estimating, don’t take the project.  This may be a little hard at an ad agency or working with an internal department, but the outcome is the same.  Make sure they know if all they want to focus on is the user experience and visual design, the output will be of prototype quality.  It’s your job to educate your customer and product owner of the importance of the things that can’t be seen.