Teaching XHTML/CSS (was Re: Promotion of XHTML)

On Mon, Dec 30, 2002 at 03:25:11PM -0700, Chris Hubick wrote:
> 
> You can talk about right and wrong, and accessibility, browser and
> platform neutrality, but the problem is most people /do/ /not/ /care/. 
> Students glaze over.  They especially don't care when doing it the right
> way is vastly more difficult that doing it the wrong way (table based
> layout for example). Even if it was easy, they still wouldn't care.  And
> for the most part they don't want to understand why they should care,
> they just want their page to be cool and work - which they can get with
> little effort.

I had a conversation with a university lecturer who was teaching
a web-related course in Information Management about why she was
still teaching HTML and not XHTML.  Her answer was that most
students can barely cope with effectively using computers, 
let alone trying to grasp XML/XHTML.

I don't believe that this is a sufficient 'excuse'. To some
extent, learning technical things (mathematics, programming, languages) 
tend to begin with some degree of acceptance about "this is the way things 
are" on the part of the student; this is part of the learning curve.
From my own experiences, after some time, the student might truly 
understand the why, but in the beginning, they can start with understanding 
the how - explaining whys in the beginning don't always make sense until
they have seen a few examples and have worked through a few themselves.

This is why I think it would be better to teach XHTML right in the beginning
- we say, "this is the way things are now". I have found that teaching valid 
HTML 4, explaining laying out web pages in tables, /and then/ explaining
XHTML/CSS to be much more confusing for students - they expressed a
preference towards the first concept they learned, and they don't understand
the transition or the reasoning behind the difference. 

The method I ended up using in teaching basic XHTML/CSS, was bringing
a series of different sized cardboard boxes into class: a big box to 
signify the <html> container, a box to signify the <header> container, 
a box to signify the <body> containter, headings, paragraphs ..
and so forth. 

This way, students were able to conceptualise the structure of a Web
document without even beginning to understand what XHTML is. I used
yellow stickies to label the XHTML:  these are the names we are calling
these boxes. Eg, a div and a span are special kinds of boxes, we can call
them what we want.

The advantage to this method of conceptualising meant that it became
quite easy to explain CSS. Students were able to see what cascading
meant - it made a kind of sense that a property belonging to a 
smaller box should override a property inherited by a containing box. 
And I think was not difficult to see why structure is separated
from the presentation: the content goes in the boxes, the presentation
is described "on top" of the boxes.

I didn't have the chance to experiment with this method more than 
a couple of times. If someone else is willing to give it a try, I'd 
like to know if this method is truly workable and effective. :)

cheers,
-steph

Received on Wednesday, 1 January 2003 04:58:47 UTC