Monday, August 5, 2002

The altruism of profit.

I still only sort of understand what .NET is. When I first started hearing about it, it was portrayed as a way to phase out software licensing in favor of pay-per-use web services. This sounded sufficiently evil and ill-concieved that I stopped paying attention. (I do that a lot with Microsoft technologies. I still understand ActiveX mainly as a feature that I should disable if I want to keep my computer safe.)

The current Microsoft spin on .NET says nothing about pay-per-use. It's all about "services" and "experiences" and "interoperability". I'm curious, now: was the pay-per-use aspect of .NET ever emphasized by Microsoft, or was that just ruckus raised
by Microsoft detractors?

Investigating this issue, I ran across a priceless quote in one of many Microsoft hype articles:

.NET matters for two reasons, one "selfish," one tied to the profit motive.

Uh. How are those two different reasons?


  1. perhaps it's "selfish" in the every-computer-in-the-world-will-be-using-.NET kind of way. the fact that M$ will "0wn" us one day is a sort of greed.

  2. Ah -- the profit motive versus the "we will crush you" motive.
    Microsoft Passport was vital to the pay-per-use stuff you're talking about. Everybody hated it, it died, and the remains of .Net look like MS competing with Java, mostly.

  3. >the remains of .Net look like MS competing with Java, mostly.
    Okay. I understand Microsoft's crankiness that they don't own a technology as buzzword-happy as Java, but I don't understand why they'd actually embrace write-once-run-anywhere. Java, after all, came out of Sun, a UNIX company. Interoperability between the UNIX world and Windows thus made sense for Sun. But if Microsoft thinks everyone should be running their operating systems, interoperability should be moot, right?
    So is this Microsoft seeing the writing on the wall, hedging their bets if they lose the OS wars, making sure they still have a stake in development tools?

  4. I used to be somewhat less of a conspiracy nut when it comes to Microsoft, but basically I believe that Microsoft created .NET for one simple: to burden people with yet another incompatible development environment that is complicated and difficult to use, yet somehow essential if you are currently forced to use Microsoft operating systems for any reason. Companies which can't afford huge development staffs shouldn't be using windows, and yet they can't afford not too. Sounds like a recipe for a monopoly to me.

  5. M$ isn't really adopting write-once-run-anywhere. They *are* doing the bytecode thing, and C# is almost exactly like Java, down to the syntax. You can practically write the code and run it through a trivial Perl converter. Actually, maybe you can, that wouldn't surprise me.
    But the .NET Server stuff is where a lot of the black magic lives, and that's all underdocumented, at least if you want to write it. The .NET Client stuff, on the other hand, is pretty open, pretty simple, and pretty well-documented. The GNOME founder is trying to change the situation with .NET Server -- he respects the .NET architecture and is bothered only by the fact that there's only a single proprietary implementation. He's trying to change that by reimplementing it.