by Beverly Hanly
Intel innovation supports developer opportunity in wireless-enabled business applications.
Most of the hottest products on the horizon depend on wireless applications. In the near future, all developers will need skills associated with creating software for the wireless environment.
Analysts predict that Wi-Fi will come to business use in laptops as access points are installed in offices, but which products dominate remains to be seen. Regardless of how the landscape evolves, it seems clear that wireless access will continue to become ubiquitous in the coming years. This segment has matured profoundly in the past few years, as evidenced by services like Wi-Fi ZONE*, which has certified and catalogued public wireless networks around the world.
Those wondering how the wireless juggernaut affect the software developer should consider the question, "Who will deploy the brains for these new mobile professional tools?" Those who have not yet asked this question should rethink their strategy toward applications that will work seamlessly between next-generation devices of every description, including PDAs, smart phones, and laptop computers.
If your app allows busy executives to be as productive offline as they can be while connected to the company network, you will be in business. Perhaps your program uses Wi-Fi (802.11) to allow Joe CFO to synch the spreadsheet he has run on the train with a planning document that his manager put on the network as soon as the light rail passes through a wireless node.
Intel Chief Strategist Chris S. Thomas addresses this issue in his article, Increase Efficiency: Put Your Applications to Work. "Efficient architectures eliminate the information flow's dependency on the user interface and permit information to move whenever there is a network connection, rather than waiting on someone to press the Enter key."
As Sean Maloney, Intel's Executive Vice President, described at a recent Intel Developer Forum, "Mixing and matching wireless and wired networks with any server, storage, or client device keeps corporations more nimble as they expand globally. Workers can connect anywhere, anytime and in any way."
ISVs Report Benefits in both Rich and Thin Clients
Is it all a bunch of pie-in-the-sky hype? Will it really change the way we work and communicate? Intel queried software developers to find out what aspects of wireless they are developing for. We asked about standards, what kind of server/client relationship they are utilizing, and how much processing power their apps need.
With the rise in prevalance of devices that depend heavily on a connection with a server but which only occasionally connect with it, the challenge for developers is how much of the application should reside on the server and how much on the device itself. More-robust processors in mobile devices help the applications utilize a rich-client model when that is best for their application.
"[Customers] can use the device with our application without being in contact with our server, so it has to be independent and be able to connect to the server," said one Swedish ISV who favors a rich client. "There has to be a certain amount of intelligence there."
The software developers we surveyed make partition decisions by considering several factors: memory and processing constraints of the client; bandwidth (how long it would take to get graphical elements to the device, for example); the need to maintain a stable and consistent user experience specific to a client; and development philosophy (client- vs. server-centric).
Still, the choice of rich or thin client is ultimately based on market conditions and business opportunities.
"It is really down to usage or what the client is trying to achieve," said a developer from a British ISV. "If it is a batch terminal, then really all that stays on the terminal is the data that is collected in effectively simple database format. If it is a radio-frequency device, that will be transmitted in real time and there will be nothing stored effectively on the handheld because it will all be generated by the server."
Developers also handle the varying "smartness" of devices in several ways. They may focus on devices of similar smartness (such as a variety of phones or PDAs) where the difference is in display.
Those experienced in WAP and phone development in general see variation between devices as a fact of life. Some develop to the lowest common denominator. Some build intelligence on the server side to detect and display appropriately for the target device. Others preserve the user experience on smaller footprint devices with swapping and caching techniques.
A small U.S. company that makes an off-board mapping system produces both rich- and thin-client versions. The thin-client version displays HTML pages, whereas the rich client has many more features such as text-to-speech conversion.
The program enables a PDA with a GPS device (or a phone as a modem) to choose routes and destinations and relay them to a driver turn-by-turn. Unlike most in-dash navigation systems, it is updated constantly and can deliver text-to-speech. Users can also detect and display each other's locations.
"The applications were developed under the constraints of CDPD 4800 baud and we needed to provide experience [that is] valid over low bandwidth, needed part of the component on the client," said the VP of engineering. "Text-to-speech from the server would be prohibitively slow."
Processing Power Provides Welcome Flexibility
The functionality demanded by a mobile environment benefits greatly from robust processors. The majority of developers in our survey embrace more processing power to enhance graphics in the UI, move more data processing to the client device, do more voice and audio processing, and improve encryption.
The survey revealed that, if the devices have the processing power, developers will take advantage of it.
"You would probably end up with a lot more fun clients," said a Swedish programmer. "They could be more visual, which would give a better overall impression. You could do more a nimations, more colors and so on."
In a response to a question about how more processor power would impact the development effort, an engineer for a mapping-system company replied, "our stuff would run faster. The biggest thing for us is memory, but we would do more speech recognition, higher-quality graphics, show actual pictures of traffic rather than list incidents, and do voice-portal work."
The product development director for an ISV developing middleware for mobile networks says more CPU resources would allow for more complex algorithms. He could focus on there being enough processing power to do what the app needs to do, rather than constantly measuring and minimizing power consumption. It would make the development process easier because less testing and checking would be required.
Standards are Important, But the Future Will Not Wait
What about standards? Do you wait for them to settle down before you develop for wireless? In the United States and Canada, the predominant sentiment is that standards -- especially for network and communication protocols -- are desirable and yield greater consistency of development and user experience but that the market will not wait for them.
"You cannot wait for standards or you will miss the market," said a U.S. OEM developer. "You have to be smart about it and evolve. Standards are important, but in the United States, there really are none."
"Mobile operators are in a fast ... high-profile business where they have to get new content, new subscribers and be extremely aggressive at all times," said a British OEM developer. "What that means is they are looking for 80 percent solutions. They do not want perfection, and they are not too interested in standards; they want things that are there by the end of the month, ready for users, and they will worry about the difficulties afterwards."
European and Asian developers for the most part seem more conservative, saying standards are very important to moving ahead with development. Some are active in helping establish standards, sitting on committees such as the one for the 802.11 standard.
"Everybody wants open systems these days and that is what the standards provide to some extent," said a U.K. OEM developer. "We take it seriously because it all comes back to supply and demand. If that is what the customers demand of us, then that is what we are committed to provide. That is why we sit on the committee for the 802.11 standard."
Many mentioned XML as an example of where standardization has worked, and many of those who are not currently using it think it is inevitable in their futures. It is more commonly in use in the United States and Europe than in Asian countries.
"XML is the way that we describe the mobile phone and the applications on it in order that they may be skinned," said a British consultant. "We then use XSL to manipulate XML to achieve formatted output or some other language output."
Many ISVs favor Java* as their development environment because of its portability, small footprint, ease of use, and the availability of qualified developers. As a primary development environment, J2ME* is most common in th e United States, Canada, and Japan.
Others using .NET* identify their organizations as "Microsoft* shops." Many others suggest that they will embrace Microsoft if it can drive de facto standardization of clients and execution environments. A few "Microsoft shops" hope that .NET and the Compact Framework will provide a true solution to the multiple-client device problem.
The Common Language Infrastructure (CLI) specification, embraced by Microsoft, defines a standard means for applications written in multiple high-level languages to be executed in varied system environments. For the most part, .NET users anticipate limited success for the CLI against J2ME, mostly because they assume that .NET will be limited to Microsoft clients.
Next-Generation Communications Bring a Host of New Possibilities
While developers work through the challenges of writing code for today's mobile devices, tomorrow's technology makes possible entirely new processes for gathering and communicating data.
Take sensor nets, for example -- low-cost sophisticated silicon sensors that can compute and communicate data. One field test on Great Duck Island, Maine, has researchers from Intel Research Berkeley Lab and the College of the Atlantic deploying wireless sensor networks to study the wildlife and habitats on the island.
The sensors - chips with temperature, humidity, barometric pressure and infrared sensors - allow scientists to monitor the environmental data, which is sent to the Internet along a satellite link, so that researchers can download the information in real time. The sensor-net technology provides a new way to track environmental data that is less disruptive to the microhabitats than if the data were collected directly by humans.
Giant, ball-shaped airships called stratellites may soon glide along in the stratosphere carrying transmitters that beam broadband wireless signals to earthlings on the ground.
Visionaries in the mobile industry are also seeing such things as smart buildings that can sense and adjust their bearings to survive earthquakes, and sensors that will track the path of pollutants that flow through soil. They predict devices that can organize themselves into a network, repair themselves, and manage their own power consumption.
Wireless applications in energy and climate-control systems will sense when conditions are right to switch to utilizing sun and wind energy. Wireless functions will be a common part of devices from freezers and kitchen ranges to light switches and copiers.
The face of manufacturing and distribution could change with wireless applications that enable more visual information and animation: How to mount a part in an assembly, for instance, could be animated and punched up on a wireless device. Someone collecting products or parts from a large warehouse could see a picture of what he is looking for on a screen rather than have to look for a part number.
The results of our survey of software developers told us that the strategy to drive the success of wireless computing is twofold:
- Deliver and promote technologies that allow for scalable mobile applicat ions in order to simplify the development process.
- Create end user demand by planting seeds for innovative form factors that break price barriers and support usage models for rich applications, while providing customers with an elegant user experience.
Intel Innovation Supports Wireless Innovation among ISVs
The advent of Intel® Centrino® mobile technology should go a long way toward providing the technology that supports this push toward wireless connectivity and device-hopping functionality.
Intel Centrino mobile technology includes a new mobile processor, related chipsets, and 802.11 wireless network functions that have been optimized, tested, and validated to work together. In addition to wireless communications, Intel Centrino mobile technology includes features designed to enable great battery life, thinner and lighter notebook designs, and outstanding mobile performance.
Some laptops based on Intel Centrino mobile technology can go as long as six hours without a battery charge. Earlier laptops run only two to four hours on a battery charge. As Craig Barrett, Intel's Chief Executive Officer has put it, "Unwiring the PC will change the way people use computers, allowing them to communicate, be productive, or be entertained wherever and whenever they want."
Intel is working with other companies to address wireless security and ease-of-use issues. Joint efforts such as the Web Services Interoperability Organization (WS-I)* find representatives from many of the large technology companies joining to make it all work together.
"WS-I is consistent with Intel's long-standing efforts to promote definition and convergence of open standards for e-business and Web services," said Will Swope, Vice President of the Software and Solution Group at Intel. "It is our hope that the group's hands-on approach to driving interoperability events will promote rapid innovation and growth in the computer industry. Intel's same hands-on approach to driving standards, whether it be through interoperability events or key roles standards organizations and WS-I, all provide more platform choices for users."
Intel is developing technologies that will enable some of those new ways that wireless communication can change the way our lives work. Even in a down economy, the market opportunities represented by mobile development are giving ISVs something to get excited about.
Software development has always been a competitive field, powered by the need to write code to meet the needs of the next generation of users. The new sphere engendered by mobile technology is the next trend in this legacy.
Intel remains committed to driving the development of next-generation standards as part of the overall imperative to bring more powerful and cheaper processors to market. A significant thrust of the current effort concerns standards and silicon for cell phones and handheld devices.
Intel® Software Development Products can help developers today. Continued Intel innovation will set the stage for tomorrow.
Intel, the world's largest chipmaker, also provides an array of value-added products and information to software developers:
- Intel® Software Partner Home provides software vendors with Intel's latest technologies, helping member companies to improve product lines and grow market share.
- Intel® Developer Zone offers free articles and training to help software developers maximize code performance and minimize time and effort.
- Intel Software Development Products include Compilers, Performance Analyzers, Performance Libraries and Threading Tools.
- IT@Intel, through a series of white papers, case studies, and other materials, describes the lessons it has learned in identifying, evaluating, and deploying new technologies.