Smartphone IT

The Ultimate IT Platform

Dealing with the Discontinuous Work Patterns of Mobile Users

By definition mobile users are on the move. They use smartphones for the very reason that they are out of their home/office and need a convenient device they can use for their communication and collaboration needs. One of the key characteristic of the mobile users is that they work in discontinuous and often short bursts. When users are working at home/office they tend to be more focused and dedicated to the task at hand. However, when out of the home/office they tend to be doing many different things and are less focused. They get interrupted by calls, lose mobile connection, have to shut down their smartphone because of starting a discussion with someone or boarding a plane, or get engaged in a discussion, etc. This means that the mobile user who tries to use a smartphone for work needs the flexibility to work in short bursts. The user will do a part of the task, get interrupted and come back to the task and continue till the next interruption. If the work involves using a smartphone application, and the application cannot handle interruptions and requires continuous attention till completion, the mobile user will waste much of their work every time the interruption occurs.

If smartphones are to become the next IT platform the applications running on smartphones must be able to handle the frequent interruptions that mobile users experience. The vast majority of Web based applications are not very good at this. This is because Web applications generally save the information entered on a Web page only when the user Submits the web page. If the user is working on the page and loses connection prior to the Submit, all the work and the information entered by the user is generally lost. This is not a big problem for home/office users because the chances of losing connection are slim given today’s technology. However for mobile users this is a frequent occurrence for the reasons that I discussed above.

Smartphone applications will have to evolve to handle the discontinuous work patterns of mobile users. While technically this is not a major challenge, it requires a lot of work as there are a large number of applications out there and each application will have to be modified to remember who is connected and save the information they have entered at significant junctures. In addition some other issues such as user authentication also need to be handled to facilitate discontinuous work patterns.

Coping with Small Display Size of Smartphones

As I discussed in my previous post  Challenges facing Smartphone as an IT Platform , the small display size of smartphones is the second obstacle that has to be addressed before smartphones can become viable IT platforms. There is a vast amount of information out there that is generated by applications and web sites of all types. Presenting this information on a small screen is challenging to say the least, especially when users are becoming accustomed to increasingly large displays and having a lot of information at their fingertips. It is ironic that the very mobility of smartphones which has made them ubiquitous and desirable is what prevents their display size to be increased.

So the question is how will software applications display large amounts of information on small displays?

I believe that eventually hardware will evolve to provide some elegant solutions to this problem. These hardware solutions could include detachable displays that users can plug their smartphones when they need a large screen. They could also include LCD projectors that are built into smartphones that allow users to view the display on a large surface. However such hardware solutions are still a few years away from development and mass commercialization.

Currently most applications and web sites have taken the simple way out by presenting information on smartphone the same way as they do on full screen devices. The information is displayed as if the screen is of full size and it is assumed that either the user will scroll around and find what they are looking for, or will use the zoom in/out capabilities available on many devices to digest the information presented. Both these approaches are not user friendly and most people will live with them only because they have no other choice. There are also a good number of applications that are designed especially for mobile devices where the information presented fits the display size. However these applications only cover a subset of devices and are expensive to develop and support.

The approach that will work best is to redo the user interface of the application and provide information in a format that fits the size of the display. This is expensive, especially when several different devices have to be supported. In general, text information is amenable to this as is exemplified by many e-readers that enable only the amount of information that fits the device to be presented. It is not practical when graphical information of forms have to be presented. For forms and graphical information the only recourse is to program the application to make the information fit the device, which is what some companies are doing at considerable cost.

Handling the Diversity of Smartphones

In my last post Challenges facing Smartphones as an IT PlatformI listed five issues that smartphone applications must address before smartphones can become powerful IT platforms. In this post I dig deeper in to the first of these issues, which is the sheer diversity of smartphones, and discuss the scope of this problem and how software applications might go about addressing it.

There already are six major software platforms for smartphones which include the Apple iPhone OS, RIM BlackBerry, Microsoft Windows Mobile, Google Android, Palm and Symbian. For each of these software platforms there is a whole array of smartphones sporting many different user interfaces such as mini keypads, touch screens, and different display sizes. The permutation of devices and platforms is very high. Since the smartphone industry is still nascent and computing and user interface technologies keep improving, the torrent of new devices with new capabilities will continue with no end in sight. To provide the best user experience and value software running on these smartphones must use these functions so that each device is used to its full potential. Display size is one of the biggest variants among smartphones. Since smartphone are small, real estate on the display is valuable and an application must make full use of the available space. If an application is designed to run on multiple devices with different display sizes the most common approach is to design the user interface that fits the smallest size. While doing so ensures that the user interface works with other devises with larger display sizes, it does not fully utilize the capabilities of these other devices. Using the lowest common denominator is inefficient from a design perspective. Likewise, if the approach of designing to the lowest common denominator is used for other features the new features of the most innovative devices will not be used. The alternative is to write applications that are unique for each smartphone which is what many developers end up doing. However if the developer wants to support multiple smartphones the the overall cost  is very high.

Fortunately the software industry has faced a similar problem previously and has developed a solution for it. That was the client/server application model for enterprise applications that pre-dated the web application model. The essence of the client/server model was to keep the logic, data and rules of an application on the server where it can be shared with different types of clients,  and develop only the user interface for the client. This allowed the client user interface to be optimized for each type of device with the least amount of programming effort. An identical model can be used for developing powerful applications for a variety of smartphones that fully exploit all their unique features. Indeed the emergence of Services Oriented Architecture (SOA) has made this easier and more versatile as compared to the client/server era when software developers had to choose between various platforms. With today’s technology, it is possible for mobile application developers to deploy sophisticated applications using SOA, and then deploy clients on various smartphone platforms that make full use the capabilities of the platforms and the hardware. By centralizing the business logic, data and rules in a server, preferably running in the cloud, software developers can limit the client side of the application to only the user interface and then use the full capabilities of each smartphone and its platforms. This allows for the development of rich applications that will also works across platforms. Developments like this are what will make smartphones the ultimate IT platform.

Challenges facing Smartphones as an IT Platform

In a previous post SmartPhones: The Ultimate IT Platform I wrote about why I am convinced that smartphones will be the ultimate IT platform. However, before they can assume the mantle of the ultimate IT platform, smartphone technology must overcome some serious hurdles. The PC platform is very rich in terms of user interface and has matured over many years to provide a robust set of capabilities for displaying information and data entry. The maturity of the user interface, which is optimized for how people work with desktops and laptops, is what has made the PC the dominant IT platform today. To displace the PC from this position smartphones will have to provide an equally robust user interface which is optimized for the ways people work with mobile devices.

There are five major challenges for smartphones in my opinion:

1. There are many different smartphones, each with its own size and user interfaces. This makes it difficult and expensive to deploy a solution that covers a large number of smartphone while at the same time using the maximum capabilities offered by each type of smartphone.

2. Smartphones have small displays, making it more challenging to present rich information. It is even more difficult to provide rich electronic forms for data entry using smartphones.

3. Smartphone users work discontinuously. They are on the move and are easily and often interrupted. They work in short bursts. Applications for smartphones have to support this discontinuous work style.

4. Smartphone have lower data bandwidth. Despite much progress made by 3G/4G, Wi-Fi and the growth of WiMax, the bandwidth of smartphone lags PCs/laptops. This has implications on how much data can be downloaded and uploaded from these devices and the impact on user interface and user perception.

5. Smartphone users need a choice. They need the ability to use smartphones, but also want equal access to their desktops/laptops for the conveniences they offer. As I mentioned in another post (Smartphones in the IT Ecosystem) smartphones are a part of an IT ecosystem and not islands onto themselves. To be successful in the ecosystem they must coexist elegantly by supporting solutions that allow the user to use the device that is most convenient at any given time

In future blogs I will discuss each of these challenges in detail, and present ideas about how smartphone technology could or should address each of these as it evolves.

Why the Web is the Ultimate Platform for Smartphone Applications

As the smartphone application market explodes with tens of thousands of new applications coming online in the application stores of the major platforms (Apple, Google, Microsoft, BlackBerry, etc.), there is a silent but crucial debate going on in the market. The debate centers around the whether smartphone applications should be Web-based or native. And the stakes are high as the outcome will determine the shape of the ultimate IT platform that smartphones are destined to become.

As I noted in a previous post (Smartphones: The Ultimate IT Platfom), smartphones are a natural evolution of the computer industry. In that post I also noted that the mobile application developers will do well to learn from the history of the PC software and its evolution. The smartphone application industry is likely to follow the same patterns as the PC software, albeit at a faster pace because of the tremendous improvements in technology over the past two decades.

When PCs come on to the market in the mid-Eighties, native applications were the norm and indeed the only choice as there was no networking, no Internet and little standardization among platforms to foster any other model. PC applications became powerful islands on to themselves. They greatly improved individual productivity, but did not have the means of exchanging information with other users or with other devices in the computing ecosystem, namely minicomputers and mainframes. PC applications were simpler and focused on one individual and what the individual could do.  This inability to interact with others became a bottleneck for the growth of applications, especially when it came to business or collaborative applications.  When local area networking came along it spawned a great surge in client/server applications which overcame some of the limitations of native PC applications. PCs were finally connected to applications running on other platforms, to each other and to the other types of computers in the local area network. They became a vital part of the corporate IT infrastructure, and major maintenance burden for IT departments who had to maintain PCs at every desktop. Then the Internet came and gave PCs had the ability to interact with servers all over the world and with users on PCs anywhere there was Internet access. Applications no longer were local, and the paramount need became the ability to interact with other systems and manage applications that had a global reach. These forces led to the emergence of Web-based application services that were initially offered as Application Service Providers (ASPs), and then software-as-a-service (SaaS).

I believe smartphone applications will follow the same evolution. Today in the infancy of smartphone applications the dominant trend is to develop native applications. However, since we already have the Internet and HTML standards that are rapidly evolving and becoming very sophisticated, I am convinced that the smartphone applications will become Web-based because of the following relentless forces:

  1. Native applications are tied to one platform. Applications developers have to make a choice about which platform(s) to support, and this choice is not easy because of the rapid change in technology and the changing prospects of the different platforms.  Web-based applications on the other hand will run on all the platforms and obviate the need for developers to make a choice and commit to one platform. Moreover, since it is imperative for every platform vendor to support HTML because of the sheer dominance of the Internet, developers are assured that platform support to HTML standards will continue and increase.
  2. Native applications presently provide a richer user interface because they can use the local functionality and capabilities of the device as compared to Web applications. This was also true for native PC applications in their early days when native applications offered much better user interfaces, functionality and speed as compared to the Web apps. However, with the emergence of HTML and especially HTML 5, Web-based applications are approaching native applications in terms of the user interface and other functionalities. Undoubtedly there is still a gap even with HTML 5, but the gap will continue to diminish and the sheer benefits of Web-based apps will outweigh the slight disadvantage in functionality.
  3. One of the major benefits of Web-based application for PCs is their zero footprint and the management and administration implications of that. To get infrastructure uniformity necessary to run an application, IT administrators and application providers do not have to worry about the configuration of software on individual devices when they are dealing with Web-based applications with zero footprints. With smartphones this problem is even more acute as the management of native applications on a large number of mobile devices is very difficult. Web –based applications provide an elegant and centralized way of provisioning applications and managing their user without having to deal with configurations at the individual device level.
  4. As I noted in Smartphones in the IT Ecosystem, smartphones will have to seamlessly co-exist with other computing devices in the IT ecosystem, namely with PCs, mid-range and mainframe computers. A web-based application models lends itself easily to such integration because in essence a mobile device is a client to a Web server and the integration is essentially there when a Web-based application is deployed. Furthermore, and perhaps more importantly, Web-based applications give user the choice of the device they want to use. If a Web-based application is properly conceived and deployed it should not make a difference to the end-user if the application is being used from a smartphone or a laptop.

Due to these reasons I am convinced that the Web-platform will be the ultimate platform for mobile applications as it is for PC applications.

Smartphones in the IT Ecosystem

In my previous blog “Smartphones: The Ultimate IT Platform” I talked about how smartphones are destined to become the ultimate platform for information technology.

As we witness the evolution of smartphones it behooves us to learn from the history of previous IT revolutions and see what worked in the past and what did not. When the Personal Computers stormed on to IT stage in the mid-Eighties they were for the most part islands on to themselves and aliens in the IT ecosystem dominated by mainframes and minicomputers. This was prior to the emergence of networking, and there was no easy way to exchange information between the old world and the new. While Personal Computers made a tremendous inroads and improved personal productivity, their impact was not as dramatic as it could have been if they were properly integrated in the ecosystem from the very beginning. IT departments were weary of the new kid on the block and their workload for supporting the new computers increased substantially. For a while the IT world was split between the desire to invest in PCs versus increasing the investments in mainframes and centralized infrastructure.

Over many years, helped by the emergence of robust networking and the Internet, Personal Computers became integral, accepted and dominant players in the IT ecosystem. In this world there is a balance between mainframe and desktops with a widely accepted understanding of what works best on servers and what is best implemented on desktops. The emergence of SaaS is shifting the focus back to the mainframe and centralized model. Seamless integration between the desktop and the centralized mainframes/servers has been the major factor contributing to this balance.

Now as smartphone come on to the IT stage the world is likely to experience the same type of turmoil and tension as witnessed during the early days of the Personal Computers. Perhaps due to the Internet it will not be as chaotic. There are at least 5 different smartphone platforms namely iPhone, Android, RIM Blackberry, Windows Mobile and Symbian. Each of these platforms is sprouting a large number of applications. While most of these applications are game-ish in nature, more and more business applications are likely to emerge. This will create demand for these applications platforms to interoperate with the mainframe and back office applications, which will again lead to tension and conflict in IT departments.

If we learn from the lessons of the Personal Computer we can avoid much of this tension and conflict. They key lesson is that smartphones are not an island onto themselves. Instead, they must coexist as a part of the IT ecosystem in which other computing platforms, namely the mainframe and the Personal Computer, still have a valuable and long-term role to play:

-          Mainframes, in which I include large servers that have evolved from the desktops, will continue to run large, legacy applications and host much of the information that powers the Internet and applications of all types. The rapid growth in Cloud Computing and SaaS has strengthened the position of mainframes. Centralization makes it easier to manage.

-          Personal Computers will continue to play an important role in the desktops because when the smartphone user wants to do some serious work, he or she still prefers the usability, speed and large screen size of the desktop. Yes, there will be a time when I can plug my smartphone to a large display and keyboard and replace my desktop, but that will simply be a device that switches between a desktop and a smartphone.

To be an excellent player in the IT ecosystem, smartphone must therefore have four additional capabilities. First, they must have an easy way to integrate with back office applications hosted on mainframes/servers. Second they must offer a smooth and seamless transition to and from the desktop. This means that the user should be able to start work on one platform and then seamlessly stop and continue work on another platform, and vice versa. Third, there must be some centralized way of managing the “mobiletops” of smartphones that allows business applications to be deployed to a large number of smartphones, but without hindering what the user want to do privately. And finally, while smartphone are great for presenting information, they are not very good at collecting information.

SmartPhones: The Ultimate IT Platform

Two years ago I hated cell phones. They were intrusive, noisy and a pain-in-the-neck to use with their small keyboard and displays. I did have a cell phone which was given to me as a gift, but I rarely used it. My life without the cell phone was pretty rich, productive, communicative and busy, thank you!

Then I bought the iPhone and my opinion changed overnight. That is an understatement. The fact is that over time the iPhone changed my view of technology so much that I decided to devote the next chapter of my business life to this new wave in the evolution of technology.

Why are smartphones like the iPhone such a fundamental shift in the technology landscape? Here is my take from my own life experiences.

When I was seventeen and going to high school in Pakistan I read about the first computer to be installed in Pakistan. It was an IBM 360 mainframe costing multi-million dollars and housed in an elegant while Taj Mahal-type bank building on the main road of my hometown of Rawalpindi. Very few people could use or see the computer and no one could afford it.

A few years later when I was a student at MIT I worked in a lab with a DEC PDP-8 minicomputer. It was a revolution for me. I could now sit in front of a real computer and program it and make it do what I want. The paper tape reader, 8K or RAM, small DECtapes and the machine language programming in octal all were high tech and impressive. Many labs could afford the mini-computer, and thousands of more people could use it than the IBM mainframe.

A few years later I started my first company. One of the first things I did was to purchase an IBM PC which was the hottest revolution in the technology world. Like many others, my company rode the wave of the personal computer to success because the old competition dominated by the minicomputer could not compete with new in terms of scale and cost. Millions of people could buy the PC and tens of millions could use them, and these numbers soon exploded into the hundreds of millions.

And then came the iPhone and other smartphone of its type. Billions of people will soon be using these devices and have more than the power of the IBM mainframe in their hands. Applications will move down to the smartphone. In the beginning these applications will be simple and game-ish, not dissimilar to applications in the early years of the minicomputer and the personal computer. However, in time these applications will become sophisticated and the core foundation of the new information technology infrastructure. Their power will derive from the fact that smartphones will be in the hands of billions of people everywhere they go, and connected to the backend IT ecosystem that includes mainframes, minicomputers and personal computer.

Like many others, I am betting on this vision of smartphones as the IT platform.

What do you think?