2019 in numbers
I posted to adactio.com 1,600 times in 2019:
In amongst those notes were:
If you like, you can watch all that activity plotted on a map.
Away from this website in 2019:
I posted to adactio.com 1,600 times in 2019:
In amongst those notes were:
If you like, you can watch all that activity plotted on a map.
Away from this website in 2019:
Here are eight posts from during the year that I think are a good representative sample. I like how these turned out.
I hope that I’ll write as many blog posts in 2020.
I’m pretty sure that I will also continue to refer to them as blog posts, not blogs. I may be the last holdout of this nomenclature in 2020. I never planned to die on this hill, but here we are.
Actually, seeing as this is technically my journal rather than my blog, I’ll just call them journal entries.
Here’s to another year of journal entries.
One evening last month, during An Event Apart Seattle, a bunch of the speakers were gathered in the bar in the hotel lobby, shooting the breeze and having a nightcap before the next day’s activities. In a quasi-philosophical mode, the topic of goals came up. Not the sporting variety, but life and career goals.
As I everyone related (confessed?) their goals, I had to really think hard. I don’t think I have any goals. I find it hard enough to think past the next few months, much less form ideas about what I might want to be doing in a decade. But then I remembered that I did once have a goal.
Back in the ’90s, when I was living in Germany and first starting to make websites, there was a website I would check every day for inspiration: Project Cool’s Cool Site Of The Day. I resolved that my life’s goal was to one day have a website I made be the cool site of the day.
About a year later, to my great shock and surprise, I achieved my goal. An early iteration of Jessica’s site—complete with whizzy DHTML animations—was the featured site of the day on Project Cool. I was overjoyed!
I never bothered to come up with a new goal to supercede that one. Maybe I should’ve just retired there and then—I had peaked.
Megan Sapnar Ankerson wrote an article a few years back about How coolness defined the World Wide Web of the 1990s:
The early web was simply teeming with declarations of cool: Cool Sites of the Day, the Night, the Week, the Year; Cool Surf Spots; Cool Picks; Way Cool Websites; Project Cool Sightings. Coolness awards once besieged the web’s virtual landscape like an overgrown trophy collection.
It’s a terrific piece that ponders the changing nature of the web, and the changing nature of that word: cool.
Perhaps the word will continue to fall out of favour. Tim Berners-Lee may have demonstrated excellent foresight when he added this footnote to his classic document, Cool URIs don’t change—still available at its original URL, of course:
Historical note: At the end of the 20th century when this was written, “cool” was an epithet of approval particularly among young, indicating trendiness, quality, or appropriateness.
I posted to adactio.com 1,387 times in 2018:
In amongst those notes were:
In my blog posts, the top tags were:
In my links, the top tags were:
When I wasn’t updating this site:
Here are some posts that turned out okay…
A lot of my writing in 2018 was on technical topics—front-end development, service workers, and so on—but I should really make more of an effort to write about a wider range of topics. I always like when Zeldman writes about his glamourous life. Maybe in 2019 I’ll spend more time letting you know what I had for lunch.
I really enjoy writing words on this website. If I go too long between blog posts, I start to feel antsy. The only relief is to move my fingers up and down on the keyboard and publish something. Sounds like a bit of an addiction, doesn’t it? Well, as habits go, this is probably one of my healthier ones.
Thanks for reading my words in 2018. I didn’t write them for you—I wrote them for me—but it’s always nice when they resonate with others. I’ll keep on writing my brains out in 2019.
I wrote 78 blog posts in 2017. That works out at an average of six and a half blog posts per month. I’ll take it.
Here are some pieces of writing from 2017 that I’m relatively happy with:
Going Rogue. A look at the ethical questions raised by Rogue One
In AMP we trust. My unease with Google’s AMP format was growing by the day.
A minority report on artificial intelligence. Revisiting two of Spielberg’s films after a decade and a half.
Progressing the web. I really don’t want progressive web apps to just try to imitate native apps. They can be so much more.
CSS. Simple, yes, but not easy.
Intolerable. A screed. I still get very, very angry when I think about how that manifestbro duped people.
Акула. Recounting a story told by a taxi driver.
Hooked and booked. Does A/B testing lead to dark patterns?
Ubiquity and consistency. Different approaches to building on the web.
I hope there’s something in there that you like. It always a nice bonus when other people like something I’ve written, but I write for myself first and foremost. Writing is how I figure out what I think. I will, of course, continue to write and publish on my website in 2018. I’d really like it if you did the same.
I like words. I like the way they can be tethered together to produce a satisfying sentence.
Jessica likes words even more than I do (that’s why her website is called “wordridden”). She studied linguistics and she’s a translator by trade—German into English. Have a read of her post about translating Victor Klemperer to get an inkling of how much thought and care she puts into it.
Given the depth of enquiry required for a good translation, I was particularly pleased to read this remark by John Le Carré:
No wonder then that the most conscientious editors of my novels are not those for whom English is their first language, but the foreign translators who bring their relentless eye to the tautological phrase or factual inaccuracy – of which there are far too many. My German translator is particularly infuriating.
That’s from an article called Why we should learn German, but it’s really about why we should strive for clarity in our use of language:
Clear language — lucid, rational language — to a man at war with both truth and reason, is an existential threat. Clear language to such a man is a direct assault on his obfuscations, contradictions and lies. To him, it is the voice of the enemy. To him, it is fake news. Because he knows, if only intuitively, what we know to our cost: that without clear language, there is no standard of truth.
It reminds me of one of my favourite Orwell essays, Politics and the English Language:
Political language — and with variations this is true of all political parties, from Conservatives to Anarchists — is designed to make lies sound truthful and murder respectable, and to give an appearance of solidity to pure wind.
But however much I agree with Le Carré’s reprise of Orwell’s call for clarity, I was brought up short by this:
Every time I hear a British politician utter the fatal words, “Let me be very clear”, these days I reach for my revolver.
Le Carré’s text was part of a speech given in Berlin, where everyone would get the reference to the infamous Nazi quote—
Wenn ich Kultur höre … entsichere ich meinen Browning—and I’m sure it was meant with a sly wink. But words matter.
Words are powerful. Words can be love and comfort — and words can be weapons.
When I wrote a few words about progressive enhancement recently, I linked to Karolina’s great article The Web Isn’t Uniform. I was a little reluctant to link to it, not because of the content—which is great—but because of its location on Ev’s blog. I much prefer to link directly to people’s own websites (I have a hunch that those resources tend to last longer too) but I understand that Medium offers a nice low barrier to publishing.
That low barrier comes at a price. It means you have to put up with anyone and everyone weighing in with their own hot takes. The way the site works is that anyone who writes a comment on your article is effectively writing their own article—you don’t get to have any editorial control over what kind of stuff appears together with your words. There is very little in the way of community management once a piece is published.
Karolina’s piece attracted some particularly unsavoury snark—tech bros disagreeing in their brash bullying way. I linked to a few comments, leaving out the worst of the snark, but I couldn’t resist editorialising:
Ah, Medium! Where the opinions of self-entitled dudes flow like rain from the tech heavens.
I knew even when I was writing it that it was unproductive, itself a snarky remark. Two wrongs don’t make a right. But I wanted to acknowledge that not only was bad behaviour happening, but that I was seeing it, and I wasn’t ignoring it. I guess it was mostly intended for Karolina—I wanted to extend some kind of acknowledgment that the cumulative weight of those sneering drive-by reckons is a burden that no one should have to put up with.
Tempted to @-mention orgs who’s employees abuse me in comments under my posts. Then I remember about million more interesting things to do.— fantastic ms. (@fox) April 29, 2016
“Everyday, a dude goes out of their way to tell you you’re wrong. Women’s life on the Internet.” A novel.— fantastic ms. (@fox) April 29, 2016
I’m literally done reading the comments for my article. It saddens me that even high-profile Web folk fails to see what I meant…— fantastic ms. (@fox) April 26, 2016
№1 rule of posting controversial content: NEVER read the comments*— fantastic ms. (@fox) April 25, 2016
*of random dudes who misunderstood the point and are trying to mock you.
I literally wrote JS is great but the point is understanding who you build for and be empathetic. Still people call me a hater.— fantastic ms. (@fox) April 24, 2016
Funny enough it was 98% men trying to tell me I don’t understand how the web works.— fantastic ms. (@fox) April 24, 2016
Guess what? Stop reading in between the lines.
Probably going to have white male dudes tweeting at me how much they disagree for eternity.— fantastic ms. (@fox) April 23, 2016
I knew that when I wrote about Medium being “where the opinions of self-entitled dudes flow like rain from the tech heavens” that I would (rightly) get pushback, and sure enough, I did …on Medium. Not on Twitter or anywhere else, just Medium.
I syndicate my posts to Ev’s blog, so the free-for-all approach to commenting doesn’t bother me that much. The canonical URL for my words remains on my site under my control. But for people posting directly to Medium and then having to put up with other people casually shitting all over their words, it must feel quite disempowering.
I have a similar feeling with Twitter. I syndicate my notes there and if the service disappeared tomorrow, I wouldn’t shed any tears. There’s something very comforting in knowing that any snarky nasty responses to my words are only being thrown at copies. I know a lot of my friends are disheartened about the way that Twitter has changed in recent years. I wish I could articulate how much better it feels to only use Twitter (or Medium or Facebook) as a syndication tool, like RSS.
There is an equal and opposite reaction too. I think it’s easier to fling off some thoughtless remarks when you’re doing it on someone else’s site. I bet you that the discourse on Ev’s blog would be of a much higher quality if you could only respond from your own site. I find I’m more careful with my words when I publish here on adactio.com. I’m taking ownership of what I say.
And when I do lapse and write snarky words like “Ah, Medium! Where the opinions of self-entitled dudes flow like rain from the tech heavens.”, at least I’m owning my own snark. Still, I will endeavour to keep my snark levels down …but that doesn’t mean I’m going to turn a blind eye to bad behaviour.
For a while now, The Session has had some little on-boarding touches to make sure that new members are eased into the culture of this traditional Irish music community.
First off, new members are encouraged to add a little bit about themselves so that there’s some context when they start making contributions.
Secondly, new members can’t kick off a brand new discussion straight away.
Likewise, they can’t post a comment straight away. They need to wait an hour between signing up and posting their first comment. Instead of seeing a comment form, they see a countdown.
Finally, when they do make their first submission—whether it’s a discussion, an event, a session, or a tune—the interface displays a few extra messages of encouragement and care.
But I realised that all of these custom messages were very one-sided. They were always displayed to the new member. It’s equally important that existing members treat any newcomers with respect.
Now on some discussions, an extra message is displayed to existing members right before the comment form. The logic is straightforward:
It’s a small addition, but it makes a difference.
Writing, editing, films, sandwich, atemporality, troll, mudshark, poetry, mandolin, falsehoods, transatlantic, wedding, secrets, phone, notifications, Dao, seamless, sparks, Dean, Isaac, Sunday, space, launch, beach, free, travel, speaking, history, inverse, reading, Spring, pow-wow, toggle, gentrification, web, bliss, Atanasoff, feast, components, CERN, intern, app, typography, books, late, Lusitania, ramen, indie, webmention, conference, conditions, spying, collaboration, Spacewar, correction, photograph, workshop, tools, trains, Greenwich, rehearsal, pride, birthday, ally, power, quiz, scale, Sophie, naming, Jeffrey, meetings, Interstellar, future, guests, practice, market, games, extended, dogs, decade, host, iPad, Cobh, tourist, Brighton, fecund, growth, tomorrow, special, comedown, solstice, weather, Codebar, animation, dConstruct, quieter, Edge, gas, exactly, done.
I really enjoyed last year’s Edge conference so I made sure not to miss this year’s event, which took place last weekend.
The format was a little different this time ‘round. Last year the whole day was taken up with panels. Now, panels are often rambling, cringeworthy affairs, but Edge Conf is one of the few events that does panels well: they’re run on a tight schedule and put together with lots of work in advance. At this year’s Edge, the morning was taken up with these tightly-run panels as usual, but the afternoon consisted of more Barcamp-like breakout sessions.
I’ve got to be honest: I don’t think the new format worked that well. The breakout sessions didn’t have the true flexibility that you get with an unconference schedule, so there was no opportunity to merge similarly-themed sessions. There was, for example, a session on components at the same time as a session on accessibility in web components.
That highlights the other issue: FOMO. I’m really not a fan of multi-track events; there were so many sessions that sounded really interesting, but I couldn’t clone myself and go to all of them at once.
But, like I said, the first half of the day was taken up with four sequential (rather than parallel) panels and they were all excellent. All of the moderators did a fantastic job, and I was fortunate enough to sit in on the progressive enhancement panel expertly moderated by Lyza.
The event is called Edge for a reason. There is a rarefied atmosphere—and not just because of the broken-down air conditioning. This is a room full of developers on the cutting edge of web development technologies. Being at Edge Conf means being in a bubble. And being in a bubble is absolutely fine as long as you’re aware you’re in a bubble. It would be problematic if anyone were to mistake the audience and the discussions at Edge as being in any way representative of typical working web devs.
One of the most insightful comments of the day came from Christian who said, “Yes, but this is Edge Conf.” You’re going to need some context for that quote, so here it is…
On the web components panel that Christian was moderating, Alex was making a point about the ubiquity of tools—”Tooling was save you”, he said—and he asked for a show of hands from the audience on who was not using some particular tooling technology; transpilers, package managers, build tools, I can’t remember the specific question. Nobody put their hand up. “See?” asked Alex. “Yes”, said Christian, “but this is Edge Conf.”
Now, while I wasn’t keen on the format of the afternoon with its multiple simultaneous breakout sessions, that doesn’t mean I didn’t enjoy the ones I plumped for. Quite the opposite. The last breakout session of the day, again expertly moderated by Lyza, was particularly great.
And yet the misunderstanding persists. For that reason, most of the people in the discussion at Edge Conf were in favour of simply dropping the term progressive enhancement and instead focusing on terms like availability and access. Tim writes:
I’m not sure what we call it now. Maybe we do need another term to get people to move away from the “progressive enhancement = working without JS” baggage that distracts from the real goal.
And Stuart writes:
So I’m not going to be talking about progressive enhancement any more. I’m going to be talking about availability. About reach. About my web apps being for everyone even when the universe tries to get in the way.
But Jason writes:
I completely disagree that we should change nomenclature because there exists some small segment of Web designers unwilling to expand their development toolbox. I think progressive enhancement—the term—remains useful, descriptive, and appropriate.
I’m torn. On the one hand, I agree with Jason. The term “progressive enhancement” is a great descriptor. But on the other hand, I don’t want to end up like that guy who’s made it his life’s work to change every instance of the phrase “comprises of” to “comprises” (or “consists of”) on Wikipedia. Technically, he’s correct. But it doesn’t sound like a fun way to spend your days.
I guess my worry is, if I write an article or give a presentation, and I title it something to do with progressive enhancement, am I going to alienate and put off the very audience I’m trying to reach? But if I title it something else, am I tricking people?
Words are hard.
This is the penultimate post in my 100 days project.
I’ve had quite a few people tell me how much they’re enjoying reading my hundred word posts. I thank them. Then I check: “You know they’re exactly 100 words long, right?”
“Really?” they respond. “I didn’t realise!”
“But that’s the whole point!” I say. The clue is in the name. It’s not around 100 words—it’s exactly 100 words every day for 100 days.
That’s the real challenge: not just the writing, but the editing, rearranging, and condensing.
After all, it’s not as if I can just stop in the
When I’m grilling outside, I cook on a gas barbecue. There are quite a few people who would take issue with this. Charcoal is clearly better, they claim. And they’re right. But the thing is, I can fire up my gas barbecue quickly and just get down to cooking.
When I’m programming on the server, I code in PHP. There are quite a few people who would take issue with this. Any other language is clearly better, they claim. And they’re right. But the thing is, I can fire up my text editor quickly and just get down to coding.
It’s the weekend …and I got up at the crack of dawn to head to London. Yes, on this beautiful sunny day, I elected to take the commuter train up to the big city to spend the day trapped inside a building where the air conditioning crapped out. Sweaty!
But it was worth it. I was at the Edge conference, which is always an intense dose of condensed nerdery. This year I participated in one of the panels: a discussion on progressive enhancement expertly moderated by Lyza. She also led a break-out session on the same topic later on.
It was another beautiful day in Sussex and the other Clearlefties made full use of it by going on a cross-country hike culminating with a well-earned beer’n’food stop in a pub.
I couldn’t join them though because I had band practice: three hours of hammering out Salter Cane songs. This time though, the hammering was a touch lighter. We’ve got a gig in The Greys pub coming up on Saturday, July 11th—come along!—and it’s not the most spacious of venues (to put it mildly) so we tried practicing a bit quieter than we normally would.
Still sounded great.
I’m not organising dConstruct this year—Andy is—but it’s still an exciting day for everyone when the website launches; we’ve got something of a tradition of having some fun with it.
This year Andy commissioned Paddy Donnelly to come up with a design direction, partly because we were slammed with client work, but mostly because he’s really talented. Graham then took that design and executed it beautifully.
Gorgeous. Responsive. Performant. These qualities don’t need to be mutually exclusive.
There’s room for improvement and there’s plenty more to be done, but I’m still blown away by the dConstruct 2015 site.
When I got to work, I had a sneak peak of a site that Graham has been working on. If everything goes according to plan, it will launch tomorrow. It’s a gorgeous piece of work with some very subtle bits of animation.
At the end of the day, I sat in on the weekly roundtable design crit. Richard finished it by soliciting ideas for animation effects on another upcoming site launch.
There are many web-related community events in Brighton. There’s something going on pretty much every evening. One of my favourite events is Codebar. It happens every Tuesday, rotating venues between various agency offices. Tonight it was Clearleft’s turn again.
At the start of the evening, students and teachers get paired up. I was helping some people with HTML and CSS as they worked their way through the tutorials.
It’s a great feeling to watch things “click”; seeing someone making their first web page, style their first element, and write their first hyperlink—the very essence of the World Wide Web.
The weather’s been pretty good lately. That shouldn’t be a surprise seeing as it’s the middle of June but this is England.
Brighton really shows its best side in the sunny weather (once everyone’s done starting fires with unattended barbecues). We get to have picnics out on the deck at the Clearleft office. And sometimes we end the day on the beach having a nice cold beer.
But today it was pissing down.
Cue the usual weather banter about summer being all done.
It cleared up in the afternoon and the sun came out. Makes you appreciate it even more.
It’s the summer solstice, the longest day of the day.
Last year I spent the summer solstice visiting a telescope in the woods outside Riga:
we were inside the observatory getting a tour of the telescope at the precise moment that the astronomical summer began.
Later that evening, when I was back in my hotel room, I fired off a quick DM to Chloe, simply saying “Happy Birthday!” (it’s an easy date to remember).
She responded the next day with a curiously distant message. “Thanks Jeremy. Hope you’re well.”
And that was the last DM I ever got from Chloe.