Learn to test-drive programs with multiple classes.
Learn to break programs up into classes.
Learn to debug your programs.
Learn to build software as a pair.
Learn to explain why test-driving, object-oriented design, debugging, and pairing are powerful practices for software engineers.
Goal
I can TDD anything
I can program fluently
I can debug anything
Week 3
Databases challenges
Design a database schema with at least two tables from a specification, including a one-to-many relationship between two tables, and create the schema in a database using SQL.
Use SQL to query a database to read data from one table or resulting of a join, create new records, update and delete.
Integrate a relational database to a program by test-driving classes which implement CRUD methods to send SQL queries to a database.
Week 4
Web applications challenges
Explain how HTTP requests and responses work at a high level
Write integration tests for a web application
Implement web routes using a lightweight web framework
Follow a debugging process for a web application
Deploy a web application using a light cloud service such as Heroku