Have you ever wondered if “Goto considered harmful” was anecdotal evidence or actual fact? Or if “High level languages are more productive than low level ones” is actually true? Do you use words like flexibility and stability about your code without being able to actually quantify how flexible and stable it actually is?
Then this session is for you.
I’ll try to make the case for a conceptual foundation for software and how we build and maintain it; and present a theory that attempts to unify our current knowledge of software and its building into one cohesive whole. I’ll also present one application of this theory to demonstrate using it in real life.
If time permits, I’ll also present some recent empirical evidences on popular theories such as the effectiveness of TDD, what 10x productivity of a star programmer really means and so forth.
Resources (its not obvious with bcb’s styles, but names below are clickable):
1. GUTSE: The basis for a large part of this session. Available freely on google books.
2. GUTS: My own attempt at forming a theory. Still very much a WIP.
3. Making Software: Where most of the empirical stuff comes from.
Update: The closest static version of the dynamic combo presentation I made live is on slideshare: http://www.slideshare.net/vinod_dinakaran/a-grand-unified-theory-of-software-14082038
Share this session: