Aaron T. Grogg has a nice page chock full of examples of UI, which used to be the sort of thing that we’d use JavaScript for, but can now be done in HTML & CSS. No hate: I have nothing against JS, but it has better things to do The examples are very modern, like Tabs, where the actual tabs are created with a ::scroll-marker and positioned as a ::scroll-marker-group with anchor positioning. Fancy.
Author: drweb
The sizes attribute for was maybe the hardest part. It had complicated syntax that always had to be in sync with whatever your CSS was doing. But sizes=”auto” support is almost ready for prime time. Jason Grigsby says we can go a step further an remove srcset too, which is nearly just as complex, and requires having a system to produce multiple images. Jason’s thinking is that we can use newfangled Client Hints to send to the server what size image we need, it responds in kind, and we’re back to a pretty basic situation. Well, do lazy loading too,…
Moving beyond disaster recovery, organizations can ensure business-critical mainframe environments. Over decades, the mainframe has earned a reputation for being synonymous with reliability. Many enterprise organizations continue to rely on the mainframe precisely because of the redundancy, automatic recovery, and availability that leads to “nine nines” reliability or 31.56 milliseconds of unplanned annual downtime per server.However, this reliability can lead to blind spots in planning and resourcing for recovery, with IT leaders perhaps counting on their mainframe being shielded from downtime. Platform availability is not the same thing as recoverability, and organizations need to quickly and confidently recover mainframe data…
Adding images to a website is a pretty straightforward task. You grab your link, and you summon the image element like below: <img src=”your_link” alt=”image content”>Code language: HTML, XML (xml) Then, you add your favorite CSS, and you have a nice-looking image! What if I tell you that the most common element is hiding some secrets? You have been working with images for too long, but you have probably never noticed the little quirks I will show you here. Think I am exaggerating? Follow along, and you will see! An Image Can Overflow If you inspect the CSS code of…
I had fun with the post about making a link to a random post in just HTML/CSS the other day. But I was almost certainly over-thinking it on the original. Using random() was kind of the point, so we can stick with that. One alternative is to think uni-directionally. Making it both rows and columns isn’t necessary out the gate. You can get vertical slices with flexbox easily, which is just as random really, and likely gives you a few hundred random posts as they can get down to 1px in width. An even simpler idea is to have all…
Fabric deployment pipelines look like they solve CI/CD for Fabric content, especially for people who prefer a GUI over writing code to handle deployments, but the implementation has enough structural gaps that they fall apart for several real deployment workflows. Even when they do work, the UI isn’t always intuitive.Every piece of active software carries a backlog of feature requests and known limitations, and deployment pipelines get new capabilities on a regular basis. Everything below reflects how deployment pipelines behave as of August 2026. Some of it may have changed by the time you’re reading this, so check Microsoft’s docs…
Hey! This post is a response to Abhishek Jakhar’s post about delayed tooltips, or, perhaps better put, a second part showing an alternative approach to the same problem. I really like Abhishek’s focus on the UX of the tooltips in his app. Both are true: a tooltip that comes up too fast is annoying for just-passing-by mouse cursors, and if you add a delay, they come up too slowly for someone intentionally mousing between them. That’s just good UX thinking, and I like to see it. But also, the solutions are quite deep into JavaScript land. The core of the…
Aug 18, 2026 17,600 Actions: Agent Security Is a Systems Problem The OpenAI/Hugging Face incident exposed a new challenge for AI agent security. 17,600 attacker actions show why AI agent security can’t rely on human review. Explore the controls needed to constrain, observe, and govern agents at speed. Read now
Angular 22.1 landed on July 29th, 2026, and it’s a minor release. But it comes with an announcement that changes how all of us plan our upgrades: Angular is switching to one major release per year.New release scheduleSince Angular 4, we’ve had a major release every six months. That’s over, and here’s what it means concretely:One major version every year, in Junev23 lands in June 2027 — not November 2026v24 in June 2028, and so onMajor versions are now supported for two years instead of 18 monthsMinor releases keep coming about every two months, so 4 to 6 per yearI’ve been teaching Angular upgrades for years now, and this…
It is becoming increasingly common to add various keyboard shortcuts to websites and applications for ease of use. Some of the very common shortcuts are ⌘ + K for quick chat or search, ⌘ + Enter for submit/Send, ⌘ + B for toggling the side navigation, ⌘ + B/I/U for bold, italic, and underline in any rich text editor, and there are tons of them, from changing the theme to opening help support. The engineers developing applications mostly use MacBooks, and to convey a shortcut, many simply end up hardcoding the ⌘ symbol or the text “CMD” for the modifier…
