Help me to forget today's pain
The problem I have with Dreamweaver is that every time I hear the bastard word I get an unshakeable earworm of Gary Wright's "Dream Weaver", accompanied by the image of Mike Myers lusting after the admittedly eminently lustable-after Tia Carrere in Wayne's World.
This, however, is not a problem that the man running the Netskills course could be expected to fix, so we concentrated on other stuff like how to wrangle the software into producing accessible, maintainable web-pages.
I'd never used Dreamweaver before but found myself in the surprising position of knowing more HTML than anybody else in the class. That is, I'd coded HTML by hand ("Brave people!" said the course tutor, only half joking) and had used CSS. Fear my scary web skills. Mind you, everybody who'd been on a Netskills course before said that there was never time to get through all the "hands-on" exercises, and even the course tutor said that nobody was expected to finish, but I got through all the homework with time to spare to read LJ and check email. And correct all the mistakes in the worksheets. Suddenly I remember why everybody hated me at school.
The impression that I get is that Dreamweaver would be a fantastic piece of software for the amateur web-designer, in much the same way that all-singing all-dancing power-tools are the secret vice (ahem) of the home DIY enthusiast. Unfortunately, at somewhere in the region of $400, the amateur web-designer almost certainly can't afford it. Which is a shame, because this particular amateur web-designer would be delighted to get her geeky mitts on a copy just to play around with. I think it's possible to create sane, well-formed web-pages with it; it takes time and care, but it allows you to use nifty short-cuts for the donkey-work. There's no inherent virtue in carving HTML out of a rock with your bare hands; why not use funky pointy-clicky interfaces if they let you get the tedious bits done quickly? I don't need to prove to anybody, even myself, that I know how to create an image link or a simple table.
Like any tool, though, it's possible to use it for the forces of evil. You can, more or less, create web-pages in an entirely WYSIWYG environment (if you never click the scary 'show code' button); which means that you can perpetrate crawling tentacled Lovecraftian horrors in your HTML without even realising you're doing it. You can be seduced by Dreamweaver's amazing templating/content-managing systems, because they are actually pretty well implemented, but only later realise that they also effectively lock you into using nothing but DW to maintain your files for ever.
Still, on the whole, the course was useful. We need to know how to use DW because our content-providers want to use it, and it helps if we know where they're coming from and know why we'd prefer them not to use it -- and know how to get them to at least set some limits on the horrors they perpetrate. The bits about accessibility issues were interesting, and DW does actually do fairly well on the creating-accessible-webpages front -- validating, checking, advising, and prompting for things like alt-tags, captions, summaries, etc. (It's just a shame it not only doesn't validate for XHTML 1.0 Strict, but lies and says it does.) The course was also a handy opportunity to consolidate previously-learned HTML knowledge, which is always a good thing. In fact, the thing that I found most interesting about DW was the opportunity it presented for learning HTML -- you can drag and drop clever bits of design, and then look at the code to see how it's done.
All in all, probably a more productive use of the day than I would have otherwise achieved. And free food, though a hint to the next people to organise a similar event: Maxwell House brown powder is NOT COFFEE.
The course was also, of course, a chance to watch STUPID PEOPLE. Who needs soap operas and reality TV when the whole world is a shimmering kaleidoscope of witlessness?
Actually, most of the participants were fine -- that is, mainstream and boring rather than actively stupid. But today's Moron Prize goes to the girl who turned up late and spent five minutes disrupting everybody by faffing with her hair, her scarf, her bag, her hair again, her coat, etc.; then when her phone went off halfway through a presentation (we'd been asked earlier to turn phones off) looked up in wide-eyed amazement, saying loudly "Nobody ever phones me!" She then went to the door, with the phone still tweetling ... and then stopped, still inside the room, to take the call. And then interrupted the presentation again a few minutes later by bouncing back to her seat saying "Sorry!" in a cheerful stage whisper.
She was the same one who, at lunch -- just after the presentation detailing the things it's possible to do to make web-pages accessible, and the things one should avoid -- whined "They're never going to let us use all the nice things, though, are they?" When asked what "nice things", it turned out that she meant -- yep, you guessed it -- things like Javascript, Flash, etc. "All the stuff that makes your website look nice." Against my better judgement (that's the better judgement that tries to preserve my blood pressure by restraining me from arguing with numbskulls) I did try to make the point that those "nice things" are exactly the things that have the potential to make the website COMPLETELY FUCKING UNUSABLE for people with last year's browser, let alone people with NO EYES, but to no avail.
And she works here, too. I'm not sure whether she or the "coffee" and stale biscuits made me more embarrassed to be part of Cambridge University.
This, however, is not a problem that the man running the Netskills course could be expected to fix, so we concentrated on other stuff like how to wrangle the software into producing accessible, maintainable web-pages.
I'd never used Dreamweaver before but found myself in the surprising position of knowing more HTML than anybody else in the class. That is, I'd coded HTML by hand ("Brave people!" said the course tutor, only half joking) and had used CSS. Fear my scary web skills. Mind you, everybody who'd been on a Netskills course before said that there was never time to get through all the "hands-on" exercises, and even the course tutor said that nobody was expected to finish, but I got through all the homework with time to spare to read LJ and check email. And correct all the mistakes in the worksheets. Suddenly I remember why everybody hated me at school.
The impression that I get is that Dreamweaver would be a fantastic piece of software for the amateur web-designer, in much the same way that all-singing all-dancing power-tools are the secret vice (ahem) of the home DIY enthusiast. Unfortunately, at somewhere in the region of $400, the amateur web-designer almost certainly can't afford it. Which is a shame, because this particular amateur web-designer would be delighted to get her geeky mitts on a copy just to play around with. I think it's possible to create sane, well-formed web-pages with it; it takes time and care, but it allows you to use nifty short-cuts for the donkey-work. There's no inherent virtue in carving HTML out of a rock with your bare hands; why not use funky pointy-clicky interfaces if they let you get the tedious bits done quickly? I don't need to prove to anybody, even myself, that I know how to create an image link or a simple table.
Like any tool, though, it's possible to use it for the forces of evil. You can, more or less, create web-pages in an entirely WYSIWYG environment (if you never click the scary 'show code' button); which means that you can perpetrate crawling tentacled Lovecraftian horrors in your HTML without even realising you're doing it. You can be seduced by Dreamweaver's amazing templating/content-managing systems, because they are actually pretty well implemented, but only later realise that they also effectively lock you into using nothing but DW to maintain your files for ever.
Still, on the whole, the course was useful. We need to know how to use DW because our content-providers want to use it, and it helps if we know where they're coming from and know why we'd prefer them not to use it -- and know how to get them to at least set some limits on the horrors they perpetrate. The bits about accessibility issues were interesting, and DW does actually do fairly well on the creating-accessible-webpages front -- validating, checking, advising, and prompting for things like alt-tags, captions, summaries, etc. (It's just a shame it not only doesn't validate for XHTML 1.0 Strict, but lies and says it does.) The course was also a handy opportunity to consolidate previously-learned HTML knowledge, which is always a good thing. In fact, the thing that I found most interesting about DW was the opportunity it presented for learning HTML -- you can drag and drop clever bits of design, and then look at the code to see how it's done.
All in all, probably a more productive use of the day than I would have otherwise achieved. And free food, though a hint to the next people to organise a similar event: Maxwell House brown powder is NOT COFFEE.
The course was also, of course, a chance to watch STUPID PEOPLE. Who needs soap operas and reality TV when the whole world is a shimmering kaleidoscope of witlessness?
Actually, most of the participants were fine -- that is, mainstream and boring rather than actively stupid. But today's Moron Prize goes to the girl who turned up late and spent five minutes disrupting everybody by faffing with her hair, her scarf, her bag, her hair again, her coat, etc.; then when her phone went off halfway through a presentation (we'd been asked earlier to turn phones off) looked up in wide-eyed amazement, saying loudly "Nobody ever phones me!" She then went to the door, with the phone still tweetling ... and then stopped, still inside the room, to take the call. And then interrupted the presentation again a few minutes later by bouncing back to her seat saying "Sorry!" in a cheerful stage whisper.
She was the same one who, at lunch -- just after the presentation detailing the things it's possible to do to make web-pages accessible, and the things one should avoid -- whined "They're never going to let us use all the nice things, though, are they?" When asked what "nice things", it turned out that she meant -- yep, you guessed it -- things like Javascript, Flash, etc. "All the stuff that makes your website look nice." Against my better judgement (that's the better judgement that tries to preserve my blood pressure by restraining me from arguing with numbskulls) I did try to make the point that those "nice things" are exactly the things that have the potential to make the website COMPLETELY FUCKING UNUSABLE for people with last year's browser, let alone people with NO EYES, but to no avail.
And she works here, too. I'm not sure whether she or the "coffee" and stale biscuits made me more embarrassed to be part of Cambridge University.
no subject
no subject
no subject
no subject
no subject
no subject
Which eminently true arguments were what allowed me to stop people using it at my last place of employ; this one is sensible enough that I haven't needed to have that fight here.
I don't see any inordinate value in hand-coding one's own HTML once one has done enough to understand the fundamentals, but I am kind of keen that people should understand the fundamentals; particularly if most of what they're going to be doing long term is writing Perl or PHP most of the purpose of which is to spit out appropriate HTML when poked.
Well done at not killing the moron who wanted to use Flash.
no subject
There's absolutely nothing wrong with Flash provided you know when (and more importantly why) to avoid it. I would love the opportunity to learn it -- it'd be no more useless than plenty of other things I've enjoyed learning -- but can't really justify the time (let alone the expense) to do a course, and can't muster the energy to teach myself. But I can't really hate something which has covered the world in dancing badgers.
no subject
Lots of the pages I write have the same style, so I invent tags like <badge> <box> and and stuff, and then use XSLT to generate the HTML. Usually when I write HTML myself I can't be bothered to do the whole no-tables-all-css div and span thing for complicated pages, so usually I end up with better HTML like this because when I wrote the XSLT first time around I read all the standards, and now don't have to, :). These days even my CGIs emit this stuff, it's much nicer than
<td class="foo bar baz banana" colspan="42">
stuff. The CGIs are invoked by an über-CGI which takes their output and XSLTs it, and then feeds it to the output, so you need no webserver support.
I'm not suggesting for a moment that this is a good way for a beginner to do it, XSLT looks a bit like gobbledegook which is then fed through the department of work and pensions and subsequently pronounced by a railway announcer with a cold and the über-CGI is one of the hariest pieces of code I've written in the past few years.
But I can totally see the donkey-work shortcuts thing, and I think it can actually lead to less borken pages!
no subject
no subject
no subject
Ah but but but, your classes should be called things that describe what they are, either from a what-it-looks-like point of view (at work I have classes called exciting things like "greyboxout" and "redline" and "redtext") or a what-it-does point of view (e.g. "breadcrumb" and "alert" and "footer"). This is where everybody goes "blah blah logical markup" and I go "yeah, but CSS is supposed to be for display, HTML is for logical markup", and then they go "ah-hah, then you should name classes after what things look like and not what they do" and I go "but the beauty of CSS is that you can do both!" and they go "but you smell" and I go "but I've had your mum" and we all argue over who uses a more awkward text editor.
I have been in Cambridge too long.
no subject
The XSLT greps in loads of places in the XML source for the properties of each tag (for example you can declare a colour scheme inside each box, like "green" or "red" and the relevant shades are chosen for different things, borders, lines, and so on). It then adds to each output tag a long scree of CSS classes corresponding to its type like "box-ledger-column-nonfinal box-ledger-column-nonfinal-red box-ledger-column-tiny box-ledger-column-not-bold" and so on. Then in the CSS you can define these things as you like (exactly what shade of red in the "red" colour scheme you want the border of a ledger to be, how tiny you want tiny to be in a ledger, and so on).
It makes the css long (~20K at the moment), but it makes it static across the site, so that doesn't cost much. The problem is that it makes the tags in the HTML long. Sometimes tags can have upto a dozen of those longwinded classes assigned to them, making them over 100 bytes each! That makes the download itmes long and the HTML a pain to read. Because CSS selectors are so broken in so many browsers, I don't really have much choice but to use classes to select tags apart from the simplest of assignments (all tags and only this tag, essentially).
I could shorten the HTML considerably by using code classes like b23cf with shorter names, but that would make the HTML and CSS difficult to read (I guess I could have a big comment in the CSS, and a reference in the HTML, but even so). Doing cleverer stuff in the CSS, so I can "use the cascade" more would be nice, but I'm not sure how I could do it easily to shorten the code considerably using that, to be honest, and it would add more comlpexity. You could inherit stuff like "redness" from outer elements, but you can't say in CSS for
Another thing is that about half the CSS classes are blank, so I could save there. But there's no sensible pattern to the ones that are currently blank. I could get the XSLT to miss out those classes, but that would mean parsing CSS in XSLT (doom!) or maintaining lists of empty tags.
I guess if I had infinite time I should generate the CSS and a "not currently used" sheet, along with short tag names and documentation all from a master XML style source document. A perfecitonist's work is never done.
As I guess I've already said, my CSS tends to be half-way-between logical and layout. Afterall, there's no real dualist's border there. Saying something is the last element assumes it's being rendered temperospacially, and listing something as last can carry semantic meaning. Documents using natural texts all have connotative typographical semantics, I think, and with the demise of the supremacy of denotation, can easily by the primary payload in certain applications. There are pretty clear boundaries for a whole class of texts, particularly scholarly texts, most of which have been written in the shadow of Descartes, after all, but most of the web isn't those texts! I think that you can only hope to do your best because CSS is where the "play" is in this system.
no subject
no subject
no subject
Then, when they change their minds two months later, one easy edit changes it all back.
no subject
no subject
This makes me wince. I discovered on a CSS course that my colleague, who has a qualification in web design, has no idea how to code a simple page from scratch. Everyone needs to know this stuff! It's not rocket science!
Dreamweaver is great for doing tables, lists and other dull things quickly, and it colours your code so you can see what's going on. But it still - even MX 2004 - barfs chunks of unnecessary taggage into my nice clean HTML.
no subject
no subject
(And... breathe.)
Sorry but we've just had the other side of this, which is "We want to be able to do our own web stuff, we just employed somebody who's just finished a degree in computer science so they will be able to do it". Well, um, no, a computer science degree doesn't necessarily tell you how to write for the web and/or code HTML, any more than a degree in linguistics tells you how to write a novel.
My analogies are breaking down.
no subject
There's too many people just finished an IT degree who can't program in any language, muttered HairyEars darkly, having spent much of the day 'maintaining' their code.
HELP! HELP! I need to get out of the house more!
no subject
no subject
no subject
(Yeah, they could still lie about what they've done, put other people's pages in their portfolio, etc. But then, when did a prospective employer last check your qualifications?)
no subject
ITYM speak many languages.
You need a degree in literature to write a novel.
no subject
no subject
Perhaps I should start using smilies.
no subject
(Actually, personally I don't mind smilies at all; and this isn't uk.misc.)
no subject
But emacs does that! 8-) And so does TextPad, which is actually quite nice.
even MX 2004
Our course tutor said that not many people were bothering with MX 2004, as it wasn't much of an improvement on original MX, and it was better to wait for MX 2006. Sigh.
no subject
Maybe we can mention some of your caveats in our documentation.
no subject
And I should also say that despite all the ranting I am also still bouncing about all the shiny things DW can do.
no subject
I expect he's aware of the XHTML 1.0 Strict thing.
He might not have realised the full enormity of the lock-in-to-DW aspects, though.
no subject
I may be being unfair to it on this point. Basically, it's very very easy to set up lots of funky templating, shared libraries of code snippets, etc. and for DW to magically update all your files when you change a shared bit. Or even when you move a file within its explorer-like file-system, it updates all the links. You can create 'accounts' that let people edit some files but not others; you can make templates which are partially editable but with the important bits locked down, and anything created with your template will change when you change the master file, etc. etc.
IOW there's a lot of impressive joined-up thinking within the bounds of the DW environment; but once you make changes outside that environment I don't know (because I didn't get long enough to play) how well it deals with that when you put them back in DW. Basically, it's trying to be a CMS as well as an editor, and by and large it does it pretty bloody well, but like any CMS if you buy into it wholesale you may find it irksome buying out again.
On the other hand, AFAICT it keeps all its magic spells in comments, so you could edit your files in DW, then run a script to strip all the DW comments, and then serve them as if they were ordinary static HTML. Probably. I dunno.
no subject
1is all i want to be able to program fast
And having your development environment pop up autocompletion options and documentation all over the place would make you *faster*?
How do you guys program without a feature like this?
By being competent enough to not need a crutch.
Why does the adage "A poor workman blames his tools" spring to mind?