Calvin French-Owen

    1. Lessons for early stage founders

      In Segment’s early days, we hit countless problems as a founding team. And at the time, I thought those problems were unique to our own special snowflake of a founding journey. I chalked it up to us being new grads and first-time founders.

    2. A new adventure

      As they say... some personal news. After nearly a decade of building Segment, I'm leaving to start a new adventure. My last day was November 2nd.

    1. The Real Magic of GPT-3

      “Any sufficiently advanced technology is indistinguishable from magic.” — Arthur C. Clarke

    1. The Secret of the Weekplan

      The best advice often seems blindingly obvious in hindsight. After taking it, you wonder how you ever survived without it.

    2. How to sell a B2B product

      Lately, a bunch of early stage founders have emailed me to ask for go-to-market (GTM) advice. They have a real product, it solves a real problem for their handful of customers…

    1. Great products don’t require permission

      In my college CS classes, I always thought that speed was the most important part of software. The most valuable products (or so I thought) used only cutting-edge, high-performance sets of algorithms.

    1. Personas: Under the hood

      I gave a talk at Google Cloud NEXT, highlighting our use of BigQuery and Bigtable for building out our Personas architecture. In this session, I share a little bit about Personas, and dig into the Dremel and Bigtable papers to share why they work for our use case.

    1. Guarding against failures in a hundred-step pipeline

      I recently gave a talk at our annual Synapse conference about ctlstore (control store), a new database that we’ve been developing internally at Segment. It’s designed to give good consistency guarantees to the writer, while providing good availability guarantees for readers.

    1. Building a culture of shared understanding

      Over the past five years of being on-call, seeing hundreds of production outages, and working with a growing SRE team, I've started to see patterns when it comes to making teams work effectively.

    1. The One-trick Pony and The Empire

      Everyone wants to build the next “rocketship.” We all want to start businesses with an incredible growth trajectory and massive impact.

    2. Write.

      “What’s the biggest thing you’ve learned while building Segment?”

    1. Terraform at scale

      Terraform is a wonderful tool for describing infrastructure as code. It’s fast, flexible, automatically resolves dependencies, and is rapidly improving.But in some ways, Terraform is flexible like AWS is flexible. You can do pretty much anything, but it’s also easy to shoot yourself in the foot if you aren’t…

    1. An Introduction to Node’s New Streams

      Recently, there’s been a lot of commotion on twitter and in #node.js about the new streams2 API. The official stream docs leave a lot to be desired, which has lead to general confusion. That’s too bad, because using new streams can really simplify your code once you understand how they work. Let me take you there…

    1. The Cost of an ACL Injury

      A little over a year ago, I tore my ACL playing ultimate frisbee. I made a quick cut to lose my defender, and as I planted my foot to change directions, I felt a sudden pop in my knee. Next thing I know, I’m on the ground because my knee had given out.

    1. What 10gen nailed with MongoDB

      When my co-founders and I first started on our startup a little over a year ago, we asked other startups about what to database they were using. Nine out of ten people all had the same response: “Just go with Mongo.”

    2. Node and Express Tips

      At, we’ve been using node.js with the express framework for about 8 months now. We switched over from using the java play! framework and I’ve found express to be much more elegant. It’s simple, doesn’t prescribe too much, and is way less verbose than the same java code.

    1. Indexing Schemaless Documents in Mongo

      One of the best parts about mongo is its entirely schemaless nature. We can store any kind of data we’d like without having to worry about where that data comes from or how it should be laid out.

    1. Who’s who in upstream caching

      Well, once again there is too much other stuff to work on and my last blog project didn't turn out quite the way I hoped, so there hasn't been a recent blog post. Look for a few concerning my latest project in the coming weeks, but for now I'll be putting up a few shorter or less technical ones about various subjects…

    2. Luhn’s Auto-abstract Algorithm

      Well folks, I currently have 2 or 3 significant blog entries whizzing around my head, and I have to post up one of them even though I have already started writing the other or else I might explode . I guess this can be a little tidbit to keep the posts going until some of my more major endeavors arrive.So the…

    3. Dynamic Images in Django

      Those of you rolling around the internet back in the day might remember some images that displayed some seemingly "personal" information to you. Granted I'm not exactly THAT much of an old timer that I programmed my own Ethernet protocol in assembly or anything- so you too might remember something like the image at…

    1. LZW Compression

      All right, as promised last week today's topic is LZW compression. As we talked about in our networking class, LZW compression is about as close as you can get to an optimal compression rate for large compression objects. The single biggest advantage of LZW is that unlike the traditional Huffman Encoding that was…

    2. The Magic of B-trees

      I'd like to talk a little about and give an implementation of B-Trees, perhaps the best example of an algorithmic data structure designed specifically 'real computers' rather than the theory of academia. Given that, it took me a while to figure out the why on earth B-Trees are used. It's sort of like the Binary tree's…