RSSAmplifier

Blog

Greg Foster

Essays and reflections on code, startups, and learning.

gmfoster.comRSS feed ↗12 posts

Latest posts

How to be an amazing engineering manager

Ten lessons on engineering management - from making the company successful to hiring well, living in dissonance, and knowing when not to act.

Intensity at work

Reflections on demanding greatness from yourself and others - and why it's not as toxic as it sounds.

AI provenance belongs in Git

Storing the history behind AI-generated code in a simple sidecar folder.

Founder dissonances

Founders say one thing and do another. The common dissonances between what founders say and what they actually do, and why copying the words instead of the actions is dangerous.

Starting Graphite

The story of how I met my cofounders at Harvard, learned infrastructure engineering at Airbnb, and eventually started Graphite in early 2020.

How I learned to code

The story of how I taught myself iOS development at 15, built my first apps, and discovered a lifelong passion for programming.

Are you having any fun?

The journey is the whole thing. Great things do take a long time, but fun is what keeps you motivated for the long haul.

Three rules for naming projects

My firm rules for what makes a good project or company name - two hard syllables, easy to say in a loud room, and no spelling clarification needed.

From the 80's to 2024 - how CI tests were invented and optimized

The history of continuous integration testing, from manual code inspections in the 1980s to modern parallelized cloud CI systems and the future of AI-powered code review.

How GitHub replaced SourceForge as the dominant code hosting platform

How did GitHub enter the market? What existed before, and what gap did they fill? A history of code hosting from SourceForge to GitHub's dominance.

"Onboarding roulette: deleting our employee accounts daily"

How we test our hardest-to-test feature by randomly deleting one engineer's Graphite account every day at 9am.

Why Facebook doesn't use Git

Why do Facebookers not use Git? Why adopt Mercurial instead and build custom workflows on top of it? The answer involves community, collaboration, and a masterclass in internal migrations.