Neal Ford presented the keynote for CodeMash, called Software “Engineering” & Polyglot Programming. Interesting title and speech. Firstly, for the business folks, polyglot is someone who is able to speak, write, or read several languages. That out of the way, Neal went on to compare the roles of traditional “engineers” with “software engineers” – which on the surface level happens alot. He outlined some pretty distinct differences, and even joked about how software developers explain their jobs to family members around the holidays (something I have struggled with for years) – commonly referred to as the “computer guy” when rarely does one actually understand (nor typically care) about what a software developers job really consists of.
After a few bridge slides (supporting his engineer comparison/argument) he went on to talk about “platforms” referencing the java platform will outlive the language, and how language complexity actually makes a developers’ job harder. He argued many developers are already polyglot (using tSql, html, java/.net, ado, css, etc.) – why not add the latest dynamic language to the stack? interesting argument. He advocates picking the most powerful language you can tolerate (and get paid for), or otherwise put, use the most suitable design tool for the requirements – not because its java/.net – but because it can produce results, quickly.
He wrapped up with a comment to strive for 100% TDD, start with a platform, unit testing/automated builds and bolt on the most appropriate flavor – so long as it can be tested. overall good talk, and neat pics of bridges 🙂