Wireless Introduction
Wireless is the communication without wire. Wireless technologies represent a rapidly emerging area of growth and importance for providing ubiquitous access to the network for all of the campus community.
So what is wireless technology anyway?
Wireless computing is just what the name implies -- computing without wires and phone lines using a variety of devices such as laptop and notebook computers, tablets, personal digital assistants (PDAs), e-mail-only devices, handheld computers, and "wearable" technology.
Wireless technology's major benefit to users is the immediate access it offers to computing resources -- your office, other businesses, the Internet -- providing users with a higher degree of flexibility in work and entertainment choices. As a method of data transport, wireless technology is quite like wired technologies in that it comprises hardware devices, a method of transmission, and connections that transform data from the human-input type to a machine-transferable format, then back again. Each piece of this triptych is an important component of wireless technology, with its own topics of focus:
- Hardware devices. One focus of both hardware devices and methods of transmission is of software development. The parameters of wireless software can seem limiting because the software for devices often has to adhere to a limited-resource silhouette (memory, battery, storage, and so on).
- Transmission methods. Although most software development efforts these days rely on a rigorously distributed framework, the ability to design software that can be distributed and used over sometimes tenuous connections is even more important. Often the "hard" backbones of transmission are somewhat fixed (for instance, you can only put so many cellular towers in a living space), so transmission and application software design must make up for the gaps.
- Connections. Data translation, while important in any technological endeavor, is even more critical in a wireless environment because the range of access devices proliferates at an astounding pace. Even with standards in place, some data-format drift occurs (often to squeeze that last bit of optimization out of a limited-resource device); more manufacturers, more devices, means more drift
How does wireless technology work?
In the general sense, wireless technology works just like wired technology. The user inputs data on a device. Connection software on the device translates the data into a format for transmission. Transmission protocols determine the method and route the data will take. Again, connection software re-translates the data into a format that the new user (either a person or automated response) can perceive. The big difference is in the "shape" of the software applications: Its profile is quite different from software that resides on a single desktop or a terminal wired to a network.
Why is it different? The access devices have differing physical parameters: Less memory and storage and no constant power supply. The application software must take these differences into account to optimize for them. The connection methods have differing parameters, too: Less reliability and uncertain bandwidth levels. The connection software must compensate for this to provide as constant a link as possible. Additionally, the translation software would have to be more flexible to account for the small inconsistencies in data formats found when there are a large number of device manufacturers.
A good way to examine this question is to look at the life cycle of wireless application creation. It generally falls into four categories (although different developers will define different boundaries for the areas, depending on their experience and training):
- Planning/development. One of the most important tools when planning and developing a wireless application, other than the need for constant testing, is the availability of design patterns -- pre-existing templates of certain desirable behaviors for application development, simply to keep programmers from having to write all their code from scratch. In essence, design patterns give the design team additional development experience, the experience of the programmers who wrote (and those who improved) the original pattern.
- Testing/feedback. Testing and
optimizing applications is so vitally
important that many developers have
adopted the Extreme Programming (XP)
philosophies of continuous testing and
writing tests before you write
the actual code. When testing wireless
technology, two major topics rise to the
surface. One is as mentioned previously
-- the adoption of XP guidelines when
testing (and building) applications. The
other topic deals with automating the
testing process, a technique that can
act just like a backup programmer for
your development team.
- Deployment/integration. Many times, developers don't think much beyond the basics on setting up their applications on the target system -- type of system and system software and a sketchy understanding of how the program is to be used. Some of the following resources can give developers a wealth of experience with the pitfalls of deploying and integrating the applications they write.
- Maintenance. Maintaining a code base is not always something that the original coder concerns himself with, but you better believe that the coders that follow (to add, change, or fix existing code) usually learn a lesson about making their original code easily -- fill in your own word here, extensible, scalable, adaptable, and so on. Developers often have the most free choice when deciding how extensible they can make their code, usually by using good planning to decide on the appropriate trade-offs (such as performance versus complexity).
How the wireless world is expanding
Today, wireless Internet hotspots can be found in more places than ever before. Not only in coffee shops, universities and hotels, you can also find wireless Internet (or Wi-Fi) at places such as sports stadiums, golf courses, skate parks, service stations and bowling alleys.
Wireless tips and tricks
These free online tutorials from developer Works cover a variety of Wireless technology topics, for everyone from beginner to advanced developers. Take the tutorials immediately online, or download them to study at your leisure.
These documents installation and implementation experiences,
real-world solution scenarios, and step-by-step, how-to guidelines for
Wireless technology developers.