Profile avatar
humanwhocodes.com
Human who codes. Creator of @eslint.org. Author. Speaker. Advisor. Coach. Mastodon: https://fosstodon.org/@nzakas Blog: https://humanwhocodes.com Coaching: https://humanwhocodes.com/coaching
816 posts 5,181 followers 45 following
Regular Contributor
Active Commenter

AI IDE showdown! I asked both Windsurf and GitHub Copilot to implement an auth flow using Supabase (creating all UI plus making it work). Both used Claude 3.7. The result? Windsurf got this working almost immediately (1 edit). GitHub Copilot couldn't get it working with direct instructions.

Introducing tailwind-csstree, a CSSTree extension that enables parsing of Tailwind-specific syntax with CSSTree (and the ESLint CSS plugin): https://www.npmjs.com/package/tailwind-csstree Just a few edge cases left to address (check the issues) but should work for most code.

AI IDEs and GPT-4.1 are a struggle. In both GitHub Copilot and Windsurf, GPT-4.1 is okay for 2-3 prompts, but then after that starts telling me what to do instead of doing it. This model seems to need a very specific instruction to do the work.

One peculiar thing I've noticed when using GPT-4.1 in Windsurf is that it tends to tell me what to run in the terminal instead of just running it (Claude typically just runs it).

The trouble with Claude 4 in GitHub Copilot continues. It doesn't seem to constrain itself to the initial request and goes off in other directions for way too long. My experiment ends here. 3.7 from now on.

My new approach to AI-assisted coding: Ask Gemini 2.5 Pro to design a system (or database, etc.) that fulfills some functional requirements. Then ask GPT 4.1 to implement the design. Working great so far for non-UI stuff.

Grateful to Ömer for what has become such an identifiable mark for the project.

I'm excited to share that I've been named a GitHub Star! https://stars.github.com/profiles/nzakas/ I'm not sure who nominated me, but I appreciate it.

Kind of bummed out that the Supabase MCP server doesn't work with local instances.

My first day vibe coding and I'm getting frustrated. What do y'all do when you just can't tickle the LLM to get the UI you have in mind? If I'm not supposed to hand edit the code, how do you resolve such a thing?

If you're waiting for eslint-config-airbnb to get updated for ESLint v9 before migrating, please give this alternative a try and let us know how it works: https://github.com/NishargShah/eslint-config-airbnb-extended/issues/10#issuecomment-2928085279

If you're waiting for eslint-config-airbnb to get updated for ESLint v9 before migrating, please give this alternative a try and let us know how it works: https://github.com/NishargShah/eslint-config-airbnb-extended/issues/10#issuecomment-2928085279

Giving Windsurf a try. It feels more helpful than GitHub Copilot in VS Code but still seems to struggle with some basic stuff like getting Tailwind 4 styles to show up on an Astro page.

So disappointed that Pocket is shutting down. I use this every single day. https://getpocket.com/farewell

Am I the only one who accidentally uses prompts when talking to people in real life? Like, "I'd love to hear about your trip. Don't use emdashes in your response."

Getting buy-in on a large-scale project as an IC can be challenging. In my next newsletter (dropping Tuesday), I'll discuss how to go about this in a way that makes people want to help. Sign up now so you don't miss it: https://newsletter.humanwhocodes.com

So far, Claude 4 is a thumbs down for me. In Copilot, it starts over automatically after it completes the requested task. Can't really walk away from the computer because it just keeps going.

Are you still using ESLint v8.x? I'd like to know what we can do to help you upgrade to the v9.x line.

ESLint v9.0.0: A retrospective - ESLint - Pluggable JavaScript Linter @humanwhocodes.com @eslint.org eslint.org/blog/2025/05... #ECMAScript #JavaScript

One thing I really enjoy about posting to social media with Claude is the positive reinforcement.

We really need AI IDEs to standardize the location of instructions files within projects. Needing to duplicate the same file in multiple locations so VS Code Copilot, Cursor, and Windsurf can all get the info is annoying.

ESLint was featured in three different talks.

In case you missed it, I did a deep dive into the most ambitious ESLint release we ever had. Lots of important takeaways.

Achingly close to getting my Tailwind CSSTree extension working for Tailwind 3 and 4. This will allow the ESLint CSS plugin to work with Tailwind. Just a few edge cases left.

When prioritizing work, ask yourself, "what is the impact of this change?" It can be tempting to take on small, easily achievable tasks to show "progress." Don't confuse movement for progress.

i had some really stressful interactions on github yesterday and today. lets just remember many of us are doing this OSS work for free and to do good, kindness is appreciated

I tried using Social Changelog by @humanwhocodes.com And it looks really cool. Allows you to generate release information using AI. I plan to use this in all my Open Source projects. github.com/humanwhocode...

Social Changelog 0.4.0 has been released! ✨ New --prompt-file CLI option for easier input Details: https://github.com/humanwhocodes/social-changelog/releases/tag/social-changelog-v0.4.0