Authenticating Users via OAuth with Cordova and Ionic
PaintCode: How to Make iOS-Ready App Graphics with Sketch App
Access Platform APIs with React Native Modules
In-App Browsers with the ThemeableBrowser PhoneGap Plugin
Connecting to Web Services with Android Wear
Rapid IoT Development with the relayr Android App and SDK
Setting up a Home VPN Server Using Your Raspberry Pi
SitePoint/Flippa Hack Day: Hacking our First IoT Project
Tracking GPS data with the Tessel 2
Why the Internet of Things Still Has a Long Way to Go
Handling Player Input in Cross-Platform Games with LibGDX
OkHttp, the Android HTTP Client from Square
Li-Fi: Lighting the Future of Wireless Networks
Push Code Updates to Apps Instantly with CodePush
Realtime App Development with RethinkDB and React Native
Custom Android Layouts with Your Own ArrayAdapter
What Do Apple's App Store Changes Mean for Developers?
Conversational UIs, R2-D2 and Avoiding the Uncanny Valley
What was the first 'killer phone app'? I'm talking about first non-voice offering that had droves of people buying mobile phones for the first time just to use it?
Was it Google Maps? Maybe the YouTube app? Bejewelled? Facebook?
No - as important as they were, I think the original killer app has to be SMS (or texting). Sending little notes to each other doesn't sound very innovative or exciting, but from the early 90's onwards, SMS drove the adoption of cellphones and provided an obscenely lucrative revenue stream to phone network providers.
People seemed to like SMS for three reasons.
- It was private
- It was simple
- It felt familiar
We all probably passed notes in class and stuck them on the refrigerator door. SMS just let us pass them across the world.
What can we say? Humans really like this format.
Birth of the Conversational User Interface
The last two years have seen the rise of a new kind of user interface. Slack were one of the first companies to realize that this 'human-to-human' chat format might work just as well for human-to-app interactions.
Instead of using a standard account creation sign-up form, Slack used their 'Slackbot' like a welcoming hotel concierge.
And it made so much sense. They want you to chat - why not start chatting from the first moments you use the app? The idea has been reproduced many times since.
Quartz: Chatty News App
Quartz is a new news app (currently iOS only) that takes the idea of conversational UIs to a new level.
While Slack was a chat client just expanding where it chatted, Quartz jams news events into an SMS-like format. It's a bit like having a friend SMSing you newspaper snippets to read on the train. You can ask your friend for more detail on the story or tell them to move on.
While I'm not totally convinced yet that Quartz is a winner, it is a brilliantly original way to think about presenting news. It's loose and informal and easily the most clutter-free news UI you've ever seen. Each time you read a new message and make a yes/no decision - Quartz handles the rest. Interesting.
One interesting little UI touch is the 'typing' indicator that appears just before Quartz posts a new message to screen – three drumming dots inside a speech bubble (see the animation below).
We're all familiar with this idea. In real world conversations, we can signal with body language that we're about to speak. In chat apps from ICQ in 1996 to Slack today, we get a visual indicator that the other person is in the act of replying. It's a useful protocol.
But this is an app speaking to us - not a friend or colleague.
Now let's be frank: We all implicitly understand that this is all 'UX theater' for our benefit. Even my 10-yo daughter immediately picked it. There's nobody banging away at a real keyboard.
So, how do we feel about that?
I'm not sure about you, but I've been surprised by my own gut reaction. My designer brain tells me I should be dismissive and snarky. "Bah! How dare you slow down my experience with such feeble parlor tricks!" (yes, my designer brain sounds like Professor Moriarty)
But my UX-self started grudgingly liking it - and I couldn't understand why at first.