Double Shipping

August 8, 2018 holman

The smaller you are, be it scrappy startup or just someone doing something solo on the side, the more important it is to stretch your own network out and get eyeballs where you can. Even marketing open source is worth talking about; projects don’t just happen to get popular, even if it’s a free altruistic thing. Sometimes it just takes effort to get the word out.

One way of doing this is to increase the volume: crank that Marketing Tool™ SaaS you pay money to each month and auto-tweet daily in all caps broadcasting to the void until, dammit, you get some fucking leads.

You don’t need to be that jerk, though. There’s a lot of reasonable things you can do to get the word out without driving people bonkers. Early on at GitHub we called this “double shipping”: namely, taking something you’ve done and finding ways to announce it more than once.

Talks aren’t valuable as just talks

Public speaking can be a bit scary. It’s not just the talk prep that sucks; for almost everyone, getting up on stage is a little terrifying. And “just imagine everyone is naked!” is terrible advice.

I always thought the 200 people in front of me at the conference was the real audience for a talk. And then I realized that, potentially, it’s just a small, small segment. A few years ago I started writing up long-form versions of my talks. I’d do it right after I gave the talk (usually on the flight home, when it’s still fresh in my mind and I can easily regurgitate it into words), then I’d slap a nice design on it, and publish it like any other post or thing I did.

The result? The dozens of hours of preparation I put into the talk for the 200 people in the room ends up getting viewed by hundreds of thousands of people online. The physical talk itself ends up being kind of the small side show.

Leverage the work you’ve already finished so a wider audience can see it. Switching mediums can make for a much bigger impact; it’s neat.

The long tail

This one took me a long time to really see for myself. I mean, I’d see it, when The Famous Blogger I Like keeps self-referencing great content in blog posts and tweets. But I just took this as, wow, this person is truly a Very Smart Person, look at all the stuff they’ve done!

It wasn’t until I started hanging around these Very Smart People when it became clear that they’re just Very Normal People Who Happen To Have Spent More Time In The Industry Than I Have.

The longer you build things, the more of a base you can leverage. It’s kind of hard to appreciate, at times. For example: I’ve been doing this to you all over this damn post. Up until this point, I’ve:

Some of these things I’ve linked to are years old and, hell, I don’t even know if I really agree with them anymore. But the point is: it’s pretty easy to slide these things in, since the longer you write, the easier it is to fall back on something tangentially related to what you wrote in the past.

And it does work: I’ll embed an older tweet or link in a post, and sure enough, I’ll start seeing it get picked up again. Sure, now that I’ve brought your attention to this trick, I’m not sure it’ll still work the rest of this post, but who knows.

Anyway, what I’m really saying is that technical programming interviews in our industry are really fucked up right now, and somehow that relates to all this.

Two-step ship

One of the things we did all the time at early GitHub was a two-step ship: basically, ship a big launch, but days or weeks afterwards, ship a smaller, add-on feature. In the second launch post, you can refer back to the initial bigger post and you get twice the bang for the buck.

This is even more valuable than on the surface, too: you get to split your product launch up into a few different pieces, which lets you slowly ease into the full usage — and server load — of new code.

We did this all the time. I’m surprised more people didn’t call us out on this, really. When I shipped GitHub Issues, from the start we had always intended to ship Issue and Pull Request Dashboards soon afterwards.

GitHub Jobs had a pre-launch post and a pre-pre-launch post.

When we shipped GitHub Organizations in 2010, it generated a pretty ugly pricing reaction, which was a bit of a bummer. We waited a day, then posted a pricing update which fixed the problems… but also kept us in the headlines another day. (This time in a more positive light, luckily. But regardless, a lot of people knew that we had launched Organizations.)

Awhile back, I got into a lot of trouble with thought leaders on the internet who didn’t like that I had said Bad Words, like “fuck” and “shit” and possibly truly offensive things like “I like shell scripting”. Some creepy uncle took time out of his talk to complain that I had swore in my earlier talk (neglecting to notice that he ended up swearing more in his own talk; and yes, I later counted). Then the blog posts and tweets and comments started.

First post was 2011/11/03, second was 2011/11/08, and I finally decided to write about it myself on 2011/11/09. Didn’t bother me too much; everyone on Hacker News was talking about me and my talk for the entire week. It was great. Don’t underestimate spreading these things out if it fits the bill.

Double shipping

My primary concern isn’t that people will abuse all this and become annoying as they talk their book over and over again; that happens, but there’ll always be those people out there.

I’m more concerned about the number of people who spend hours — or much, much longer! — on something they care about, make a small tweet about it, and get dismayed that it didn’t immediately blow up and take the world by storm. And then that impacts their motivation to work on future projects.

It’s fine to hit the notes you want to hit more than once, especially if you can bring new value each time. (And in the tech world, adding simple follow-on features can be a great way to do that.)

Everyone’s not always standing by 24/7 to read up on what you’re doing. People want to see what you’re working on, and people will support you… if you help them help you.