Working through Software Foundations