Programming in the Large
Good architecture frees us to choose the right tools and techniques, allowing us to adapt easily and concentrate on solving real problems rather than our made up ones. In this talk we will run through some stereotypical projects looking at the properties of good architectures and how these play into our ability to adopt better tools and techniques. We will attempt to ground the discussion with real examples of my past projects where things have gone well and probably of more interest where they really have not.
Using Social Code Graphs to Transform Software Development
Gail C. Murphy
Department of Computer Science
University of British Columbia
The ways in which software developers interact to build software has changed dramatically over the past fifteen years. Much of this change has been driven by open source tools created by open source developers and driven by their own needs. The interaction styles made possible by these tools promote characteristics and values that are poised to help change how a broader set of knowledge workers go about their daily jobs. The interaction styles also bring new abilities to analyze how software development occurs and to create new approaches to better support development activities. In this talk, I will describe how the social code graph that can be surfaced from collaboration between developers is poised to further transform software development and knowledge work.
Real-World Git Workflows
While Git is established in the Open Source world, we’re only just seeing the emergence of DVCS in our daily jobs. How can DVCS enable us to collaborate in an a traditional “enterprise” setting? This talk will dive deep into the successful git workflows used inside Atlassian. The talk will the cover tools and techniques we use to reduce friction during development. It will also parade various Continuous Integration approaches that work well with git and are used internally with great success.
How hard can printing be? Evolving software development practices to take Australian research to Canon’s global products
CiSRA (Canon Information Systems Research Australia Pty Ltd) is Canon’s R&D centre in Sydney, Australia. For more than 25 years CiSRA has been conducting applied research and development into digital imaging for Canon’s products. This talk will present a real world case study on the constantly evolving software, people and business practices used to take Australian research outcomes through to commercial product-ready core technologies for Canon’s wide range of global printing products. By using the V-model as a map with well-understood vocabulary, a comparison of CiSRA’s practices against agile for key process areas will be presented. The focus will be on practices around the creative areas of architecture, design and testing.