41554 blogs · [ { "id": "01a08752-090b-7222-a426-e5be84ffa046", "title": "The 15-Year-Old iptables Rule That Broke My DNS", "url": "http://blog.pecar.me/the-15-year-old-iptables-rule-that-broke-my-dns/", "published_at": "2026-06-08T00:15:00+00:00" }, { "id": "01a08752-090b-7222-a426-e5be853bc803", "title": "Fedidevs 9h Outage Postmortem", "url": "http://blog.pecar.me/fedidevs-9h-outage-postmortem/", "published_at": "2026-05-13T08:54:55+00:00" }, { "id": "01a08752-090b-7222-a426-e5be85561fa8", "title": "Letting Claude Upgrade My Raspberry Pi", "url": "http://blog.pecar.me/letting-claude-upgrade-my-raspberry-pi/", "published_at": "2026-05-10T18:00:00+00:00" }, { "id": "01a08752-090b-7222-a426-e5be85a4b633", "title": "Agents Day Lisbon", "url": "http://blog.pecar.me/agents-day-lisbon/", "published_at": "2026-05-04T18:38:17+00:00" }, { "id": "01a08752-090b-7222-a426-e5be86497ed0", "title": "DjangoCon Europe 2026", "url": "http://blog.pecar.me/djangocon-europe-2026/", "published_at": "2026-04-27T23:00:00+00:00" }, { "id": "01a08752-090b-7222-a426-e5be866e81b6", "title": "How to Safely Update Your Dependencies", "url": "http://blog.pecar.me/how-to-safely-update-your-dependencies/", "published_at": "2026-04-18T23:00:00+00:00" }, { "id": "01a08752-090b-7222-a426-e5be868dbedb", "title": "Speeding Up Django Startup Times with Lazy Imports", "url": "http://blog.pecar.me/speeding-up-django-startup-times-with-lazy-imports/", "published_at": "2026-03-22T18:55:25+00:00" }, { "id": "01a08752-090b-7222-a426-e5be870bb9d6", "title": "Typing Your Django Project in 2026", "url": "http://blog.pecar.me/typing-your-django-project-in-2026/", "published_at": "2026-03-12T00:00:00+00:00" }, { "id": "01a08752-090b-7222-a426-e5be874a0a1b", "title": "Claude Fixes User Bug", "url": "http://blog.pecar.me/claude-fixes-user-bug/", "published_at": "2026-03-08T00:00:00+00:00" }, { "id": "01a08752-090b-7222-a426-e5be879b2f24", "title": "Jekyll to Hugo Migration", "url": "http://blog.pecar.me/jekyll-to-hugo-migration/", "published_at": "2026-03-02T22:02:24+00:00" }, { "id": "01a08752-090b-7222-a426-e5be881cafc9", "title": "Advent of Code 2025 🎄", "url": "http://blog.pecar.me/advent-of-code-2025/", "published_at": "2025-12-12T00:00:00+00:00" }, { "id": "01a08752-090b-7222-a426-e5be8894982b", "title": "Django bulk_update Memory Issue", "url": "http://blog.pecar.me/django-bulk-update-memory-issue/", "published_at": "2025-10-12T00:00:00+00:00" }, { "id": "01a08752-090b-7222-a426-e5be8903e93d", "title": "Migrating Gunicorn to Granian", "url": "http://blog.pecar.me/migrating-gunicorn-to-granian/", "published_at": "2025-09-27T00:00:00+00:00" }, { "id": "01a08752-090b-7222-a426-e5be897ccf90", "title": "Disable Network Requests When Running Pytest", "url": "http://blog.pecar.me/disable-network-requets-when-running-pytest/", "published_at": "2025-07-07T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae110cc03e92", "title": "Disable Runserver Warning in Django 5.2", "url": "http://blog.pecar.me/disable-runserver-warning-in-django-5-2/", "published_at": "2025-06-24T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae110d03b12d", "title": "Autogenerating og:images with Jekyll", "url": "http://blog.pecar.me/autogenerating-og-image-with-jekyll/", "published_at": "2025-06-10T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae110dc1bab8", "title": "Power Outages and Gunicorn PID Files", "url": "http://blog.pecar.me/pid-files/", "published_at": "2024-11-09T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae110ddf4cfd", "title": "UV with Django", "url": "http://blog.pecar.me/uv-with-django/", "published_at": "2024-08-29T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae110de372a8", "title": "Go-like Error Handling Makes No Sense in JavaScript or Python", "url": "http://blog.pecar.me/go-errors-in-python/", "published_at": "2024-08-16T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae110ec5b6ab", "title": "Packages Do Not Match the Hashes Pip Error", "url": "http://blog.pecar.me/pip-packages-do-not-match-hashes/", "published_at": "2024-08-02T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae110fc562bc", "title": "Gotchas with SQLite in Production", "url": "http://blog.pecar.me/sqlite-prod/", "published_at": "2024-07-17T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1110c482a7", "title": "Fedidevs Dev Update #2", "url": "http://blog.pecar.me/fedidevs-update-2/", "published_at": "2024-06-17T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1111777952", "title": "Django SQLite Production Config", "url": "http://blog.pecar.me/sqlite-django-config/", "published_at": "2024-06-14T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111179e750", "title": "Django Streaming HTTP Responses", "url": "http://blog.pecar.me/django-streaming-responses/", "published_at": "2024-03-21T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111244a1f9", "title": "Deploying a Django Project to My Raspberry Pi (Video)", "url": "http://blog.pecar.me/rpi-django-youtube/", "published_at": "2024-03-18T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae11131459a5", "title": "Thoughts on Code Reviews", "url": "http://blog.pecar.me/code-reviews/", "published_at": "2024-03-06T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae11136eac55", "title": "Django SQLite Benchmark", "url": "http://blog.pecar.me/django-sqlite-benchmark/", "published_at": "2024-02-06T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1113fa6b2b", "title": "Django, SQLite, and the Database Is Locked Error", "url": "http://blog.pecar.me/django-sqlite-dblock/", "published_at": "2024-01-16T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae11144b4afa", "title": "No Downtime Deployments with Gunicorn", "url": "http://blog.pecar.me/gunicorn-restart/", "published_at": "2024-01-02T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111491b82f", "title": "SQLite Write-Ahead Logging", "url": "http://blog.pecar.me/sqlite-wal/", "published_at": "2023-11-03T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111569f44c", "title": "Writing a Pytest Plugin", "url": "http://blog.pecar.me/pytest-plugin/", "published_at": "2023-10-06T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1115f369ae", "title": "Fedidevs Dev Update #1", "url": "http://blog.pecar.me/fedidevs-posts/", "published_at": "2023-09-16T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111632782a", "title": "Django-TUI: A Text User Interface for Django Commands", "url": "http://blog.pecar.me/django-tui/", "published_at": "2023-08-25T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1116756c3d", "title": "Automate Hatch Publish with GitHub Actions", "url": "http://blog.pecar.me/automate-hatch-publish/", "published_at": "2023-08-18T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae11169a5450", "title": "Words TUI: App for Daily Writing", "url": "http://blog.pecar.me/words-tui/", "published_at": "2023-08-11T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1117753024", "title": "Textual App Auto Reload", "url": "http://blog.pecar.me/textual-code-reload/", "published_at": "2023-08-01T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1117f169e7", "title": "RDS Blue/Green Deployments", "url": "http://blog.pecar.me/rds-blue-green/", "published_at": "2023-07-01T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1118c59a2b", "title": "Fly.io Certificate Renewal", "url": "http://blog.pecar.me/fly-ssl-error/", "published_at": "2023-06-19T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1118f5aa88", "title": "Using Testing Library with Selenium in Python", "url": "http://blog.pecar.me/selenium-testing-library/", "published_at": "2023-01-30T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae1119ef6ba1", "title": "The Fastest Way to Build a Read-only JSON API", "url": "http://blog.pecar.me/faster-api/", "published_at": "2023-01-16T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111a47c176", "title": "import __hello__", "url": "http://blog.pecar.me/import-hello/", "published_at": "2023-01-07T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111a9800c5", "title": "Enum with `str` or `int` Mixin Breaking Change in Python 3.11", "url": "http://blog.pecar.me/python-enum/", "published_at": "2022-12-21T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111b1e9356", "title": "Your Code Doesn't Have to Be Perfect", "url": "http://blog.pecar.me/perfect-code/", "published_at": "2022-11-21T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111bfa9a32", "title": "Fixing _SixMetaPathImporter.find_spec() Not Found Warnings in Python 3.10", "url": "http://blog.pecar.me/six-warnings/", "published_at": "2022-11-16T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111c307abd", "title": "Upgrading Django App to Python 3.10", "url": "http://blog.pecar.me/upgrading-to-310/", "published_at": "2022-08-11T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111d00da71", "title": "Integer Overflow Error in a Python Application", "url": "http://blog.pecar.me/integer-overflow/", "published_at": "2022-07-02T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111d6bae39", "title": "Python Dependency Management", "url": "http://blog.pecar.me/python-dependencies/", "published_at": "2022-02-10T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111d6d13a5", "title": "MySQL Performance Degradation in Django 3.1", "url": "http://blog.pecar.me/django-3-2/", "published_at": "2022-01-21T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111e4ae514", "title": "New Features in Python 3.8 and 3.9", "url": "http://blog.pecar.me/python-3-9/", "published_at": "2022-01-07T00:00:00+00:00" }, { "id": "01a08752-090c-73d6-a2a6-ae111e8e79fd", "title": "The Code Review Batch Size", "url": "http://blog.pecar.me/batch-size/", "published_at": "2019-08-13T00:00:00+00:00" } ] posts Claim your blog
Back to Anže's Blog
Blog · corpus.blog/blogs/blog.pecar.me/posts

Anže's Blog

blog.pecar.me

2026

2025

2024

2023

2022

2019