Connected Things: Building Apps for the Internet of Things
1. Wearables, Things & Apps
Chris Beauchamp
Developer @WhitewaterLabs
Evangelist @Crittercism
@cjbeauchamp
Using apps to help users experience IOT devices
bit.ly/CritterDevTest
2. The Disconnected Thing
• Disconnected from all other
things
• Limited functionality
– Data collection
• Wearables, sensors
– User control
• Automation, functional controls
• Some things have WiFi or connections
• Large, expensive, not always feasible
4. Making the connection
• BLE enables data transfer to/from phone
• NFC (Near Field Communication)
• Wired options (plugging into USB port)
• Headphone jacks
5. Interfacing with the thing
• We have two devices and a data
connection between them, what next?
• Need to install our own logic on both
devices to add value
6. Custom Logic :: Thing
• Keep the logic lightweight
• Resource constrained
– CPU
– Memory
– Storage
– Battery
• Keep the thing doing what it does best
• Data transmission
7. Custom Logic :: Hub [Phone]
• Receive data from the thing
• Do… something… with it
– Display data
– Communicate with services
– Store information
– Configuration
8. Why an app?
• Functional
– Apps and phones are a powerful and flexible
combination – leverage them!
• CPU, memory, push, GPS, large batteries
• Engage users
– Always one touch away
– Larger interface than most wearables
and things
• [Relatively] easy to develop
11. Apple Watch
• Requires the presence of an iPhone
– GPS/Cell Data/Wifi
– Battery life
• Multiple types of application interfaces
– App, Glance and Notification
– Allows various use cases & variable
investment
• Easy-to-use APIs for interface between
watch & app / device
17. Phone App Use Cases (pt1)
• Thing generates data – show it!
• Managing and connecting user accounts
– Somebody’s gotta do it
• Thing configuration and updates
– Push changes to keep the thing current
18. Phone App Use Cases (pt2)
• Use the phone to upload and download
data to and from the cloud
– Data processing, sharing, analysis, etc
– Offloads CPU cycles, memory, battery from
the thing
– Use this data to ‘teach’ the device about the
user so it’s customized to them
19. Use Case :: SPG (Starwood Hotels)
• Get reservation info
• Check in
• Unlock door
20. Use Case :: American Airlines
• Flight Status
• Check in
• Boarding pass
21. Use Case :: Nike Running
• Start/manage workout
• Check times/status
• Easy access
22. What do these apps have in common?
Form
– Users should love using your app
• A lot of engineers here… hug your designers!
– Keep it simple
• You have lots of cool content and functionality…
highlight it!
• Don’t make the user do too much – or squint!
23. • Make smart use of
space
• Swipe instead of a
button? Pinch
instead of a slider?
• Only show what’s
necessary!
not actual size*
24. What do these apps have in common?
Function
– Quick, easy-to-use
information
– Alerts and
notifications keep
interactions fast
– Formatted data
allows for easy
access
25. What do these apps have in common?
Leverage Data
– What do users really want to see/do?
– Can’t add it all, so use data tools to see
what’s most popular
26. What do these apps have in common?
Performance
How they interact with
the outside world
28. Performance Monitoring
• What happens if your deployed app…
– Breaks on a user?
– Runs slow?
– Drops a connection with your thing?
– Crashes?
• Left in the dark unless the user tells you
– Bad reviews are no good!
31. Crittercism
• Remotely diagnose issues happening with
your app
• Make it more stable, faster, more reliable
• Provide your users with a great user
experience
37. Make it work!
• Connectivity between devices is key
– Have a solid layer to manage exceptions,
errors and interference or device malfunctions
• Test, test, test, test, sleep, test
– Devices, settings, configurations, everything
38. Breakdown
• Leverage smartphones and apps – they’re
powerful!
• Don’t forget about design
• Test until you can’t test anymore – and then test!
• Leverage tools to help you get feedback and fix
issues
Wearables/sensors
Could be a beacon, a weather recorder, gps, etc
User control
Could be home automation, controlling agriculture mechanisms
Some of these things can be connected to wifi, etc – but for this case it’s not
We want the thing to do its thing!
Gather data and transmit it to the hub
We’re in the smartphone age – everyone has one in their pocket and it’s exceedingly powerful
In most cases, the best way to do this is via an app
-
-
The hottest IOT device around
Ok, not new technology
But apple is the king of creating demand. Will this bring the public into the smartwatch space?
The demand generated by the iPhone / iPad drove so much innovation – same for the watch?
Applications and use cases we couldn’t even conceive are now commonplace
Technology isn’t new, but demand for this device will be unheard of
Excited for innovation to follow
Knowing that apps & devices will follow this structure
- Will be different in every app, but…
- Will be different in every app, but…
- Will be different in every app, but…
- Will be different in every app, but…
- Will be different in every app, but…
There’s not much space here!
Designers and developers had to think about pixels on the phone – now it’s even smaller!
WHAT NOT TO DO
Too many interactions
Items too small
- IOT Device is so dependent on other services
- The most common issue will likely be connections
-
// and it’s a problem that every single developer faces. Including these guys