Mobile Application Development

What are you doing to my phone?

There has been a lot of discussion recently about the advantages and disadvantages of both native mobile applications — colloquially referred to as just “apps” — and Progressive Web Apps, which allow people to use website functionality whilst offline.

One of the big advantages of PWAs is that you don’t have to install them; they reside in your browsers cache, no user interaction required. However, I think a bigger advantage in that area is that you don’t have to update them, just refresh the page!

Updating apps is a chore — yes, it’s better than the experience on a desktop machine where every application has its own update daemon or requires complete re-installation — but it’s still not something that as a user I particularly look forward to doing.

It’s made all the worse when something like the below screenshot is what awaits me behind the App Store update badge.

Update, but I won’t tell you why!

You wouldn’t let someone borrow your phone without them telling you why they want access to it (ringing international numbers or randomly deleting my contacts is a big no-no) so I don’t see why we should allow developers who won’t even tell us their intentions install things to our devices.

Yes, you’ll never truely know whats going on unless you have a copy of their source repository and a corresponding hash to test the binary you’re going to install against (and even then, what if someone hacked their compiler… etc.) but it would at least be nice to know what, in their own words, they’re intending to get your device to do. Especially seen as data caps and storage limitations are still a big deal on mobile.

Normally applications say something along the lines of “We update every week, make sure to keep updating us”, but I felt that Twitter really won the battle for most absurd update description this week:

Not too much has changed. But enough to warrent an update. Happy Tweeting!

Even if we ignore that fact that the first full-stop in that paragraph should be a comma, it still doesn’t make much sense. What size does a change have to be in order to warrent sending a 78.4MB package to millions of users? How do they quantify not much? What are you doing to my phone?

Now, I’m not for a moment suggesting we get a list of git commits which have entered an apps master branch and display those to the user — the average user is certainly not technical enough to appreciate that, however, it would be nice to at least list features or things that have been fixed.

Credit where credit is due, Spotify release fantastic update descriptions for their applications, where they use this exact approach. New features are highlighted, followed by bugs which have been resolved and finally, to make it a little bit fun, they add a description of a “Fictitious” improvement such as “This app is now available in three new fruit flavours. (Berry Surprise is still quite buggy.)”. That bit of humour makes people more likely to check out app updates and question what is being ran on their device — which I think is no bad thing.

So developers, please write better update descriptions. It’s exciting to release new features or fix a bug that has been haunting someone for a week — let the people know you’ve done just that!


Life Tech Reviews

UX not Specs!

So, I’ve been back in Hull for a few days now, only to discover my friend Nick has betrayed the good ship Windows Phone and moved to the dark side of Android. 😛 Whilst we were discussing his new phone, a Samsung Galaxy Nexus,  we got talking about HTC’s latest Android offering — the One X.

What sets the One X apart from the rest of the crowd is the fact that it has a quad core processor. Quad core processors aren’t actually the norm in desktop PC’s yet, most people still have dual core chips, so to have one in a phone is an interesting development. Interesting, I would say, but not entirely useful — in fact, quite the opposite.

In my day-to-day life, my one concern about my phone is how long it will last. It’s always a pain when your phone runs out of juice just as you’re expecting a text, call or email. Smartphones at the moment typically have a battery life of around 20 hours, with light to moderate use of more advanced features like Wi-Fi and high screen brightness. This will last you a day at University or work, but god help you if you forget to charge it up at night and want to make a phone call the next day.

An issue I don’t encounter on a day-to-day basis is lack of computing power on my phone. Whilst I frequently think “I wish this had a bit more oomph sometimes” on my i3 powered Dell Inspiron 15R Laptop I can honestly say the thought has never occurred to me about my Samsung Focus Flash Windows Phone, everything seems seamless and frankly im not doing anything taxing like editing and converting video on my phone… I make phone calls, text people, read my emails, browse the web, listen to music and play the occasional game — none of this requires the power of a quad core.

Quad core processors sip more battery than a single core would. Simple fact, so for my experience at least it would actually enhance an issue I have and ‘solve’ an issue I don’t. Of course, everyone uses their devices differently, so your experience may indeed be improved by a bit more power but I think most people want to get the essentials done, with a tad of gaming but be able to do all that for a longer period of time.

Going back to the seamlessness of my phone experience, during our conversation about processing power in phones I coined the term “UX not specs”, which is now the title of this blog post. UX stands for User Experience, the way in which users experience your hardware and software, this includes the “person’s perceptions of the practical aspects such as utility, ease of use and efficiency of the system” according to Wikipedia. What is important here is the word perception, a quad core is usually going to be quicker than a single core clocked at the same speed, but this increase in speed might be so small that it not be noticeable by the user, in which case its almost a waste.

Specs stands for Specifications and rhymes nicely with UX. 😉 Specifications are the list of details about a piece of  hardware’s innards, including its CPU Core count, amount of RAM, measurement of storage space etc.

Windows Phone is very cleverly designed so that smooth animations cover the loading time, so even if something takes a while because everything is moving you deem it to be efficient, fast, and working instantly on command. The user experience is good, I’ve never been irritated by a slowdown in Windows Phone so I personally wouldn’t be willing to sacrifice any battery life for more cores. The user experience is great, even without the specs which you think it would demand, so windows Phone has got the UX, but not the (battery draining) specs of some high-end Android phones.

Until we invent a technology capable of holding many days’ worth of battery life on a smartphone device I for one will yearn for more battery life over computational power.