We teach Ruby, Javascript, React.js, HTML, and CSS technologies.

Want to see the curriculum yourself? It’s open-source, which means anyone can use it.

What is full-stack web development anyway? Most sophisticated web applications can be thought of being composed of two parts: the front-end, and the back-end. The front-end of the stack revolves around what the end user sees, which is the web page. HTML, CSS, and Javascript are some of the important technologies which are used to build and manipulate web pages. React.js is a very powerful library for working on the front-end. The back-end of the stack is where data gets stored, manipulated, and analyzed. Our tools-of-the-trade for backend development are Ruby and SQL.

You will need to bring an Apple laptop with you to class.

Programming Languages

Ruby is dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write. We teach Ruby because it is one of the easiest programming languages to learn that is powerful and popular enough to be used to build full-blown web applications.

JavaScript is a programming language that is built into all web pages, and is therefore required learning for anyone who wants to make web pages interactive.

HTML and CSS are used to design, layout and present web pages.

Data Storage and Manipulation

Databases store and manipulate data. We will teach you SQL, the language designed to manipulate data in relational databases like PostgreSQL.

Frameworks

A framework is a set of tools and ideas that is used to resolve a common problem:

Ruby-on-Rails is a powerful framework, written in the Ruby programming language, used to quickly build full scale web applications.

React.js is a JavaScript library for building user interfaces

Industry Best Practices

Version Control Using Git. When you write your code, you need to store it as you write it. When you write code that is part of a larger application, you need to be able to merge it with the the larger code base, and stay out of trouble. Many teams rely on Git to help with these concerns, which is why we will spend a lot of time training you in the proper use of Git.

Test Driven Development. It is easy to build a small application and just look at it to see if works. As projects grow, it becomes much more difficult to evaluate what negative impact your code changes may have on the entire project. That is just one reason why we write tests, and why you will learn to embrace testing as part of your workflow.

Object Oriented Design. Or commonly called OO, Object Oriented Design is a design pattern, a way to write code. You will use it in Ruby, JavaScript, and many other languages. Objects can hold data and procedures. We will teach you how to create and manipulate objects to pass and manipulate information.

APIs. These days, if you want to get information from another service, whether it’s weather information, tweets, Instagram or New York Times, you will need how to access their API (application program interface).

Troubleshooting. One of the most valuable skills that a software developer can have is how to figure out where the code is broken. Because code breaks often. We will teach you tools and techniques to track down and solve errors.

Schedule

Classes are every weekday, with a mix of lectures and hands-on coding time. All classes are in-person and students are expected to be on-site for the duration of the program. Students will collaborate with their cohort throughout the program on projects and coding challenges.

The Immersion Experience

The program runs 14 weeks on-site. If you participate in the internship program, the program extends to roughly 32 weeks total.

Pre-Requisite Homework

Prior to the start of the program, students will receive a package of pre-work that they will need to complete prior to arriving on site. That pre-work should take between 60 and 100 hours to complete, and will cover computing basics and learning some tools of the trade.

Daily Class Schedule

Once in-person classes begin, most days will follow a similar pattern. From 8am to 5pm, there will be an instructor on site. In the mornings they will lead a class for 45 minutes to an hour and half. You will spend the rest of the morning working on code challenges, often in pairs. After lunch, there will usually be another lecture, followed by more coding challenges that will keep you working well into the evening. As the weeks progress, you will find that more time is spent in team project work, and less in lectures and individual/pairing work. The intensity remains the same, but the flow of the days changes.

Training Hours

Most weeks, you will be working 10 to 14 hours a day, 5 to 7 days a week. We feel this intensity is necessary so that we can cover enough ground to prepare you for a career in software development. It is hard to become barely professionally competent in a field that is new to you. It is even harder if you try to do it with fewer than 1,000 hours of instruction and practice. Everywhere you read, you will find this in common about people who train to become software developers — there is no substitute for practice.