Game theory explains the current, often crappy state of software.The Problem
The little bit I know about game theory is that people do what benefits themselves the most, without regards to other people. This explains why capitalism works so well (perhaps not for equality, but definitely for efficiency and total wealth produced) -- it harnesses this strong human tendency to be selfish. Although this might work for the economy, I think it hurts software development, among other things. If the majority of software developers were to take the extra time to document code and place it in a code repository, a lot of coding could be eliminated. We would develop a library of super-efficient algorithms which would address a good number of our every-day needs. Unfortunately, the return on investment problem strikes again.A Solution
The solution for this follows that of the return on investment problem: people must be shown the extraordinary value of writing good code.