This is a full time course.
What You'll LearnWe teach the skills you need to kickstart your career as a developer and a lifelong learner. From programming fundamentals to launching full-stack web apps, you'll learn to solve problems with code while applying industry best practices in a collaborative environment.
Programming FundamentalsUnderstand how to set up your development environment, work efficiently as a developer, and make your projects a success. Learn programming fundamentals, along with the basics of computing, networks, and data structures.
The Basics of Product DevelopmentDefine what a user should be able to do with your app, appropriately model your data, develop simple wireframes, and learn to track a collaborative development process using version control.
Front-End Web DevelopmentBefore you start working with cutting-edge libraries and frameworks, gain an understanding of how to write high-quality JavaScript code. Learn to build a dynamic, front-end to your web application using a modern JavaScript library, and use CSS to layout and style your application.
Back-End Web DevelopmentBuild web applications from the ground up using Ruby on Rails, a modern web language and MVC framework. Build quality APIs using Node.js and integrate data from other apps (like Twitter or Yelp) into your project.
Working with TeamsLearn to collaborate with others to produce high quality software as you work with a team to develop, maintain, change, and secure an application.
Syllabus:Week 1: Fundamental Programming Skills- 25 elementary but challenging programming problems in Ruby
- Emphasis on fundamentals and consistency
- Classes & Objects, Arrays & Dictionaries, Numerical Calculations
- Testing with rspec
Week 2: Advanced Topics- Recursion
- Sorting
- Doubly Linked Lists
- Git
Week 3: Front End Web Development- Structuring a web page with HTML5
- Adding color and style with CSS3
- Adding dynamic front-end features with Javascript
- More JavaScript with jQuery
Week 4: Data Persistence, Sinatra, and Front End Templating Alternatives- Relational database design and the concept of normalization
- Database operations using SQL
- Simple web apps using Sinatra
- Advanced CSS using SASS
- HTML templates using slim
Week 5: More Sinatra & Beginning with Rails- Creating forms with Sinatra
- Creating an API with Sinatra
- Rails
- Scaffolding to quickly generate a proof of concept
- Create a simple blog application
Week 6: Rails- Sending emails automatically
- Handling image file uploads and integrating with Amazon S3
- User registration and login
- Understanding how ActiveRecord works to simplify database interaction
- Utilizing the Asset Pipeline to optimize the way images and other assets get compiled and served
Week 7: More Rails- Adding AJAX for a better user experience
- Switching from SQLite to PostgreSQL for a more fully featured database
- Authenticating with third party services like Facebook and Google with Omniauth
- Getting data about a Facebook user to more deeply integrate Facebook into your application
Week 8: Deeper into Ruby, the Rails stack, and Testing- Search through and manipulate text with Regular Expressions
- Using Rack: a minimal API for connecting web servers and web frameworks
- Creating Nested Resources for more intuitive application structure
- Running asynchronous background tasks with Delayed Job and Sidekiq
- Dive Deeper into testing with Capybara, Cucumber, and MiniTest
Week 9: Build an Internet of Things Server with Ruby on Rails
School Notes:
For students enrolling in 12 week part time and immersive classes, it is not recommended that you book more than one class simultaneously.