Instilling Doubt

A pretty insightful comment coming from an anonymous poster (in the comments section),

I always wonder about these Linux puff articles — what motivates the writers to pimp OSs that any experienced person knows will be nosebleeds for 90%+ of the novices trying to do a real, complete migration from XP?

Linux never has been, nor will it ever be, an effortless turn-key OS for all-purpose desktop (let alone laptop!). Ubuntu is an improvement, but it’s still Linux — which, if you consider the costs of replacing unsupported hardware and your time struggling with setup at about two cents an hour, is the most lavishly expensive OS ever devised.

I’ve been screwing around with Ubuntu 5.04 for about five months, all but living on the official support forum, which provides — at best! — solutions for only about a quarter of the hardware and software problems I’ve encountered, and there are tons of them.

When 5.10 was released, the forum exploded with bug reports from those who had upgraded from 5.04 and found they had major-to-fatal problems.

I’ve tried to install 5.10 on my new laptop, but the VIA video is not supported, nor is the RaLink wireless, nor WPA authentication…etc., etc., etc.

If you want to spend the rest of your life talking with geeks (and in the process learn that OS advocacy is best understood as a psychiatric symptom above all else) and trying out an infinite number of kludges, you can get a lot of these problems worked out (more or less), but what you normally wind up doing is succumbing to what I call “Linux disfunction drift,” eliminating tasks that you used to do in Windows because your Linux distro won’t do them, or support the hardware you needed to do them.

Slashdot comes through for once: on the viability of open source “business”

There’s also a larger problem with this approach – it sucks for small companies trying to become bigger.

If you are only able to profit off of service contracts, you can’t ‘write once, reach many’ like you can with COTS software. Moreover, companies like IBM and Novell which have large established sales and service teams will win all the larger contracts.

If you write a great peice of software, and then have to sell, educate the customer AND hire/train all the workforce, how much time are you going to have to devote to Rev. 2 of your world beating product?

Whenever folks talk about OSS in the context of markets, I think it should be with a jaundiced eye towards our “helpmates” at IBM, Novell, SAP/MySQL and Sun.

Ultimately, IBM et al are about making money for shareholders, if they didn’t see that as the likley outcome, they would not be out there pimping OSS.

I think a world where software is only ‘sold’ in the context of a service contract is bad for the next great idea. OSS is great in its place, but to preclude software for sale isn’t the answer.

The truth hurts for Free Software zealots, but it’s the truth.

Free Software isn’t about eliminating proprietary software, at least it shouldn’t be. It should be about developing a free system for development, learning, and sharing, because we can.

Comedy in Real Time

I caught Bill Maher’s last show last night. It was quite good; I especially liked the give and take between Joe Scarborough and Bill–Joe was in a particularly right-wing propaganda mode, but then tried to gain back “journalistic integrity” by agreeing with Bill on the issue of accountability for the Plame leak.

But Scarborough’s views on Reagan, on Bush being unpopular just due to “historical precedent,” and his conviction that the middle east will benefit from our intrusion in Iraq is just par for the right-wing echo chamber course.

I also caught Comedians of Comedy, the comedy central show with Zach G. that shows four comedians on the road joking around with each other. The show opened awesomely–with Zach resolutely telling a female comedian that “men can have fake orgasms too” in a crowded diner, and then proceeding to actually fake one.

Someone in the crowd of the diner screamed out, “I’ll have whatever he’s eating!” at the end.

The MDI Plague and Window Management Woes

There is a nice article on Wikipedia that discusses the multiple document interface, a horrible hack that took hold in the Windows world to deal with the fact that Microsoft’s default window manager was inadequate to handle multiple windows existing under the same application.

I think Mac OS/OS X handles the MDI plague best by simply grouping all application windows under a single application class, with a single menubar. But usability experts have debated whether that makes the most sense, since the menubar can change, for example, depending on what window is in focus. I think users get used to that, and it also allows the menubar to be as long as necessary while the window can remain as small as necessary. That’s a nice win.

However, given our current model on *nix/Windows of menubars for every reasonably complex window, and given the lack of the MDI hack in GTK+, we do have a mess for applications that need more than one window to operate properly, i.e. Glade and The Gimp.

What I’ve been doing is giving these programs their own workspace as a workaround. That seems quite greedy of them, and indeed it is. What’s more, however, is that it’s unusable. Even when I switch to my Glade workspace, I see 4 windows in my taskbar, each with the same icon and with the following names: “Glade: h2h”, “Properties: image95”, “Widget Tree”, “h2h”. The first three are actually part of the Glade window class, and if I enable Metacity’s taskbar grouping, I see them as part of the same group. The last one, however, is just my actual window, and so is separate.

This is good–but I only get some form of usability when I actually enable window grouping. The thing is, in Metacity you can’t enable window grouping on a per-application basis. It’s all, sometimes, or nothing. Sometimes means metacity only groups windows when I’m running out of space. Otherwise it’s either on or off.

The thing is, grouping isn’t just about space saving. It’s about being able to perform window manager operations on a group of windows, i.e minimize all and maximize all.

This doesn’t even solve all problems: alt+tab still shows me all 4 glade windows, which can be quite confusing since only one comes into focus at a time. But that’s a separate issue, separate debate.

Wouldn’t it be nice if instead of Metacity just “figuring out” when to group my windows together, it let me just press a hotkey “Group all X windows on this workspace”, where X is the application I’m currently in?

I’ve decided this feature is so valuable, I may just hack metacity to add it. It will at least provide a path for solving the MDI nonsense.

Update: check out these screenies of a “different” approach to MDI written in GTK. It’s called GTK ADI.

Refreshing: A World Where Labor Rights Trump Property Rights

Check out this excerpt from Majorie Kelley’s “Divine Right of Capital” (was a recommended read in my last outsourcing talk):

When stockholders might try to improve their negotiating position by organizing into mutual funds, corporations would threaten to cut off payments altogether. The companies would threaten to replace stockholder money with funds from overseas, willing to accept lower returns.

Of course overseas stockholders would have less power. For while free trade agreements would provide intricate protections for labor and environmental rights, they would offer capital no protections. “What does capital have to do with trade?” pundits might ask. “Trade is about goods and services and the people who create them, it’s not about capital.”

If stockholders staged protests at the World Labor Organization to suggest changes in this economic order, they would be accused of “tampering with the free market.”

That’s what we’re told today. But we don’t have to buy it. For we can begin to see how the sleight-of-hand of the “free market” serves as an apology for institutional arrangements. The truth is, free market ideology contains two separate assertions, worth unpacking.

First is the assertion that natural processes are self-regulating. Which is valid. We see it in nature, where the renewal of life in spring comes on its own. Where we mate for our own pleasure-and thus help in the rebirth of the world. In like manner, we serve the economic polity best by serving ourselves. The drive to make money gets us out of bed in the morning, and brings us to do our part in holding the world together. Our economic drives are part of the natural order and are trustworthy. We can take comfort in this assertion.

But free market ideology carries a second assertion: that corporate and trade governance structures embody the natural order. And this does not follow logically from the first. For it glosses over institutions of power. To call the stockholder-centered corporate structure “natural” is reminiscent of the ancient claim that the monarchy was the only “natural” way to structure government.

A truly natural free market would free all groups to compete equally, to pursue their own self-interest. Real free markets are not about enshrining the self-interest of one group alone in law. Privilege like that has no place in a market economy. Even an imaginary one.

Gas prices and fuel efficient cars

Why are cars in the United States still so damn fuel inefficient? On /. right now, an argument is going on over whether this might be because gas is so damn cheap in the USA. We see the gas prices fly up to over $2.50, and we get scared. But in Europe, gas prices have been over $6 US/gallon for awhile.

However, in Europe cars are much more fuel efficient (out of necessity). They are also more beautiful and more fun to drive, but that’s beside the point. The main thing is that they are much, much more fuel efficient.

So how can we get that here? Well, one way is to use the European model, because we know it works, and start taxing gasoline more. But I think that’s actually a bit unfair, because it punishes even those who make better purchasing decisions, such as Prius drivers.

I think that we should institute a graduated tax on cars based on their fuel efficiency ratings. Oh, you get below 15 mpg? That’s too bad–now you have to pay for a lot of gas, and your car will cost 20% more. Oh, but you really like your GMC Yukon 4WD? Well, be prepared to cough up an extra few thousand dollars for it, then. We’ll take the money and use it to research alternative fuel sources.

Meanwhile, those cars that are really fuel efficient should get some major price breaks. This already happens sometimes with the Prius. But I think the discounts should be much greater and that America should really open up the market for fuel efficient cars.

We’ve been living in this dream world where the environmental externalities and consequences of our guzzling of cheap oil has absolutely no impact on our lives. It does have an impact, and Americans just don’t see it. They need to be encouraged to buy fuel efficient cars by making the inefficient ones expensive and the efficient ones cheap. That’s really so obvious and easy, I don’t see why it hasn’t happened yet.

(Well, I do see why, but I just wish we weren’t so damn beholden to oil companies.)

Met Runar, Discussed Software

I met with Runar (he’ll have a blog soon, I swear) today, and we discussed open source, Python, and all related goodness over coffee and vegetarian lunch free-riding on the ‘sNice wireless network.

We spent about 3 hours there, just talking about Runar’s project, “sqlstring”, my ideas about inferred typing and static source code analysis in Python, Python’s niceness in general, user interface toolkits, AJAX being a big, nasty hack, and web application frameworks in Java and Python. Our discussion really degrenerated into praise of vim once we discovered that we were both happy users. Text editors really bring people together.

Runar kind of convinced me that trying to infer all the types of objects is very “unpythonic,” which I guess is true since it discourages the crazy stuff you can do with Python. Maybe the best thing to do is judiciously eval code, as was my original impulse for getting nice completion out of Python? Not sure.

Or maybe I should just give up the idea and accept the fact that vim plus ipython is just about as good as it gets. That seems like a cop-out, though.

Regardless, Runar seemed somewhat willing (only half-willing) perhaps to give a small talk for Free Coders on Python, I’ll see if I can convince him that it’ll be fun. I suppose I could give the talk myself, but I already do all the talkin’.

Fog of War: A Truly Thoughtful Movie

I only just tonight got to watch Fog of War, a documentary which interviews Robert S. McNamara and draws from his past experiences lessons about the nature of foreign policy and wars.

One of the most thoughtful and thought-provoking movies I’ve seen about a person who advised presidents who had the power to wipe out entire countries with a single military order, and who years later realized that nuclear warfare and human fallibility can only mean something horrible for this society of ours.

You must see this movie; after you do, you’ll also see why I’m not so quick to buy the line about the necessity of Hiroshima/Nagasaki.