Courses and Nanodegree Programs

Full Stack Web Developer Nanodegree Program
Get started as a developer by mastering object-oriented Python programming, HTML, CSS, and responsive Web design. You will also brush up your knowledge of developer tools such as the Unix shell, Git, and Github; then apply your skills to investigate HTTP, the Web's fundamental protocol. In this Nanodegree, you’ll learn integral concepts of Full Stack development, LINUX web server configuration and LINUX security essentials.

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

No Image Available
Java Foundation
Build strong foundations in Java programming. Learn object-oriented programming in Java
Front End Frameworks
Explore and build interactive, single-page applications with popular JavaScript frameworks!

In collaboration with:  Google

Intro to JavaScript
Learn the fundamentals of JavaScript, the most popular programming language in web development.
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.
Deploying Applications with Heroku
Deploy your first web application using the Heroku platform and learn about the underlying mechanics of web hosting.
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

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

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

Offline Web Applications
Learn how to develop offline-first web application using Service Workers and IndexedDB.

In collaboration with:  Google

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

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

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

Designing RESTful APIs
Build and secure a web server with a RESTful Developer-Friendly API that developers will love to use.
Linux Command Line Basics
An introduction to the Linux command line interface.
Responsive Images
Go beyond image tags! Learn how to make images a part of your responsive design workflow.

In collaboration with:  Google

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

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

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.
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

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.
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.
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.
JavaScript Design Patterns
Learn the importance of code organization and how to implement it with either vanilla JavaScript or an organizational library or framework.
Learn Backbone.js
This is a collection of curated resources to teach you how to write well organized web applications using the Backbone framework.
JavaScript Testing
Learn how to iterate on your web applications with confidence using the red-green-refactor workflow cycle and automated testing frameworks.
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!
HTML5 Canvas
Learn how you can use HTML5 Canvas to create and modify images or even interactive animations.
Intro to jQuery
Learn how to access and modify the DOM with ease using jQuery!
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

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

Networking for Web Developers
You've used the Internet. Now find out more about how it works.
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

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

Data Visualization and D3.js
Learn the fundamentals of data visualization and apply design and narrative concepts to create your own visualization.
Become a Mobile Web Specialist
Prepare for Google's Mobile Web Specialist certification with courses from Google

In collaboration with:  Google

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.