#ios2weekchallenge Initial Thoughts

by Stephen Fluin 2014.10.25

Two weeks ago today I embarked on a journey to switch to an iPhone 6 as my daily driver.  It started off a little rocky with a trip to three different T-Mobile stores in order to get a SIM card. The first store was out, the second store wanted to charge me for them. Luckily the third store was able to give me one and suddenly my phone number and universe was driven by an iOS device.

Rather than go into a long narrative, here's a list of the pros and cons I have experiences.


  1. Swiftkey for iOS isn't ready yet. It has no number row on the keyboards, it has no voice recognition, it has no rapid/accuracy selector.
  2. iOS custom keyboards aren't ready. It's a hugely jarring experience to be using a custom keyboard and to be dumped back to the iOS standard keyboard for password prompts.
  3. Notifications suck. On Android, Notifications drove my entire mobile workflow. With iOS this feels impossible. There's no way to interact with  many notifications quickly. You have to launch an app, interact, then jump back to the notifications. They need quick actions really badly. I have no idea how their wearables are going to work without these.
  4. Google Apps aren't as good on iOS. Most notably, you can't click on phone numbers in emails. What?!
  5. Where are the wearables? I've gotten used to a buzz in my pocket causing a corresponding wrist or head nod to take a peek at what's going on. With iOS I know the Apple watch is coming, but today I still have to pull the entire device out of my pocket (by which point the notification is gone) and take a peek.
  6. The iPhone 6 is slippery! I'll post a video later, but hold an LG G3 or a Nexus 5 in one hand and an iPhone 6 in another. As you start tilting your hands, the iPhone is going to drop to the floor first. This matters because some acrobatics are required to interact with a 4.7 or 5.5 inch phone. My 5.5 inch LG G3 makes it easier to touch the top of the phone than the 4.7 inch iPhone.


  1. Epic Camera. The iPhone 6 camera is the best smartphone camera I have ever used. Night time, day time, it's fast and reliable. I would LOVE to see this camera on every phone I ever use again.
  2. Touch ID is great. Finger prints are a surprisingly good security mechanism. I always took pleasure in using it, it's basically just fun. The only glitch is that it goes a little bit slower sometimes.
  3. Apple Pay is awesome. I've used Google Wallet for years, but Apple has done something amazing. Not only do they have broader support (banks!) from partners, but the experience of using your fingerprint for authentication in combination with a simple tap (even from the phone being off) is much better than having your Android phone on and unlocked prior to making a transaction.
  4. Weight and slimness of the device is highly desirable. There's no Android phone this fast, slim, and light. Which is nice, as long as it doesn't bend, :).


Trekking Across Bulgaria #throughglass

by Stephen Fluin 2014.08.30

I'm currently travelling in Bulgaria, wearing Google Glass the entire time. There are a lot of interesting reactions, one of the most unexpected was another traveler inside the monument known as Buzludzha that I visited. I was standing in the middle of the inside of the monument trying to take a photosphere, and I hear from behind me, "is that Google Glass?".


Create Your Own Mobile App Privacy Policy

by Stephen Fluin 2014.06.08

One of the necessary evils of the world is the use of a Privacy Policy when you develop a mobile application. You probably aren't going to hit everything if you write your own. There are a huge number of paid services out there, but the complexity and lack of transparency from those services can be very frustrating.

After some searching, I found a service that provides free access to a template that can act as the basis for your own privacy policy. It even guides and leads you through the process of modifying and customizing the policy to your needs.

Check it out here: http://www.docracy.com/6513/mobile-privacy-policy-geolocated-apps-


Chrome Cordova Apps - cca create bug

by Stephen Fluin 2014.05.30

Failed to fetch package information for org.apache.cordova.keyboard

If you have experienced this error, you aren't alone. Any projects being created with version v0.0.11 of Chrome Cordova Apps (cca) are now failing to be setup properly.

The change comes from a desynchronization between Cordova's plugin library and the cca tool. This has been fixed by the developers in the latest source code on Github, but not released as part of npm.

The easiest way to get around this bug is to edit


, and change line 53 from:




After that, cca should work just fine again, allowing you to create new projects.


Glass World Problems

by Stephen Fluin 2014.05.04

I starting wearing Google Glass in May of 2013. Since then, I've worn it nearly every day. I took a couple breaks in that time. Once during the 2.0 hardware upgrade, and again when travelling internationally to Brazil due to fears of concerns. Over this time I've learned that I'm relatively dependent on Google Glass as an important piece of my technology life.

When I go out to spend time with friends, I rely on the quick ability to send messages while driving, I also depend on the ability to take pictures at a moment's notice. These capabilities are so powerful because the Glass interface gets out of the way. Glass is an amazing piece of technology, but with these capabilities come their own "first world problems". It's a high quality device, with one very noticeable exception in how it was designed. Google Glass is dependent. Glass is dependent on a data connection. If you don't have a Wifi connection, it can use your phone, but this connection is buggy and error prone.

An all too frequent "sad cloud"

Imagine getting into your car and remembering that you need to let your wife know you are on your way to the store to grab groceries. You want to get a message out that is extremely useful, but not mandatory.

You tilt your head, speak the words "Ok glass send a message". Glass responds that the command was accepted and is listening "I'm on my way to Target, did you need to pick anything up?". You see Glass begin to spin out of the corner of your eye, but you've moved onto more important things. About 6 seconds later you hear the failure sound and see a sad cloud staring back at you. Glass has failed you, and you have to decide whether you want to relive the last 30 seconds of your life over again, or give up. Downtrodden, you give up.

What to do about it

This is entirely a software development problem. We've been successfully building applications without internet connections for decades. If Glass fails to process your interaction in ANY WAY related to connectivity, it should store the audio and RETRY RETY RETRY. The fact that Glass relies on the user rather than its own capabilities is ridiculous!

Grunting with Glass

The other problem with Glass is what I call "Grunting with Glass" or "Sneezing with Glass". The easiest way to take a picture is to wink, and in general this feature works great. Glass has a built in winkometer or scrunchometer that measures movement of your eye and face. Combine the right face action and timing and Glass will believe you are winking.

Occasionally though, human beings close their eyes for reasons other than winking. Sometimes when I'm lifting a heavy object, reaching for something, or even just sneezing, Glass will detect what it thinks is a wink, and take a picture. At this point it's pretty much easier to just leave the terrible photo in the timeline and on the web rather than curating it and deleting it.

View All Articles