In software engineering, with a few notable exceptions in control systems for critical systems, we have a lower cost of failure than just about any other engineering discipline, however recent trends have aspired to make us ever more conservative, careful and failure-averse. For example, consider how much we talk about best practices, patterns (which are things you repeat so often that you write them down) and so on.
I will present a different viewpoint.
By taking larger risks, backing new technology and new approaches, and accepting failure as part of the experience then instead of trying to avoid failure you can get very good at improving your failures. They become an integral part of your software development projects, leading to greater, more ambitious wins. Instead of reading about and following other people's design patterns, you will discover and establish your own, sometimes after many, many failed approaches.
The popular software craftsmanship movement is valuable, in its place, but there is a risk it will freeze us into a virtual deadlock of development from fear that we may fail in some aspect of our work. I will cover themes that work from software craftsmanship, themes that don't work, and how all this fits together into real world project development. In particular I will discuss how the various "craftsman" tools can be used, instead of trying to avoid failure, to make you ever better and more effective at failing, and hence succeeding.
About the Author
Dick Wall is a veteran software engineer with a penchant for "bet it all" projects. He has worked for companies large and small, including Google, Siemens and a number of much smaller start-ups you are unlikely to have heard of at all. He currently runs his own business with Bill Venners called Escalate Software offering Scala training and consultancy. Dick is also creator and co-host of the Java Posse podcast, a Scalawag (Scala podcast co-host) and founder of the Bay Area Scala Enthusiasts. In his copious spare time he likes to bike, hike, motorcycle, and anything else that reminds him that there is some kind of world beyond sitting in front of a keyboard and screen.
Wijmo AppView: Turning Web Developers Into Cross-Platform App Developers
The focus of this presentation is Wijmo AppView, an all-in-one widget for mobile applications. It has built-in navigation, ajax-loaded content and a responsive layout system. AppView is ideal for building a single application that works on both phones and tablets while optimizing screen real estate. If you're ready to tackle mobile, you'll want to see this.
Software is Eating the World
In August of 2011, Marc Andreessen stated that "software is eating the world" and he was right. This fact, that almost everything is now programmable, presents both amazing opportunities and amazing challenges. This talk will describe the Carnegie Mellon Software Engineering Institute's outlook and prospects on our new world that is eaten and driven by software.
Dr. Matt Gaston is the Director of the Carnegie Mellon Software Engineering Institute's Emerging Technology Center and an Adjunct Associate Professor at the CMU Institute for Software Research. The SEI Emerging Technology Center demonstrates and transitions edge-of-technology capabilities in the computing and information sciences for critical government missions. Before joining CMU, Dr. Gaston was the Director of Research for a business unit of General Dynamics C4 Systems. Prior to that, he spent nearly ten years at the National Security Agency developing and applying mission-focused analytics.