Courses and Nanodegree Programs

Become a Front-End Web Developer
In this Nanodegree program, you will complete eight projects and build a resume-worthy portfolio.

In collaboration with: AT&T Google Github Hack Reactor

Full Stack Web Developer
Learn how to create server-side, data-driven web applications that support any front-end and can scale to support hundreds of thousands of users.

In collaboration with: Amazon Web Services Github AT&T Google

Intro to JavaScript
Learn the fundamentals of JavaScript, the most popular programming language in web development.
HTML and CSS Syntax
In this course, you'll learn the fundamentals web development, along with best practices and professional problem-solving techniques using Developer Tools.
Intro to Computer Science
Learn key computer science concepts in this introductory Python course. You'll learn by doing, and will build your own search engine and social network.
Programming Foundations with Python
Introductory programming class to learn Object-Oriented Programming, a must-have technique to reuse and share code easily. Learn by making projects that spread happiness!
How to Use Git and GitHub
Learn to use version control, an important tool for any developer. The course will focus on Git, a specific version control system, and GitHub, a collaboration platform.
Introduction to Python
Python is one of the most popular programming languages in the world. If you already know another language and want to expand to Python, this is the course for you!
Linux Command Line Basics
An introduction to the Linux command line interface.
Responsive Web Design Fundamentals
Learn and practice strategies for developing websites that look great on every device! Made with Google's Pete LePage.

In collaboration with: Google

Scalable Microservices with Kubernetes
This course is designed to teach you about managing microservices, using Kubernetes. This course is built in partnership with experts such as Google’s Kelsey Hightower.

In collaboration with: Google

Intro to Relational Databases
Relational databases are a powerful tool used throughout the industry. Learn the basics of SQL and how to connect your Python code to a relational database.
Technical Interview
Learn the skills technical interviewers expect you to know—efficiency, common algorithms, manipulating popular data structures, and how to explain a solution.

In collaboration with: Pramp

Front End Frameworks
Explore and build interactive, single-page applications with popular JavaScript frameworks!

In collaboration with: Google

GitHub & Collaboration
Learn how to interact with remote repositories and collaborate with other developers on GitHub.
Full Stack Foundations
Learn the fundamentals of back-end web development by creating your own web application from the ground up using the iterative development process.

In collaboration with: Amazon Web Services

Computer Networking
This is an advanced Computer Networking course that delves into the latest concepts and tools used by the CN industry.

In collaboration with: Georgia Institute of Technology

Designing RESTful APIs
Build and secure a web server with a RESTful Developer-Friendly API that developers will love to use.
Object-Oriented JavaScript
Build a variety of JavaScript objects and explore how their inheritance models affect your app's in-memory model. Gain simplicity and modularity in your own code.

In collaboration with: Hack Reactor

Website Performance Optimization
Learn how browsers convert HTML, CSS and JavaScript into websites while you experiment with Chrome Developer Tools to measure and optimize website speed!

In collaboration with: Google

JavaScript Promises
Learn how to simplify asynchronous work with Native JavaScript Promises!

In collaboration with: Google

Networking for Web Developers
You've used the Internet. Now find out more about how it works.
HTML5 Canvas
Learn how you can use HTML5 Canvas to create and modify images or even interactive animations.
JavaScript Design Patterns
Learn the importance of code organization and how to implement it with either vanilla JavaScript or an organizational library or framework.
Intro to AJAX
Learn how to perform asynchronous requests as you build a web app with data from Google Street View, the New York Times and Wikipedia!
Data Visualization and D3.js
Learn the fundamentals of data visualization and apply design and narrative concepts to create your own visualization.
Web Accessibility
Get hands-on experience making web applications accessible. You’ll understand when and why users need accessibility, then you’ll dive into how to implement.

In collaboration with: Google

Responsive Images
Go beyond image tags! Learn how to make images a part of your responsive design workflow.

In collaboration with: Google

Intro to jQuery
Learn how to access and modify the DOM with ease using jQuery!
Offline Web Applications
Learn how to develop offline-first web application using Service Workers and IndexedDB.

In collaboration with: Google

Client-Server Communication
Learn how a client communicates with a server, including HTTP's request and response cycle, HTTP/2 and HTTPs.

In collaboration with: Google

JavaScript Testing
Learn how to iterate on your web applications with confidence using the red-green-refactor workflow cycle and automated testing frameworks.
Asynchronous JavaScript Requests
Learn how to asynchronously request data in your web applications with Ajax.
Authentication & Authorization: OAuth
Learn to implement the OAuth 2.0 framework to allow users to securely and easily login to your web applications.
Configuring Linux Web Servers
Serve a data-driven web application as you become acquainted with, configure and finally secure a Ubuntu Linux web application server.
Browser Rendering Optimization
This course will demystify the browser's rendering pipeline and make it easy for you to build high performance web apps.

In collaboration with: Google

Web Tooling & Automation
In this course, you’ll learn how to setup your development environment and save a lot of time and effort with automatic optimization.

In collaboration with: Google

Building High Conversion Web Forms
Increase conversions with best practices for fast, efficient forms! Learn how to design and build web forms for users on any device.

In collaboration with: Google

Deploying Applications with Heroku
Deploy your first web application using the Heroku platform and learn about the underlying mechanics of web hosting.
Learn Backbone.js
This is a collection of curated resources to teach you how to write well organized web applications using the Backbone framework.
Dynamic Web Applications with Sinatra
Sinatra is a micro-framework for quickly developing small Ruby applications for the web. In this course, you'll learn all about Sinatra, routing, and templating.
The MVC Pattern in Ruby
In this course you’ll learn how to organize your code, and why that’s important. You’ll be using the MVC Design Pattern in the web application micro-framework Sinatra.
ES6 - JavaScript Improved
Learn about the changes made to the JavaScript programming language in ECMAScript 6 and how to use these new improvements to write better cleaner code.