Karthik Dinakar presents the case of his team which attempted to be as agile as possible in order to fulfill the short-term goals but missed the long-term ones because some of the Agile best practices were ignored. He tells the story of how his team finally managed to come back on course and which are the practices that he considers as necessary for success.
Jason H. Christensen presents the evolution of mobile devices, how to get around limitations by integrating mobile systems with the cloud and make use of RESTful services, what is a basic mobile architecture and how it can be implemented.
Brian Nicks presents a study case of a healthcare company which inherited many disparate technologies from Java on WebLogic to .Net to RPG on iSeries to CICS on zSeries to COBOL on OpenVMS, deciding that the integration solution was to implement a SOA initiative. The presentation contains the challenges, the successes and the lessons learned throughout the process.
Gerard Holzmann discusses Spin, a design analyzer tool, and Scrub, a code review tool, used by Jet Propulsion Laboratory to analyze and fix the software used for critical solar system exploration missions.
Robert Johnson discusses Facebook’s approach to scalability issues resulting from a large growth of the user base. He talks about: why one needs to prepare for horizontal and not vertical scalability, very short release cycles which are better because they introduce fewer bugs, the need to streamline to deploying process for short release cycles, and making the entire process faster every day.
In a reprise of her ACM Turing Award lecture, Barbara Liskov discusses the invention of abstract data types, the CLU programming language, clusters, polymorphism, exception handling, iterators, implementation inheritance, type hierarchies, the Liskov Substitution Principle, polymorphism, and future challenges such as new abstractions, parallelism, and the Internet.
Brion Vibber discusses the challenges of working with user communities, social bottlenecks, the Wikipedia article deletion process, scalability of software vs communities, new approaches to scaling communities, ongoing challenges with MediaWiki community, using git to scale the code commit process, automated Wikipedia edit filtering, flagged protection pages, and remaining challenges to face.