Back End

Build smart applications

Start learning with



Take your development skills beyond static web pages and make your website smart. Learn how to build a web server to handle complex tasks, manage data, and have full control over your application. Use the same powerful tools that professional programmers use. Great for front end developers who want to make applications that solve problems and for product managers who work with developers.

Who curated this track

Jon Chan
  • Founder of Bento
  • Developer at Stack Overflow
  • Self-taught developer
Programming Languages
Learn X in Y Minutes - JavaScript


Go through this one page summary of JavaScript, a language you should already be familiar with. This is just review, but pay close attention to the features of the language.


Learn X in Y Minutes - Python


If you have familiarity with another programming language like JavaScript, look at this one page overview of Python. Notice the similarities it has with other languages you're familiar with. This is a great reference when you're stuck on Python.


Learn Python


For a more interactive overview of Python, this course gives you a walkthrough of the fundamentals of the language step by step.


Pip and Virtualenv


Python has an amazing ecosystem of packages for you to download so you can do more with Python. Virtualenv is a way for you to keep your installations separate. Learn about both to help you manage addons to Python.


Programming Concepts
What is Object-Oriented Language?


Thinking about programming in terms of what are called 'objects' is absolutely fundamental. You've had some exposure to this learning Python. Watch this amazing video by Simon Allardice on what it means.


What on Earth is Recursion?


Recursion is a concept that a lot of beginning programmers have trouble with. It takes your understanding of functions and takes it to the next level. Watch this video to get a basic overview of how it works.


Flask and Jinja
Flask Quickstart


Build a basic web application using this documentation. This is one of the best written getting started guides and it should give you the basics you'll need for Flask. Go through the whole thing.


Flask Mega Tutorial


This is a comprehensive tutorial on the Flask web framework by the guy who wrote the book on the subject. With the foundational pieces you got from the documentation, you can see what it's like to write Flask applications in a standard way. Go through the whole tutorial.


Template Designer Documentation


You had some exposure to templating with Jinja in the previous tutorials. Now go through the documentation of Jinja to learn its full power as a templating engine in Flask.


Getting Started with Python on Heroku


Skim through this documentation so you have an understanding of what you'll have to do. You'll use this as a reference for the next lesson.


Deploying to Heroku


Watch this video and follow along with your own Flask application. It takes you through the process of setting up and deploying your application with Heroku.


What you should learn next


A big part of creating web applications is storing and managing data. Learn how to model your data, store it, and manage it with one of the most powerful databases professional developers use. This is the natural next step after the Backend track, and it is a prerequisite for this track. If you are interested in data science, you can also go through part of this track to deepen your skills.