
Why you still need a Website Portfolio, even though everyone can Vibe Code it.
If you have been following me for a long time, you already know I have been holding off my Portfolio...
Tag archive

If you have been following me for a long time, you already know I have been holding off my Portfolio...
I am blind, and I have used the JAWS screen reader every day for about twenty years. I fix phones and...
Build and test an on-demand translation coordinator for a multilingual project showcase community. Preserve authorship, reject stale results, expose failures, and connect the state model to TUIChat without making translation the source of truth.
Our landing page hero is a phone scanning a barcode, built from one state variable, a block of keyframes and a generated SVG barcode. The interesting parts are the remount, the stagger and the reduced-motion resting frame.
Open any repository on GitHub and you see the same tabs: README, Code of Conduct, Contributing,...

Explore patterns and internal mechanisms design systems use to ensure accessible focus management across components, how they integrate with ARIA, and debugging mismatches between system defaults and app overrides.
Reference sites are mostly tables, and tables are where accessibility quietly breaks. Here is what I...
How cursive text generators work: Unicode script alphabets, the 11 missing letters, a JavaScript converter, and pitfalls with length and search.
Every content page I write starts as prose and ends up mostly tables. That was not the plan — it is...

FluentVoice Pro is a small open-source tray app for Windows 11 and 10 that reads selected or copied...

Go beyond missing-alt checks: informative images, decorative images, image links, charts, product galleries, and a practical review workflow.
Most "this button doesn't work" bugs are really a link pretending to be a button, or a button...