Programming is not about Programming Languages
23 August 2022

With the exception of Assembly languages, all languages in use today provide means of abstraction that you can use to write clean, maintainable code. Yes some languages make you work a little harder or are more prone to security problems if you don't apply certain tooling to them. It is called trade offs, yours will be different to others.

In a world were people seem to be back to arguing about whether to write something in C/C++/Rust/Zig I feel the need to write the last paragraph. I should add Rust/Zig as communities keen on using what is appropriate so really I speak to individuals I have come across not the majority of users of those languages. It is a shame as i almost thought we have moved past this, perhaps it is a write of passage for programmers?

New programming languages do offer progress but much progress has been back ported in terms of process (unit tests, code review, fuzz testing and analyzers). It's hard to imagine a borrow checker being ported to C so I am not saying new programming langauges don't offer good things to help us.

Rather different teams/people have different trade off's that delay their decision to pick up these new ideas. I am also not saying luddites don't exist although there is some utility in being slow to new technology as you can let others discover and work out the negatives sides before you make the jump.

Personally, I would question starting a new project in C++. Maybe that is just me. I like Rust, Zig and C - each have their uses in my life. Well I am waiting on Zig 1.0 before I really learn that one. Of course Python is mixed into my life as well.

If you invest time in learning a new programming language, consider it a journey of exploration rather than developing some kind of bias where if you can't convince everyone it is good idea you have in some way wasted your time.

Programming is not about the language you use, it is about the journey of discovery you go though to solve the problem you face.