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

Authentication & Authorization: OAuth (Udacity) Udacity
Udacity

Authentication & Authorization: OAuth (Udacity)

Implementing Web Security with OAuth 2.0. As a Python programmer, leveraging Flask allows you to quickly and easily build your own web applications. But before you share your apps on the Internet you should protect your users' data, ensuring information stored on your site is safe from unwanted manipulation. You could implement web security and permissions on your own, but relying on trusted providers is a faster, safer, and easier way to allow users to login to your application - without having to create and maintain another account, profile, and password.

Self Paced
Self-Paced
Python and Statistics for Financial Analysis (Coursera) Coursera
The Hong Kong University of Science and Technology - HKUST

Python and Statistics for Financial Analysis (Coursera)

Python is now becoming the number 1 programming language for data science. Due to python’s simplicity and high readability, it is gaining its importance in the financial industry. The course combines both python coding and statistical concepts and applies into analyzing financial data, such as stock data.

Oct 5th 2026
4 Weeks
Algorithmic Thinking (Part 1) (Coursera) Coursera
Rice University

Algorithmic Thinking (Part 1) (Coursera)

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Oct 5th 2026
4 Weeks
Building High Conversion Web Forms (Udacity) Udacity
Udacity,Google

Building High Conversion Web Forms (Udacity)

Forms Rock! Any meaningful experience on the web has a form. Whether it's a form made of text boxes, toggles, buttons, checkboxes, or touchable widgets, web developers need to be purposeful about forms to make users happy and increase conversions. In this course, you'll learn best practices for modern forms as taught by Google's Ido Green and Udacity's Cameron Pittman. You'll practice your skills along the way with a few self-directed projects, including an e-commerce checkout and an event planner app!

Self Paced
Self-Paced
HTTP & Web Servers (Udacity) Udacity
Udacity

HTTP & Web Servers (Udacity)

How does HTTP work? This course is intended for budding full-stack web developers to master the basics of HTTP, the protocol that underlies all web technology. In this course, you'll explore HTTP directly, talking with web servers and browsers by hand. You'll write and deploy low-level web applications in Python. And you'll learn more about how HTTP connects with other web technologies.

Self Paced
Self-Paced
WeChat Mini Program Development (Udacity) Udacity
Udacity

WeChat Mini Program Development (Udacity)

Build your first Mini Program with Tencent WeChat. WeChat Mini Programs are “sub-applications” within the WeChat ecosystem; you can find and use any Mini Program instantly without needing to install anything from the App Store. With more than one billion active daily users globally, it’s almost impossible to overestimate WeChat’s importance, and the potential reach of a Mini Program of your design! This program is built in collaboration with Tencent WeChat and leading industry professionals who have developed a world-class curriculum. In this course, students will learn about data queries, parsing, Mini Program interfaces, and then go on to complete their very first Mini Program all within 4 weeks.

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
The Fundamental of Data-Driven Investment (Coursera) Coursera
Sungkyunkwan University - SKKU

The Fundamental of Data-Driven Investment (Coursera)

In this course, the instructor will discuss the fundamental analysis of investment using R programming. The course will cover investment analysis topics, but at the same time, make you practice it using R programming. This course's focus is to train you to do the elemental analysis for investment management that you might need to do in your job every day. Additionally, the study note to do using Python programming will be provided.

Oct 5th 2026
4 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
Estruturas de dados Python (Coursera) Coursera
University of Michigan

Estruturas de dados Python (Coursera)

Este curso apresentará as estruturas de dados centrais da linguagem de programação Python. Vamos superar os fundamentos da programação de procedimentos e explorar como podemos usar as estruturas de dados integradas do Python, como listas, dicionários e tuplas, para realizar análises de dados cada vez mais complexas. Este curso cobrirá os capítulos 6 a 10 do livro “Python para Todos”. Este curso aborda o Python 3.

Oct 5th 2026
5-12 Weeks
Introducción al desarrollo web (Coursera) Coursera
Universidad de los Andes

Introducción al desarrollo web (Coursera)

Este curso te proporcionará los conceptos básicos para iniciarte en el fascinante mundo de la Ingeniería de Software para aplicaciones web. Abordaremos los conceptos fundamentales de estructura, contenido y presentación de una página web, para luego centrarnos en la sintaxis del lenguaje de marcas HTML y en el uso de las etiquetas para crear títulos, párrafos, listas, enlaces, imágenes y formularios.

Oct 5th 2026
4 Weeks