So much slopaganda on LinkedIn.
Tags: ip
1946
Tuesday, April 22nd, 2025
Thursday, April 17th, 2025
Hiding elements that require JavaScript without JavaScript :: dade
This is clever: putting CSS inside a noscript
element to hide anything that requires JavaScript.
Wednesday, April 16th, 2025
Trans women are women.
Monday, April 14th, 2025
Vision for W3C
We believe the World Wide Web should be inclusive and respectful of all participants: a Web that supports facts over falsehoods, people over profits, humanity over hate.
Sunday, April 13th, 2025
Paying it forward
For the past couple of years, myself and Jessica have been going to the Belfast Tradfest in the Summer. It’s an excellent event with great workshops, sessions, and concerts. And it helps that Belfast is such a lovely city to spend a week in.
What struck me the first time we were participating in workshops there was the great mix of age ranges. It always warms my heart to see young people getting really into the music.
Then I found out about their bursary sponsorship scheme:
For many young musicians, financial barriers stand in the way of this invaluable experience. Your support can make a real difference by sponsoring a bursary that covers the cost of tuition for a deserving student.
Last year, I decided to forego one month’s worth of donations to The Session—the contributions that help cover the costs of hosting, newsletters, geocoding, and so on. Instead the money went towards bursary sponsorships for Belfast Tradfest.
It was a great success that managed to cover places for quite a few young musicians.
Normally, I wouldn’t mention the ins-and-outs of TheSession.org over here on adactio.com but I thought you might like to partake in this year’s fund drive:
For the month of April 2025, any donations made to The Session will go towards bursary sponsorships for young musicians to attend workshops at this year’s Belfast Trad Fest:
Maybe you’ve liked something I’ve written here. Maybe you enjoyed Resilient Web Design, the free book I published online. You can also read HTML5 For Web Designers and Going Offline for free now too.
I’ve never asked for any recompense for my online ramblings, but if you’ve ever wanted to drop me some money to thank me for something I’ve put out there, now’s your chance.
Any contribution you make will go towards fostering the next generation of traditional Irish musicians, something that’s very dear to my heart.
Monday, April 7th, 2025
Snook Dreams of the Web - Snook.ca
If we were to follow Jiro’s and his apprentices’ journeys and imagine web development the same way then would we ask of our junior developers to spend the first year of their career only on HTML. No CSS. No JavaScript. No frameworks. Only HTML. Only once HTML has been mastered do we move onto CSS. And only once that has been mastered do we move onto JavaScript.
Friday, March 21st, 2025
My Web Values: Why I Quit X and Feed the Fediverse Instead | Cybercultural
- Support open source software
- Support open web platform technology
- Distribution on the web should never be throttled
- External links should be encouraged, not de-emphasized
Thursday, March 20th, 2025
Command and control
I’ve been banging on for a while now about how much I’d like a declarative option for the Web Share API. I was thinking that the type
attribute on the button
element would be a good candidate for this (there’s prior art in the way we extended the type
attribute on the input
element for HTML5).
I wrote about the reason for a share button type as well as creating a polyfill. I also wrote about how this idea would work for other button types: fullscreen, print, copy to clipboard, that sort of thing.
Since then, I’ve been very interested in the idea of “invokers” being pursued by the Open UI group. Rather than extending the type
attribute, they’ve been looking at adding a new attribute. Initially it was called invoketarget
(so something like button invoketarget="share"
).
Things have been rolling along and invoketarget
has now become the command
attribute (there’s also a new commandfor
attribute that you can point to an element with an ID). Here’s a list of potential values for the command
attribute on a button
element.
Right now they’re focusing on providing declarative options for launching dialogs and other popovers. That’s already shipping.
The next step is to use command
and commandfor
for controlling audio and video, as well as some form controls. I very much approve! I love the idea of being able to build and style a fully-featured media player without any JavaScript.
I’m hoping that after that we’ll see the command
attribute get expanded to cover JavaScript APIs that require a user interaction. These seem like the ideal candidates:
button command="share"
button command="fullscreen"
button command="print"
button command="copy"
button command="install"
There’s also scope for declarative options for navigating the browser’s history stack:
button command="back"
button command="forward"
button command="refresh"
Whatever happens next, I’m very glad to see that so much thinking is being applied to declarative solutions for common interface patterns.
Wednesday, March 19th, 2025
Stop Using and Recommending React - Lusitos Tech Blog
I can’t recommend React to any project or customer anymore.
Using almost any other modern alternative, you will save time, money and nerves, even if you haven’t used them before.
Don’t stick to technology just because you know it.
Sunday, March 16th, 2025
Ten years ago today I coined the shorthand “js;dr” for “JavaScript required; Didn’t Read”. - Tantek
Practice Progressive Enhancement.
Build first and foremost with forgiving technologies, declarative technologies, and forward and backward compatible coding techniques.
All content should be readable without scripting.
If it’s worth building on the web, it’s worth building it robustly, and building it to last.
Wednesday, March 5th, 2025
Building WebSites With LLMS - Jim Nielsen’s Blog
And by LLMS I mean: (L)ots of (L)ittle ht(M)l page(S).
I really like this approach: using separate pages instead of in-page interactions. I remember Simon talking about how great this works, and that was a few years back, before we had view transitions.
I build separate, small HTML pages for each “interaction” I want, then I let CSS transitions take over and I get something that feels better than its JS counterpart for way less work.
Tuesday, February 25th, 2025
5 Questions for Jeremy Keith · Frontend Dogma
If you like the prospect of an old man ranting at clouds, this is for you.
Monday, February 24th, 2025
This page is under construction - localghost
I see the personal website as being an antidote to the corporate, centralised web. Yeah, sure, it’s probably hosted on someone else’s computer – but it’s a piece of the web that belongs to you. If your host goes down, you can just move it somewhere else, because it’s just HTML.
Sure, it’s not going to fix democracy, or topple the online pillars of capitalism; but it’s making a political statement nonetheless. It says “I want to carve my own space on the web, away from the corporations”. I think this is a radical act. It was when I originally said this in 2022, and I mean it even more today.
Tuesday, February 18th, 2025
Own what’s yours
Now, more than ever, it’s critical to own your data. Really own it. Like, on your hard drive and hosted on your website.
Is taking control of your content less convenient? Yeah–of course. That’s how we got in this mess to begin with. It can be a downright pain in the ass. But it’s your pain in the ass. And that’s the point.
Friday, February 14th, 2025
AI is Stifling Tech Adoption | Vale.Rocks
Want to use all those great features that have been in landing in browsers over the past year or two? View transitions! Scroll-driven animations! So much more!
Well, your coding co-pilot is not going to going to be of any help.
Large language models, especially those on the scale of many of the most accessible, popular hosted options, take humongous datasets and long periods to train. By the time everything has been scraped and a dataset has been built, the set is on some level already obsolete. Then, before a model can reach the hands of consumers, time must be taken to train and evaluate it, and then even more to finally deploy it.
Once it has finally released, it usually remains stagnant in terms of having its knowledge updated. This creates an AI knowledge gap. A period between the present and AI’s training cutoff. This gap creates a time between when a new technology emerges and when AI systems can effectively support user needs regarding its adoption, meaning that models will not be able to service users requesting assistance with new technologies, thus disincentivising their use.
So we get this instead:
I’ve anecdotally noticed that many AI tools have a ‘preference’ for React and Tailwind when asked to tackle a web-based task, or even to create any app involving an interface at all.
Sunday, February 9th, 2025
Wednesday, January 29th, 2025
6 CSS Snippets Every Front-End Developer Should Know In 2025 · 19 January 2025
- Springy easing with
linear()
- Typed custom properties
- View transitions for page navigation
- Transition animation for
dialog
andpopover
- Transition animation for
details
- Animated adaptive gradient text
Saturday, January 25th, 2025
Build for the Web, Build on the Web, Build with the Web – Web Performance and Site Speed Consultant
If I was only able to give one bit of advice to any company: iterate quickly on a slow-moving platform.
Excellent advice from Harry (who first cast his pearls before the swine of LinkedIn but I talked him ‘round to posting this on his own site).
- Opt into web platform features incrementally
- Embrace progressive enhancement to build fast, reliable applications that adapt to your customers’ context
- Write code that leans into the browser, not away from it
I’m not against front-end frameworks, and, believe me, I’m not naive enough to believe that the only thing a front-end framework provides is soft navigations, but if you’re going to use one, I shouldn’t be able to smell it.
Tuesday, January 21st, 2025
Moving on from React, a Year Later
Many interactions are not possible without JavaScript, but that doesn’t mean we should look to write more than we have to. The server doing something useful is a requirement for building an interesting business. The client doing something is often a nice-to-have.
There’s also this:
It’s really fast
One of the arguments for a SPA is that it provides a more reactive customer experience. I think that’s mostly debunked at this point, due to the performance creep and complexity that comes in with a more complicated client-server relationship.
Wednesday, January 15th, 2025
Durable products | Brad Frost
Wherein Brad says some kind words about The Session. And slippers.
Slippers are cool.