The Internet of Things and App Development

The Internet of Things has been a hot topic for the last 24 months, reaching a fevered pitch in the last few months.  When I was at CES earlier this year, you couldn’t find a company that didn’t have some perspective on the Internet of Things (IoT).  Car companies, consumer electronic companies, even clothing companies were showcasing their new connected products and how the IoT was going to improve the consumer’s experience with their brand.

I’ve been thinking about this and what makes the IoT different than prior versions of connected products.  To me it is two key factors, the level of connectivity and the quality of the software.  Let me explain

Level of connectivity

For decades, large industrial plants and manufacturing facilities have been using real-time and near real-time data to improve the efficiency of their business.  The did this via ethernet connectivity and sometimes expensive satellite and microwave connectivity.  These systems were affordable because the cost of unplanned downtime was so high, that almost any connectivity costs were acceptable.  Additionally, cognitive computing algorithms  were developed around very specific use cases, i.e. pump maintenance schedules, which had to be custom developed based on the specifics of a plant or facility. These finely tuned systems of systems were built around the connectivity and proprietary standards of the hardware in place.

Now the cost of connectivity and level of penetration of simple protocols like TCP/IP are cheap and near ubiquitous.  You can added a wifi or 2G/3G/4G radio into a product very inexpensively, while transmission costs are now bore by most of the end consumers as part of their day to day life.  This is very different than the last few decades, and means that much of the value of a IoT solution, will be in the software’s implementation of the data and consumer’s usage of the device.

Quality of the software

With the mobile revolution over the last 7 years (I go back to June 29th, 2007 when the iPhone was first available – even though had been very happy with a Palm  Treo for years before this), consumers have become used to higher quality of software.  Why do I call it higher quality?  Is it bug free? NO! Is it more functional? No! Is it more atheistically pleasing?  no. What I mean by quality of software is that it is doing what you need when you need it.  Some of the most popular fitness tools in the last few years, are applications on a smart phone – apps like Moves which tracks your walking, biking, and running based on the accelerometer on your phone.  They take advantage of many of the capabilities of the phone, and given that most people keep their phone with them at all times, it becomes the de facto fitness device.  We see the same phenomena with pictures,  the majority of pictures on Flickr, are taken with smart phones.  The same with games, the majority of time spent gaming is spent on smart phones (I made this one up, but I would bet it’s true).

So the software that is running when you need it, on the data that you have with you, and provides you with the insights you need to change your behavior, improve your process, or just better engage in a situation is higher in quality in my opinion.

So why do these matter in the Internet of Things?

In the IoT, devices and software have to work hand in hand to improve processes and a person’s environment.  As developers, we need to understand this aspect of the internet of things.  It’s easy to get consumed by the cool factor, but cool without value isn’t that cool.  So we need to improve our software to better serve our users / customers. And the Internet of Things provides us with a great way of doing this.

Internet of Things applications and things have the ability to provide us as developers with real-time and near real-time feedback on how consumers are using our product.  We should take this information and quickly improve our product to increase its value.  This means letting a consumer know what data we can and do capture, and providing no nonsense, easy to understand terms on how we will use this data to improve the consumer’s experience.

We then have the ability to take this feedback and improve the product or create new ones.  This faster time to feedback is a principle foundation of the ideas behind DevOps.  Another key aspect of DevOps is scale, and the Internet of Things is all about scale for the product/application developer.  While any individual using a IoT device or application is potentially a single node, much more value is gained in the larger scale system where patterns and other insights may be gained to improve a product or application.  And peeling back the insight requires analytics.

So what can I do as a Developer?

First, make sure you are open to your customers on what data you do collect and how it will be used.  Where it makes sense, expose APIs so your customers can extend your application and product, trust me they will come up with even more cool things to do with your application/product than you can image.  And three, take advantage of the faster time to feedback to make your product better.  Remember once you release a product or application, the engagement with your customer is just beginning.  It’s not about the initial sale, but about increasing the value over time.

An Enterprise iPad case/keyboard Review

I recently was approached to write a review of the PI DOCK iT Air iPad case with bluetooth keyboard. Given that I have had a keyboard case for every iPad I’ve owned (except my current one) I was willing to give it a try. I find that using a case can certainly increase my productivity when traveling, and as a touch typist I’ve always found that the iPad’s touch screen keyboard is a bit lacking. I also don’t feel comfortable talking out my emails or documents, so no matter how good a speech to text translator is, I tend not to use them.

Damaged Box

When the box arrived it had a gash in it, but it didn’t impact the case at all. Like all cases, it has a little bit of a delay in the typing especially when it first pairs with the Bluetooth, but that is normal. I can certainly type faster with the keyboard then the onscreen keyboard. I am sure that the tactile feedback makes a big difference for a touch typist. Similar to the other cases, the keyboard is slightly smaller than a normal Mac keyboard, which can cause a few typos.

Box Case and ManualCase in Wrapper

I found that it has an interesting design for changing angle of the screen. They call it a slideway, and it allows you to extend the hinge so that the screen can go either vertical or horizontal, and at a comfortable angle for your eyes. As someone who reads a lot of magazines and books on the iPad, the ability for a case to support vertical orientation is a nice touch.

Unboxed Case and Cable Unboxed Case Flat Side view reclining Side view no recline

Given that it is a case and keyboard, it doesn’t need much of a manual, and the simple manual (1 page back and front) does a good job of explaining all the features. I guess you don’t really need much more than that.

I wrote the rough draft of this review in Word for iPad so that I could test out the keyboard in a meaningful way. (Given that I took pictures with my SLR the final part of the review was done on my Macbook Pro.) The targeted user of the Dock iT is an enterprise iPad user, I feel this made the most sense. A little secret that the team at DOCK iT doesn’t mention is that the slideway’s ability to swivel the screen direction around, also makes it ideal for some games. I use Real Racing 3 on my iPad, and it works great for that game! Providing me with a stable enough base and a solid steering wheel feel. Very cool!

The keyboard is a bit small, but no smaller than other iPad keyboards I’ve used in the past. The plastic keys tactile enough, to allow for most touch typing, providing a nice little raised area on the F and J keys so that you can easily home your hands. There are a set of rubber feet and rubber nubs around the keyboard (I’ve lost one of the rubber feet, not sure where but after a week of traveling it got lost some point during my travels). The rubber feet keep the keyboard in place nicely on a desk (even after loosing one of them it feels stable and doesn’t wobble). While the nubs around the screen are designed to protect your screen from touching the plastic. This is good, but as a touch typist they do get in the way at times.

Like most cases, they include special keys for cut, copy, paste, volume controls, brightness, home button, and screen lock. These keys really increase the productivity on the iPad once you get used to them. One minor thing, the Home button seemed a bit finicky (not sure if this was a Bluetooth syncing issue or an iOS8 Beta issue). The reason I believe it may be beta related is that it appears to be app dependent.   They also a Caps Lock Indicator light, I’ve not seen this on the other keyboard cases I’ve used in the past – nice touch.

On day three of playing with the DOCK iT I discovered how to lay it flat. You can slide the screen on top of the keyboard. (Don’t forget to turn off the Bluetooth before doing this.) This is great for drawing programs and some games. It does, however, make the iPad much thicker than the Apple case, which I use at times, allowing me to hold the iPad like a book.

There’s one feature that is both a plus and a minus, and that is how well the DOCK iT holds the iPad is the shell.   I wanted to take the iPad out of the case to put it in a dock I have for charging. After prying the iPad out of the case with a letter opener, I ended up scratching my iPad’s back a bit. I’ve always prided myself in selling my old iPad while it still looks like new. I guess I won’t be able to do that with this one.

Another point on build quality. I was putting the case in my back pack and my employee badge got itself between the screen and keyboard, popping off a key. On a normal keyboard that would be the end of it, but on the DOCK iT Air I was able to just pop the key back in to place and it works. Nice.

Overall I am pleased with the build quality of the DOCK iT, it held up in my few weeks of testing.  Battery life appears good, I’ve only charged it once and so far have used it for two weeks with no required recharging.  The lip where the iPad sits is great for horizontal positioning, but in vertical positioning it can be a bit unstable, based on the screen angle. This is a basic physics problem due to the weight of the iPad Air and the rounded corners of the slot where the iPad sits. It works fine for a sturdy desk, but for not so much when reading a magazine in bed.

The team at PI also provided me with a cool sticker for the case – check it out.

Back of Case with Skin Screen with Skin