Now, decades later, I despair at how poorly new and many not so new developers we hire really understand complexity theory. Complexity theory is the single biggest thing you can learn that you might not learn self-taught, but so very few developers internalize it. They write code that does network calls and database calls with abandon, never mentally multiplying out the complexity. And as the gap between testing environments and production environments grows (i.e. a lot more data in production), the cost increases. (I had learned and internalized complexity theory at 15, from a chance book found in a bookshop. This was before the web made such information easy to find.)