GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

No menu could be recovered. Follow the blue links in the page.

This view

  • Original page
  • New address

GeezerVison is showing www.fullstackpython.com — Full Stack Python

Full Stack Python
@fullstackpython | Blog | Plushcap (my current priority side project)

Learn to Build, Deploy and Operate Software with Python

Full Stack Python was a website written by software developer Matt Makai from 2012 until 2022 that taught developers how to build, deploy, and operate applications with Python. The content was designed to be read after learning the initial Python syntax so that a developer would have a topics map where they could see dozens of concepts and code libraries implementations they could learn next to go from beginner to intermediate and advanced software developer.

However, with the launch of ChatGPT, it became apparent that LLMs can often provide a better learning path for developers because they can ask questions and get immediate, relevant answers as they learn. In addition, in 2022 I started working on my other side project Plushcap a lot more. I'm really only able to focus on a single side project at a time due to job and family commitments so much of the content here started falling out of date.

Still, I love teaching people software development, especially with Python. So I asked myself how I can still make it valuable to readers in the age of LLMs and keep the information updated, which is a non-trivial task considering the 150,000+ words across dozens of topics pages.

The three important decisions I landed on to solve this problem were:

  1. Keep everything human-written with no LLM-generated output to ensure consistent writing style for reader engagement.
  2. Update existing topics and write new topics that connect to Plushcap so it's all under one side project.
  3. Add "what to prompt to learn more" so readers can also use LLMs during their learning journeys.

With those three decisions made, I also knew I had to fully update topics pages that were 4+ years old. So over 2026 I'm working to update as many pages as possible and port them into a "/learn" section on plushcap.com, with clear markings that the pages are human-written and when they were updated. As each page gets updated, I'll link the below topics links to the new pages. The links in the table of contents that go to the new pages will have a "off site arrow up to the right" icon next to them so it's clear those pages are updated on Plushcap's site. That's a long winded way of saying I hope to keep much of this content updated for years to come! Thanks for bearing with me. - Matt

What do you need to learn first?

1. Introduction

1.1 Learning Programming

The Python Language
Why Use Python?
Python 2 or 3?
Enterprise Python

1.2 Python Community

Companies Using Python
Best Python Resources
Must-watch Python Videos
Podcasts

2. Development Environments

2.1 Text Editors and IDEs

Vim
Emacs
Sublime Text
PyCharm
Jupyter Notebook

2.2 Shells

Bourne-again shell (Bash)
Zsh
PowerShell

2.3 Terminal multiplexers

tmux
Screen

2.4 Environment configuration

Application dependencies
virtual environments (virtualenvs)
Localhost tunnels

2.5 Source Control

Git
Mercurial

3. Data

3.1 Relational databases

PostgreSQL
MySQL
SQLite

3.2 Object-relational mappers

SQLAlchemy
Peewee
Django ORM
Pony ORM

3.3 NoSQL

Redis
MongoDB
Apache Cassandra
Neo4j

3.4 Data analysis

pandas
SciPy & Numpy

3.5 Data visualization

Bokeh
d3.js
Matplotlib

3.6 Markup Languages

Markdown
reStructuredText

4. Web Development

4.1 Web Frameworks

Django
Flask
Bottle
Pyramid
TurboGears
Falcon
Morepath
Sanic
Other web frameworks

4.2 Template Engines

Jinja2
Mako
Django Templates

4.3 Web design

HTML
CSS
Responsive Design
Minification

4.4 CSS Frameworks

Bootstrap
Foundation

4.5 JavaScript

React
Vue.js
Angular

4.6 Task queues

Celery
Redis Queue (RQ)
Dramatiq

4.7 Static site generators

Pelican
Lektor
MkDocs

4.8 Testing

Unit testing
Integration testing
Debugging
Code Metrics

4.9 Networking

HTTPS
WebSockets
WebRTC

4.10 Web APIs

Microservices
Webhooks
Bots

4.11 API creation

API Frameworks
Django REST Framework

4.12 API integration

Twilio
Stripe
Slack
Okta

4.13 Web application security

SQL injection
Cross-Site Request Forgery

5. Web App Deployment

5.1 Hosting

Servers
Static content
Content Delivery Networks (CDNs)

5.2 Virtual Private Servers (VPSs)

Linode
DigitalOcean
Lightsail

5.3 Platform-as-a-Service

Heroku
PythonAnywhere
AWS CodeStar

5.4 Operating systems

Ubuntu Linux
macOS
FreeBSD
Windows

5.5 Web servers

Apache HTTP Server
Nginx
Caddy

5.6 WSGI servers

Green Unicorn
uWSGI
mod_wsgi

5.7 Continuous integration

Jenkins
GoCD

5.8 Configuration management

Ansible
Salt

5.9 Containers

Docker
Kubernetes

5.10 Serverless Architectures

AWS Lambda
Azure Functions
Google Cloud Functions

6. DevOps

6.1 Monitoring

Datadog
Prometheus
Rollbar
Sentry

6.2 Web App Performance

Logging
Caching
Web Analytics

7. Meta

Change log
About the author
What "full stack" means
Page Statuses
Future directions

Matt Makai 2012-2022
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.