A good high-level summary of fundamental engineering practices. The root cause of bad software has less to do with specific engineering choices, and more to do with how development projects are managed. There is no such thing as platonically good engineering: it depends on your needs and the...