S'identifier - S'inscrire - Contact

CommunityWiki
Jam session in wikilandia

Local Names. Capitulate!

Source :

Developing Free Software, or our computing infrastructure, or whatever have you call it, can be one of the most infuriating, frustrating, difficult, mindbogglingly insane processes in the world.

If you want to hear this poor traveler’s sad tale, read on.

It begins… with an idea.

In this case, I saw just how annoying it was that:

  • community pages are sort of hard to link to, from blogs.
  • In fact, it’s sort of hard to link to just about anything, from just about anywhere.
  • The only exception is in linking from a wiki to a wiki.

What’s so magical about linking in wiki? The magic is this: You just type the name of a page, and it automatically links for you.

So, I go: “Gee, links are really cool. Linking is really neat. There’s a ton of places where I’d love to link, but I just don’t do it, because it’s hard to link.” Hard as in time consuming, you see: There are two obstacles, generally: Typing out whatever you need to link. (For instance, typing out an A HREF, or remembering to put the brackets around something, or whatever.) Second is actually figuring out what the hell weird URL it is to get to the page you want.

Sure, some are nice, such as: “www.google.com”. Nobody has an real confusion over that one. But what about http://www.userland.com/whatIsStopEnergy..?

Not so easy to remember, though you might, like I do, just call the page “Stop Energy.”

So, it’s in this frame, that I invented an idea: “Local Names.”

The idea, basically, is that we can publish lists of names. Names bound to URLs.

That’s basically it. Now, inevitably, the namespacing problem comes up: “Sometimes I want to use the Community Wiki’s page on Stop Energy, sometimes I want to use the page that I personally called Stop Energy.” So, there’s a feature where you can link other namespaces, and even default to them if something’s not found and you still want it.

And there’s some provisions for metadata. So for example, in Sister Sites, there’s an icon representing the namespace. Or, someone may name their namespace, or want to give the author’s name. Fine, fine, fine, it’s all accounted for.

Now, this is cool. This is a general form for creating name-URL bindings. It’s well thought out, we’ve been thinking about it for about a year and a half now, probably more. Maybe we’re at the two year mark now, I’ve sort of lost track, what with all the history and passage of time and all. I have some memory of working this at my old apartment, which was a year and a half ago, so I think it’s pretty old. I’ve got some notes on it from two years ago.

Anyways: So, here’s where the rubber hits the ground: Other people. I’ve tried really hard to get people interested in Local Names, and to see the value of Local Names.

For some reason, I keep hitting real solid resistance to the idea. And my problem is that the resistance, is, to my eye, utter nonsense. I have no comprehension of why the resistance is there. It ranges from completely ignoring it, to saying: “I don’t need it.”

Of course you don’t need it. Nobody needs anything. We can all live as baboons in the trees. We don’t need anything. You can keep looking up links manually in your web browser; Why the hell would you need something to automate the task?

Here are my two main target audiences, initially:

Sure, sure, sure: Plugins. And that’s something I plan to write, at least for WordPress. But that’s hardly strategic: I’ll be writing plugins until my head explodes. If I can get Local Names in Textile, for example, or at least in the Wiki’s interlink tradition, the system is golden, and it’ll “just work.”

It’s not like Local Names makes these people’s lives harder: You have to do this stuff anyways.

For example, in MarkDown, how do you perform linking? How do you do it, without having to type out a URL, all the way, over and over again? Well, looking in the documentation, we see the details of a system for making lists of name-URL bindings.

Now, if you have a set of name-URL bindings that you want to use several times over, you have to put that list at the bottom of every MarkDown page that you want to render. Oooorrrr, we can conceive that you could just link to a freakin’ namespace description. Right?

I mean: The Markdown developers are already faced with this problem. I’m not introducing any unnecessary foreign elements here.

And now, it’s the wiki developer’s turn.

They already realize that they are going to have name canonicalization issues.

They already realize that they need to supply an image for their Sister Sites.

They know that there are wiki who have URLs with numbers identifying pages, rather than text in the URL. (One good friend went so far as to tell me: “Well, if they have node numbers rather than page names, then they are not a wiki.” I don’t know why Swiki can’t be considered a wiki, simply because of how it shapes it’s URLs.)

But God help the Wiki developers, if they should be as mad to use Local Names. You’ll excuse me if I cry “NOT INVENTED HERE!”

I mean, the Wiki developer’s have to supply this sort of information anyways.

Why not use:

  • the specifications that I’ve made
  • the servers that I’ve made
  • the data format that I’ve worked out

The great fear seems to be that the data format might be applicable beyond just their one particular use case.

 

“We want something that will do Sister Sites, and nothing else.

This is their great reason.

And it’s like: People who have nothing at stake here, suddenly become greatly concerned about the format. Suddenly, all their energy is devoted to: Understanding the particulars. Making sure it’s perfect. Making sure that there isn’t some small reason, no matter how small, that this system shouldn’t be used.

Give me a fucking BREAK!

Augh! How do you penetrate through something like this, to just make something happen?

This small thing is something is at that cusp of just quite petty enough that people feel the need to argue about it, even though it matters nothing to them.

And I cry: BIKESHEDDING!

I want to smash “simplicity.” Everyone’s so god aweful concerned that every solution to every problem must be maximally simple.

Sounds nice, but now you have to work out: What is maximally simple?

I want to smashdo the simplest thing that could be possibly work.

And I earnestly do not see how anything is significantly simpler than using Local Names for wiki page transfer. I just simply don’t see it. All I see is time saved, by not rewriting what I’ve already written, and what not.

“Do the simplest thing that could possibly work” seems to mean: “Make sure that this software can’t possibly be used for anything else.”

Tell someone that Local Names makes Sister Sites a breeze, and that it already supports it, and they’re glad. Tell them that Local Names can also be used to help blogs link to wiki, and: Oh My God! Shut the Doors! Close the Windows! There’s a Feature here! There’s a Feature We Didn’t Need! Good Lord, Save Us!

It is immaterial to these people, whether the format is not substantially different than what they’re going to make otherwise.

Faced with the possibility of exposing inconsistency in their thought, their job is now to show just how substantial that difference is. The smallest difference, suddenly becomes a huge issue.

“WHAT?! You have to put an “LN” and a space in front of the name-URL bindings? But that’s like– 3 bytes per line! Of sheer overhead!”

Nevermind that the same person uses XML in just about everything they write.

Really, the Stop Energy article is right.

People will resist a new idea tooth and nail. They will concoct a marvelous mixture of reasons and arguments against it.

Once the threat of being shown wrong props up, they need to make sure that they don’t give in easy. They’ve said your idea is wrong, now they have to show that they’re right. Incosistency is a sign of weakness, after all.

Now, let’s take an alternative spin on it:

Let’s say, that, for some reason, I’m wrong. I’m actually, bona fida, wrong. Forget “embrace the possibility of failure,” since lives are at stake here. Let’s say that, for some reason, I’m actually, bona fida, wrong. For deep metaphysical reasons, the whole approach of Local Names is wrong.

There is no place where Local Names is a good choice. We should be using plain links across the Internet, or something like that.

What then?

Then I’m basically out here, spinning my wheels, for years without end.

See, I’ve learned this thing, from this guy, named Napoleon Hill. He said to be persistent. He’s got all these stories of people who stopped one foot short.

I know from personal experience, that this is true. Some things come very quickly- you invent something, or you write something, it gets picked up, and then it takes on a life of it’s own from there. You hardly have to do anything at all.

But there are some other things, that take a really, really, really long time to see through. And it can be really hard. Michael Crichton”> wrote Travels, and talks about climbing mount Kilimanjaro. He wanted to give up, but he didn’t. He said: “Quitting is Contageous.”

I know I’ve seen developers give up on things after a few months. I’ve done it myself before. But I think that persistance is this key thing. And I’m going to persist.

Now unless somebody can show me a damn good reason why Local Names is a bad idea, I’m going to persist.

Look, you’ve got me all wrong here: I’m dying for a good reason to stop working on Local Names. I am just waiting, eeking, hoping, searching for, scrawling around, struggling to find a single good reason to stop work on Local Names.

There are gobs and gobs and gobs of great projects that I’d love to contribute to, there are gobs and gobs and gobs of good ideas I’d like to see through. I’d like to make the SVG wiki. It’s easy, it’s simple. There are all sorts of great things I’d like to work on. But I don’t work on them because I have to finish Local Names.

The only reason I can stop working on Local Names, is being confronted with a good reason that it’s a bad idea.

And every single time I step into my mind, and bring together all the various, myriad, wonderful ideas that people bring to me, about “this is bad because it’s not simple,” or “this is bad because I don’t need it,” or “this is bad because it’s not an exact 1-1 perfect fit with what I want,” or “this is bad because it does too much,” or “this is bad because it does too little,” — in all of these cases, where I’ve looked at the complaint and where I’ve looked at Local Names, I’ve found: Local Names is the right choice.

I have not found a single idea that shows why Local Names is a bad idea.

And thus, I can find no justification at all for leaving Local Names. This is the right idea, this is the right time, this will make things good for everybody, this will make life easier for wiki writers, wiki developers, blog posters, comment posters, markup system authors, for everybody.

It’s just a freakin’ good idea.

It’s not that it’s “my idea.” I’ve had a ton of bad ideas. And I quit them as soon as I realize it. Shift to something deeper, more important.

This is not one of them.

Lion le 21.01.06 à 18:35 dans News / Actualités - Version imprimable
Article précédent - Commenter - Article suivant -