3 ms·
While reading this article, I could not understand what the alternative was. Did he mean it's better to use Notepad++? Vim? Both of those have extensions that t
by syndicatedjelly 3y ago
While reading this article, I could not understand what the alternative was. Did he mean it's better to use Notepad++? Vim? Both of those have extensions that turns them into decent Integrated Development Environments. So just plain text files, no extensions? That just sounds annoying.
Finally understood what he was talking about in the last few paragraphs, when he mentioned only knowing how to run tests and pipelines through an IDE. He was talking about a GUI! I agree, clicking a button on a GUI that's magically hooked up to GitHub and runs whatever it needs to for testing is "complexity that pretends it's invisible", which was a great phrase. It's always a good idea to learn how to run everything from the terminal, because it's hard to hide complexity behind terminal commands. Not that it's impossible, but it's more of a philosophy from Unix for every command to only do one "action". So to build a project in Go, one runs `go build .`. And to run it, `go run .`. To test it, `go test ./...`. To debug, a set of flags must be passed to build. To build for a different target, a different tag. It's very explicit. In an IDE, relying on whatever buttons are made available means that these commands may be combined, or simply made unavailable