Conversation

It is very interesting how gamedev breaks a lot of the "best practices" of software. No git (or distributed VCS in general), no TDD, not really "agile", no RAII (or gc), etc. Seems like a lot of the things that work in regular software don't work so well for games.
1
Regular startups and software companies can usually afford to delay things a bit, or ship an incomplete product, but that doesn't really work for games outside of beta tests / demos. They generally have a much stricter deadline and not much wiggle room.
1
It's actually a miracle that they can ship games at all when you think about it. I think the rest of the industry could actually learn something from how gamedev works (without taking the bad).
1
The main things seem to be: - If it doesn't increase your velocity or solve a real problem. It's not worth wasting time on (no architecture astronauts) - Only a tiny portion of your code needs to be heavily optimized in practice - Make it easier for non-programmers to contribute