Month December 2025

Hashtag Jakarta EE #309

Hashtag Jakarta EE #309 Welcome to issue number three hundred and nine of Hashtag Jakarta EE! I am currently in Ottawa with Tanja and Shabnam preparing JakartaOne Livestream 2025. This is the seventh edition of JakartaOne Livestream, so you would assume…

State, Logic, And Native Power: CSS Wrapped 2025

If I were to divide CSS evolutions into categories, we have moved far beyond the days when we simply asked for border-radius to feel like we were living in the future. We are currently living in a moment where the…

How UX Professionals Can Lead AI Strategy

Your senior management is excited about AI. They’ve read the articles, attended the webinars, and seen the demos. They’re convinced that AI will transform your organization, boost productivity, and give you a competitive edge. Meanwhile, you’re sitting in your UX…

Beyond The Black Box: Practical XAI For UX Practitioners

In my last piece, we established a foundational truth: for users to adopt and rely on AI, they must trust it. We talked about trust being a multifaceted construct, built on perceptions of an AI’s Ability, Benevolence, Integrity, and Predictability.…

Masonry: Things You Won’t Need A Library For Anymore

About 15 years ago, I was working at a company where we built apps for travel agents, airport workers, and airline companies. We also built our own in-house framework for UI components and single-page app capabilities. We had components for…

What if claude-code lived inside your browser?

I’ve built a browser extension that allows you to theme your visited websites just by prompting. It takes your request and uses openai’s codex-mini to generate the JS and CSS needed to apply the change. It can do all sorts…

Day 8 – Terraform Meta-Arguments

Whenever we create any resource using Terraform, whether it is an S3 bucket, an EC2 instance, or a security group, we have to pass certain arguments that are specific to the provider. For example, while creating an AWS S3 bucket,…