Tweet Wall
Notes on Django, Python, and things I build. Follow @saurav__codes.
-
My extension paid per-tweet LLM calls to filter engagement farming. Too expensive. So I trained my own: 12,506 posts labeled by an LLM, distilled into a 42MB model, 2ms per post on CPU. Free forever now.
-
Ran my bait filter on my real timeline for 8 min: 3,198 tweets checked at 17ms each, about 200MB of memory, zero internet calls. It hid 144 tweets. 1 in 22 tweets on my feed was bait.
-
Building the recurring-task feature for LazyPlanner: store recurrence as an RFC-5545 RRULE string, rrule.js in Vue for UI, python-dateutil on Django to validate and generate, a daily Celery job to seed the instances.
-
The best code is no code. Deleted 10,700 lines of Python CLI machinery and replaced it with a small skill spec. Now any agent creates clean, topological atomic commits in seconds with zero token overhead.
-
I made a CLI for those who think more commits mean a better engineer. It takes a dirty worktree and commits it hunk by hunk: 5 messy feature commits become 30 tiny reviewable ones. Open source.
-
Dropped out of college. Learned coding for a year. Internship as backend developer that turned into a job. Spent about five years in tech. Now building SaaS products with Django/Vue.js and sharing everything in public.
-
Landed a dev role at an Estonian startup: building AI voice agents and their SaaS products, plus a few brand new ones from scratch.
-
Staying sane with multiple timezones: always store time in UTC and convert for the user, and store timezone names instead of offsets to dodge DST issues.
-
Lessons from a recent AI threat report: AI keys are prod credentials, scope OAuth hard, scan repos and images for keys with TruffleHog, and buy direct instead of cheap AI resellers.
-
Set up fail2ban to automatically ban actors crawling or brute forcing my app, and wrote a full article about it.