Intro to C# and Git
Students will set up their environment with Visual Studio and begin on the basics of programming with C#. We will start with basic programs, moving to using variables, conditional statements and loops. Using these, we will build our first real programs, then refactor previous answers by implementing knowledge of new areas such as functions and classes.
Advanced C# and Git
This week, more advanced topics will be covered, including building out sorting and other algorithms. We will cover inheritance and interfaces and how they can be used correctly as well as pitfalls. This week will be full of student led exercises to reinforce language and code understanding.
Ruby as a Second Language
After a week of more advanced topics, we will now go back to more basic program structures to learn the differences and similarities between C# and Ruby. We will discuss how Ruby focuses on developer happiness and what MINASWAN means in the Ruby community. Many of the same exercises from C# will be covered in this week, condensing nearly 2 weeks of C# into a week of Ruby.
TDD with Ruby and C#
This week has a strong focus on TDD or Test Driven Development. We will cover different aspects of TDD, including testing for design, testing for documentation, and testing for bugs. There will also be a strong focus on “Red, Green, Refactor” and dealing with changing requirements in development.
Databases and WebAPIs
This week focuses on the back-end of web design. We will cover relational and document databases, proper design for both and the strengths of each. We will also start building WebAPIs, the backbone of most web based applications.
Beginning MVC apps with Rails and MVC
Advanced MVC apps with Rails and MVC
Single Page Applications with Angular.JS
Building a full project as a class
This week we scope, discuss and then begin building on a real project for a client. A discussion between the class and client will help us decide on the proper language and framework. Designers will join us to go over the interactions and UX decisions behind this application.
Finishing a full project as a class
We finish the project, shipping a complete, usable application for one of our local non-profit partners
" width="100%" height="455" frameborder="0" style="border:0" allowfullscreen>