Courses and Nanodegree Programs

Writing READMEs
Documentation is an important part of the development process. Learn to write READMEs using Markdown so your code can be used by other humans!
Linux Command Line Basics
An introduction to the Linux command line interface.
Shell Workshop
The Unix shell is a valuable tool for developing and deploying software. Learn the basics of this terminal-based, command-line interface.
Version Control with Git
Learn how to use Git, a popular Version Control System and essential tool for any developer.
GitHub & Collaboration
Learn how to interact with remote repositories and collaborate with other developers on GitHub.
Localization Essentials
Localization is about making a product feel tailored to users around the world. Specifically, it is the process of adapting a product to a language, culture and market.

In collaboration with:  Google

Passwordless Login Solutions for iOS
In this course you'll implement Account Kit and Facebook Login side by side in a sample app, test our login flow on a series of common use cases, and wrap things up with an introduction to Facebook’s Graph API.

In collaboration with:  Facebook for Developers

How to Build a Startup
Learn what it takes to build a successful startup using the Customer Development process, where entrepreneurs "get out of the building" to gather and iterate on feedback.