- How to show a modal in Django + HTMX - 16 Dec, 2024 Learn how to show a modal with minimal Javascript in Django + HTMX
- How and why to run your Docker apps without root - 25 Oct, 2024 Understand the importance of running your apps without root privileges inside your Docker container
- Automated container deployment without a registry - 23 Oct, 2024 Learn how to automate deployment of a containerized Django app without a registry
- Docker is better than Podman - 22 Oct, 2024 I experimented with Podman and realized that Docker is still better
- Understanding Python Decorators thanks to Django - 14 Oct, 2024 Master Python decorators by dissecting ones provided by Django
- A script to "Modernize" your Linux CLI - 13 Oct, 2024 Use this script to install modern CLI tools for Linux
- I moved my blog from Ghost to Astro - 12 Oct, 2024 Learn about the benefits of publishing with Astro instead of Ghost
- Show Django flash messages as toasts with Htmx - 11 Oct, 2024 Learn how to display Django messages as user friendly toasts with Htmx
- Build an intuitive CLI app with Python argparse - 10 Oct, 2024 Learn how to use Python's built-in argparse library to build an intuitive CLI app
- Forward SSH Agent Requests From WSL to Windows - 03 Oct, 2024 Learn how to use the built-in Windows ssh-agent from inside your WSL instance
- How to implement RESTful routing in Django - 19 Sep, 2024 Learn to leverage the REST archicture in a Django app.
- Generate DKIM key pairs in Python - 15 Sep, 2024 DKIM key pairs are simply RSA key pairs and you can easily generate them in Python.
- Robust Full-Stack Authentication with Django Allauth, Rest Framework, and React - 04 Sep, 2024 Learn how to integrate django-allauth with React for a powerful and easy authentication system.
- Using Django Allauth without Username Field - 01 Sep, 2024 Learn how to use Django Allauth without a username field in your User model.
- How to Remove Username from Django's Default User model - 23 Aug, 2024 Learn how to allow users to authenticate with your app without a username.
- Why CSRF token cookies don't need to be httpOnly - 20 Jul, 2024 CSRF token cookies are typically sent without httpOnly set to true. But is that a secure practice?
- Send Templated Emails in NodeJS - 22 Mar, 2024 Learn how to use NodeMailer, Handlebars, and juice to send emails effortlessly in NodeJS.
- Populate Custom User Attributes When Signing Up Using Django Allauth - 21 Mar, 2024 Learn how to set custom attributes to your User model when signing up users with Django Allauth.
- Track Hubspot Events in a React SPA - 20 Mar, 2024 Learn how to use Hubspot to track user activity when using client side routing in React.
- How to upload files to S3 using a Presigned Upload URL - 03 Mar, 2024 Learn how to upload files directly to S3 from a front-end client to avoid API Gateway time-out issues.
- Identify Individual Requests in ExpressJS - 24 Jan, 2024 Learn how to debug user errors more easily by tagging each request.
- How to Store Passwords Securely in NodeJS - 23 Jan, 2024 Learn how to use built-in tools in NodeJS to store user passwords securely.
- Verify Paddle Billing Webhook Signatures in Python - 11 Jan, 2024 Learn how to verify that webhooks hitting your back-end are from Paddle and not anyone else.
- Generate good looking PDFs with WeasyPrint and Jinja2 - 10 Jan, 2024 Learn how to easily generate beautiful PDFs in Python
- Encode base64 in JavaScript and Decode in Python: Part 2 - 15 Oct, 2023 Learn how to decode a Base64 string you encoded from JavaScript in Python
- Encode base64 in JavaScript and Decode in Python: Part 1 - 14 Oct, 2023 Learn how to send URL safe base64 encoded data to your Python API.
- Log to console with Sentry - 14 Oct, 2023 Learn how to see your Sentry logs in the dev tools console for a faster debugging experience.
- Use Python partial objects to write cleaner higher order functions - 14 Oct, 2023 Learn how to improve readability of your code when using callback functions thanks to partial objects.