Modern-day samurai kneeling in traditional armor, sword in hand, against a vibrant wall of multicolored paint splashes — symbolizing the fusion of ancient warrior spirit with contemporary creativity.

Inside the dojo

Step into the laboratory! This dojo is where I push the boundaries of HTML and CSS to create inclusive digital experiences. I believe the web should be accessible to everyone—no exceptions. Explore my latest articles on UX engineering, test automation, and the art of clean, accessible code.

PHP in 2026: Modern Language, Fragmented Tooling

blogComic illustration of a developer struggling with the fragmented ecosystem of modern PHP. The scene features a messy desk with overlapping package managers (npm and composer), OS-level tools like apt-get, and conflicting formatters.

Practical take on PHP and Laravel in 2026: a modern, capable language with fragmented tooling, OS coupling, and DX trade-offs in mixed-stack teams.

12 min read • 1,517 words

When AI helps with better detection in accessibility testing

blogA comic-style illustration of a developer from behind looking at a monitor. The screen displays code and an AI analysis of a photo, with specific labels identifying a man, a dog, and a park scene.

Accessibility Cloud's ACAI adds AI to the detection phase of accessibility testing, helping teams identify issues that traditional rule-based scanners cannot.

5 min read • 638 words

Scroll-Driven Animations and Test Automation

blogCartoon-style developer at a standing desk scratching his head in confusion while looking at code on a monitor, struggling to make visual test automation work with scroll-driven animations.

Scroll-driven animations break test automation. Learn why SDAs cause false positives in accessibility testing and discover practical solutions.

10 min read • 1,295 words

Making Scrollable Code Blocks Accessible

blogUser frustrated while trying to scroll with keyboard

Fix keyboard accessibility gaps in Safari: learn why scrollable code blocks need focus and how a small polyfill makes them accessible for keyboard users.

7 min read • 846 words

Contrast: Beyond WCAG Compliance

blogComic-style illustration of a bearded developer wearing a baseball cap and samurai-themed shirt, working on a laptop with a samurai sticker. To the side, accessibility icons and the hashtag #A11yTips promote practical accessibility tips for developers.

Discover why APCA offers a more perceptually accurate approach to color contrast than traditional WCAG standards for better readability.

6 min read • 725 words

You don’t need JS for that

workshopComic-style illustration of my character slashing the JavaScript logo with a katana

An internal 90-minute Atos workshop where live coding demos showed how modern HTML and CSS can replace heavy JavaScript with better a11y and performance.

Training Tech Teams for Inclusive AI

conferenceEvent graphic titled "Training Tech Teams for Inclusive AI" for World Usability Day. The image features two circular headshots: James Thurston (Head of Accessibility & Digital Inclusion for North America, Atos US) and Michaël Vanderheyden (Lead UX Engineer Central Europe, Atos Germany). The slide includes IAAP certification badges (CPACC, CPWA, KB-BFL), the World Usability Day logo, and the Atos logo against a blue and white background.

A session co-presented with James Thurston at the Texas DIR World Usability Day 2025, covering accessibility fundamentals, embedding shared team responsibilities, and a 10-step checklist for building accessible Generative AI products.

Scaling Accessibility, Developer Mindsets & the European Accessibility Act

podcastPromotional banner for "Beyond Barriers" featuring Michaël Vanderheyden, Lead UX Engineer.

Accessibility is not just for users with permanent disabilities. It’s about making every interaction smoother for everyone, in every situation

From Skeletons to Smooth Reveals: A Case for the :complete pseudo-class

blogThe CSS logo in front of a skeleton UI template

Why the web needs a :complete (or resource state) pseudo-class: to replace JS skeleton/loader hacks with declarative CSS for images, avatars & performance.

8 min read • 1,039 words

Frameworks are tools, not gatekeepers: Rethinking web developer hiring

blogA person frowning at popular framework logos next to the text "Frameworks are tools, not gatekeepers"

Framework hiring is broken. Stop filtering great web developers by framework checklists—hire for HTML, accessibility, progressive enhancement, performance.

4 min read • 449 words

Enhancing Dependabot Auto-Merging: A Smarter, More Secure Approach

blogA shield floating in front of some code snippets

Securely auto-merge Dependabot PRs with GitHub Rulesets and a webhook-driven GitHub App—no PATs, lower risk, and faster, safer dependency updates.

5 min read • 574 words

If you ask customers or product owners to choose between feature and accessibility, they will choose feature almost every time.

blogDiverse group of colleagues smiling in a bright office; one colleague uses a wheelchair, emphasizing inclusive teamwork. Text reads: ‘Design for accessibility — make your product usable for all.’

"If you ask customers or product owners to choose between feature and accessibility, they will choose feature almost every time."

6 min read • 666 words

How to leverage GitHub and semantic release to reduce vulnerabilities in your packages

blogGithub defending against NPM vulnerabilities

Have you ever noticed, when you install your project’s dependencies, that npm is reporting known vulnerabilities you just installed?

13 min read • 1,607 words

Things You Need To Test Your Web App

blogDigital workspace with a developer surrounded by a desktop, laptop, tablet, and phone, representing comprehensive web app testing across platforms.

Discover essential techniques for testing web apps across devices and browsers. Use DevTools, Lighthouse, and network throttling to ensure reliable performance.

8 min read • 934 words

How to display code coverage of a Vue project in Gitlab

blogA Developer showing code coverage history graph in Gitlab on a large screen

One might think that this should be pretty straight forward but there are some hoops you need to jump in order to get it to work.

5 min read • 648 words

Mixins: the good, the bad, the ugly…

blogThe less and SCSS logos surrounding the CSS logo

Explore the best practices for using CSS mixins in SCSS and LESS. Learn when to use mixins effectively, common pitfalls to avoid, and modern alternatives.

10 min read • 1,204 words

Tools that improve team collaboration and code quality

blogIllustration of a team collaborating around a laptop, symbolizing tools that improve teamwork and code quality

Discover essential tools for team collaboration: linters, code formatters, and editors that enforce code quality and guidelines.

8 min read • 1,039 words