Why I don’t use C++ or OOP - and where Python, Go and Rust each fit
Published:
This used to live on my About page. It’s an opinion, so it belongs in a post.
Not C++, not OOP
A few years into a large C++ project I ran into exactly what Linus Torvalds described: debugging through object hierarchies and fighting the structure instead of the problem. So I went back to plain C for low-level work and stayed there until Rust arrived.
What I use instead
- Python for anything that isn’t low-level, especially data work.
- Go for web APIs and wherever its libraries fit.
- Rust for low-level code, where its safety and correctness pay off and it links cleanly against existing C/C++.
Editor: GNU Emacs. OS: GNU/Linux, Ubuntu MATE on the desktop.
The aim throughout: dynamic, simple, robust.
Full disclosure: this post - and any code or tool it describes - was co-authored with Claude (Anthropic’s AI, via Claude Code). I directed, guided and reviewed. I don’t want to pretend otherwise.
Leave a Comment