Software Carpentry logo

Summary

April 24, 2010: We are pleased to announce that Version 4 of this course is now under development. For updates and an early peek at the content, please check out the Software Carpentry blog at http://www.software-carpentry.org/blog/.

1) Introduction

2) Classic Mistakes

3) Branching, Merging, and Tagging

4) Managing Branches

5) Patching

6) A Better Way to Build

7) SCons Example

# What does the program depend on?
dependencies = ['file1.c', 'file2.c']
if os.platform == 'win32':
    dependencies.append('win32.c')

# Which version are we building?
if 'debug' in COMMAND_LINE_TARGETS:
    Program('hello_dbg', dependencies)
else:
    Program('hello', dependencies)

8) Persistence

9) Pickling Example

Pickling

Figure 27.2: Pickling

10) Object-Relational Mapping

11) Web Development Frameworks

12) Refactoring

13) Refactoring Examples

14) More Refactoring Examples

15) Refactoring Tools

16) Code Reviews

17) Reading Code

18) Code Review Checklist

19) User Interface Design

20) Paper Prototyping

21) Where To Go Next

22) The Rules

23) Conclusion