What is Mobile Computing?

What is Mobile Computing? – Through the course of the book, we have looked at some code examples and exercisesthat will enable you to build web apps for Android and Chrome OS using the features available both on the phone and in the cloud. What’s coming though? How are new technologies and trends going to change our development approach?
What is presented in this chapter is a developer’s perspective on the potential future of mobile platforms and subsequently applications. Of course, the contents of this blog represent only one possible view of the mobile future, and many possibilities exist. Given current trends in both desktop and mobile computing, though, we certainly believe that we will see components of this chapter implemented over the next few years.

The Era of Mobile Computing

The era of mobile computing is upon us. The adoption of web-connected mobile devices is one of the fastest-moving trends worldwide. Consumers have become accustomed to mobile technology, and for most of us that now includes mobile web access.
This in turn affects the way we will choose to consume and produce information. For instance, rather than making sure we are prepared before leaving the house or office for things such as appointments, we can now just get up and go. We can access the
information that we need via our mobile device of choice when we need it, whether that is checking the exact time of the meeting or accessing driving directions on how to get there. We are definitely becoming accustomed to getting information “just in time”— assuming we have good connectivity.

Mobile Technology Predictions

The future is far from certain, but it is likely that mobile device development and architecture will play out in a similar way to desktop computing. This being the case, we can probably be brave and make a few predictions.
While there is an obsession with mobile development using native technology at present, we strongly believe that history will repeat itself in mobile the same way it did for desktop devices.
This is definitely a risk-vs.-reward situation though, as many roadblocks stand in the way of web-oriented mobile development. We believe the community has sent device manufacturers a message, though, and that is that web development for mobile is important and something that needs to be prioritized. We also believe they have heard this message, and things are starting to
change for the better.

Improvements in Tools and Libraries

The maturity and availability of both tools and libraries to streamline mobile web development is quite limited at the moment. This is changing, though, and we will certainly see a lot more options become available over the next year. One of the most
promising libraries under development (at the time of writing) is the jQuery mobile framework
Hopefully, this will finally provide a mobile web UI that can be used across devices, presenting a web UI in a device-neutral sense (rather than styling all UI elements with an iPhone look and feel).
Additionally, as developers, we can only hope for the maturity of mobile web development tools to improve. While integrated development environments (IDEs) tend to get in the way of web development in general, having suitable testing and debugging
tools for mobile devices will be important for pushing mobile web development forward (in the same way that Firebug contributed to moving web development forward).

Changes in Device Architecture

While Palm is not one of the dominant market players at the moment, there is a lot that can be learned from the way it architected its webOS (http://developer.palm.com) platform. From the ground up, webOS has been built with a strong web technology focus, providing developers a first-class way of building applications for the platform with HTML, CSS, and JavaScript.
Given this is an Android web apps development book, that might be considered to be a strange comment, but let’s look at a couple of industry trends around both mobile and desktop computing:

  •  There is a lot of interest with regards to web operating systems as a replacement for current desktop operating systems. The implementation of a web operating system is generally achieved by using something like Linux to manage the interaction with the hardware, and then a web presentation layer providing the operating system “desktop” to the user. Two examples of web operating systems are Google’s Chrome/Chromium OS (www.chromium.org/chromium-os) and Joyent’s Jolicloud (www.jolicloud.com).
  •  Modern mobile operating systems are demonstrating continued innovation, and they could quite possibly move to implementing web operating systems (as Palm has demonstrated) before broader adoption on desktop platforms.

Coding for Future Architectures

If things do continue to progress in a web-oriented direction, then there will be very little that experienced mobile web developers will have to change. One exception to that may well be the way we interact with client-side storage. For instance, while HTML5 offers three very interesting APIs for working with local data
Given that mobile devices currently have (and may always have) less reliable connections than their desktop cousins, it is expected that offline data synchronization will become a consumer requirement in the not-too-distant future. Therefore, either the
HTML5 APIs will have to mature to support this requirement, or some alternative options will need to be investigated. A very interesting possibility is the use of an embedded CouchDB (http://couchdb.apache.org) instance within the mobile device, which would serve both the mobile app code and data, and keep that synchronized with the cloud automatically.
Imagine that—an embedded database capable of serving local web applications and supporting data, and keeping that in sync with the cloud so when you use the application from your desktop everything is synchronized.
If you want To Learn Hacking Please Comment Down And For More Hacking Content Click Here

Related posts

Leave a Comment