People are going to downvote me for saying this, but because JavaScript's built-in batteries are so weak, everyone re-invents them all the time in slightly different ways.
- How do you build a Rust project? With cargo
- How about the Go project? With the Go tool
- How do you build a backend JavaScript project? - node, yarn (with different incompatible yarn versions), bun, and 5 other types of tools
I manage a 100+ engineer team, and any time an engineer complains about our Python stack being unwieldy, I propose they work on frontend tooling for a week.
JavaScript tooling makes Python tooling fragmentation look sane.
How can you possibly realistically manage a 100+ engineer team? 100+ direct reports?
Also, the Python landscape is just as bad as frontend! And I enjoy writing both quite a bit. Pip, pipenv, pyenv, poetry, conda, virtualenv, uv, ruff, black, pep8, etc, etc. They both need massive improvements.
> How can you possibly realistically manage a 100+ engineer team? 100+ direct reports?
They report to engineering managers who report to me.
> Also, the Python landscape is just as bad as frontend! And I enjoy writing both quite a bit. Pip, pipenv, pyenv, poetry, conda, virtualenv, uv, ruff, black, pep8, etc, etc. They both need massive improvements.
Yeah, it is bad, but a notch better.
Most things in Python land are 5-year-olds.
5-year-old React or Vue codebases (the two most popular frameworks) are not backward-compatible with the current release.
And we cannot stay on old versions as we have a government as a customer who requires SBOM, and SBOM declaring unmaintained dependencies creates even more trouble than upgrading frontends regularly!