Overcast
One developer, PHP and MySQL, then Go for the hot path
Marco Arment built Overcast solo after Tumblr and Instapaper — mostly PHP and MySQL on Linode, then a dedicated Limestone box for feed crawling. When PHP’s networking model hurt, he rewrote crawlers in Go and halved server count.
2014 pre-launch
Linode VPS, HTTP caching, $40/month crawlers
PHP
MySQL
Linode VPS
HTTP cache headers
Arment’s “Value of Background Fetch” post explains Overcast’s feed poller: respect caching headers, push work to iOS where possible, keep server infrastructure on a $40/month Linode VPS.
He argued app developers should learn basic Linux hosting — VPSes, nginx/Apache, MySQL — because it keeps indie products viable without platform tax.
Lesson
Move work to the client (background fetch) before you move servers to another continent.
2014–2015
Dedicated Xeon + SSD when launch needed headroom
PHP
MySQL
Limestone Networks dedicated server
RAID-1 SSDs
Before launch he upgraded to a quad-core Xeon with enterprise SSDs at Limestone — still an order of magnitude cheaper than Instapaper’s peak database host, which he cited for comparison.
“Web Hosting For App Developers” doubles down: mature MySQL, HAProxy, encrypted mysqldump-to-S3 backups — unglamorous ops he reused across every product.
Lesson
Dedicated hardware with SSDs is still a cheat code for predictable I/O. Buy iron before you buy buzzwords.
2015–today
Go rewrites the crawler, PHP keeps the rest
PHP (app backend)
Go (feed crawlers)
MySQL
Dedicated/VPS mix
On Accidental Tech Podcast Marco said moving feed crawling from PHP to Go cut server count roughly in half — saving a few hundred dollars a month — after ~two months of rewrite plus observability plumbing.
Polyglot where it matters: PHP for CRUD, Go for parallel HTTP. Later features (on-demand transcripts) added specialized hardware, but the core lesson stands — attack the bottleneck, not the whole monolith.
Lesson
Rewrite one hot path, not your entire stack because Hacker News discovered a new language.
Sources
- Marco Arment — The value of background fetch (2014)
- Marco Arment — Web hosting for app developers (2014)
- High Scalability — Marco Arment Go vs PHP crawler rewrite summary
Facts drawn from public engineering posts and interviews. Numbers are approximate where sources disagree — we're stack advisors, not historians.
Get the right stack for YOUR scale — not theirs
Overcast's stack made sense for Overcast. Yours won't — and copying theirs is how you end up with a $4k/month bill and three unused Kubernetes clusters.
Plan my stack — free