What Stat 2 at BUP actually taught me about building real analytics tools
Business Analytics (Stat 2) at BUP pushed me to turn a classroom survey into a real Supabase-backed web app in R — here's what stuck.
Writing · 11 field notes
Practical notes on web applications, automation, AI-assisted workflows, self-hosted infrastructure, and what becomes clearer after shipping.
A quiet walk through Dhaka's Brikkho Mela — rows of nurseries, bonsai stalls, and the small reminder that this city still has room for green.
I shipped real workloads on all three open-source self-host PaaSes. Honest comparison of install friction, template libraries, reverse-proxy choices, multi-server support, backup story, and where each one breaks.
An honest field guide for NA agencies considering Bangladesh developers — pricing reality, payment rails, time-zone math, what works async, what breaks, and the contract terms that prevent the usual disasters.
A martial arts client had 654 instructor video files across Dropbox they needed in SharePoint for compliance. Cold start, no script. Here's the kit I built — runs on GitHub Actions, resumable, verifiable, and now handles every job they throw at it.
Why I keep reaching for Ghost as the content source for Next.js sites, the exact wiring pattern (lib/ghost.ts), how the fallback-to-static trick works, and why I stopped using Sanity for blogs.
I've built workflows in all three. Here's when each one is the right pick, when the "free tier" math actually adds up, and the exact thresholds where self-hosted n8n stops being premature optimization.
I build production AI workflows and Next.js apps from Dhaka for North American and SE Asia clients. Honest breakdown of what I take on, what I don't, my rates, and how the time-zone math works in your favour.
DigitalOcean blocks outbound SMTP on new droplets. Brevo only exposes ports 587 and 465. Solution — a 120-line Python sidecar that pretends to be an SMTP server, then POSTs each message to Brevo's HTTPS REST API. Ghost doesn't know the difference.
20-minute walkthrough of the workflow I built this week — every Cal.com booking auto-creates a ClickUp task with the meeting time, attendees, notes, and a video URL. Self-hosted n8n, no Zapier subscription, replicable from the API.
Spinning up a one-droplet self-host stack — Dokploy as the PaaS, n8n for workflows, Ghost for the blog you're reading, OpenCLAW for AI agent routing. Total spend $12/mo + 2GB swap + a lot of swearing at SMTP blocks.
From a note to a useful system
Share the workflow, the constraint, and what you have already tried.