Fixing Wireless in Linux, and Why This Should Matter to Apple

In this post, I talked about my travails getting my son’s USB wireless adapter working in Linux. A few weeks later, it stopped working. Puzzling. I opened a terminal and ran:

lsusb

The computer duly reported that it saw the USB wireless adapter. Then, I ran:

ndiswrapper -l

Yup, the driver was loaded. I checked /etc/modules and verified that ndiswrapper was listed. At that point, I had dangerously stretched my sysadmin abilities. Frustration descended, I set the computer aside, bought my son a MacBook Air, and sent him to college.

Last night, I finally got around to looking into the problem again. The device was still present, and ndiswrapper still had the driver loaded. I then tried:

sudo modprobe ndiswrapper

I got an error message: something about no such module existed. Hmm. I decided to rebuild and reinstall ndiswrapper. As I ran:

make && sudo make install

I realized that I’d probably updated his Ubuntu installation, and it probably included a kernel update, so the new kernel didn’t have that module. Duh. By chance I’d hit upon the solution. When I than ran:

sudo modprobe ndiswrapper

it worked fine and survived a reboot. Total rookie mistake.

Things like this, though, are IMHO why so many developers have moved to Mac OS X. We want the power of Unix without its headaches. We want to write code, not administer our machines. We don’t want to download and compile wireless drivers and figure out why we can’t get on the ‘Net. We don’t want to follow the politics of Gnome 3 or decide whether to switch to KDE or Xfce. Don’t get me wrong: Linux has come a long way and requires far less care and feeding than it used to, and there’s a whole lot to love about it. But the lower-maintenance Mac OS X is far too alluring for many developers, including myself.

After I wrote this, I came across Miguel de Icaza’s “What Killed the Linux Desktop.” And now I see it made Slashdot. Take the time to read this, keeping in mind that this guy is no Linux lightweight. He started the GNOME project, after all. Take that, Linux! You’re over! Apple won!

Yes, Apple has claimed a ton of developers that used to run Linux as their primary OS. They’ve also converted scads of developers from Windows to Mac OS X. And they’ve gotten a little too smug about that. See, the Linux expatriates can always go back to Linux. Even klutzes like me can administer our own Linux machines, keep things running, and get lots of development done. What’s more intriguing, though, is that former Windows users have now been trained, thanks to Apple, in all kinds of Unix-y things, and would now be far more comfortable in Linux than they would have been before. Apple might have won, but the game isn’t over.

When people talk about Apple’s overwhelming recent success, they point to the iPod, the iPhone, the iPad, and Mac OS X. Certainly all those are key, but that list ignores an essential ingredient that bedevils BlackBerry, Windows Phone Whatever, and even to an extent Android: the developers. People don’t generally buy an iPhone or an iPad or a Mac; they buy what an iPhone or an iPad or a Mac can do for them, which depends on apps. And a healthy app ecosystem. And app developers. Developers are almost invariably a leading indicator of a platform’s eventual success.

Apple has recently gone some directions that, while perhaps consumer-friendly, could be interpreted as developer-hostile. If Apple’s trajectory continues toward iOS-ifying Mac OS X and the App Store, developers may sour on Apple. If the Mac App Store becomes the only fount for installing Mac OS X apps, the developers are gone.

Where will we go? While Ballmer is betting on Windows 8, and certainly Windows 8 will claim some number of developers, most will go where bash (OK, or zsh) is a first-class citizen, Rails runs hiccup-less, and you can develop applications without Visual Studio (OK, hyperbole, but c’mon–it’s not far off). I see a Linux laptop in my future–assuming I can get it to connect to the Internet.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.