Re: CSS is doomed (10 years per version ?!?)

On Thu, 30 Jun 2005, Orion Adrian wrote:
> > >
> > > One small problem. No one implemented CSS 2.0. No one really even 
> > > implemented all of 1.0. My guess given those two data points: no one 
> > > will fully implement 2.1.
> > 
> > What parts of CSS1 are not implemented by Mozilla, Opera, and Safari?
> 
> I'm fairly sure that I can find some bugs in their implementation. It's 
> been awhile, but give me time.

Oh well sure, bugs. All software has bugs. You'll never find an 
implementation of CSS (or any other spec) in which I can't find bugs. Same 
goes for any alternatives to CSS, too. There are bugs in GDI+. There will 
be bugs in Avalon.

That doesn't affect my point, which is that CSS development is ongoing, 
and that CSS2.1 has been revised just like GDI+ has been revised.


> > As you say, I'm going to say that we do. There's a limit to how many 
> > changes can be made, though, without breaking existing sites (those 
> > that were written based on the previous version). And we cannot do 
> > that.
> 
> That's the beauty of moving this solution to a new language

So what, you want Web browsers to implement five dozen styling languages? 
Implementors will never do that. Implementors are already reluctant to 
implement new features, let alone new languages; if entire new languages 
were being released every other year, replacing the previous ones, the 
standardisation process would completely fail.

Not to mention that each language would need a whole separate test suite 
(who is going to write that? We have enough trouble getting test suites 
written for the "old and crusty" CSS specs).

And of course if you keep replacing languages, you're very quickly going 
to lose the interest of Web authors, who, by and large, have enough 
trouble learning one language without having to start over every other 
year. They would just stick with what they knew and ignore the new 
languages.


> but honestly breaking existing pages is the group's own fault. 
> Versioning was invented for a reason.

Versioning is a cop-out solution that doesn't actually solve anything and 
introduces a raft of new problems, for example lack of backwards- 
compatibility with existing UAs, and the requirement that every user agent 
implement every past version of the spec as well as the current one, 
massively multipling the cost of implementation (requiring exponentially 
more test suites, exponentially more testing time, and resulting in 
exponentially more bugs).

It would also massively increase the complexity of the code base and the 
download size of the user agents, something that user agents are actively 
competing on.

In short, versioning doesn't work on the Web, and technologies that rely 
on it are pretty much doomed.

-- 
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'

Received on Thursday, 30 June 2005 12:04:07 UTC