I recall my first laptop computer. During my first year of college, I purchased an NEC laptop from my college advisor, Art Sanchez. This computer was sweet. Here's the list of features: 640K memory, two 720K floppy drives, and a green LCD (Liquid Crystal Display) screen. Yes, it was LCD and it was not backlit. I had to have a very good light source to read the screen and forget using it in the dark. You see, backlighting was an option back then, just like hard drives for that matter.

Step forward 15 years and you can now purchase a new laptop that has a GHz (Gigahertz) rated CPU, 250 times the memory, a hard drive, and-get this-a lighted monitor. Another feature now standard in most portable computers is a wireless networking card.

Wireless networking is arguably the biggest technological advancement in the last few years. You can go to Starbucks and, for a small fee, log onto the Internet. The Portland, Oregon airport has free wireless Internet access and the entire city of Philadelphia is in the process of creating a wide-area wireless network. Last spring, I was able to blog during an entire trip from Montreal, Quebec to Toronto, Ontario. The train I was on had wireless networking for the entire three-plus-hour train ride. I am not easily impressed by technology, but this was pretty neat, in my opinion.

The widespread adoption of wireless networking has created a number of new technologies for developers. Cellular phones run the Pocket PC operating system, your PDA has wireless access, and Microsoft has enabled you to build for these devices using the .NET Framework. So now you have the ability to use Visual Basic .NET, C#, and other .NET languages to create applications for your mobile devices (phones, PDAs, and portable computers).

With this new technology comes great responsibility. You need to make sure your applications are network-aware, battery-aware, and can take advantage of new and advanced input devices, which is where this CoDe Focus issue comes into play. This issue demonstrates concepts of enabling your Web applications to use pen input, shows you how to trap stylus input, how to store Digital Ink, how to make your applications network- and battery-aware and numerous other mobility development issues. We hope you find it useful in your mobility development process.