On CSS Remakes
I’m a bit late to the party on this one, but Paul Hammond’s open letter to “tableless” recoders caused quite a stir a few weeks back with its extensive list of reasons that recoding someone else’s site in CSS helps no one and can in fact have a negative affect on the CSS advocacy effort (the response to the article is summarised in his follow up post).
A year ago I would have strongly disagreed with him—the question then was whether or not CSS was even capable of creating complex layouts, and CSS redesigns were a valuable demonstration of how much could be achieved without tables. I am unsure if that argument has been won yet—there still exist legions of web developers who think CSS is a useful trick for turning off the underlines on links—but the body of evidence seems great enough now that this no longer counts as a valid reason for creating tableless remakes. Paul’s main arguments rest on etiquette (it’s rude to dismiss someone’s work by recreating it), and it’s hard to disagree with him there.
That said, I remain a huge fan of tableless recoding as a tool for education. I myself have a collection of over a dozen recreations of existing sites in CSS, the majority of which I have never publicised and have no intention of doing so. While I was learning CSS (and I doubt you can truly ever finish learning it) I used to recode existing sites at a rate of one or two a week, targetting sites with designs that looked particularly well suited to tables. I learnt a great deal doing this, and I would recommend it to anyone still getting to grips with CSS positioning.
Paul is right that publishing CSS remakes of existing sites with no good reason is no longer appropriate, but as a tool for education this activity should not be under-estimated.
More recent articles
- Weeknotes: Parquet in Datasette Lite, various talks, more LLM hacking - 4th June 2023
- It's infuriatingly hard to understand how closed models train on their input - 4th June 2023
- ChatGPT should include inline tips - 30th May 2023
- Lawyer cites fake cases invented by ChatGPT, judge is not amused - 27th May 2023
- llm, ttok and strip-tags - CLI tools for working with ChatGPT and other LLMs - 18th May 2023
- Delimiters won't save you from prompt injection - 11th May 2023
- Weeknotes: sqlite-utils 3.31, download-esm, Python in a sandbox - 10th May 2023
- Leaked Google document: "We Have No Moat, And Neither Does OpenAI" - 4th May 2023
- Midjourney 5.1 - 4th May 2023
- Prompt injection explained, with video, slides, and a transcript - 2nd May 2023