Journal tags: school

2

Schooltijd

I was in Amsterdam last week. Usually I’m in that city for an event like the excellent CSS Day. Not this time. I was there as a guest of Vasilis. He invited me over to bother his students at the CMD (Communications and Multimedia Design) school.

There’s a specific module his students are partaking in that’s right up my alley. They’re given a PDF inheritance-tax form and told to convert it for the web.

Yes, all the excitement of taxes combined with the thrilling world of web forms.

Seriously though, I genuinely get excited by the potential for progressive enhancement here. Sure, there’s the obvious approach of building in layers; HTML first, then CSS, then a sprinkling of JavaScript. But there’s also so much potential for enhancement within each layer.

Got your form fields marked up with the right input types? Great! Now what about autocomplete, inputmode, or pattern attributes?

Got your styles all looking good on the screen? Great! Now what about print styles?

Got form validation working? Great! Now how might you use local storage to save data locally?

As well as taking this practical module, most of the students were also taking a different module looking at creative uses of CSS, like making digital fireworks, or creating works of art with a single div. It was fascinating to see how the different students responded to the different tasks. Some people loved the creative coding and dreaded the progressive enhancement. For others it was exactly the opposite.

Having to switch gears between modules reminded me of switching between prototypes and production:

Alternating between production projects and prototyping projects can be quite fun, if a little disorienting. It’s almost like I have to flip a switch in my brain to change tracks.

Here’s something I noticed: the students love using :has() in CSS. That’s so great to see! Whereas I might think about how to do something for a few minutes before I think of reaching for :has(), they’ve got front of mind. I’m jealous!

In general, their challenges weren’t with the vocabulary or syntax of HTML, CSS, and JavaScript. The more universal problem was project management. Where to start? What order to do things in? How long to spend on different tasks?

If you can get good at dealing with those questions and not getting overwhelmed, then the specifics of the actual coding will be easier to handle.

This was particularly apparent when it came to JavaScript, the layer of the web stack that was scariest for many of the students.

I encouraged them to break their JavaScript enhancements into two tasks: what you want to do, and how you then execute that.

Start by writing out the logic of your script not in JavaScript, but in whatever language you’re most comfortable with: English, Dutch, whatever. In the course of writing this down, you’ll discover and solve some logical issues. You can also run your plain-language plan past a peer to sense-check it.

It’s only then that you move on to translating your logic into JavaScript. Under each line of English or Dutch, write the corresponding JavaScript. You might as well put // in front of the plain-language sentence while you’re at it to make it a comment—now you’ve got documentation baked in.

You’ll still run into problems at this point, but they’ll be the manageable problems of syntax and typos.

So in the end, it wasn’t my knowledge of specific HTML, CSS, or JavaScript APIs that proved most useful to pass on to the students. It was advice like that around how to approach HTML, CSS, or JavaScript.

I also learned a lot during my time at the school. I had some very inspiring conversations with the web developers of tomorrow. And I was really impressed by how much the students got done just in the three days I was hanging around.

I’d love to do it again sometime.

Back to school

When I went to the Reboot conference in Copenhagen earlier this year, I met plenty of people who were interesting, cool and just plain nice. In fact, I met half of those lovely people before I even arrived in Denmark—it was at Stansted airport, waiting for a delayed flight, that I first met Riccardo Cambiassi, Lee Bryant and David Smith.

David is a teacher at St Paul’s school in London. Lately he’s been organising an ongoing series of guest speakers to come in and talk to the students. came in and gave a talk a little while back—yes that Ted Nelson. As you can imagine then, I was simultaneously honoured and intimidated when David asked me to come along to the school to give a talk on Designing the Social Web.

Yesterday was the big day. I walked across Hammersmith bridge and stepped inside a school for the first time in almost twenty years. Despite my nervousness, I felt the talk went well. I put together some slides but they were mostly just notes for myself. I had a whole grab-bag of things I wanted to discuss and while I might have done it in a very unstructured way, I think I managed to cover most of them.

Obviously this was a very different audience than I’m used to speaking to but I really enjoyed that. It was illuminating to go straight to the source and find out how teenagers are using social networking sites. Once the talk and questions were done, we adjourned to lunch—a good old fashioned school dinner—where the discussion continued. I really enjoyed talking with such sharp, savvy young gentlemen.

It isn’t surprising that they’re all so Web-savvy; the Web has always been there for them. Thinking back on my own life, it almost seems in retrospect as if I was just waiting for the Web to come along. Maybe I was born too soon or maybe I’m just young at heart, but I found that I was able to relate very closely with these people who are half my age.

I took the opportunity to test a theory of Jeff Veen’s on the difference in generational attitudes towards open data. Given the following two statements:

  1. my data is private except what I explicitly choose to make public or
  2. my data is public except what I explicitly choose to keep private,

…the overwhelming consensus amongst the students was with the second viewpoint, which happens to be the viewpoint I share but I suspect many people my age don’t.

There were plenty of other stimulating talking points—the Facebook/Beacon debacle was a big topic. It was a great way to spend an afternoon. My thanks to David for inviting me along to the school and my thanks to the young men of St Paul’s for their graciousness in listening to me natter on about small world networks, the strength of weak ties, portable social networks and, inevitably, microformats.

Seeing as I was in London anyway, I took the tube across town to see my collaborators at New Bamboo. That meant that by the time I was leaving London, it was rush hour. Oh joy. Despite the knackering experience of the commute, I managed to stay on my feet long enough to enjoy a great gig in Brighton that evening. It was a long but very fulfilling day.