When I started programming, learning my environment WAS the thing. Somewhere along the line, improving my dev environment felt like toil- wrestling with configs and bash scripts while juggling deadlines. Sometimes it was fun, often it was not. AI has completely changed that. My dev environment has become the playground for my imagination.
Setting up gopls and golangci-lint together in Neovim with Mason. You want both - gopls for language features and golangci-lint for comprehensive linting.
Why sustained effort beats sprinting, but all progress requires the occasional maximal effort. Ambitious people who are goal oriented often end up in a trap of constant sprinting without time for recovery or a body of sustained effort to build upon. In cycling we know this doesn't work. That's why we have a base phase.
When comparing structs in Go tests, testify offers ObjectsAreEqual and ObjectsAreEqualValues. Figuring out which one you need isn't obvious, and both have surprising quirks.