Computers continue to get faster according to Moore’s law. This means that at a fixed price point (inflation adjusted), the speed of a computer doubles every 18 months. This is amazing, considering how long Moore’s law has applied.
At a superficial level, faster computers simply mean quicker response time and/or more flashy user interfaces. At a deeper level, however, faster computers mean much more, especially when the speed continues to increase exponentially.
Compared to 18 years ago, a high end computer is times faster than before. This means that some computation that takes 4000 years to solve now takes only one year. While one year is a long time, it is far more pragmatic than more than 4000 years. This means that certain problems deemed infeasible to solve are now feasible.
While the size of a desktop computer has hardly changed over the years, the size of a computer process has shrink considerably. A thumbnail sized microcontroller unit (MCU) has as much processing resources as an IBM PC-AT computer in the early 1980s.
In fact, interesting fabrication techniques can now integrate a die of a computer onto glass and other material. This helps to integrate a computer into its application with minimal use of space. The end product becomes smaller.
For example, an embedded processor, regardless of price, is too heavy and bulky for a regular remote control air craft just 20 years ago. Today, not only is a processor small and light enough, but even an entire GPS module is small and light enough to be carried by a small remote control aircraft. Needless to say, this opens up all kinds of possibilities.
Although computers do consume more power now than before (just look at the specification of power supplies), the amount of power consumption per processing power has decreased dramatically over time. Most modern cell phones, for example, are powered by computers that are at least 100 times faster than a PC-AT from the early 1980s. However, the power consumption of a cell phone processor is low enough to provide exceptional battery life.
The reduction of power consumption makes more applications practical. Cell phones and bluetooth headsets are the most obvious results in the consumer market.
Many already discussed factors enable better user interfaces. For example, acceleration sensors help make hand held products more user friendly by utilizing motion (of the device itself) as an input method. This is enabled partially due to the improvement of processing power and reduction of size. Touch screens are also becoming a new standard for cell phones and other hand held devices.
Even more interesting are technologies that dramatically change the way a user interacts with a computer system. Eye-control and head movement detection have been used in the military for years in the form of specialized helmets and visors. However, with the advancement of processing power and sensors, both head movement detection and eye-control can be implemented on a device no larger than a pair of prescription eye glasses.
Another interesting interface is voice recognition. While voice recognition has been a field of research for many years, it is only in the past few years that it finds its way into a multitude of computer applications.
The improvement of user interfaces free a “user” from the typical interface devices (keyboards and mice) or other difficult to use button-based interfaces.
The number of internet connected household has increased sharply in recent years. In fact, it is beneficial to a telecommunication company to support general digital network than to support dedicated lines just for analog voice. As a result, there is incentive for telecommunication companies to turn analog voice lines into digital network lines.
In addition to the explosion of wired Internet access, wireless access to the Internet has even more potential. A metropolitan wireless network plan not only allows subscribers to access the Internet, but also the freedom to roam anywhere within coverage.
The cost of connecting to the Internet will drop as the speed improves due to technological advances and competition. This means that people are not only more connected, but people are also better connected to services that are computer delivered.
Because processing resources have improved significantly, it is now possible to make development tools more user friendly. A prime example is Adobe’s Dreamweaver for web application development. This kind of tool is visual, and it also automatically generates the (program) code.
More tools are moving in this direction to enable more people to develop applications.
Based on the technological advances related to computers, one can predict certain trends that will be increasing important in the near future.
Due to the size reduction, power consumption reduction and improvement of processing resources, more devices can be controled by software. Not only that, but the software can get increasingly complex. The generations of iPhone is very representative of this trend.
In fact, very shortly (say, 5 years), mini notebook computers (such as the ASUS EEEPC or Dell Mini Inspiron) will most likely merge with personal communication devices like the iPhone. The biggest obstacle to making general computers too small is the user interface. Visor monitors will most likely replace actual screens. For casual browsing and pointing, acceleration-based devices can easily replace more traditional pointing devices. Even the device itself (such as the current iPhone) can become the pointing device.
For data entry and general typing, it is difficult to beat a full-size keyboard. It is interesting to note that most keyboards have a very thin and flexible core that registers key presses. With improved manufacturing techniques and designs, it is probably easy to make a keyboard thin enough to roll up inside an iPhone sized device while it is not in use.
I digressed.
The mentioned iPhone sized computer is only one of the trends. Other trends include more complex computer systems for automobiles, toasters, and etc. As complexity increases, it becomes increasingly necessary to use an operating system on such devices. If one operating system becomes the dominant one for all of these devices, then this operating system will become the prime target for security exploits.
With improved WYSIWYG tools to create application programs, it is natural to see more insecure application programs. This will range from web applications to many other kinds of application programs. This problem is amplified by the wide availability of copy-and-paste code snippets.
Because the storage capacity and processing power continues to improve, the servers of data centers can store and process more information. Furthermore, improved networking permit data centers not only to share, but also to corelate collected data. This can potentially be profitable to corporations, but it can also impact the privacy of individuals.
Perhaps even more importantly, a break-in of a data center can lead to the theft of more data, which definitely affects the privacy of individuals.
Traditionally, data centers handle rather routine and boring data processing. However, with improved server performance, data availability and programming techniques, data centers can now mine information that was ignored before.
For example, a credit card company keeps track of charges for the cards that it issues. A “boring” data center program simply calculates the monthly charge, minimum payment and etc. However, a data mining program can extract far more information. For example, if a credit card holder has a habit of spending more on electronics from November to January, the credit card company can cooperate with electronics merchants and offer discounts or other enticement programs only during that period.
Instead of shotgunning advertisements and ads that insensitizes a credit card holder and consumer, now a credit card company can use less but more effective advertisement. A data mining program can even “self assess” its own advertisement program.