A Windows moment on my laptop
I had a Windows moment with my laptop today. I normally leave it suspended instead of powered off, and when I unsuspended it I discovered that its networking had stopped working. The network-controlling widget in my taskbar just said 'Networking unavailable', and the various system management interfaces were opaque about what might be wrong and why; the network devices were there, they weren't reporting any obvious problems, and so on. The system just wasn't having anything to do with networking, whether wired or wireless. So I used the usual Windows solution: I rebooted the machine and the problem went away.
The only thing wrong with this story is that my laptop runs Fedora 13.
The problem here is not the existence of Network Manager and its collection of GUIs for managing networking on a modern Gnome desktop (although some old Unix people may feel otherwise). The problem is that none of them were willing to tell me why networking wasn't available. They knew there was a problem; the Network Manager applet even told me so. It just offered no diagnostic and no suggested remedy, not even a 'make networking available again' option to go along with its helpful message.
What makes this a Windows moment is not the GUIs; it is the black boxes. I don't object to making Linux management more user friendly, but the systems for this need to do one of two things: either they need to have black box problem resolution (where there is a 'make networking work again' button), or they need obvious ways to open up the black box to tell you what is wrong and what you need to do to fix it. If you normally manage with GUIs, those GUIs need to have that detailed 'what is wrong and what you can do about it' interface.
(Looking back at the incident, I suspect that some crucial Network Manager daemon process died and that if I had looked at logfiles somewhere I might have found this mentioned. But I didn't, because Network Manager has successfully made itself into such a black box that I have no idea what all of its pieces are and no interest in learning, because it seems pointless.)
Sidebar: why I like Network Manager
The short summary is that it gives me a simple interface to a complex world and makes that world more or less work. I can plug my laptop into any network that gives out DHCP and it will automatically come up on it. I can associate myself to one of several different wireless networks (with different keys). I can bring up a VPN over all of this. And I do all of this at various times.
With sufficient research I could write scripts and run commands to do
all of this, and keep opening terminals and running
sudo as I move
around between networks and suspend my laptop and so on. Network Manager
means that I don't have to. I'm lazy, so I appreciate that.
(Could it be better? Of course. But most of the ways I can think of to make it better are to let me express relatively complex policies, like 'if wired networking is available, use it; otherwise, if this wireless network is available, associate with it and then bring up this VPN'.)