This is a full time course.
What You'll LearnKickstart your career as a full-stack software developer and lifelong learner. From programming fundamentals to team collaboration strategies, you’ll learn to solve problems with industry-leading tools and techniques.
Programming FundamentalsUnderstand how to assemble your development environment, work efficiently as a developer, and ensure your projects are a success. Learn programming fundamentals, along with the basics of computing, networks, and data structures.
Product Development BasicsPinpoint what a user should be able to accomplish with your application, model your data accordingly, develop simple wireframes, and track a collaborative development process using version control.
Front-End Web DevelopmentExplore what powers the web we see. Gain an understanding of how to write high-quality JavaScript code, building a dynamic front-end to a web application using a modern JS library, such as Angular or React. You’ll then use CSS to add layout and style.
Back-End Web DevelopmentLearn to build web applications from the ground up using a modern web language and framework (like Ruby on Rails or Python and Django). Develop high-quality APIs using Node.js and integrate data from other apps (such as Twitter or Yelp) into your project.
Team Collaboration StrategiesDiscover how to effectively communicate and collaborate with development teams. Produce high-quality software as you work with a team to build, maintain, change, and secure a full-stack 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.