The Coding Lab

Notes on software, tools & projects

Things I build, and what I learned.

Programming notes, project writeups and small technical guides, written while building real things.

Featured · spring boot

How to Cheaply Host Your Full-Stack Side-Project: Serving it From Home

Hosting a full-stack side project from a home server with Docker, dynamic DNS, port forwarding, and practical tradeoffs.

Read post ->

2023

2021

Python

Managing Environments with Conda and pip

Managing Python environments with conda and pip, including channels, package exports, and reproducible setup files.

Python

Turning a Website into an API

Building a FastAPI service that scrapes GitHub Trending data and exposes it as a developer-friendly API.

Python

Publishing at Anaconda and Automating the Process - 9/9

Publishing a Python package to Anaconda and automating conda package builds and uploads.

Python

Releasing a Python App at Github/PyPI and Automate it - 8/9

Releasing a Python app on GitHub and PyPI, then automating the release process with GitHub Actions.

Python

Documentation - 7/9

Documenting Python projects with readable code, docstrings, useful comments, commit history, READMEs, and Sphinx.

Python

Testing and CI - 6/9

Testing a Python app with pytest and tox, then automating checks with GitHub Actions.

Python

Distribution via Setup File - 5/9

Packaging a Python app with setup.py so it can be installed and distributed more reliably.

Scripting

Distribution via Installation Script - 4/9

Distributing a Python command-line app with a Bash installation script and learning its tradeoffs.

Python

Argparse Module - 3/9

Using Python's argparse module to build a cleaner command-line interface with generated help output.

Python

Sys Module - 2/9

Using Python's sys module to read command-line arguments and turn a script into a tiny CLI app.

Python

The Evolution of a Script - 1/9

Building a tiny Python HTTP client from a simple script and learning how scripts evolve into tools.