Accounting for Environmental Variables
One of the more inspiring, recent trends in technology, at least to me, is enabling devices to adapt to changing conditions. Some easy examples are things like a screen backlight dimming while in a dark room or brightening while in a brighter environment, or a large application or OS update telling you to plug in your device before continuing as there is not enough battery life to complete the installation. Software and hardware both being designed with the idea that the user's circumstances might change, or that the user may want to use the device in a different manner (from the desk to the couch, for instance). All these things working together to create a seamlessly adapting and thus consistent user experience.
For the most part, however, these kind of technologies have been limited to a device's OS. Interactions on the web have gone only as far as smoother animation, better video, etc. This is not to limit the impact of web apps. The web has seen great strides in interactivity. But the user's physical environment has generally been unknown territory to a web page. Enter Device APIs. The idea is simple: gather some info from the device about its status, and rework accordingly. One status that would be sent is battery life. If a user's phone has high battery life, send high quality pictures, give the full experience. However, if the user's device is low on battery life, send smaller pictures, limit background images and animations, etc. Let the user continue using the site and enjoying the content without killing the battery. This is but a toy example. Using multiple functions of the Device API, a website would be able to respond to ever changing conditions on the fly. The API includes listeners for the battery life, the charging status, network speed, metered connection flags, ambient light sensor data, proximity sensor data, and more. Used in conjunction with each other, listeners for these changes could drastically improve the mobile web experience. This is a change that a user doesn't have to buy a new, faster device to appreciate. Check out the source link for the full article.








