For background see: Save the Internet with Rev Canonical, and A rev="canonical" HTTP Header
For the moment, the entire movement is moving way too fast. There are problems in the current suggested implementations, people are suggesting solutions (often different ones), that are then getting adopted almost overnight by some rather large sites.
This is foolish.
While I’m all for testing things out, and seeing how they work in the real world, I’m not sure that’s how I would describe what’s happening now. Presently we have standards being suggested on a variety of blogs, then being adopted in a variety of different ways on large sites trying to support the movement.
If this doesn’t slow down very quickly (and it presently looks more like a runaway freight train) at least one of the following will happen:
- Different sites will implement it differently, and not want to change. There’s no formal standard anyways so why should they move over to the other model. Leaving us programmers to implement like three different solutions.
- Security problems will become ingrained in the practiced version of the pseudo standard leaving sites unwilling to implement it because of the risks.
- The final version will be such a hack, that adoption will be permanently crippled because people are unwilling to import such hacky code. Hacky ugly solutions are exactly what you end up with when you’re in a rapid cycle of problem discovery -> instant solution, as opposed to being willing to step back and consider everything at length.
- A standards body like the W3C will step in, see that there is a problem with the current implementation and standardize on something else. Leaving us with a standard, and a pseudo standard.
I want this to succeed, I just feel that our present speed (as opposed to course) is leading towards disaster. Take a look at PHP and the whole namespace situation. The core team had a nearly completed solution, then threw it away to do better. This was a great decision, short term pain, great results in the end. The PHP team was able to do that because they're… a team. I'm not sure that can happen here, with the variety of people blogging what they think should work in disparate locations, it will be hard for anyone to move backwards, throw stuff away and improve.
Things that would help
- A centralized location for the discussion, blogs and blog comments are no way to solve real problems
- A clearly defined problem. Unless you can describe and scope the problem you're trying to solve you can't work or discuss it effectively. If the problem included language like "URLs greater than 40/25/15/10 characters can be problematic, the goal is to allow content to suggest a URL under this length" we would at least know what we were aiming for.
- A grace period between suggestions and adoption. Developers hate re-writing code, if things were set in stone for even a few days before people raced out and did it, those few days would give researchers and tinkerers an opportunity to come up with solutions to not-yet-live problems, as opposed to live ones.