Thiago Piacentini
Frontend engineer & web accessibility advocate — Perth, WA
Bridging technical implementation with inclusive design.
Recent posts
- Behind every WCAG criterion, there is a real person
Accessibility is not just about guidelines — it's about real people. Semantic HTML is what connects your code to them.
- Semantic HTML isn't just about accessibility — it also affects how search engines read your content
Semantic HTML improves accessibility and also defines how search engines understand, index, and rank your content.
- 4 common semantic anti-patterns — and how to fix them
Semantic HTML mistakes happen in every codebase. These 4 common patterns silently break accessibility — here's how to fix them properly.
- Without semantic structure, keyboard navigation for screen readers simply fails.
Screen readers rely on a map built from semantic elements. Without it, keyboard shortcuts find nothing — and users have to navigate every element one by one.
- Alt text: writing meaningful image descriptions
The alt attribute does more than satisfy a validator. When written well, it gives screen reader users the same context a sighted user gets from looking at the image.
- Your UI looks right. But what does the browser actually understand?
The same visual result can hide very different structures underneath. When we build focused only on what renders, the HTML can become a wall of anonymous elements that screen readers cannot navigate.
- Why do engineers rarely think about semantics when building components?
In component-driven development, it's easy to lose track of the foundation. Frameworks shift our attention — and the people who depend on semantic HTML pay the price.
- Minimum contrast applies to all feedback states
Warning, success, and info components fail contrast just as often as error states — and usually go unchecked. Here's what WCAG 1.4.3 and 1.4.11 require across all feedback states.
- Why linking color to status is not enough
Turning a border red or writing 'Invalid' in red text fails users with color blindness. An accessible error message needs an icon, a clear description, and a format suggestion — all working together.
- Error messages & WCAG 4.1.3 — what most developers miss
Status changes need to reach assistive technology. Here's what role="alert" and aria-live actually do.