Anne van Kesteren

@annevk.nl

Web Standards Engineer at U+F8FF.

Introducing the new Safari MCP server 🎊 Connect your agent directly to a live Safari browser window so it can find bugs and examine the page on its own. Available in Safari Technology Preview 247. Details here 👉🏽 webkit.org/blog/18136/i... Give it a try and let me know what you think ❤️

Introducing the Safari MCP server for web developers

In Safari Technology Preview 247, we’re introducing the Safari MCP server — a Model Context Protocol server for web developers that makes your web development and debugging workflow faster and more po...

webkit.org

This week I'm in A Coruña, Galicia, attending the @webengineshackfest.org 👩‍💻 where we are discussing the future of web engines and standards. Given the potential impact on future web development, I thought it would be helpful to share some of my personal notes from the event. ✍️👇

I'm hiring to the WebKit Privacy & Adtech team! Help us prevent online tracking/fingerprinting, and design+implement privacy-preserving alternatives for use in advertising. · Systems programming in C++ & Swift · Location: Cupertino · Work that feels good and important jobs.apple.com/en-us/detail...

WebKit Privacy & Adtech Engineer - Jobs - Careers at Apple

Apply for a WebKit Privacy & Adtech Engineer job at Apple. Read about the role and find out if it’s right for you.

jobs.apple.com

If you have existential feelings about the state of your software stack, just remember that on the web it’s completely undefined which element a mouse click returns.

Web component folks: A common feature with request is to "inherit from a button". If that's something you want, which specific button behaviours is it you want to inherit? Why is putting a button in the shadow root not the answer?

I got permission to share this, and I'm extremely grateful for that. The Onion got this letter from one of our subscribers in Alaska. She works with dementia patients and decided to leave a copy in the car for each one. This email made my year. Read it and you'll see what I mean. People are good.


I work as an elder and hospice caregiver, which I am oddly passionate about. I can love on them shamelessly and no one complains about my codependence. It's a win-win situation. 

Many of my caregiving colleagues complain about the repetitive questions and, sometimes reactions, of the elderly, especially when those patients happen to read the newspaper, especially with the current downward spiral of our country — as if these people haven't lived through enough horror...

I love my dementia peeps, but sometimes wonder if there's a Guinness Book World Record for how many times an hour a dementia patient can repeat the same question — it's got to be in the hundreds. At least with small children, they ask different questions. Dementia patients will get stuck on one short question and ask it until you can interrupt their train(carousel) of thought and successfully redirect their attention. That carousel is pretty manic sometimes. 

A couple days ago, I picked up my mail from the post office and drove over to the nursing home to take (let's call her "Miss Daisy") Miss Daisy out for a drive. Before we took off on our road trip, to the end of The Road and back, in our landlocked little town (Juneau, Alaska), I set my copy of The Onion down in front of her. 

Over our two-hour excursion, tiny Miss Daisy read that front page at least a dozen times and each time she would snicker, giggle, and guffaw, then put it down on the dash board and, a minute later, discover it anew. I think it was the best afternoon of my life. We don't often hear them laugh and when they do, it's the sweetest thing you've ever heard. 

...

Thank you, thank you, thank you, for the really important work all of you do. You make the world a better place.

If you write code to make websites (HTML, CSS, JS, Web API, Media) and you get frustrated trying to wrangle your code to work in Safari, which bugs are blocking you? Which existing features would you most like to see improved? If you got a chance to order priorities which effort would you put first?

I have at times told people that if you want to generate XML, you should use a serializer. So when I had to generate a serialized CSS URL value containing a data: URL of an SVG document of which colors could vary, I immediately went for string manipulation and concatenation. 😅

Almost time to sign off for the year. Web standard proposals to finish in (early?) 2025: - Declarative Web Push - Scoped Custom Element Registries - HTML (and SVG & MathML) Sanitizer API - moveBefore() - fetchLater() - float16 in 2D canvas - <button command> and quite a few more. Happy holidays!

git blame as visualized by GitHub (or Searchfox for the HTML standard) is an amazing development tool for projects that span decades. In particular for projects that enforce good commit messages. Being able to answer why something is the way it is, can be crucial when changing it.

The increased URL interoperability between browsers motivated me to do another pass at the remaining open issues. Fully solving file: URLs and URL parsing overall feels within reach for 2025. The IDNA BiDi issue depends on Unicode, but it is scheduled for Unicode 17.0.

After working on URLs for well over a decade, we finally hit a point where real browser convergence on core aspects is happening. Experimental browser builds are at ~96% (Chromium), ~99% (Gecko), and ~100% (WebKit) in Interop 2024’s URL category. Very exciting to see! Kudos!

If your website does its own video controls, please adopt the :volume-locked pseudo-class to determine whether to offer volume control. Notably iOS and iPadOS manage their volume globally.