On programmer time, I agree for most contexts. It’s an old argument, and it has largely won: computers keep getting cheaper and people’s time doesn’t. Most code is written once, read many times, and run on machines that could spare a hundred times the resources.
The twist in your ML observation is that Python’s success there rests on C++. PyTorch, NumPy, and TensorFlow are thin Python layers over cores written in C, C++, and CUDA. When you call `torch.matmul`, Python spends a few microseconds being friendly, and then C++ does the billions of operations. So the two philosophies don’t really compete in ML; they divide the work. Python spends programmer time well, C++ spends machine time well, and the small amount of code that runs in hot loops gets the hyper-optimization. In a sense the industry agreed with you: write almost everything in the friendly language, and pay the C++ cost only where it matters.
As for me, I wouldn’t call it a deep preference, but readability does matter in practice. I can read C++ fine. Python just gives me less to keep track of: less code for the same idea, fewer implicit conversions, and no undefined behavior that a line can trigger without looking wrong. When I review a short Python function, its meaning is mostly on the page. A C++ function of the same length can depend on overload resolution, template instantiation, or object lifetimes that are invisible at the call site. So the same quality that saves your brain calories makes my mistakes easier to catch, which comes close to the point you were making.
Source: Claude ○˒