Full Stack Foundations (Udacity)

Offered by Udacity, AWS,
Full Stack Foundations (Udacity)

Build a data-driven web app with Python. In this course you will learn the fundamentals of back-end web development! You will create your own web application that queries a database for items on restaurant menus and then dynamically generates complete menus in the form of web pages and API endpoints.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

You’ll start by learning how to interact with a database from a web application using an Object-Relational Mapping (ORM) layer. From there, you’ll learn how GET and POST requests translate to CRUD operations. You’ll then explore the Flask framework and the various ways in which it can speed up the development of your applications. Finally, you’ll develop your very own web application from the ground up using the iterative development process.
Interacting with a persistent datastore is what transforms static web pages into powerful and effective web applications. Giving users the ability to create, read, update and delete data is the backbone of the most popular services on the Internet today. But, you must do so safely and securely - the smallest mistake could bring your application down or leak your user’s data.
In this course, you’ll discover how all of the major components of web applications work and best practices in developing secure, data-driven web applications.

What You Will Learn

Lesson 1
Working with the CRUD

  • Learn about CRUD; Create Read Update and Delete.
  • Implement CRUD operations on a database.
  • Use an ORM (Object-Relational Mapping) as an alternative to SQL.

Lesson 2
Making a Web Server

  • Build a web server from scratch using Python and some pre-installed libraries.
  • Learn how GET and POST requests can retrieve and modify information on a web site.
  • How to add CRUD functionality to our website.

Lesson 3
Developing with Frameworks

  • Introduction to web frameworks like Django and Ruby on Rails.
  • Use the Flask web framework to develop our own web application.
  • Introduction to APIs and how to add JSON endpoints to our application.

Lesson 4
Iterative Development

  • Build an entire web application on your own.
  • Learn about the iterative development process.
  • Have a working prototype throughout all stages of the development process.

Prerequisites and Requirements
You should be comfortable with Python, including Object-Oriented Programming. If you’d like to brush up on your Python, try the first three lessons of our Intro to Computer Science course. For Object-Oriented Programming in Python, see Programming Foundations with Python.
You should also have a firm understanding of SQL and working with a relational database, particularly PostgreSQL. Our Intro to Relational Databases course can get you started if you feel you’re not yet prepared.
Finally, you should be able to read and write HTML and CSS without any guidance. If you need a refresher on HTML and CSS, start with our Intro to HTML and CSS course.
To complete the final project for this course, it is critical you meet these prerequisites as you are given no assets to begin with and will truly build a complete web application from scratch.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Machine Learning: Concepts and Applications (Coursera) Coursera
University of Chicago

Machine Learning: Concepts and Applications (Coursera)

This course gives you a comprehensive introduction to both the theory and practice of machine learning. You will learn to use Python along with industry-standard libraries and tools, including Pandas, Scikit-learn, and Tensorflow, to ingest, explore, and prepare data for modeling and then train and evaluate models using a wide variety of techniques. Those techniques include linear regression with ordinary least squares, logistic regression, support vector machines, decision trees and ensembles, clustering, principal component analysis, hidden Markov models, and deep learning.

Nov 16th 2026
5-12 Weeks
Intro to HTML and CSS (Udacity) Udacity
Udacity

Intro to HTML and CSS (Udacity)

In this course, you'll learn the fundamentals web development, along with best practices and professional problem-solving techniques using Developer Tools. Throughout this course, you'll learn about the underlying structure of the web - HTML. You'll learn how to use this tree-like structure to create websites. You'll also learn how to apply styling to a website through CSS. You'll learn about CSS syntax, selectors, and units. Along the way, you'll also learn about code editors and a browser's Developer Tools.

Self Paced
Self-Paced
Exam Prep AI-102: Microsoft Azure AI Engineer Associate (Coursera) Coursera
Whizlabs

Exam Prep AI-102: Microsoft Azure AI Engineer Associate (Coursera)

The AI-102: Designing and Implementing a Microsoft Azure AI Solution certification exam tests the candidate’s experience and knowledge of the AI solutions that make the most of Azure Cognitive Services and Azure services. In addition, the exam also tests the candidate's ability to implement this knowledge by participating in all phases of AI solutions development—from defining requirements, and design to development, deployment, integration, maintenance, performance tuning, and monitoring.

Nov 16th 2026
5-12 Weeks
Analíticas de Datos con Pandas (Coursera) Coursera
Tecnológico de Monterrey

Analíticas de Datos con Pandas (Coursera)

La analítica de datos ha avanzado considerablemente en los últimos años y ahora existen diversas herramientas que nos permiten realizar tareas o procesos que antes eran complicados de realizar. Gracias a su versatilidad, el lenguaje de programación Python posee una serie de librerías que permiten realizar proyectos de analítica de datos de una forma muy sencilla y una de las librerías más populares es Pandas.

Nov 16th 2026
4 Weeks
Intro to JavaScript (Udacity) Udacity
Udacity

Intro to JavaScript (Udacity)

Learn the fundamentals of JavaScript, the most popular programming language in web development. JavaScript is the most popular programming language for both front-end and back-end web development. Applications for JavaScript span from interactive websites to the Internet of Things, making it a great choice for beginners and experienced developers looking to learn a new programming language.

Self Paced
Self-Paced
Spark (Udacity) Udacity
Udacity,Insight

Spark (Udacity)

Master how to work with big data and build machine learning models at scale using Spark! In this course, you’ll learn how to use Spark to work with big data and build machine learning models at scale, including how to wrangle and model massive datasets with PySpark, the Python library for interacting with Spark. In the first lesson, you will learn about big data and how Spark fits into the big data ecosystem. In lesson two, you will be practicing processing and cleaning datasets to get comfortable with Spark’s SQL and dataframe APIs. In the third lesson, you will debug and optimize your Spark code when running on a cluster. In lesson four, you will use Spark’s Machine Learning Library to train machine learning models at scale.

Self Paced
Self-Paced
Python Data Structures (Coursera) Coursera
University of Michigan

Python Data Structures (Coursera)

This course will introduce the core data structures of the Python programming language. We will move past the basics of procedural programming and explore how we can use the Python built-in data structures such as lists, dictionaries, and tuples to perform increasingly complex data analysis. This course will cover Chapters 6-10 of the textbook “Python for Everybody”. This course covers Python 3.

Nov 9th 2026
5-12 Weeks