A space explorer in a dark blue spacesuit giving a thumbs-up.

Choose Your Own Deployment

I love the aha moment people get when they grasp a concept. It’s a lot of what gives me energy about this job. Being there to help people see how an abstract concept can make their concrete life better is amazingly rewarding.

Because of this, I try to change up all the parts of my talks, to make sure people feel like they’re going on a journey with me, ala Nancy Duarte in Resonate. I want you to feel like you’re on a trip with me, like we’re learning together, and exploring what interests you.

This game was born as a conference talk. It’s a longshot bet for a conference to accept a talk that has no set length, or pattern, that is entirely driven by audience participation, but several did, and I’m so grateful. The Toggle Game is an interactive exploration of how feature flagging can be used to make deployment safer and less of a big change.

Now I’ve taken the conference sketch and expanded it out into a playable game about an adorable space explorer, Toggle:

A space explorer in a dark blue spacesuit giving a thumbs-up.

The Toggle Game

I built it in Twine. I’m saving the deep details of that for an OpenSource.com article, but the experience was pretty straightforward and quite enjoyable. You can find the source at https://github.com/wiredferret/Toggle. I’ve left in all my flaily and cranky commit messages for your enjoyment, because I like it when I can see an arc in other people’s commit messages.

In case you don’t want to play the game yourself, I have a video of how the people at DevOpsDays Toronto played it.

Choose Your Own Deployment Adventure, DevOpsDays Toronto

My first year, a professional review

A bit over a year ago, I applied to a startup. I’d never been a developer advocate before, and I wasn’t sure what the job actually entailed, but the person who recommended me (thanks, Rach!) and the hiring manager said that probably my experience doing talks about technical writing was enough to make me a plausible candidate.

I wasn’t sure then exactly what developer relations actually was, and now I’ve been doing this for a year and in an active community of other people doing it, and I think it is like the parable about the elephant – it looks different to everyone because we’ve all got different parts of the same beast.

For me, it looks like going to conferences – a lot of conferences! And being on twitter and writing blog posts and talking to people and being available to answer or route questions. It looks like offering a feature flags open space at every possible place I can. It looks like reading a dozen articles a day, looking for insight and parallax and industry position and good ideas, and funneling it back to the team. It looks like meeting teams who are actually developing with our tool and taking notes on all the things that are annoying them. It means really, truly, non-sarcastically caring about stickers and swag and conference sponsorship and organization and postcards and follow-up.

It’s not an entirely new skillset, but a lot of it is new, and I’ve never been this close the the sales and marketing parts of a company before, and I’m more convinced than ever that it is a really technical skillset that is tragically under-rated for difficulty.

If you’re observant, you’ll see what’s missing from my list: coding. It’s on my list for next year, because I have some neat ideas that I’ll need to use our tool to implement, but it’s not actually very relevant to what I’m trying to do right now.

My goals for this year

I didn’t really write down my goals when I started, because, like I said, I didn’t know what I was doing. But here are the things that I was working toward:

  • Give talks about feature flags/feature management at technical levels from “what is a feature flag” to “how does that work with containers”
  • Standardize the industry term on “feature flags”, so everyone was talking about the same thing. (Kelsey Hightower said feature flag, and you bet I screencapped that. I was delighted.)
  • Visit real live people using our product and funnel their needs back to the right people on our side.
  • Explain what a feature flag was often enough, in enough places, that people started to recognize the concept.
  • In September and October, I would go to conferences and say to someone, “Do you know what a feature flag or toggle is?”, and I would get a lot of blank looks. This July I went to a conference and someone who wasn’t me proposed an open space of feature flags. That’s anectdata, but I think the needle is moving, and I’m giddy. It’s not just me – there are dozens of people talking about this. Martin Fowler hosted a post from Pete Hodgeson on his blog in October of 2017. Willy-Peter Schaub writes about them from the Microsoft MVP perspective, and Raven Covington from MailChimp gave a talk on feature flags at Bath Ruby.
  • It’s partly me, though. I’ll take some credit. If we assume an average audience of 50 people, by 30 conferences, that’s 1500 people who have gotten to hear me enthuse about Testing in Production and Democratizing Release and Progressive Deployment and Continuous Deployment Means Shipping Broken Code and Kill-Switch/Circuit Breaker Patterns. (It’s not quite perfect math, because not all my talks are about feature flags, but not all my audiences are as small as 50.)

Retrospective

I’m not going to spread my whole retrospective out here, because there’s a lot of it that’s purely personal or company internal, but here’s a sampling.

What went well

  • Conference acceptances are encouraging
  • New talks making good impact
  • Feel like I can explain the product with a reasonable degree of technical accuracy and depth
  • Honestly like my company and my co-workers
  • I love learning things. Going to conferences is like all the good parts of college, with much less homework
  • Feel like I did ok mentoring other speakers

Could improve

  • Nearly burned myself out on travel
  • Planning to get speech coaching to hone my skills
  • Want to learn to do code-ier demos
  • Continue improvement in travel booking and organizational skills around writing blog posts and talks
  • Got tired of my conference dresses. Need to sew more batches when I’m home

Looking ahead

  • I’d like to set up some client meetings while I’m visiting places for conferences.
  • Need to not totally drop fitness goals while I’m on the road.
  • Be slightly more selective about conference submission and acceptance. Fine-tune for conferences that have the audiences we need.

    It’s been a good year, and I’m looking forward to next year and don’t feel like there’s any reason for me to worry about finding interesting things to do in the coming year.

    In the meantime, if you want to ask me a question about feature flags, or conference speaking, or the care and maintenance of bright pink hair, you can reach me at heidi@launchdarkly.com.

My first year, a personal review

I woke up to a cheery email today telling me that a quarter of my stock options had vested. That means I’ve been with LaunchDarkly a whole year! (there are worse anniversary notes to get).

And what a year it’s been. I thought about doing a photo essay of all the conferences I went to in the last year, but there have literally been 36 this year, and I had speaking slots at all but 5, and of those 5, I ran open spaces at 3. Too many pictures!

I went to 3 other countries – Australia, Santo Domingo, and Canada. I made platinum status on my airline, missed my kid’s 13th birthday and every single concert, and wore out a TravelPro suitcase. I made a bunch of new friends and acquaintances, and got to know others better, and worked my ass off to learn a new career.

When I started, I had exactly one day in the office to get my new laptop, meet my new co-workers, and have an enthusiastic and influential conversation about stickers. Then it was off to Kansas City Developer Conference, my first official conference as an official Developer Advocate.

Let’s just say I was glad for my thorough interview prep!

You can see that my sticker conversation ended well. This is Velocity New York, I think.

I made it back to Oakland for LISA and the office Halloween party

I celebrated company milestones, even if I wasn’t always in the office for the official parties. I ate this bread pudding in New Orleans at RubyConf. It was delicious.

I sewed a bag for the sticker collection I tote with me to conferences. The inside fabric was an in-office thank-you gift, and the fastener is one I got in the Garment District of New York

Toggle the Space Explorer in a bag of stickers

I met this sleepy lion when I was in Sydney to visit Atlassian. It was my first customer on-site and it was kind of mind-boggling. They had so many great ideas for new features and ways to work with our product.

Lion outside the Atlassian Sydney office

There was a caricaturist at Index San Francisco. I’m pleased that I happened to be wearing this jacket that I made.

Caricature drawing of a white woman with brown, pink-tipped hair and blue eyes

This was a sketchy diagram I took a picture of and sent to our awesome product/graphic person, Melissa. She’s the one who does all our striking stickers and visual look and feel. This ended up as a slide in my Waffle House talk.

Messy handwriting diagram of success/failure continuum.

Here is my glamorous life. I took a nap in the office before a redeye flight home. This is the old office, which we have now outgrown, but the view was amazing. I am wearing technology socks, but I can’t remember right now whose.

A person's socked feet, a view of the clocktower in Oakland

The key to never feeling bad about putting stickers on your work laptop is to first cover said laptop with a clear case. It gives you a little bit of ablative impact resistance, and when you change computers, you can keep the case for your wall!

I’m proud of the work I did, and in the next post, I’ll talk a little bit about what I think is happening.

This job is undoing me

… in the best way possible.

My protective casing of hard-earned cynicism is being rubbed away by all this genuine kindness, cooperation, good culture, and all that jazz. It’s honestly kind of uncomfortable, like molting.

You need to understand – I have this hard-ass candy shell for a reason. My first job in technology was 1996. My first college boyfriend introduced me to BBSing through what we would now call a troll community. I have been “one of the guys”, and “that girl”, and “the writer, whats-her-name”. I have gotten my ass grabbed at work and gotten dirty texts and chats from co-workers and been propositioned in creepy ways at conferences. The technical writer is hired too late and fired early in the startup process, but I love startups. No company has ever previously make me feel like I have valuable things to contribute and they consider themselves lucky to have me.

I thought at first it was perhaps due to the change in my role, this exciting new job title that means I never have to write release notes, but today I realized that it wasn’t that. I was walking with the new person on my team, and trying to download to her what I’ve learned about the company and the things I asked about and can just tell her.

  1. You will not get fired because The Internet Hate Machine is angry about something. We know about the internet hate machine and don’t consider them valuable feedback.
  2. No one is going to yell at you if you mess up your expense accounting, especially at the beginning. We’re all working from a place of mutual respect and shared interested and assumed good intentions.
  3. You are not required to sacrifice quality of life to save company money. Be reasonable, stick to the budget outlines, but it is worth a hotel night to have you bright and functional instead of trying do do a conference after an early morning flight.
  4. You have time to learn your job. We’ll be happy as soon as you contribute, but you need time to ramp up and that’s expected and normal.
  5. It’s ok to ask questions. No one expects you to know everything, we hired you because we think you have the potential to learn. Very few of us knew about this technology or industry when we started. You don’t have to know it all when you start.
  6. Maintaining human relationships with your coworkers and other people in our ecosphere is important, and will be counted as work, not fluff.
  7. If something happens at home while you’re on a business trip and you need to leave, it’s ok to just leave. No single event is more important than your outside-of-work life.

How am I supposed to maintain a cheerful cynicism about people who genuinely like working together and also sometimes hanging out at tea parlors with a kid in tow? How is my cool detachment going to go when I get raises and positive feedback without even asking for it? What if it doesn’t feel like high-stakes gambling to be able to bring my whole self to work, even the wacky futurist parts and the parts that can’t code and the parts that are noisy feminist politics? What if “being me” is not high stakes, but table stakes, for everyone?

This job is breaking me because all of that shielding and cynicism were adaptive for other companies, but not actually very useful at this one, and in order to succeed here, I need to take all that armor off and be real, and vulnerable, and let people help me. It’s terrifying, and I wouldn’t have it any other way.

Screaming in the Cloud with Corey Quinn

Corey Quinn, slasher of AWS bills and frequent conference speaker, had me as the first guest on his brand-new podcast, Screaming in the Cloud. We had a great time talking about feature flags, the all-iPad conference setup, testing in production, and how I feel about technical documentation.

And if you’re like me and don’t always have time to listen to podcasts, there’s also a transcript!

(This is the third time I’ve been asked to help kick off a podcast. Feel free to ask me for your own podcast!)