How to create an Ubuntu VPS for a Python script
Create a small Ubuntu server on DigitalOcean, connect from your computer with an SSH key, and know what you are paying for and how to stop the charges.
12 min read
Run scripts on a server, keep them running, and learn how to check logs and recover from failures.
Create a small Ubuntu server on DigitalOcean, connect from your computer with an SSH key, and know what you are paying for and how to stop the charges.
12 min read
Separate a local CA-store problem from an expired, mismatched, or incomplete server certificate, and check the fix with verification still enabled.
5 min read
Read FastAPI's validation response, distinguish body and query errors, and fix a small request without disabling validation.
5 min read
Allow one exact frontend origin in FastAPI, reproduce browser CORS behavior locally, and avoid treating CORS as authentication.
5 min read
Build a local CSV upload endpoint, return its row count, and give useful errors for empty, oversized or malformed files without trusting an uploaded filename.
5 min read
Run a small FastAPI app locally, use its browser interface to request workshop availability, and understand the response before thinking about hosting.
5 min read
Use read-only Ubuntu checks to locate the full filesystem, distinguish bytes from inode exhaustion, and find the directory responsible.
6 min read
Load a specific local .env file, validate a setting and keep credentials out of Git and API responses, with a small working Python example.
6 min read
Give one local Python project its own environment, verify its Python and pip paths, and run a script without changing PowerShell security settings.
5 min read
Keep your Python script running after you close your laptop. Set it up once on an Ubuntu VPS, check its output, and learn how to stop and restart it.
15 min read
Write a short handover that covers prerequisites, input, the exact run command, expected output, errors, and stopping—then rehearse it in a clean folder.
5 min read
Upload a small CSV to a local Streamlit app, inspect its columns and rows, and catch common file problems without changing the original.
5 min read
Give a small Streamlit app a working CSV download, keep its filename and columns predictable, and verify that the saved report matches the selected rows.
5 min read
Load local Streamlit settings from secrets.toml, keep the file out of Git, and confirm configuration without displaying a credential.
5 min read
Find why a local CSV still shows an old result, clear one cached loader, and distinguish cache expiry from automatically refreshing the browser.
5 min read
Keep a shortlist when Streamlit reruns your script, understand when session state resets, and add an explicit reset without losing unrelated settings.
4 min read