Have you ever wondered why most software you interact with is hard to use or isn’t updated regularly to fix bugs? It’s a fundamental problem of computer science programs, they have failed to teach us how to manage software projects. Learning and using complex algorithms is just one small part of the software development process. The larger, more complicated (and ultimate determinator) of a project’s success is managing the requirements, time, team and process.
The most complex human task
Writing software is one of the most complex human tasks according to Douglas Crockford. Writing software isn’t a linear process, it is so complex we still haven’t learned how to create quality software. Although this is an older talk, it’s the best explanation I’ve heard about why writing software is so complex and what we can do about it.
The software crisis
He explains why the early programmers were so concerned with the software crisis and why it’s still happening today. If you are part of any software development process or even if you just use software on a daily basis this talk can give you some insight about why you may have frustrations around it.