A few weeks ago, professional troll John C. Dvorak of PC magazine made some waves in the CSS and web standards world with this article, in which he calls CSS “another fine mess from the standards bodies,” that is “worsening over time as ‘improvements’ are made.” He then displays a complete ignorance of how CSS works when he notes that,”if your Internet connection happens to lose a bit of CSS data, you get a mess on your screen.”
Dvorak isn’t completely off base. CSS isn’t simple to learn. It’s not supposed to be. Professional web developers have professional tools (like CSS) that take time and commitment to learn. Non-professionals have simpler tools for web publishing that are quite easy to learn — they go by names like MySpace, Blogger, Moveable Type, WordPress, and Dreamweaver. There are browser quirks with CSS and if you don’t understand them CSS will drive you batty.
So, in an effort to reach out to someone who absolutely doesn’t deserve it after trolling the Internets and the newstands for 12 years, we’re offering a helping hand. Simon Collision, Dan Rubin, Ian Lloyd, and myself hereby present Mr. Dvorak with shiny new copies of two Apress-published books, Beginning CSS Web Development (by Simon, available now), and it’s follow-up, Pro CSS Techniques (by Dan, Ian, and myself, available in November).
John, we’ll even pay for shipping. If you’ll simply drop any one of us a line with your mailing address, we’ll get the books right out to you. How’s that for service?
001 // Jina Bolton // 08.07.2006 // 11:38 AM
You guys are so generous. ;)
002 // Joshua Works // 08.07.2006 // 11:40 AM
I suppose I’ll save myself 12 years of trouble (and enemies), and just fork out the cash for your book. Or maybe I can get work to do that for me. Either way, very much looking forward to what all your hard work has produced this time.
003 // Nate K // 08.07.2006 // 11:53 AM
Yet another generous offer from the professional community. I sure hope he takes up on any of the offers out there right now.
Look forward to seeing the Pro CSS book….
004 // Luke L // 08.07.2006 // 12:34 PM
Someone that blinded by their own ignorance probably wouldn’t even bother with the books spouting some BS excuse about how the language should be ‘this’ and ‘that’ instead. But at least it makes a point that he should know what he’s talking about first.
005 // Adam Spooner // 08.07.2006 // 12:39 PM
Jeff, quit blogging and get that book done!!! JK
I’m eagerly anticipating the arrival of Pro CSS. My copy is preordered and Amazon has my address…November must come sooner.
Cheers!
006 // Jonathan Snook // 08.07.2006 // 1:02 PM
I love how the book cover at Amazon has Bryan Veloso’s name on the cover. :)
007 // Deryck Hodge // 08.07.2006 // 1:56 PM
Jeff,
That’s so kind. Great idea! :-)
I saw a recent post on the Django list where someone said something about so much documentation and still nothing definitive could be known about CSS (don’t remember the exact phrasing).
This reminds me of that — lots of myth and fear, when people just really need a good book. :-)
008 // Jack // 08.07.2006 // 6:02 PM
Dvorak is busy scheming up a way that he can paint this in a bad light.
009 // Dave // 08.08.2006 // 7:58 AM
Hey congrats on getting the book out (although I’d like the pro book please. Let’s get a move on ;)
010 // Tyson // 08.09.2006 // 10:24 AM
If he hates CSS now, he’s going to love it when IE 7 comes out and developers have to maintain yet another IE hacks file!
011 // Jeff Croft // 08.09.2006 // 10:36 AM
Tyson-
Have you used IE7? It definitely fixes the vast majority of CSS bugs and omissions that affect designers. I don’t doubt that we’ll still have to maintain an IE hack or two, but the world should be far, far more sane for us once more users get IE7 in their hands.
012 // Jeff Triplett // 08.09.2006 // 1:53 PM
I too was angered at first when I read his article but then I remembered that, that is all he is really known for. He has a long history of getting attention (ratings) to a subject by dissing it one month and then being on the opposite side the other. Just listen his pod-casts and listen to his split personality complex from one week to another. I think he confuses himself as to whether or not this is the week that he likes ipods and macs vs. the week that he hates one or both. So you kind of fell trap to what he does best, piss people off enough to talk about a subject to get his name though.
I think your gesture of good faith in buying him a book is hilarious. However, you’re sending a CSS book to the man that barely contributes to his own blog and instead has a cast of people who post articles on it and it’s his “uncensored” weblog.
013 // John C. Dvorak // 08.10.2006 // 3:07 AM
First of all the one and only Molly wants to tutor me. Let’s start with that premise. Second there seems to be a great interest in humiliating me with a redesign of the blog. OK. So I’ll put up with it by getting some serious prizes from some promotion-oriented vendors involved and let’s see what comes of it. Give me a couple more days then you can have at me. Cripes!
014 // Jon // 08.10.2006 // 3:58 PM
I agree that CSS is a professional web developer tool that not everyone should need to know in order to create a website or blog. However, there is a real problem with css and that is “browser quirks” that you briefly mention but do not discuss. There is no reason that you should have to hack up CSS to make it look the same in different browsers. We all know that this is not the CSS standard that is at fault here but the independent browser implementations of CSS, but none the less, it is still quite a problem for CSS. Don’t get me wrong, I am not defending Dvorak, I disagreed with 90% of what he wrote, but he does have a bit of a point.
015 // Jeff Croft // 08.10.2006 // 4:15 PM
Jon-
I agree completely that you shouldn’t haven’t to hack up CSS to account for browser quirks — but you do. It’s the reality of the situation. It’s a bummer, but it is the way it is (and, as you say, it’s not the fault of the CSS spec, but rather the shoddy implementations of it in certain browsers).
Dvorak is totally right that CSS is difficult to master — and the browser quirks are a big part of that. That’s why we’re writing books. But still — CSS will always be a professional-level tool, even if the browser quirks are taken out of the equation.
If you want to create web pages without learning CSS, get a copy of iWeb and go to town. If you want to be a professional, learn CSS. It’s that simple.
016 // Micheal // 08.12.2006 // 10:56 AM
Completely unrelated, does anyone know where I can find the following:
Thanks in advance.
017 // Jeff Croft // 08.12.2006 // 11:10 AM
Micheal-
I don’t know much about mongrel, so I’m not sure if there’s a Python equivalent or not. As for the Google maps things, what do you have in mind, exactly? Generally Google maps are created using Javascript on the front end. If you’ve got lat/long data stored in your Django database, you can simply use the template language to create Javascript that generates the map.
I’m guess I’m just not sure what you’d want a Django/Google maps “plug-in” to do, exactly. Can you be more specific?
018 // Dan Jallits // 08.12.2006 // 4:49 PM
Working in the technology sector is like being a doctor, lawyer or any other professional. It has become crucial to stay on top of current industry standards and trends. So why is it such a horrible thing that it takes a professional to craft the somewhat awkward and complicated CSS document?
On a side note, I hope one day browser developers will drop pre-styled (x)HTML tags in their products and solely rely on designers to supply CSS for presentation. This just makes sense to me as it furthers the separation between content and presentation. This is only possible through the intervention of the W3C.
019 // Jeff Croft // 08.12.2006 // 6:02 PM
Dan-
I would hope for the same thing, but I’m not sure it’s at the hands of the W3C. At it stands, I don’t believe the W3C has a specified standard for the default styling of (X)HTML elements. If I’m not mistaken, all of the defaults are up to the browser makers, and they largely do the same thing only because of convention.
020 // Micheal // 08.13.2006 // 2:15 AM
Jeff,
Thanks for the response.
With regards to Python + Google Maps, I have a database full of geo-coded restaurant locations that I would like to display on a Google Map for any particular city. For exampl,e someone one my web page says they would like to see a listing for all restaurants in NY, Python retrieves the geo-coded locations from the database to have Google Maps display those locations.
How would you recommended using Python to accomplish this.
021 // Jeff Croft // 08.13.2006 // 12:49 PM
Micheal-
Is this database tied to Django? If it is, then all you need to do is set up a couple generic views for your restaurant object (probably list/detail, I’d imagine) and write the templates using (X)HTML, CSS, and Javascript. If you’re familiar with Google’s Javascript API, this would probably take less than an hour.
If your database isn’t tied to Django, you’ll want to have Django inspect it (using
django-admin.py inspectdb) and create the model classes for you before moving on to the views.022 // Micheal // 08.13.2006 // 9:19 PM
Jeff,
Many thanks.
023 // stephen // 08.21.2006 // 9:56 AM
You mention that BLOGGER is a great tool for people to learn CSS from: I disagree: It may be a free-way to host a blog, but it/they do NOT teach the user anything about the nature of CSS. They don’t have to ever view the CSS - and most don’t.
The best thing BLOGGER does is open the eyes of us who WANT to learn about proper CSS-positioning and how to fix the problems that can occur in some browsers (namely IE and MF). Personally, as a hobbiest web site designer, I find these differences and the ‘hacks’ that exist to be the most interesting part of my ever and ongoing learning of CSS! But it intriques me as to how worthy Mr Dvorak really is of receiving these books: If someone like say, oh ME, had the tenacity - would I recieve a free book? I doubt it. And I don’t mind. Because spending my hard earned money on these books ensures I will read and apply. Whereas Dvorak will most likely shelve them behind glass as his best accomplishment: Free books.
PS. I love your site. I have been an admirer (and lurker) for a long time. Please keep being an inspiration to those of us who are learning web design online - because classrooms just don’t cut it!
024 // Jeff Croft // 08.21.2006 // 10:24 AM
Stephen-
I never said, nor meant, that BLOGGER is a good way to learn CSS. I said, and meant, that BLOGGER is a good way for a beginner to set up a website.
Please read my post again. My point is that CSS is a professional-level tool. If you’re not a professional (or hardcore enthusiast/hobbyist), you’ll use something that doesn’t require you to learn CSS — like BLOGGER.
025 // Andrew Ingram // 08.21.2006 // 11:33 AM
There’s one thing that has repeatedly confused me. Remarks along the line of ‘He then displays a complete ignorance of how CSS works when he notes that,’if your Internet connection happens to lose a bit of CSS data, you get a mess on your screen.” Maybe he doesn’t understand how CSS works, but if you suffers some packet loss or timeouts whilst downloading the css files, you quite often do end up with a mess on your screen. Perhaps many web professionals haven’t noticed it due to having immensely awesome connections, but I see it happen all the time on both dialup and relatively slow/unreliable broadband. When I read that part of his article it was one of the few parts where I understood exactly where he was coming from. I wouldn’t say it’s a flaw with the standard, but there is a problem somewhere that results in browsers not being told that they didn’t receive the complete file and subsequently being able to either ignore the css completely or request the file again.
026 // Jeff Croft // 08.21.2006 // 11:40 AM
Andrew, are you saying this happens to you “quite often?” If so, I highly recommend you look into getting a new ISP.
It’s not so much that’s wrong — yes, this can happen (but almost never does in real-world use) — it’s that this has nothing to do with CSS. If you suffer from packet loss, you’ve got a network problem, not a CSS problem. It will be affecting all sorts of networks services, not just CSS. It would affect table-based web pages, too, right?
You’ve sort of made my point for me. Of course it’s not a problem with the standard.
Dvorak wrote an article that made the point that CSS is worse than traditional, table-based layouts, and used “you can lose packets” excuse as a reason for it. But this is an idiotic reason, as you can lose packets whether your site is CSS-based or not.
027 // Andrew Ingram // 08.21.2006 // 11:52 AM
I agree with what you’re saying, but this is the point on which most of the mockery of him seemed to focus and most of the said mockery always seemed to suggest that the mere notion of such a thing happening was laughable. I’m just pointing out the problem is real, even if CSS itself isn’t to blame.
An aside point, i’m on the most fastest and most reliable internet connection for where I live, 512k ADSL (which only just became available), whilst i’d love to invest in a better ISP it’s not actually possible :)
028 // josh // 08.30.2006 // 9:41 AM
Yet another generous offer from the professional community. I sure hope he takes up on any of the offers out there right now.
Look forward to seeing the Pro CSS book….
029 // Christian // 04.09.2007 // 6:53 AM
Wher can I get the Pro CSS book? Please give me an answer. Regards from Germany.