- From: Cohen, Aaron M <aaron.m.cohen@intel.com>
- Date: Thu, 3 Jan 2002 13:39:40 -0800
- To: "'svanegmond@tinyplanet.ca'" <svanegmond@tinyplanet.ca>
- Cc: "'www-tag@w3.org'" <www-tag@w3.org>
Stephen: Actually, I was referring to the specifications and the architecture and systems that they define, I do think that the understandability of the spec comes into play here. The specs are what get implemented. And besides, the consequences of a simple architecture being described by a complex spec can only be to slow adoption and usefulness. So I do think that there is a correlation here. I don't want us to get sidetracked into an examination of CSS2, but for purposes of illustration, in the specific case of the CSS2 specification, I would not call it simple (and I'm not sure what you mean by "Which, personally, I haven't found"), but I am not trying to compare say, the complexity of CSS2 verses HTTP 1.0, but rather the complexity of solving a problem one way verses another. It may be correct to say that CSS2 is 100x (to pick a number out of the air) more complex than HTTP 1.0, but that's not really the issue since they solve different problems. The real issue is whether these specifications and technologies more complex than they need to be, and can we do better in the future by putting more emphasis on simplicity. HTTP is amoung the most widely adopted and implemented technologies ever. Lots of people have successfully understood and implemented the spec. It's pretty easy to understand and the spec is not too long. So it is not hard to make the conclusion that, even if not optimal, it is "pretty close" to being as simple a solution to the given problem as it can be. It is certainly "simple enough". With CSS2 being much longer and bigger, it's not so clear that is the case. Without comparing it against another technology and specification, I am not saying that it is "too big" or "too complex". But I do think that it is fair to say that it is not obviously simple. And that leaves a lot of room (theoretically, I'm not suggesting here that we replace CSS) for less complex approaches that may solve the same problem. -Aaron -----Original Message----- From: Stephen van Egmond [mailto:svanegmond@tinyplanet.ca] Sent: Thursday, January 03, 2002 1:06 PM To: Cohen, Aaron M Cc: 'www-tag@w3.org' Subject: Re: Is "simplicity" a useful architectural constraint? Cohen, Aaron M (aaron.m.cohen@intel.com) wrote: > complexity = (time to implement) + (time to understand specification) > simplicity = 1 / complexity By this metric, the CSS2 specification is outrageously complex and not simple at all. Which, personally, I haven't found. It's nearly 4 years old now, and you might say that support is solidifying now. Keep in mind that we're talking about architecture, and not individual specifications or technologies. In software, software that has low complexity or high simplicity is usually a pleasure to work with: it's easy to improve, refine, and explore. If some software modules need to be tossed, it's not a problem. In the web architecture area, substitute "technology" for "software modules" and you get an idea: are web technologies easy to improve, refine, and explore? If given technologies prove to be nightmares, is it easy? The highly interdependent nature of current XML-related standards tends to decrease their simplicity and boost their complexity. James Clark's commentary before Christmas might provide some interesting insight on that angle - see the other thread. - Steve
Received on Thursday, 3 January 2002 16:39:49 UTC