February 2002

« January 2002 | Main Index | Archives | March 2002 »

28
Feb

Always move forward, going straight will get you nowhere.

I still laugh whenever I hear that.

A woman walked into a bar and ordered a double entendre. So the barman gave her one.

Zen Stories to Tell Your Neighbours

A Zen Master lived the simplest kind of life in a little hut at the foot of a mountain. One evening, while he was away, a thief sneaked into the hut only to find there was nothing in it to steal. The Zen Master returned and found him. "You have come a long way to visit me," he told the prowler, "and you should not return empty handed. Please take my clothes as a gift." The thief was bewildered, but he took the clothes and ran away. The Master sat naked, watching the moon. "Poor fellow," he mused, " I wish I could give him this beautiful moon."

Peripatetic

  • 12:57 AM

After the world's cutest fish went to bed, I hung around at home for half an hour or so, then I went down the road to get a pie and chips for dinner. The pie was very, very hot. My mouth is still feeling rather burned. Dinner over, I stood outside "Shakespeare's Pies" (heartily recommended), and decided that I was going to satisfy my peripatetic urge from earlier in the day, and go for a walk.

Walking is a tricky art. There are four main ways to do it. You can travel in a circle, which means you've decided before you start how long you'll walk. You can walk in a straight line until you guess that you are halfway done, and then walk back. You can wander, such that you travel a lot of distance, but never really stray incredibly far from your starting point. Or you can do what I did, which is just keep walking until you realise that if you go just a bit further, you can catch the train home.

In my case "just a bit further" was Town Hall station, in the middle of the city, after an hour of putting one foot in front of the other. It was refreshing, relaxing, and got all sorts of cobwebs out of my system. I should do the same thing tomorrow, in the opposite direction. Or maybe wander up Erskineville road and see where it takes me - not having a car means I rarely travel away from train lines.

Town Hall station is next door to the big movie complex in the city. I couldn't decide what movie to go see - I ended up with Lord of the Rings again, because nothing else grabbed my attention. I almost walked home afterwards, but my shoes (very old and falling apart) were very uncomfortable.

Fellowship of the Ring Peeve

Early in the movie, there's a bit where Gandalf is talking to Bilbo, and Gandalf (who up til now has been this harmless, chuckling old guy) gives a hint that he's really pretty tough. In the movie, this is done with a camera trick that makes it look like he's growing on the spot, and a major lighting change. The relevant passage from the book is: He took a step towards the hobbit, and he seemed to grow tall and manacing; his shadow filled the little room.

Later in the movie, Galadriel (Oooh! Cate Blanchett with pointy ears!) does something similar when Frodo offers her the Ring. This time her voice gets distorted, and she's shown in negative with rushing wind around her. Once again, the book:

She lifted up her hand and from the ring that she wore there issued a great light that illuminated her alone and left all else dark. She stood before Frodo seeming now tall beyond measurement, and beatiful beyond enduring, terrible and worshipful.

Both these effects annoyed the living crap out of me. I know Jackson was just following the book, but things that sound neat on the printed page can come across really overdone when put on the big screen. Both of the actors involved are particularly talented, and to me, the scenes would have had far more impact on me if the director had left it up to them to portray the menace, and left the FX shots out.

From Mark Pilgrim, a parable about the way technology has streamlined our lives.

Back in the Stone Age, you took a roll of pictures (24, maybe 36), trudged down to the local photo development shop (or, more recently, supermarket), stuffed your film in an envelope, filled out a form, dropped it in a box, trudged back, picked them up, and stuck them on your refrigerator. Total wait time: 3 days.
In the new-and-improved Digital Age, you can take as many as 200 pictures at a time in your spiffy $400 digital camera, download them to your hard drive, stay up until 3 AM writing custom scripts to organize them and auto-create thumbnail galleries and HTML pages for them, buy a domain name, install weblogging software, and upload them to your web site. Total wait time: 7 months.

Politics

  • 9:52 AM

America-bashing

In the USA, the government is demanding that bookshops disclose the purchasing habits of their customers. This is a chilling prior restraint on free expression. If people know that buying a controversial book will get them on a government list somewhere, people are less likely to read controversial books. When this was tried in the 80's with libraries, 48 States reacted by passing laws limiting the information that libraries can disclose about peoples' reading habits. Bookshops have no such protection

At the end of a column on the subject (which I can't find online), shop owner David Unowsky noted:

"One further piece of irony: Attorney General John Ashcroft, citing the sanctity of the Second Amendment, refused to search gun purchase records for information about weapons purchases by terrorists. What we have, apparently, is a misguided (at least in this case) administration that fears books and ideas but loves guns."

Australia-bashing

Just before the recent Federal election, pictures were splashed across newspapers across the country of refugees, arriving in Australia by boat, throwing their children overboard in an attempt to stop themselve being turned away at the border by the Navy.

This information, and the pictures were released by the incumbent government, who had been using a fear campaign against refugees to support their "hard line on boat people", and thust boost their very shaky popularity rating. This story was harped on repeatedly - "Look! These people just want to get in the country illegally. Look, they'll even throw their own children into the sea to try to get picked up! We should keep turning them away, or locking them up in camps for up to three years while we decide what to do with them."

The problem is, it never happened. The pictures (and the later-released video footage) were taken the day after the alleged incident, of a completely different boat which was sinking, hence the need to be rescued. The government invented the report from whole cloth to get themselves re-elected.

And who's going to pay for this? Nobody, of course. The inquiry into the event names Defence Minister Peter Reith as the culprit, but of course he retired after the election, and a reputation as a ruthless lying bastard is only going to help his career as a corporate consultant. It states that senior public servants in both the Prime Minister and Deputy Prime Minister's departments knew what was going on, but the obvious fact that this means the two politicians knew has been omitted from the report. We have the smoking gun, but chances are the bastards responsible will all get away scot-free.

Chris Pirillo posted The Blogger's Manifesto recently, and while some of it is obviously specific to Chris and/or his circle of friends ("I egosurf Daypop, Google and Blogdex nightly" and "I like linking to Dave, Doc, Evan and Cam"), the rest is a pretty good list of rules to live by if you're blogging, or journalling, or whatever.

Except for 2 and 3: "You have no right to judge me" and "If you don't like what you see, look elsewhere"

I'm sorry, but the act of performing an act in public, be it preaching on a street corner or blogging on a webserver, is an invitation for public comment, and an invitation for the rest of the world to judge what you are doing, and react accordingly.

Human beings are judgemental. It's one of the things that is hard-wired into our brains. When presented with information we evaluate it based on our existing knowledge, form opinions on it, and act appropriately. This behaviour is one of those things that defines us as the thinking animal.

Add to that the web is a two-way medium. If somebody posts their opinions and I disagree with them, there are thousands of avenues for me to post a contradictory opinion, and it's always just as valid for me to do so as it was for the original writer to exhibit theirs.

Similarly, if someone is saying something I disagree with, and I walk away and say nothing, then I am being intellectually dishonest. It is my duty to the shared medium that is the web to balance what I perceive as disinformation, with information. If I don't like what I see, I will look at it, evaluate it, and say why I don't like it.

Seeing something I disagree with isn't quite the same as seeing something that just doesn't interest me at all. Complaining about that sort of thing leads to the platoon of whiners who infest slashdot saying "That's not News for Nerds!", "It's not like it used to be!" and "Why didn't they post my article instead?" In the end, a blog belongs to the people who write it, and that right of ownership should always be respected.

It would be glib to say that the Internet is not a place for the thin-skinned. The truth is that the Internet is no more a place for the thin-skinned to wear their hearts on their sleeves than the "real" world is. In fact, it's substantially less so, because online your detractors can hide behind anonymous, flaming identities.

So, if you blog, and you get readers, you will be judged. If you don't want controversy, don't be controversial. If you don't want your opinions examined, don't be opinionated.

Contradictory opinions welcomed.

(The Australian Newspaper, February 14 2002, Front page)

Phone bill has a bastard fee

The extra $NZ337.50 charged to James Storrie's mobile phone account gave him a bit of a fright. But the Kiwi businessman—who had earlier complained to Telecom New Zealand for wrongly disconnecting the phone—was stunned when he read the explanation printed on the bill: "Penalty for being an arrogant bastard."

I wish I could have done things like that to people when I was in tech support. :)

Does anyone out there, anyone have an example of a non-trivial application that benefitted from the use of XSLT more than it would have if developers had used another language to manipulate the XML?

XSLT is almost the perfect example of the product of architecture astronauts. I have this vision of the working group's deliberations as they came up with it. They'd have started off with a pretty simple premise: Let's write a language to convert one XML document into another XML document. Good starting point. There's lots of benefits to having this. OK. There's a need for this, lots of people would find it useful.

OK. Now wouldn't it be cool if the language itself was valid XML? Why? Because... er.. because then you'd be able to make an XSLT document that takes another XSLT document and converts it into XSLT! Wouldn't that be cool? Er, yeah, sure. And it'd also make it impossible to read, and change even the simplest operation into a morass of tags and attributes, just so we can get some weird, inflexible kind of code reuse that's a total bitch to manage compared to the alternatives.

Meanwhile, despite the whole move to completely separate logic from presentation so web designers can write templates, and coders can write the code that fills them, let's write a language that makes template and logic inextricable.

But... but doing everything in XML is cool! In the future, everything will be in XML. Your shorts will be in XML! We'll do it that way anyway! Oh, did I mention that we have to do it this way, because there's no way to take two documents as input, and merge them into a single output document? That would make things far too complicated. It's so much easier to write an XSLT template that takes the first document, and uses it to produce a new template that you run the second document through. Isn't that so much better? Of course, it's dog slow to code because the programmer has to wrap his head around all these nested meta-templates, and dog slow to execute because the processor has to recompile the intermediate template every time, but it makes things so much more conceptually clean!

Oh, and Bob here's a professor, and he's really into functional programming and recursion. Let's make it a functional language. Why? Well, because functional programming is really clean and neat, and we all studied it at university and haven't been able to use it since! Oh... you mean what do we tell everyone else? Well, I guess if we did that, then an XSLT processor would be able to parse lots of bits of the document at the same time, rather than having to go from one end to the other and saving state along the way. What do you mean, "there's probably a very good reason you've not used functional programming since University"?

Practical benefits? Oh, I'm sure it'll speed things up in the long run, even if it means we'll make simple things like a for loop take up four pages of coding, force any non-trivial operation to use heaps of recursion, and generally make programming in the language an exercise in gritting your teeth and fighting through it. For the moment, we'll just ignore the fact that the entire trend in web application programming has been towards sacrificing straight-line speed of applications in order to shorten development time.

Let's face it. In pretty much every language, coverting an XML document into an object graph is trivial. Massaging objects to come up with a document is trivial. XSLT takes these two trivial operations, and makes them intensely painful. The whole language, the whole specification, every single book written on the damn subject needs to be burned, page by page. I'll volunteer with the flamethrower.

What's Wrong with OPML

  1. The most recent expansion state of an outline node is not an attribute of the node itself.

    For editing, this means that when you insert or delete an outline node, you have to recalculate all the line-numbering and regenerate the "expansionState" up the top of the document.

    For displaying, this means that the user-agent needs to keep track of line numbering of outlines to determine which should be displayed. If expansion state were an attribute of the nodes themselves, you could choose to display (or not display) children of an un-expanded node using simple CSS selectors.

  2. Outline node content is an attribute of the outline node.

    For editing, this means that a lot of characters that would normally be fine have to be escaped as entities, making the document less humanly-readable.

    For displaying, this means that to display the OPML file in an XML/CSS aware agent, you first have to perform a transformation on the OPML file in order to turn the attributes into text nodes. This adds a completely unnecessary step - usually involving XSLT, one of the world's most sucky languages. If outline content was just a text node, you could display OPML purely using CSS, with no transformation step at all.

Now this is stupid. I'm watching bits of the Winter Olympics, because there's nothing else on TV. It's the ski-jumping. You'd think that ski-jumping would be a pretty simple thing - guy goes down a slope, you measure how far they go before they land.

But no. Ski-jumpers get style points. Five judges give them scores that get added to the length of their jump. How lame is that? Surely the best style for a ski-jump is the one that makes you land the furthest from the take-off ramp? Could you imagine this sort of thing happening in the long-jump? "Well, I'm sorry Vladmir. You jumped further, but Terry's landing was just so much more graceful, so we're giving it to him."

lonita posted a complaint from a Trillian user about AOL blocking access from Trillian users

Trillian is NOT hacking into AIM servers. Trillian does NOT damage or take control of AIM servers. Trillian merely sends communications to AIM servers; similar to a person sending an email to an AOL user.

It's nothing like sending email. Email is a cooperative, distributed system. There are millions, maybe tens of millions of email servers across the world, sharing the load. When you send email to an AOL user, it's with the understanding that your ISP also runs a mail server, and AOL can use that to get mail back to you. AIM is a centralized system. When you send an IM to an AOL user, there's no server that _you_ are paying for that is taking load off AIM.

In the face of all of this, AOL even has the audacity to file a lawsuit over Microsoft's treatment of the Netscape browser (now owned by AOL). Although IE had preferential treatment on the Windows desktop, at least Microsoft allowed Netscape to install & run on Windows. AOL is using their instant messaging monopoly position to try and COMPLETELY BLOCK Trillian from communicating with AIM users.

AOL has nothing resembling a monopoly on instant messengers. These are old statistics, but only because I couldn't find the more recent ones that show MSN Messenger getting bigger and bigger at AOL's expense.

In a survey of instant message usage in the United States released Thursday, Internet measurement company Media Metrix (a Jupiter Media Metrix company) reports that in just over a year, Yahoo and Microsoft have each amassed IM memberships totaling roughly half the population of AOL Instant Messenger (AIM). In addition, the two are increasing their audiences more rapidly than any other instant messaging companies.
As of August 2000, Yahoo Messenger had 10.6 million U.S. users, while MSN Messenger Service hit 10.3 million, the study shows. During the same period, AIM reached 21.5 million users, and AOL's ICQ subsidiary had 9.1 million, not counting international usage. ICQ numbers actually showed a decline from the previous year, when the service had more than 10 million active users.
In addition, nearly a third of AIM users also actively used a second IM client, Media Metrix found.

Yes, AOL sucks. Yes, their policy of not letting people interoperate with their Instant Messenging service is really stupid, and hurts consumers. Yes, we should all use some other service instead, which leaves us with MSN Messenger (Yay! Support an even more rapacious company instead!), Yahoo! (The poor cousin), or Jabber. (Remember, boys and girls. ICQ is owned by AOL too. So's Winamp, better stop using that as well).

Let's tell AOL how stupid they are for not interoperating. Let's remind AOL that the big problem that the Internet suffers from is people putting investors and advertisers over users, and forgetting that it's the users who are ultimately responsible for delivering money to the investors and advertisers. But let's not pretend that AOL are somehow obliged to allow people to use its service however the hell they want.

Addendum: I agree with everything Lonita said after the quoted post, I just don't agree with the polemic in the post itself. :)

In the spirit of the "Five favourite albums" thing, how about "Five websites other than Livejournal that you try to visit most often (preferably daily)"?

My list is particularly nerdy

A meme from mtffm. Unfortunately I couldn't just stop at five albums.

My Top 5 Albums (in no particular order) (as of Feb 8 2002, this list changes a lot) (only counting contemporary music).

  • Disintegration, by The Cure. (To hell with "no particular order" for the top spot, this is number one)
  • Kiss Me Kiss Me Kiss Me, by The Cure (To hell with one album per band, too)
  • Portishead, by Portishead
  • Nevermind, by Nirvana
  • Aenema, by Tool

Honourable mentions: The Wall (Pink Floyd), Abbey Road, Revolver and Sergeant Peppers (The Beatles), Grace (Jeff Buckley), Different Class (Pulp). Doolittle (The Pixies) Artists whose body of work (or best of) (or multiple albums) belongs on the list but individual albums just didn't cut it: Blur, They Might be Giants, The Smiths, Massive Attack, Radiohead, Sonic Youth, Regurgitator, Madness, Elvis Costello, The Police, New Order, Joy Division, Crowded House, Queen, The Church, Nick Cave, and I've probably forgotten quite a few.

Also see http://www.pastiche.org/wiki/AlbumsEveryoneShouldHaveACopyOf.

Phew!

Linux-loving McNealy dons penguin outfit. In a move to erase doubts about the sincerity of Sun Microsystems' move to embrace Linux, CEO Scott McNealy took the stage at the company's annual meeting wearing a penguin suit. [CNET News.com]

From the "images we'd rather do without" department.

On logging on to a Unix server, the sole welcome message was "Unauthorized use not permitted."

Well, duh.

Well, it's released: Java 1.4 overview from Sun. From the first paragraph of the article:

212, 504, 1781, 2130, and now 2738. These are the number of classes and interfaces in the standard edition of the Java™ platform, from versions 1.0 through 1.4.

That's too many. Stop now. It'd be really cool if 1.5 had 500 classes, and a bunch of optional modules.

Don Box on the Importance of Being WSDL:

I quickly found out that C++ programmers are the smartest programmers in the world, as each one I met would quickly point out to me.

Don Box writes an emotive plea in favour of WSDL, from the point of view of a programmer in strongly typed languages trying to interface with weakly-typed scripts. [Scripting News]

As nifty as scripting languages are, I'm still of the opinion that strongly typed languages scale better (in terms of development, not runtime) than weakly typed languages. Sure, if your unit test coverage is heavy enough you can compensate, but why write extra tests just to cover something that your compiler can catch if you're using types?

I also liked the line: I quickly found out that C++ programmers are the smartest programmers in the world, as each one I met would quickly point out to me.

http://trustworthycomputing.com. Minimalist nerd humour. I like it.

In answer to the question "How stupid can people be?" we discover the answer. "Really fucking stupid." - They Want Their ID Chips Now (Wired News).

Now let's see. We have a chip that can hold "six lines of text" I assume that's a standard 80-column line - 6 * 80 = 480, which is close enough to 512 bytes to make it a reasonable guess. The chip has no processing capability, and the data on it can't be changed. That makes it about as useful for identification as having a henna tattoo that says "Hi, I'm Charles", and significantly less useful for medical purposes than the Medic Alert bracelet my friend from school used to wear because of his haemophilia.

People. Feh.

In answer to the question "How stupid can people be?" we discover the answer. "Really fucking stupid." - They Want Their ID Chips Now (Wired News).

Now let's see. We have a chip that can hold "six lines of text" I assume that's a standard 80-column line - 6 * 80 = 480, which is close enough to 512 bytes to make it a reasonable guess. The chip has no processing capability, and the data on it can't be changed. That makes it about as useful for identification as having a henna tattoo that says "Hi, I'm Charles", and significantly less useful for medical purposes than the Medic Alert bracelet my friend from school used to wear because of his haemophilia.

People. Feh.

Dave Winer responded to my Radio problems. [Scripting News] I guess that means I now have a Dave Number of 1.

Yes, Radio needs better documentation. If it's any help, the only language I ever managed to learn purely from the product homepage was PHP. It's well organised, very easy to navigate, and the open commenting feature on each page means that the community fills in the gaps over time, as well as adding tips, caveats and useful patterns.

I get the feeling that is a lot like PHP - a simple language where the power lies in the library of available functions (and in Radio's case, the integration with the Object Database). The difference with Radio is that it's putting this power on the desktop rather than server.

I also get the feeling that Manila, while good for blogs, doesn't really have any mature templates when it comes to organising information non-chronologically. Its search function is bad enough that it makes it harder to find information (if it was absent, I'd have used google to start with), its directory template is almost painful to use, and it doesn't seem to organise meaningful relations between pages very well.

A weblog, and discussion groups/bulletin boards are accretions of knowledge. You read them day by day, and you absorb information as you go. Occasionally, you'll need to find something that happened a week ago, and you go back through the calendar. Very rarely, you'll think "Yeah, that was mentioned last year", and you'll need a search function. Other than that, the information put on a blog fades with time, and rarely organises itself along any other lines.

Compare this to, say, Wiki, where following information chronologically is impossible, directories are almost always only one level deep, but the site self-organises on the way pages (information) relate to each other.

Anyway, I've digressed.

Memo to self: write story about how Radio's price-tag makes it more likely to need good documentation than a $10,000 program, but least likely to get it than Open Source.

I tried to start programming in Radio today. I didn't get particularly far, basically because it was so difficult to find out how any of it worked:

Addendum, October 2002. There never was a part two to this series.

DocSpotting

I've been using Radio 8 about a month now, playing on my weblog, getting somewhat addicted to the outliner (and then very annoyed with its lack of some Very Simple Features like multi-level undo, but that's another story). One of the attractions of the suite was that it's not so much a weblogging application, as a platform that comes with a weblogging application attached. Being a web application programmer by trade, that sounded pretty nifty to me.

So today being a slow day, I decided to give Radio the programming environment a spin. My plan was to write a simple To-Do list application - which in practice basically comes down to "fill in a form, submit it, store the results in the object database, then read them back and list them." Simple enough, should be a good introduction to the bare bones of the system.

I started with Dave Winer's Hello World sample. Neat, it worked. Then I thought "what if instead of calling clock.now(), I write my own script in the database, and call that? I messed around with Radio.root a bit, changed the page, and viola! It worked. I was feeling pretty good at this point, so I went down to HMV and bought the new NIN live CD, and "Origin of Symmetry" by Muse.

It was when I came back that I ran into trouble. Maybe Trent Reznor and web applications just don't go together. Or maybe it was the terrible information architecture of the Radio homepage. Click on the "Developers" link, and you get a neat Hello World tutorial, and then follow-through links to two slightly more advanced Hello World tutorials. Tutorials are great, as introductions, but they only teach you how to do exactly the thing described in the tutorial. A ten line example script is useless without a link entitled "And this is the page you read to learn the syntax of ". In the first tutorial there was a link to the directory of Frontier verbs, but without any context, that was totally useless.

I rushed around the site a bit. I looked at the hideously reader-hostile Directory. I tried the Search Engine, which like the search engines on all Manila sites, seems designed to give you everything except what you're looking for. I trawled through the discussion group until I found that the page I was really looking for was : Programming Pointers, which seems to only be linked to from that discussion group post, not from anywhere I could find in the main structure of the site. I bookmarked that page, because I knew I'd never find it again if I didn't.

Okay. Making progress. I devoured the page on the Object Database. Cool. I finally found the references for script writing and . Neato. Now to find out how the web stuff ticks. W00t! There's a Website and Scripting Tutorial.

Oh great. This has absolutely nothing to do with the way things seem to be done in Radio. In fact, it's not what I want at all. I hunted through all the links I'd amassed in my searches thus far, and was well and truly stumped.

Writing a web application is dead easy. I've done web programming in Java, Perl, PHP, ASP, Ruby, even Unix shell scripts, and it's always the same formula. A request comes in. You look at the request, find out from it what the user wants, do it, and then send back a reply. Given that the middle bit is what we call at work a "simple matter of programming", this means that the important things to find out from your application environment are:

  1. How do I get at the stuff in the request?
  2. How do I send stuff back?

I figured after completing "Hello World", I had the second one sorted. The first was the problem. After half an hour of poking the website in vain, I found absolutely nothing that could answer this simple question for me. Not willing to let something this trivial daunt me, I decided to look at the way the website built into Radio functions. It only took me another half hour to find the script that powers the News page, which answered my question. There's this thing called the Page Table, which you get from the html.getPageTableAddress() verb. Finally. More progress.

But what is in the Page Table? What indeed. I spent the next futile forty-five minutes trawling the Frontier site again, catching glimpses here and there of the elusive Page Table, but never getting a full description of what it could do, or how. Once again, the search function was no help at all - doing a search on "pagetable" on frontier.userland.com didn't find half the stuff I found manually. Grrr.

In the Website and Scripting Tutorial, there was a link Your Fourth Macro: the Page Table, which had some cursory information about the Page Table. There was a "More about the page table" section at the end, with a link that pointed back to... The frontier homepage. Useless.

On another page, I was helpfully pointed to a section of the root database where I should have been able to find the Page Table for the most recently rendered page. But this being Radio, not Frontier, the table wasn't there.

It's at this point I gave up. This story may or may not continue - on one hand I don't like being beaten by software, it's a pride thing. On the other hand, there are so many other development environments out there that I'm quite willing to forego the niftiness of Radio for something slightly less nifty, but significantly more effectively documented.

And now for something completely different. From my friend Lonita (who got it from someone else)...

Dr. Leroy, the head psychiatrist at the local mental hospital, is examining patients to see if they're cured and ready to re-enter society.
"So, Mr. Clark," the doctor says to one of his patients, "I see by your chart that you've been recommended for dismissal. Do you have any idea what you might do once you're released?"
The patient thinks for a moment, then replies, "Well, I went to school for mechanical engineering. That's still a good field, good money there. But on the other hand, I thought I might write a book about my experience here in the hospital, what it's like to be a patient here. People might be interested in reading a book like that. In addition, I thought I might go back to college and study art history, which I've grown interested in lately."
Dr. Leroy nods and says, "Yes, those all sound like intriguing possibilities."
The patient replies, "And the best part is, in my spare time, I can go on being a teapot."
Winamp has started nagging me about a new version being available.

Bugger off, Winamp. No, really, bugger off. If I wanted a new version, I'd go look for it. The simple fact is, all I want is a program that plays my mp3's, and manages my playlist. If I wanted anything more, if I wanted bells, whistles, minibrowsers and related shite, I'd go looking for them.

Software reaches a certain stage where it does everything a reasonable person wants it to do. After that, any upgrades are just dancing paperclips and changing file formats to force people to upgrade. This is why Microsoft wants you to rent their applications now instead of buying them - people are starting to realise that Office '95 does everything that Office XP does, just with a different colour scheme and an incompatible .doc file.

Of course, if you're making software, the last thing you want is for people to stop upgrading, even if the software is free. Stagnation is death and redundancy. So you do stupid things like nagging perfectly content users into trying your new version.

Well, it's only so long, only so many repetitions of that popup window before the annoyance exceeds my inertia, and I go looking for something that won't tell me off for not keeping up with the Joneses..

(Some thoughts in this entry stolen from Joel Spolsky)

Winamp has started nagging me about a new version being available.

Up yours, Winamp. No, really, up yours. If I wanted a new version, I'd go look for it. The simple fact is, all I want is a program that plays my mp3's, and manages my playlist. If I wanted anything more, if I wanted bells, whistles, minibrowsers and related shite, I'd go looking for them.

Software reaches a certain stage where it does everything a reasonable person wants it to do. After that, any upgrades are just dancing paperclips and changing file formats to force people to upgrade. This is why Microsoft wants you to rent their applications now instead of buying them - people are starting to realise that Office '95 does everything that Office XP does, just with a different colour scheme and an incompatible .doc file.

Of course, if you're making software, the last thing you want is for people to stop upgrading, even if the software is free. Stagnation is death and redundancy. So you do stupid things like nagging perfectly content users into trying your new version.

Well, it's only so long, only so many repetitions of that popup window before the annoyance exceeds my inertia, and I go looking for something that won't tell me off for not keeping up with the Joneses..

NEW YORK (Reuters) - Scientists at the World Economic Forum predicted on Friday a grim future replete with unprecedented biological threats, global warming and the possible takeover of humans by robots. [Link stolen from excess bloggage

Ellison: Oracle's "whole business" will run on Linux

By "whole business", he means he's replacing three HP-Unix boxes that run the company's business apps with an Intel/Linux cluster. Ellison's prediction that big boxes are going to die is a trifle premature. IBM's Great Server Heist campaign comes to mind as a counter-meme.

A nice aside comes when you look at where this puts Microsoft in Server-Space. On one side, you've got the Big Boxes. You can't run NT on anything but Intel hardware, so Microsoft can't go there. On the other side, you've got the clusters of commodity Intel hardware. For NT servers, the OS licensing costs are quite likely going to approach the amount you're spending on hardware. That's a powerful incentive to go with Linux.

(It's also a rather loud warning to IBM and BEA's Java application servers. JBoss is at about the same stage today as Linux was when it hit kernel 2.0 - used by a lot of hobbyists, but with the big players looking down on it as untested, and missing several enterprise features. I have this feeling that it's only a matter of time.)

an overview of JXTA. Gene Kan gave an overview of JXTA. He admits that Jini is dead; Java was holding it down like a weight. The edges of the universe are growing faster than the center but inequality of load is growing, not shrinking. Porn is too hard to find on the Internet today. They're using the Apache license; screw Richard Stallman. He touts that JXTA isn't IP-only, which is a dubious advantage IMO. [Hack the Planet]

I sort of liked Jini (I own enough bloody books on the subject), but it was one of those things that was really hampered by Java's more bondage-and-discipline tendencies. It was also a complete bastard to get an environment running, but from what I've seen, so's JXTA.

The Onion: Judge Orders God to Break Up Into Smaller Deities.

WASHINGTON, DC: Calling the theological giant's stranglehold on the religion industry "blatantly anti-competitive," a U.S. district judge ruled Monday that God is in violation of anti-monopoly laws and ordered Him to be broken up into several less powerful deities.