Thursday, June 23, 2005

Flaming about Curl and open source

Once upon a time, I read some interesting buzz about the Curl programming language. It sounded different, and it came from MIT (yeah, I know, alum chauvenism), so I had an inclination to check it out.

I'm a hopeless addict of the MicroCenter bargain rack, so when I spotted the Curl Programming Bible there for $5, I couldn't resist.

Wow, am I disappointed. It's no wonder Curl is apparently dying; it was doomed from the start.

One problem is the syntax. I didn't get very deep into it - just far enough to read
Notice that the entire herald is enclosed in curly braces ({ and }). All programming expressions in the Curl language are enclosed in these braces. They are used so often that the language itself was named after them!
Well, tee-hee-hee! Isn't that just precious? Maybe they should have named the language "Repetitive Motion Injury"! Okay, so I'm a Python geek; requiring gratuitous punctuation is an excellent way to send me reeling away in disgust..

But the real problem is the business model. The Curl plug-in is built so that, every time a user hits a Curl site, it notifies the Curl corporation to charge that site's owner. I don't care how small the charge per hit is, that's crazy. I'm going to get approval, in advance, to pay an unknown, usage-based fee, just to put up a site? For a tool that is (within our organization) totally unproven?

I think that open source really is the way to introduce a language these days. Very few languages are selected in advance by people with money-spending power. (Unless, of course, they are pushed by a megacorporation with the advertising budget to send flocks of salespeople to razzle managers and take them to lunch. But that's another discussion.) Rather, a developer or sysadmin or whoever finds a language she likes, starts using it informally for her own this and that, eventually builds something that her manager sees and likes, THEN gets permission to start working it into formal projects - the kind that have budgets. Then we'll start paying money for an IDE and training and maybe consulting and so on. At least, that's the way I've experienced it.

The sad thing is that the fate of Curl reminds me very much of the Water language - another MIT baby that interested me enough to sell me a book, but that is also more-or-less stalled. Again, I think the choice not to go open-source is a big part of that failure. (It probably doesn't help that Water is built on top of, and demands a little familiarity with, Java - so the ideal target audience is one that already has a preference for open-source.) Geeks just don't seize something and energetically play with it when they're told (1) This is ours, not yours and (2) Pay at the door.

I wonder if some foolish person in MIT's Office of Making Money Off Our Babies simply doesn't realize this, and is twisting arms to impose doomed business practices on MIT's babies. Ironic, for the institution that spawned the Free Software Foundation to go that way.

If anybody wants a barely-used Curl book, just ask.


Anonymous said...

I played with Curl for a solid month in the early days and ended up winning 1st place and $1000 in the first (and apparently last) Curl Programming Contest.

While I agree that open source would have been the way to go, at the time that Curl was commercialized a business plan based on an open source model would not have been fundable. Curl Corporation did get funding with their rather silly business model. The result? No penetration at all in the western world, but some selected use in Japan. They were eventually bought out by a Japenese partner and remain an ongoing concern today AFAIK.

Syntax aside (I am a Python geek now too), Curl was solving the right problem -- how to make the web dynamic. (The answer: a client side virtual machine that makes Java seem like the toy that it is.)
AJAX is a far cry from what a real client-side VM could achieve.

Sadly we will never see a client side dynamic web system as good as Curl unless it comes from Microsoft, but I can't imagine why MS would release such a thing to the world as it would probably kill some of the Suite sales.

Then again, maybe an open-source project could work. Stranger things have happened. But it better not be based on MIT work or it won't get anywhere.

A CalTech Dude

Unknown said...

Hey, thanks for the historical background, CalTech Dude! Very interesting...

I'd love to see a truly worthy system like that, too... even if it comes out of CalTech! :) I do have some hope that, with Mozilla/Firefox, a new technology could get footing without going through Microsoft. For instance, Firefox supports XUL - another technology I've been meaning to study.

Robert said...
This comment has been removed by a blog administrator.