Aaron Boodman Profile picture
Aug 16, 2021 12 tweets 3 min read Read on X
Chrome was delivered without any sprints at all. The team came in at 9 and left at 5 (figuratively, people actually kept their own ~8h schedules) every workday for a couple years like clockwork. No drama. No broken marriages, no broken families.
It was one of the most formative experiences of my career.
I hear you asking, dear reader, how this miracle came to pass. How did chrome-team manage to deliver high quality software without death marches?

Funny you ask... Turns out that software projects actually benefit strongly from having senior technical leadership deeply involved.
By "senior" I mean, as a crude approximation, "old enough to have school aged children at home".

By "involved" I mean "typing code" and "reviewing code".

I know! In our industry it has been more common for such folks to age out to management and leave the typing to the kids.
I mean even at Google (on a different team) I was a "technical lead" in my 20s, and let me tell you, I had noooo business leading anything technical of any importance. But this is very common!
We would never accept this in other fields. Would you live in a house built entirely by junior carpenters in their late 20s who built one or two houses that barely stood up? Would you drive cars designed and built by junior engineers?
Software engineering is engineering. Like other kinds of engineering, it's a skill you develop over a lifetime, not a decade.

When I joined chrome-team I was in my early 30s. And I was on the junior side.

Most of the core team had already worked on one or two browsers before!
Having strong technical leadership has lots of advantages, but one of them is it naturally leads to a healthier cadence. These folks typically have to be home for dinner, and they're old enough to know that death marches don't work.
I think a decade or so back, it was harder to staff teams with strong technical leadership, because the industry was growing so fast and was so young. But that's changing now!

So if you're building a software project: don't cheat yourself, find experienced engineers to run it...
... and if you're on the younger side, also don't cheat yourself. Find you a team with experienced leaders to learn from.
Well this blew up. No SoundCloud but if you’re of the technically bent, I wrote a little bit more about Chrome’s dev process awhile back:

aboodman.medium.com/in-march-2011-…

Have a nice day!
Also: A few of us started a company building dev tools following the values we learned on Chrome.

Replicache makes it easy to add multiplayer, real-time, and offline-first to existing apps.

Learn more at replicache.dev.

We’re in beta and will launch when it’s ready :)

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Aaron Boodman

Aaron Boodman Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @aboodman

Mar 8, 2023
Gears was um ... not met with enthusiasm by the browser community. Web dev reactions ran the gamut, some were excited somebody was finally doing something, others were concerned about introduction of non-standard APIs.
2008: Chrome launches, with Gears built-in.

2009: Hixie (who edits the HTML spec and sits down the hall from me) drafts the WebSQL spec. His argument is that browsers are going to start shipping this, so somebody should document it quick for interop. Chrome and Safari ship it.
2009: Microsoft and Mozilla refuse to implement WebSQL. Their argument is it will be impossible to build independent compatible impls.

At the time this argument resonates with me, but honestly HTML is 20x more complex than SQLite SQL and we do that fine.

nolanlawson.com/2014/04/26/web…
Read 21 tweets
Mar 8, 2023
A long, tragic history of SQLite, the web, and my career.

Before diving in, disclaimer: I'm not drawing any conclusions or placing blame here. Just documenting this crazy tale as best I can remember it.

I am probably remembering some parts wrong.
June 2000: I publish my first OSS JS lib
August 2000: SQLite 1.0
December 2004: I join Google
Jan 2005: I recruit @ErikArvidsson and other JS friends
~2006: Erik and I join the Gears project.

en.wikipedia.org/wiki/Gears_(so…
After years of being hamstrung by moribund browsers, I am *thrilled* to finally be able to improve the situation. To webdevs at this time, it feels like browser developers just don't care about the platform. To me, Gears feels like a way to directly affect change.
Read 5 tweets
Mar 4, 2023
sunday webdev challenge: can you think of a way to test network connectivity that *does not* print an error to dev tools?

For Replicache we want to periodically test connectivity while offline. It's *not* an error for us to be offline, so don't want to spam console though.
*saturday.
And first prize goes to @msnegurski with the idea to use a web worker.

Thanks internet, you're the best! Image
Read 4 tweets
Jan 1, 2023
Aaron's tips for skiing with kids.

My kids are 6 and 8. I've loved skiing and snowboarding since I was their age. I waited their whole lives to start teaching them. I also taught my nieces (now college-age) to ski.

Here's what I've learned 🤷‍♂️: 1/?
1/ First, why even do this? Teaching young kids to ski is super worthwhile IMO because it's one of the most accessible adventures available. By adventure, I mean it is something very foreign to the everyday experience of most kids: cold, snowy, fast, physical, dangerous feeling…
2/ ... but also very accessible. Done right, the chance of success (kid having a great time and feeling accomplished) is almost guaranteed. The techniques for teaching kids to ski are well known and most kids can get to competently skiing green runs in a long weekend.
Read 22 tweets
May 13, 2022
A sort of bittersweet thought that pops into my head every so often:

I think we are living in a sort of golden age for software development. Similar to the 1980s for cinema or early 1900s for some kinds of american craftsmanship, or the renaissance for science and art.
I think there's an implicit assumption in our work that there is proportionate value, in chasing better and better experiences. We dump really obscene amounts of money and energy into polishing every interaction.
And there *is* value. But it's at least significantly artistic value, the same way there was value in really lovingly crafted victorian homes, or in getting all the shots perfect in E.T.
Read 5 tweets
May 10, 2022
Little story about "ajax", aka `XMLHttpRequest`, aka `fetch`...

Not sure how many people know this but XHR was actually ignored for the first many years of its existence.

It was entirely possible to build ajax apps starting in ~1999, but .... nobody did.
There were a few mavericks of course: Oddpost was an epic email app, then Microsoft OWA. But mostly people just kept building slow apps with full reloads.

Five *years* after XHR was introduced, Google picked it up and showed what was possible: gmail (2004), maps (2005).
At any point for five years, anyone could have implemented Google Maps and destroyed mapquest. But they didn't see it. Instead we all kept clicking those dumb arrow buttons and waiting five seconds for the screen to refresh, like a mainframe.
Read 12 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(