My previous entry The New Amateurs has generated so many interesting comments that I decided to reply to them all in a new entry, which will continue the discussion.
To my astonishment it turns out that some New Amateurs read my site, and that some of them even agree with me. It seems they aren't even too much annoyed by the label "amateurs". Great!
Let's review a few of their arguments.
So, my first question to the professionals is: Is something better just because it is CSS? I don't subscribe to this idea but that seems to be the attitude of the web design elite. Here is your chance to convert one of the amateurs.
My answer is Yes. A website that uses CSS is better than a website that doesn't. Not because every CSS site is inherently superior to every table-based site, but because CSS is increasingly becoming a symbol for the new way of creating websites.
Since CSS offers the clearest break with the past, it is often a way of getting people to understand the new way of making websites. Apart from the well known advantages such as ease of maintenance, bandwidth savings, and increased search engine and assistive device friendliness, the use of CSS in a website shows that its creator is paying attention to what's going on in web development land.
And the quiet revolution is not just about CSS, it's also about accessibility, usability, or W3C DOM scripts that try to create interesting interfaces without repeating the DHTML nonsense of six years ago. It's about a new way of thinking about websites, about keeping it simple. CSS is just the most visible symbol for this way of thinking.
Excellent approach. CSS doesn't have to be "pure". The purity argument was one of the less desirable offshoots of the CSS revolution. As long as you're able to change font sizes and colours quickly (ease of maintenance!), you're leveraging the advantages of CSS. One single table doesn't invalidate that.
As long as you try to get rid of the remaining table every once in a while, you're doing a great job. Trying is the key, not succeeding. Besides, after having tried for a few times or a few dozen times, all of a sudden you'll find that you've succeeded.
I think the first step toward reaching people who need to be educated about standards compliant design is to drop the elitist atitude that is prevalant in the web development community.
Although I've often encountered it I never really understood the "elitism" argument. Elitism seems to be naughty and undesirable and everybody is supposed to hotly deny they ever meant to come across as "elitist". (My lack of understanding may be a cultural thing. Dutch just doesn't have a concept with exactly the same nuances and shades of meaning as "elitism".)
First of all, people who accuse others of "elitism" often seem to say "I don't want to learn something new". As long as you can denounce people as "elitists", you don't have to pay attention to their arguments or their new ways of working.
Besides, I feel a bit of elitism is a good thing. Any (r)evolutionary process needs an elite of early adopters to help speed up the process and to develop new techniques in a hurry. Most importantly, a moderate dose of elitism can be a powerful social trigger: people want to become a part of the elite, and are willing to work hard to achieve that.
The flip side of the coin is that this elite must take its responsibility by educating and helping everyone who is willing to learn. Fortunately, in the case of the New Professionalism that is very much the case.
All people (and I include myself) who are thought leaders, hence part of the elite, in web development land, have come to this exalted status by dint of early experiments, unflagging enthousiasm, and a penchant for clearly explaining complicated matters. They've earned their status by working hard (and unpaid) in order to spread the ideas they believe in. There's nothing wrong with that. They deserve to be part of the elite.
It's only when an elite becomes self-satisfied and starts to turn away new ideas and outsiders that it becomes an oppressive and unhealthy oligarchy of "in"-people.
We haven't yet reached that point, though. We aren't a closed group; not a month goes by without new people entering the elite by publishing new, exciting websites, arguments or experiments, or without elite members fading back into the shadows. That's how it should be.
Besides, even if the current elite should ever become a tired, closed and narrow-minded group, a new, vital one will take its place. The dynamics of the Web will take care of that, never fear.
Long live the elite!
Let's return to the original subject: how do we reach the new amateurs? Various suggestions were made, but as far as I'm concerned a winning argument has not yet surfaced.
a lot has to do with the self-teaching books that are available to buy.
True. 80% of the web development books out there are crap. This is not easily changed, unfortunately.
Clients, however, may respond to financial pressure and if they can be shown hard numbers that it is cheaper to code to Web standards, then they too may bow to pressure.
I don't disagree with the basic argument, but I think it's very hard for a bunch of designers and programmers (ie. non-business people) to convince hard-core financial officers of this fact.
I've found that "New Amateurs" don't need evangelizing. It's the Art Director not wanting to know anything about CSS; or, the Marketing Director not wanting the CMS broken or made complicated; or, the Editorial Department not wanting their templates touched.
This, too, has some truth in it. Again: how do we reach the art director, marketing director, or editorial department?
So even if we redefine the New Amateurs as the bosses and clients of table-loving web developers, we still don't know how to reach them.
Finally, a few thoughts on the difficulties web standards in general encounter.
"we know it is good, but it is not worth a price, client will not pay for this"... How to convince them?
Don't. Just start. There is no difference in price.
Anyone can publish a website due to the nature of the Internet.
True. When John Doe creates a site about his hobby, I don't care if it uses CSS or not. John Doe doesn't get money to build websites. As soon as you ask for money, though, you must be a professional.
For lots of people, that is the most important part. [A table-based site] just works.
On their computers, when used by a non-disabled person. I agree that, unfortunately, this argument still holds sway over a lot of people. On the other hand, if we never start countering it it won't disappear. But how?
Here, too, reaching the key people is the main problem.
This is the blog of Peter-Paul Koch, web developer, consultant, and trainer.
You can also follow
him on Twitter or Mastodon.
If you like this blog, why not donate a little bit of money to help me pay my bills?
Comments are closed.
1 Posted by Phil on 22 November 2005 | Permalink
It can often be tempting to revert to the old, table-centric way of laying out sections of a site, when CSS layout is proving tricky. Having a successfully validated site with clean markup is a very satisfying reward though. Easy to maintian and more accessible - worth the initial struggle. With the ratio of CSS to table layout sites swinging, I think table based layout will drift away as people new to web development, start their devlopment expirence using CSS from the off.
2 Posted by Richard York on 22 November 2005 | Permalink
> True. 80% of the web development books out there are crap.
Speaking as an author of a web development book, I agree whole-heartedly. I think more "New Professionals" should take aim at aleviating this problem by getting involved in the tech publishing industry as authors, tech editors, and peer reviewers. I feel fairly confident in the quality of my own book, though I did make a handful of "amatuer" mistakes that resulted in a bit of misinformation. But given the short production schedule I had to work with, I did as much research as I could and did my best to ensure everything I wrote about was a true, accurate, and clear picture of where web development is going. My own goal is to make "New Professionals" out of every reader. Some examples of erroneous information in my own book. I implied that use of 'i' and 'b' are deprecated in XHTML (though I didn't say that outright), upon further research I, of course, found that to be completely false and misleading. I left out some facts about the XHTML MIME type, and also left out the XHTML namespace in my examples. At least I'm willing to admit where I made mistakes, and I certainly intend to fix them in the next edition.
3 Posted by Nick Fitzsimons on 22 November 2005 | Permalink
I believe that emphasising accessibility is an important factor.
The primary driver behind this effort, I have now found out, was a risk assessment from the legal department. They decreed that the company was at risk of legal action under the Disability Discrimination Act if its websites were not accessible, and luckily the people in charge of the sites are sufficiently clueful to know that what was needed was the correct application of standards, in a way that enhanced accessibility (you don't necessariy get the latter free with the former).
Although not all organisations are as insightful as this one, it can only be a matter of time before word spreads; and where the big organisations lead, the small may eventually follow.
Once people find that the best (most lucrative) work is being handed out to those who use modern, accessible techniques, the old-school professionals will be beating a path to our door, desperate to learn.
4 Posted by Richard York on 22 November 2005 | Permalink
I also think you'd be surprised at the willingness of the tech publishing industry to let professionals such as yourself, PPK, get involved. Though on the flip side, there isn't much financial compensation, and if you were a peer reviewer you probably won't be paid anything more than a line of credit in the book and a few free copies. I know my own editor at Wiley would at least be willing to listen to constructive ideas, rants, critique, etc from professionals.
5 Posted by Ryan Platte on 22 November 2005 | Permalink
> I feel they should either learn to write proper
> databases. But how do we reach them?
Look at the Ruby on Rails phenomenon for lessons on how this can be done right (and sometimes wrong too).
6 Posted by Jaffa The Cake on 22 November 2005 | Permalink
A large company I worked for rebranded. Uh oh, all the websites needed rebranded, 10,000+ pages.
Everyone was amazed that it took me less than a day to rebrand my section of about 200 pages.
Is CSS useless?
7 Posted by Mat Findlay on 22 November 2005 | Permalink
I didn't mean to denounce the elite in any given field. It's true, every field has its elite members, and oddly enough, these members are less likely to show an elitist attitude.
The desire to educate and bring others up to speed is commendable, and is behavior befitting of the elite. Unfortunately, there are those, who either consider themselves part of or wish very much to be the elite that fall short. Because of this, they feel they have something to prove, and sometimes come off confrontational. This is the problem. Belittle someone's skills, and they're not going to be open to your suggestions, no matter how sound those suggestions are, and they're pretty much lost.
In my education, I learned the late 90s techniques. It wasn't until I stumbled upon _this_ site that I realized there was a problem with that, and opened my mind to the possibilities. I've since seen other sites which, if I had have seen them first, would have turned me off this path because they come off as elitist and self righteous. I think that it is important to keep this effect in mind when considering the task of spreading the word.
8 Posted by ppk on 22 November 2005 | Permalink
Richard: I get some review offers every once in a while, but the lack of payment makes it very difficult for me to take these jobs.
Matt: Could you please name a few sites that come off elitist? I'd be curious to know exactly what we have to avoid.
9 Posted by Mat Findlay on 22 November 2005 | Permalink
I'm a little hesitant to provide links to sites guilty of it since A) I don't believe the traffic is deserved, and B) I really don't want to be responsible for directing a volley at them.
Now, I understand that there might be a valid reason behind what they're saying. Sure, maybe some problems would be fixed by correcting the errors a validator throws when reading the file... Why not go ahead and say that?
The former comes off antagonistic, while the latter comes off as helpful. For the person asking for help, this could very well be their first exposure to the web development community and standards compliance. What kind of taste is that going to leave in their mouth? What sort of effect is it going to have on their willingness to accept standards compliance in the future?
Sometimes it's not just _what_ you are saying, but _how_ you say it as well.
10 Posted by ppk on 22 November 2005 | Permalink
Oh, right, the forums. They're a problem apart, and I completely agree they're not really an asset to the standards movement.
Come to think of it, maybe the forum members should have a bit of education, too, about spreading the word in a nice way.
11 Posted by arguile on 22 November 2005 | Permalink
Actually a lot of us (professional programmers) do care. The separation of HTML, CSS, and JS makes incredible sense to many programmers, especially those who subscribe to MVC (Model View Controller) application design. The problem I've seen in many companies, is that management demands that "backend" programmers also fill the role of "web developer".
Let's face it, cross-browser compatibility is hard. Especially for the type of complex applications this brand of "New Amateur" is likely to build. Understanding which CSS hacks to apply when and the utter mess that is JS compatibility sets a very high entry bar. As JS isn't our core competency and we consider web development an axillary duty, web standards may suffer. It's hard to be altruistic about standards when the choice is "get it done fast or you're gone."
So how do we solve this? Lower the entry bar.
Sites like this are a great start, but documenting flaws only goes so far. Unobtrusive frameworks that allow a developer to write something once and not spend n years refactoring because browser x doesn't support a and browser y doesn't support b would go a very long way. The true ability to write to a standards spec. and just have it work is, of course, the holy grail.
12 Posted by ppk on 22 November 2005 | Permalink
13 Posted by Robin on 22 November 2005 | Permalink
ppk - it honestly depends on the forum you visit. I like to think that the few I post on are friendly and opening to new amatuers willing to put some effort in to understanding the problems they have.
14 Posted by Joe Clark on 22 November 2005 | Permalink
I don't see how we're being "elitist" when we are at pains to publish our methods. Yes, we know more than they do, but we go out of our way to teach them. Give them a year or two and they become elitists too.
If "elitist" comes to mean "competent," I'm all for it. I'd be all for it anyway, of course.
15 Posted by Geoff Webb on 22 November 2005 | Permalink
I completely agree with Arguile.
Separation of the code into data, behavior and presentation has been a part of programming for many years. I have been working this way for years .
The problem I see is that I'm not given resources to really learn this stuff. My company is revamping our web site. For creating the site they have graphic designers, webmasters, and editors all working fulltime. When it comes to creating the interactive apps that drive the site there's just me. The look of the site is given more emphasis then the usability.
Do you see how I maybe think that web interface is just part of what I do?
I'm am by no means unusual.
How do we solve this? Give me tools. Tools every bit as good as the ones I use for windows apps. Give me libraries. Good solid ones that I can trust. These things are all things I have available to me when I create the backend, why don't I have them on the web?
BTW, I came to this site and otherlike it because of a personal project. We are interested, but you have make it easy enough that it make sense to do it.
16 Posted by Anton on 22 November 2005 | Permalink
say it you spend 2 hours to code one page using nesting tables;
4 hours using transitional variant (one or few tables + css);
and 8 hours for pure css layout
then how it comes the price is the same? nowadays with "current" browsers the price isn't the same
17 Posted by Masklinn on 22 November 2005 | Permalink
It's weak typing, quirks (because of browsers incompatibilities or buggy implementations) and numerous low-quality scripts (in the trend of 1998's DHTML) as well as it's strange objects (prototype-based POO and equivalence of objects and hashmaps) lead it to be considered as some kind of vb, which nearly everyone looks down upon.
Now, about the "how to combat that" part, I must say that I have no idea. Maybe by defining some kind of unofficial coding standards and spreading them? By documenting extensively some interresting JS practices (especially JS POO, which is clearly not documented enough), by putting out clean, useful, namespace-sorted libraries (instead of dumping everything in the global namespace)?
Showing that JS is a full fledged language and can be written cleanly would -- or so I think -- go a long way towards making it much more acceptable for server-side devs.
As would the birth of better development tools.
18 Posted by Nick Fitzsimons on 22 November 2005 | Permalink
@Anton: I would say a design that takes me 2 hours using nested tables would take me 2 hours using CSS. However, as most commercial sites have a number of different templates, each new page type would take the same amount of time again in tables, while the CSS pages would require much less than an extra 2 hours of work, as the heavy lifting has already been done. (On my current project, a new page type typically requires maybe 30 minutes worth of additional work on XSLT and CSS.)
So, assuming 20 page templates for a site (not unusual on the projects I work on), and allowing half an hour for a new page type, using CSS would take 10.5 hours, while using nested tables would take 40 hours.
I'm lazy, so I'll leave the tables where they belong :-)
19 Posted by Alistair Burrowes on 23 November 2005 | Permalink
I believe that the problem of Amateur web development is an inevitable one and linked to all areas of software development (and life).
There are people who care about the work they produce, unafraid of new ideas, in fact eagerly seeking them out to improve their own work. There are more people who see what they do as a job, they come in and they tap the keyboard and they go home. With little care or thought to the quality or usefulness of what they do.
Unfortunately I don't think this will greatly change unless there is a great shift within IT as managers see the benefits of CSS based web sites. And even then such careless people will still exist and will still produce bad code.
I believe the difference between someone who writes good or bad code is 95% attitude and 5% knowledge.
20 Posted by Raanan Avidor on 23 November 2005 | Permalink
Maybe instead of "amateurs" and "professional" we can use "old school" and "new school"? I find it more appealing.
Even "old school" sites use CSS for look and feel, but not for layout. Defining colors and fonts and links, I think this is an angle to push CSS. "See the pretty links? You can also use CSS with lists..."
I feel that the main problem are tools. How do you build a "new school" site? With Notepad. How do you build an "old school" site? With FrontPage or Dreamweaver, WYSIWYG editors are so easy to use and fast. And what you get in the end? Non valid code soup. Give me a good and easy tool that create valid code and I'll conquer the world.
21 Posted by James Mc Parlane on 23 November 2005 | Permalink
Engineering best practice is often filtered down into tools that enforce good habits and prevent you from making mistakes.
We are a tool using species, not everyone wants to understand how it all works to the deepest level - they just want something that helps them get a task done.
22 Posted by Stephen Kestle on 23 November 2005 | Permalink
Raanan: My wife and I are attempting to enter the [web] design arena (I'm a developer), and we have purchased the Adobe Creative Suite 2.0 (specifically GoLive for the web).
While we don't really know how to use it yet, the demos and tutorials are all about drag and drop css design. It looks very good. It's easy to see the hierarchy of how styles have been applied and what is overriding settings.
Even InDesign (the desktop publishing design tool) is set up to use CSS. It will use built in stuff as well, but it really practically means that you can design a print brochure, and then export it to a standards-compliant web site. Yes, with non-table based layout, not just font styles.
Very cool and very worth it (if only we can get the time to capitalise on our $$$ investment).
23 Posted by Brian LePore on 23 November 2005 | Permalink
I think one thing that would benefit would be to not only teach the New Amateurs how to re-educate themselves, but how to teach them what sites they should be following to maintain their reaquired stature of Web Professional. Besides this site, I feel that ALA and Meyerweb are good sites to be following, and I'm sure there are more sites that others feel is important. Perhaps one of these sites should be a Web forum that they could go to for help that would NOT have the "validate your site first and then come back to us" problem as mentioned by Mat.
On the topic of code libraries, I believe the latest version of the addEvent script that was agreed upon by very talented JS developers that frequent this site decided to not include a check to prevent their code from re-defined (or some other problem) because they felt it was the developer who was going to use their code's job to make sure that this was not the case. To me it seems like this would discourage New Amateurs from wishing to further their education. Shouldn't future code that is approved by sites such as this by pushed to go the extra step to Amateur friendly?
24 Posted by Mark McDonnell on 23 November 2005 | Permalink
This is a little off base, but in the interest of the "New Amateurs" I've uploaded a page regarding CSS here: http://www.stormplatform.co.uk/Developer/CSS/CenterAlign.html
I am still a "new amateur" and at the beginning I struggled to find some CSS code that would let me centrally align an element (vertically and horizontally), but thanks to someone on one of the many web forums I found a solution to my problem.
Maybe this is something everyone knows already, but as far as I am concerned I hope this example helps some "new amateurs" get started with CSS layout.
25 Posted by Thomas Grauer on 23 November 2005 | Permalink
So, PPK don't worry: it is you who reaches the new amateurs!
26 Posted by Jacob on 23 November 2005 | Permalink
I'm in the same position as Thomas (above). I've always liked to tinker (with anything and everything) and it was inevitable that I'd play with websites at some point. There were a few web development books kicking around the house but the fact that they contradicted themselves and each other made me wonder, so I went looking. I actually found this site (and a few others) *after* discovering the W3C standards, but this site was (and still is) an essential resource to me. I'm definately an amateur developer, but without dedicated people such as yourself I would probably be horrifically lost and producing terrible code.
Friends often ask me questions relating to web technologies, and I almost always direct them here. If everyone does that, a lot of the "reaching the new amateurs" problem will be solved.
27 Posted by Jules on 23 November 2005 | Permalink
When John Doe creates a site about his hobby, I don't care if it uses CSS or not. John Doe doesn't get money to build websites.
One of the problems is that after John Doe has created his personal Web site about hobby trains and talks to his friends about it, the local hobby train store asks him to create a site for them and then off he goes creating garbage.
Secondly, and I know this from personal experience, a person's job description is expanded by his/her manager to include creating pages for their department on the company web site and they don't have a clue what they are doing other than FrontPage looks a lot like Word. My workplace commonly assigns web site tasks to unqualified persons and what frustrates me more is that our official web master doesn't care about web standards or accessibility (even though I work for the government) so I can't even recommend that my manager send off all web tasks to the web master because it won't be any different.
28 Posted by Anne on 23 November 2005 | Permalink
First off, excellent pair of articles (The New Amateurs parts 1 and 2). I think you're absolutely right and you approached the question (especially regarding elitism) in a way that I very much appreciate.
The question that's been bouncing around my head is this - what part, if any, do you think formal education could play in this process? Maybe it's time for web development to enter the academic world. It already has an incredibly active and thriving academic community - if you ask me, that's exactly what the web standards community is.
Perhaps if there were at least a formal course of study for the theory (because the technology does tend to change faster than most schools can keep up) we would see more New Amateurs entering the field with at least an understanding of the fundamentals... perfectly prepped to begin their 'practical study' of the art of web development.
29 Posted by Anton on 23 November 2005 | Permalink
2Nick Fitzsimons - I got the point here, that using CSS of course saves your time when you manage more than one template file in a project
But i doubt that those "New Amateurs" start with projects that deal with more than 1 template
And i still doubt timing here, we're talking about different things, or those layouts that you code in 2 hours in pure CSS you can code in 15 minutes using tables (of course it depends on the design of the layout)
But you can't disagree that there are still 'tough cases' in coding pure CSS layouts that demand more time on working out a solution that doesn't read "just put it in the table"?
30 Posted by Megan on 23 November 2005 | Permalink
About forums (mentioned above). I think it really depends on where you're going. I've seen forums here the "who cares about standards" message is quite prominent. On the other hand, I am part of a forum that makes it our business to educate "new amateurs" about what quality web design means.
It's a huge uphill battle. We get loads of members who seem to be blind to the fact that they're completely unqualified to be selling web design. We're there in the trenches every day, slowly hammering the message into extremely thick skulls. I think it's a good way to spread the word to the masses, though. It would be great if more standards-minded professionals were active in online communities.
I think another group to work on is the makers of CMS's. The course management system we're using at work is horrific, and I don't know of any forum packages that are standards compliant.
31 Posted by Jordan on 23 November 2005 | Permalink
@Anton: Yes, CSS can take a long time if you're not used to it or haven't created pages in it before. There's about a 3-6 month learning curve to really get a handle on it, depending on how often you create templates.
My experience with CSS has shown me that initial creation generally does take a little longer than a table-based layout, but maintenance is much, much easier. If I want to change the primary font or the width of my site, it's a lot easier to do it from a CSS file.
Granted, using CSS doesn't mean that you can't do table layout. However, it's not necessary to have tables used for layout if you're creating a layout using CSS.
It's not that table-based layout is inherently evil, it's the other practices that generally come along with it that are bad. If you create a table-based layout but also have a common external CSS file that you're using to do the standard things on your site, such as fonts, backgrounds and positioning, fine. The differences between using a table and div tags for layout are mostly preferential anyway. You have a problem if you are creating inline font tags, bolding every header in a page, etc--these are things that should be done in CSS.
32 Posted by Anton on 23 November 2005 | Permalink
2Jordan - I know all these benefits of CSS. And I'm CSS fan personally ;)
I just don't agree of ppk's "no difference in price" statement, since CSS requires more time, or more experience.
More time => more money.
More experience => more money.
That's it )
33 Posted by Balarama Bosch on 23 November 2005 | Permalink
I have to say from experience that designing a site using xhtml and css does take less time than using the "old school" way. This includes designs that are graphic intesive--not just bare-bones slashdot type sites.
Creating a template takes a little more time, but once you've created your template page, you can crank out pages in half time or even less, since you don't have to deal with, and look through all the messy code when updating/fixing things.
Granted, it takes a little more knowledge, but I feel it's ultimately worth it when you look at the increased development speed after initial design, and increased ease of maintainance.
34 Posted by Mark Wetter on 23 November 2005 | Permalink
35 Posted by Scott Severance on 24 November 2005 | Permalink
Speaking as a hobbyist, I find one of the challenges to using modern methods is the lack of documentation.
36 Posted by Dustin Askins on 24 November 2005 | Permalink
I work for a very large corporation that has a farm of Web Developers creating one site per day per developer. The company I work for does not endorse standards, does not care about tag soup, and throws usability and accessibility to the wind. I say that like it's all a terrible thing, and it kind of is, but they’re making money, lots of it, off every single site.
So here stands one professional who knows how to and has created proper sites and will do his best to push higher standards in my company. I think it will benefit our customers immensely, the company naturally, and the integrity of the Web ultimately.
I’ve been working towards higher standards there for some time now, but it’s an uphill battle in such a large organization where a small decision impacts employees and processes nationwide. Who knows what it would cost to train and bring 90% of our amateurs up to speed…
37 Posted by Tino Zijdel on 24 November 2005 | Permalink
As for CSS I mostly revert directly to the specifications: http://www.w3.org/TR/CSS21/
38 Posted by Rakesh Pai on 24 November 2005 | Permalink
I must say, I agree with the comments above about having stumbled into the world of standards by accidentally stumbling on to your site.
It was long ago, but if I remember right, I was looking for some tips on handling JS based browser differences since I was not really happy with the sniffers. (Who is!) Once here, I discovered not just a very new way of looking at websites itself, but also a great community of people who are elite yet approachable. I've never used table-based layouts since.
39 Posted by Michael Schuerig on 24 November 2005 | Permalink
One problem with the "new" standards is that they are still quite inadequate. They're clearly aimed at web pages and web sites with nary a thought of web-based applications. Every other article or blog entry on CSS that I shows off some neat trick to do something with it for which it was seemingly not intended. The attitude appears to be: Hey, we've got this CSS stuff, now let's see what we can do with it. Whereas it should have been: Look, you standards/W3C people, here's what we need to do, now give us the appropriate means.
I'm looking at these things not as a web designer, but as an application developer who works on front ends that incidentally are web-based. From this perspective, the tools and standards -- to say nothing of some implementations -- are really appalling.
40 Posted by Richard York on 24 November 2005 | Permalink
PPK- Can't say I blame you, a reveiwer has a very large part in the production of a book. The publishers should compensate them for their time and consider them to be every bit as important as the editors and the author.
41 Posted by Wes on 24 November 2005 | Permalink
> One problem with the "new" standards is that they are still quite inadequate. They're clearly aimed at web pages and web sites with nary a thought of web-based applications.
I whole heartedly agree. The CSS specs are wonderful things but are sorely lacking in some very basic areas such as validly launch a new browser window, how to make your column'd layout the height of the screen. Things like this should be blatantly easy.
Before web standards are truly adopted as they should be, the majority of these hacks will have to go away.
That being said, I am on the team leading our web design firm as we switch to a 100% standards-based policy next year for all our sites. I am very much looking forward to the end result but am dreading all these hacks and "gotchas" that we will run into. It is these sort of things that are holding back the revolution.
42 Posted by Andy Moss on 25 November 2005 | Permalink
Macromedia did the right thing by changing the focus of their software (a version too late for my liking though).
.PHP developers seem to care more about the standards compliance of thier code, but aspx developers couldn't give a monkeys. just look at 4guysfromrolla!
43 Posted by Jo on 25 November 2005 | Permalink
Webdesigners and webdevelopers that still are learning the trade, turn to 'free of charge' forums about webstandards, CSS, JS, etc ... for any help. Nothing wrong with that since people can obtain valuable answers,tips,pointers from commenters at these forums.
Nonetheless is the quality of these forums not guaranteed at all, people maybe led astray from good webstandard and/or coding practices when the answers they get are incorrect, not to the point which may teach them wrong and amateurish practise of webstandards. Moderation is the key and so is not letting anyone answer questions that require a certain degree of professionality. But this would require hiring adequate forum posters. I believe forums can be harmfull in that way for teaching webstandards the good way.
44 Posted by Andy Johnston on 26 November 2005 | Permalink
I believe the "elitist" aura surrounding standards is partly due to the mentality of the validate this site icon and similar faff. The notion that "if my site validates I have developed a sucessful website" seems to be a little too prevalent.
From a professional developer point of view the fact that a site validates is nice as a personal achievement, and also gives some sort of tangible proof that you are
doing a good good of developing with best practices in mind, however the majority of clients couldn't care less if their website is strict xhtml, compliant css and accessabilty oriented, they are more interested in the bottom line of how much work their marketing investment is paying back.
The focus on standards is great, it has helped to push browser developers into a less proprietry outlook of the rendering of html pages, which allows developers to focus less time on bug fixing and browser testing and more time on the important thing like ui usabilty and core application ideas. But is only a small part of the toolkit of skills a web developer should possess.
45 Posted by GLS on 27 November 2005 | Permalink
Several people have mentioned they'd like to see code libraries. What do you want in these libraries? It's probably all scattered here and there on various sites right now. It just needs a single home.
Several also mentioned that a lot (80%?) of what's been written is less than great and should probably be avoided. So which _is_ the good stuff?
46 Posted by me on 29 November 2005 | Permalink
I am a new/old amatuer old school geezer. I am the single "web guy" at a small manufacturer / distributor. They have a print catalog and now sell online too. No glamour here just a real job.
Unfortunately it works though. To redo it it would be awsome. But to actually do it, just myself, is an almost overwhelming task, on top of all my regular upkeep and product updates. Add on that all the ecommerce, web tracking, advertising, crapola code, it's impossible to validate. I search in vain for real world validating ecommerce sites and I don't think they exist.
Unfortunately, down on the ground reality is that until the browsers are set and tools exist to make it pretty easy you will continue to see awful sites like mine. The money, manpower, time, and brainpower is just not realistically available to do the conversion...sux but true...
47 Posted by Todd on 30 November 2005 | Permalink
GLS asked "What is the good stuff?"
As a hobbiest, I find myself returning to these sites:
w3schools.org - Though riddled with Ads, it offers a very easy learning path. The examples in a sandbox format (where you can play with code and see what happens) make the concepts being taught accessible.
http://css.maxdesign.com.au/ - Though more well known of a repository of list designs, their float and select tutorials are the superior instructors for these concepts of CSS.
http://academ.hvcc.edu/~kantopet/old/index.php - I have stumbled upon these pages in the past. A solid archive compiled by a teacher who explains things clearly in a very organized fashion.
48 Posted by Kevin Vaughan on 2 December 2005 | Permalink
I think some of the problems associated with the "elite" educating the "masses" is that there isn't a great forum to do so. Standards bodies are great for defining what we should be using after its been in use for a while, but where are the central resources for those are talking about what we could be doing before its been done? My team spends a fair percentage of time each week deciding on new techniques to solve old problems in better ways. I'd love the ability to expand this conversation out to a few hundred, a few thousand others, but there doesn't seem to be a readily publicized venue for these types of discussions.
49 Posted by Anon on 4 December 2005 | Permalink
I agree wholeheartedly with the comments about making snippets and libraries of code available.
Many sites and books that focus on CSS spend far too much time focusing on the minutia of a problem in their many, many, many hack explanations. But the people you're trying to reach don't care and never will. They want a list of solutions to common problems, code to copy & paste, and brief notes on customization, not history of every person and thought that went toward the solution. Think Hotscripts, or a similar repository. With something approaching organization - most of the CSS-oriented sites that I've visited are very poorly organized and don't make it easy to find solutions... which is mildly ironic.
50 Posted by dfrahm on 8 December 2005 | Permalink
I for one don't see this demand for web professionals.
For years I have studied, learned, and preached about web standards... and NONE of my employers or coworkers have cared a bit.
It takes more time to do it right and the people footing the bill just don't seem to care enough. If they did, then the demand would be there, as you suggest.
Truthfully, some days I almost don't care anymore either.
51 Posted by Kollision on 8 December 2005 | Permalink
As a self-taught web developer (it still sounds funny when I call myself that, maybe I shouldn't), I agree with every word you typed in your text.
For me, the challenge of bringing people to the understanding of the powers of CSS seems impossible to accomplish... Especially in my country (Brazil). People still look at me in awe when I try to start a conversation on the subject, and get stunned when I help them by inserting a single "style" argument in their codes.
I am very thankful to your website, Peter. It helped me enormously when I was taking my first steps in the wonders of correct web design. But frankly, the only way of reaching the New Amateurs would be the dictatorial way... You are part of an UTOPIA, one which is accessible only to those willing to develop themselves and learn, learn, learn...
52 Posted by metaware inc on 12 December 2005 | Permalink
Hello all there!
This site has become a must when I've faced web-design. I'm a sw engineer, not web developer, but in my last project I had to do all the web tier of a portal. I've learned a lot of web design through sites like this one
I think the best way to evangelize css to the bosses is saying CSS (or any other welldone development) *saves* costs, specially on manteinance (which usually means 60% cost of the life cycle of a software).
I do not agree with people who says it's longer to develop. It only takes more time as it is a new technology and you learn and get used to it
IMHO, reaching the new amateurs can be only accomplished through "elitism" and sites like this one. The rest is only matter of time :-)
Cross-browser libraries (like dynapi) and cross-browser AJAX libraries (like DWR) are the tools of mind-change
53 Posted by Burd on 14 December 2005 | Permalink
"Although I've often encountered it I never really understood the "elitism" argument."
The whole problem is that the elitists speak in a ancient (academic as you will) language which was taught at various classes in university. When you want to educate and inform: the language used should tell about the level one should have to understand any of it. The whole problem is that any so-called Amateur will try to understand all what is said but will fail because it is too difficult. The idea is that you should gradually increase the level of difficultyin coherence with the level of the particpant.
54 Posted by Christopher Boomer on 20 December 2005 | Permalink
At a tangent, but illustrating the same attitude: my main bugbear at the moment is trying to convince our Director of Development that HTML pages delivered straight from C++ code is less than ideal. All I ask is that he supply XML, so *I* can create the HTML using XSLT without need to go cap in hand asking for simple layout changes. "But why?" seems to be the cry.