Survival of the Mobilest: Computer Evolution and Device Cladogenesis
“It is not the strongest or the most intelligent who will survive but those who can best manage change.” – Charles Darwin
Cladogenesis is an adaptive evolutionary branching event in a family of species into a greater variety of sister species. Branching frequently happens in many forms of technologies as they evolve, arguably no more than with computer technologies. In the 1960s, digital computers were placed into four classes that were dictated primarily by size: microcomputers, minicomputers, mainframes and supercomputers. Species can branch and coexist, but sometimes new species are better suited to survive the changing environment while others die out. As computers have evolved, minicomputers have all but disappeared; however, microcomputers have continued to grow and branch to a multitude of devices such as desktops, laptops, embedded devices (cars, TVs, etc.), game consoles and mobile.
Mobile/handheld computers have existed over 25 years, yet their evolution has accelerated faster in the last decade than any other class of computers in history. Because of the massive consumer adoption of mobile technology, we are seeing the traditional enterprise IT struggle to keep up with the around-the-clock, hyper-speed demands that are now expected of a modern business. Stasis is extinction in this new commercial mobile paradigm.
I know you’ve heard about mobile being a big thing over and over, but here are a few recent statistics just in case you still think that it’s a fad and your business can ignore it:
- Over 58% of American adults own a smartphone, and over 42% own a tablet (PewResearch Internet Project).
- 61% of people have a better opinion of brands that offer a good mobile experience (Latitude).
- 65% of people start searching for information about a business on a smartphone (Google).
- 51% of e-mails are opened on mobiles (Litmus).
- Mobile devices accounted for 55% of Internet usage in the United States in January (comScore), mostly from apps accessing back-end services.
- The global enterprise mobility market will rake in roughly $140 billion a year by 2020 (Visage Mobile).
- 75% of Fortune 500 companies are taking steps to deploy HTML5 mobile apps (IBM Worklight).
- Mobile CRM apps will grow 500% this year (Gartner).
“Intel Inside™”—not so much. The days of Intel dominating the microcomputer market have passed. Mobile ARM processors far outnumber x86 desktop processors, and companies such as Qualcomm (53%), Apple (18%) and MediaTek (10%) are leading the market (Electronics Weekly). New devices continually push the technology to be smaller and more efficient—features that ARM processors are currently more adapted to fulfilling than power-hungry x86 processors. As mobile chips evolve, we may begin to see them replace desktop microprocessors, just as we saw Intel x86 processors replace minicomputer and mainframe processors in workstations and servers.
Is it crazy to believe that mainframes may, and arguably should, also make a major comeback due to mobile? Remember the original “cloud” when it was terminals connected to a mainframe? Today we have data-hungry web and mobile apps that connect to server farms for content.
Science-fiction computer systems that are 15+ years old seem quaint today. Touch, motion, gesture and voice are quickly becoming the primary ways in which we interact with technology. Consequently, intuitive design and fast response have become expected of every device; most best-selling devices don’t come with instruction manuals. From watches to toasters (Breville), you can own practically anything, frequently labeled “smart,” with a microcomputer in it.
Our daily lives are run by data not transistors! Even more disruptive than the effect of mobile on hardware is the effect it’s having on software. The general high-level software evolution cycle appears cyclic. For example, once upon a time, we used applications from terminals that resided on central computers (thin-client), then we ran self-contained desktop software for most of our work. Then the Internet matured and we began running apps directly from websites (ASP). Now, we download specialized apps for phones and tablets en mass. Of course thin-client, desktop and web are not dead, and the perfect software solution frequently is a hybrid of all systems.
The combination of increased online services and new hardware to collect data on everything from heart rates to video clips has pushed world online data into the realm of exabyte (millions of terabytes) (Cisco Visual Networking Index). Mobile devices are fueling and consuming most of this information—greater than 1.5 exabytes per month. While “big data” is not every company’s problem, it is incidentally a benefit to virtually all software. The techniques to handle data developed with technologies such as noSQL databases, analytic software and Hadoop, are improving data storage, analysis and retrieval of all information. Software with smaller data packets, faster server responses and more parallel processing equals saved costs in bandwidth and CPU cycles, not to mention happier users.
Mobile devices continually challenge application developers with many user-experience problems. How does one present a sufficient amount of information on a smaller screen? How do you facilitate data entry efficiently without a full keyboard? Touchscreens, accelerometers, gyroscopes, microphones, cameras and many other sensors allow for a much more intimate and efficient way for users to access and input data. The funny thing is, we have only begun to scratch the surface with how we can interface with software.
A slew of operating systems has spawned to handle these specialized interfaces. Mobile has even out-evolved desktop OSes and is now incorporating many of the same GUI technologies. Although OS technologies, such as iOS and Android, revolutionized how people interact with software, they also complicated the processes of developing software. Which OSes, and more specifically which versions, should you develop for in order to reach your customers, and will they be obsolete in the next version?
Many enterprise IT and small-business IT departments are struggling to adapt fast enough to the mobile world. Loss of revenue is as apparent as when companies didn’t utilize the Internet early on. It’s becoming more common that customers expect they can do business from their smartphones and tablets. A poorly displayed mobile website that doesn’t employ responsive or adaptive design will lose customers. No mobile app to make purchases will send a customer to another vendor. I swear I’m not trying to be a fear monger; the truth is in the data!
Picking the right software development strategy is one of the most important decisions that enable modern businesses to succeed. Every company is a software company—or it will be. Concerning the problem of OS and device fracturing above, I employ the philosophy that if you are not developing software that is tied to specific hardware, your software should not be purely native to any device or OS. Development is cheaper to maintain and easier to adapt when you have a common code base.
Software development platforms and tools have evolved slowly in response to mobile computing. Multiple programming languages, devices, OSes and APIs complicate matters. I currently work on creating development tools (Cincom® MANTIS® plug) that will cut down on time and cost as well as give developers such as myself access to the most powerful tools possible.
So where is this mobile tree of tech-life leading us? A future that is chaotic and also transcendent. Computers will become more and more ubiquitous and unrecognizable with watches that replace doctor visits, household sensors that monitor your comfort level and glasses that transport you to the Louvre. More aspects of business will become dependent on mobile software and the family of technologies that evolve from it. As always, businesses will live and die by who can best manage change.