Windows 7 tablets have a bad rap
As a software developer I do lots of market research into the current trends of both software and hardware. I read, read, read as much as I can about what is going on in the industry, for starters. There's a whole lot of hype about iPad, and near silence about Windows tablets. But there are plenty of them out there.
Windows 8 will be a boon for tablets, particularly with ARM support and the new Metro UI, but it's still a future release product. Windows 7 is here now. What is its value as a tablet PC operating system? This week, Windows 8 will have big tablet buzz at Microsoft's Windows BUILD conference. Is there really reason to wait? I'd like to offer my impressions of what's here right now, from a developer's viewpoint, about Windows 7 tablets.
Impression #1: Windows Tablets are Seemingly Invisible
When you read the latest online computer tech blogs or magazines you see lots of articles about tablets. There are reviews of tablets, comparisons of them and favorites lists. Generally only Android tablets, like Motorola XOOM or Samsung Galaxy Tab, and iPad 2 are discussed. It's like Windows doesn't exist on tablets.
Part of the problem is target market. Windows tablets are more generally optimized for businesses rather than consumers. But I assure you there are Windows tablets. Just look at some sold by Microsoft at its online store: Acer Iconia Tab W500, Asus Eee Slate, EXOPC Slate, Fujitsu Stylisitic Q550 and Motion Computing CL900 Tablet. Not that you would know from reading the tech news or reviews.
Impression #2: Windows 7 is Backwards Compatible
Whenever you see discussion online about Windows tablets, it usually abounds in comments about what v8 will do for tablets and not about using v7 on them. Chatter will be near-deafening starting tomorrow, when Microsoft formally introduces Windows 8 to developers. While Windows 8 will target tablet PCs better, it's still a long ways from release. Windows 7 is here now, and it offers one fundamental benefit that businesses and developers can depend on: Backwards compatibility.
Microsoft's challenge will be moving Windows forward without abandoning the past investments made by its customers and developers in the operating system. Microsoft isn't rewriting Windows 8 from scratch, but there will be some architectural changes and the new Metro UI. One key question on my mind: how backward compatible will Windows 8 be? Maintaining backwards compatibility is one of the keys to Windows' success story. Given the changes Microsoft is expected to make to Windows 8, more businesses and developers should give more consideration to what Windows 7 already does well on tablets. At the least, the operating system offers assured compatibility with existing applications and hardware.
Impression #3: Intel gets a Bad Rap, Too
Windows is based around Intel CPUs (and x86 competitors like AMD); as mentioned above, Windows 8 will add support for ARM processors. Many technical articles complain about performance problems running Windows 7 on tablet PCs (and netbooks), and authors often blame Intel for the poor performance because of their low-power CPUs (e.g., Atom). Some programmers blame Intel saying the Atom CPU is just too slow to run Windows 7 applications.
That's funny. I have been coding for quite awhile, and I remember writing a complete point of sale and rental software package for a local video store that ran on a Kaypro computer running CPM. There wasn't even a harddrive on the thing and data was stored on 5 1/4 inch floppy disks! Programmers had to learn to optimize their software to get the most out of the hardware and operating system. Funny, I don't see many complaints about coding apps for iPad or smartphones, which also pack low-power processors. It's all a matter of perception.
Today's CPUs -- even the low cost, low-power ones like the Atom -- are amazing little powerhouses. They are extremely fast compared to the CPUs of days gone by. Years ago, one would simply rate a CPU by its speed. A 200-MHz CPU was about twice as fast as a 100-MHz CPU. No longer. Today there are so many factors that effect the speed of a CPU that you get more power from them than you might think.
For example, I recently purchased a netbook that has an Intel SU4100 CPU with a speed of 1.3 GHz I figured it would be slow compared to my current desktop computers. My 8-year old Windows XP computer has a 2.5-GHz CPU and my Vista machine has a 3.6-GHz CPU. It turns out the design of that little 1.3-GHz CPU makes it nearly twice as fast as my desktops. Even the lowly Atom CPUs found in some Windows tablet PCs are about as fast as my older desktop PCs. The problem is not the Intel CPUs but with Windows itself and how applications are written for the operating system (and there, in fairness, is where Windows 8 could have real advantage over Windows 7).
Impression #4: Windows Tablets need Better-Coded Applications
One of the problems inherent to programming is the common mindset of many programmers. Correct me if I am wrong, they tend to always want the leading edge in computer hardware. This means they develop their software, not on the average consumer PC but on computers that, simply put, are "hot rods" compared to the computers you may buy at Walmart. If their software runs slow, they may not optimize it better, but instead they add more memory and faster CPUs to their computers. When that software is released to the public, the system requirements for it go up. Applications drop support for older versions of Windows, and they require more and more RAM.
Remember Microsoft CEO Steve Ballmer's rant: "developers, developers, developers, developers". Well, maybe we programmers need to hear "tablet developers, tablet developers, tablet developers, tablet developers". We need to find better ways to write software that matches the small footprint of the average tablet PC running Windows 7.
I recently watched an interesting video online where Microsoft employee developers discussed how they personally are going back to native coding and compiling. Rather than C# (C Sharp) which uses .NET, they are using C++ and the native Windows API. This is where things get interesting. Maybe rather than HTML5 or Javascript, programmers need to go back to native code and native APIs. That's where the speed (and small footprint) lies.
I write software that can run on Windows 95 to Windows 7 (how's that for backward compatibility); the software has so small a footprint it can sometimes fit on a floppy disk. I write software using native APIs, too. The resources of the average Windows 7 tablet PC is far richer than many people might think. Changes need to be made in how we write software for Windows 7 today, rather than wait for Windows 8 to solve all our problems in the future. My business motto (I sell programming tools): "there is no need to wait for Windows 8".
Impression #5: Windows 7 is an appealing Tablet OS
Absolutely! I am not saying that Windows 7 has no weaknesses. Rather, we programmers must take responsibility for the user experience on Windows 7 tablets. The operating system is already an amazingly rich environment to run software. Maybe we programmers need to appreciate that environment more. Also rather than "passing the buck" onto hardware manufacturers like Intel and others, we programmers need to start earning our keep and start writing software that better makes the most out of an already robust operating system. So am I waiting in expectation of what is soon to be revealed about Windows 8? I sure am. Am I waiting for Windows 8 before I start writing software optimized for Windows tablets? Absolutely not. In my opinion, there is "no need to wait for Windows 8".
Photo Credit: Adriano Castelli/Shutterstock.com
Chris Boss is an advanced Windows API programmer and developer of 10 year-old EZGUI, which is now version 5. He owns The Computer Workshop, which opened for businesses in the late 1980s. He originally developed custom software for local businesses. Now he develops programming tools for use with the PowerBasic compiler.