November 28, 2019
Ep. #42, News Media Security with Kate Whalen of The Guardian
In episode 42 of The Secure Developer, Guy speaks with Kate Whalen, a security engineer at The Guardian, to discuss news media security and ...
I'm really happy to be here talking to you about developers and content today. It's funny to get an introduction like that because I feel like I'm still figuring it out every day.
I've got good news for you which is if you market to developers you're marketing and getting the mindshare of some of the most interesting and intelligent people, I think, on the planet. The bad news is developers don't like marketing very much, so you're fighting for it every day.
I'm going to talk to you about some ideas for battling that and making things that they'll actually enjoy and taking as much pride in the content that you make, as in the code that you write, which I think is a worthwhile goal if you're going be communicating with people who also write code every day.
The secret is there's no framework for this. There's no shortcut for it. I've written over a thousand blog posts just around developer content, probably maybe 10,000 in my lifetime in total which is really a lot if you think about how old I probably am. The thing about that is I still feel like when I write content, I'm making something new. It's not like there's some template for this. Sometimes you might find something that works a hundred times, and that's great, but likely the things that I was doing at Twilio are already commoditized. If you're looking for the next big advantage, the way you're going to grab mindshare and have people pay attention to you, is probably something I haven't come up with yet.
I'm going to talk about the ways to think about marketing and also give you some ideas so that if you're stuck and wondering how to start, they'll kind of begin the process. But if you really want to be great at marketing, then the truth is nothing I can tell you today is probably the next big thing.
I think at Twilio we found some things that were new and innovative that we did before other people so we got to have that six months where we were the only ones. But those things everyone's doing now and I'm not working on that, so I don't know what the next thing is. You guys are probably the ones who are going to figure that out. But, I have a feeling some of the ideas here will help you sort that out yourselves because you're pretty smart.
My understanding of the audience here is that you are all working in startups that are relatively small. You might not have someone working on marketing yet. It might be all engineers. At least it's probably the founding team plus or minus three people on the team.
The first thing is marketing. Sales is getting rejected one person at a time. They buy it or they don't. You probably interact with them and they tell you no or they tell you yes.
Marketing is great because it's just getting rejected at scale.
It's going to have 10,000 people tell you no on Hacker News. That's awesome! Or maybe you'll have 100,000 people not comment on your TechCrunch launch. Or you might have millions of people sign up for your site and then never log in again. You're going to get rejected at scale. Developers are great at doing things at scale. It's supposed to be comforting.
The thing is that you can't think about it that way when you do it because if you think about marketing as a big collection of people then they're barely even human, they're just a number in your database. They've got a unique identifier and you're like, "Great! That email address, I'm going to abuse the crap out of them until they pay me." I'm serious, that's how marketers often think.
The counter-intuitive thing is that more than any other audience, developers want to be treated like people because they are people first of all. But secondly because everyone else who markets them treats them like numbers.
This means you're dealing with very small groups of audience. You're not trying to write to 10,000 people. You're probably trying to write to two hundred people. You're probably trying to write to some subset of your users that could be very, very small. Maybe for example, you notice, "Hey, our dot net customers there's only maybe 50 of them." But, they're the ones where in the forum if someone posts a question, they actually get help.
John's sitting in the back. "Hey John!" John and I met on IRC. John was the first evangelist that I hired at Twilio. What really set out about John is that there were a lot of dot net questions on our IRC channel and John was helping people with figuring out what they should do. Lots of people were in there, and John was actually the only really helpful one. That's kind of remarkable if you think about it, that there's so many people and not everyone helps equally. We notice that trend.
A whole slew of events took place in which John finally became an employee of the company through sneaking into some trade shows and randomly showing up in Vegas and various things. But, I don't think I would have picked dot net developers. It was a really small audience, but it was a really, really engaged audience. It turned out it was also the right audience because developers in the dot net community think about businesses and how to make money very early in the process. It was a great initial market for Twilio.
The thing about John that really captured why that was important is because he treated these people like human beings in a chat room. We know chat rooms are full of not treating people like human beings, treating them like noobs and making them feel bad for not knowing how to do something, and that didn't happen there.
That's the first thing about content is your audience. It's easy to think, "I'm just going to write this so that I'll be cool on Hacker News." That's a really bad idea because you're never going to make everyone at Hacker News happy. Someone in here, Robert told me that they are having a huge amount of engagement from Closure developers for Light Table which makes a lot of sense. Closure's not necessarily, well, maybe it is now, but it's not a trendy language in the number sense of percentage of developers who use it. You might say, "We shouldn't focus on that." But, if that's the most engaged community you have, then that's the one you should start with.
"Yeah, we're supposed to treat these people like people. Great. That's really insightful, Danielle." But, the other thing is that you're not doing it. You're not doing marketing. You're not actually talking to them individually like people at all, so you might think it's insightful, but why aren't you doing it? Or you might think it's not insightful. Why aren't you doing it? Actually it's really hard to figure out what to do. "Okay cool, so I'm supposed to treat them like humans.I'm really lucky because they're smart. So now what?"
If you guys are note takers, I'm going to give you a whole list of kinds of content because I want to make sure that you don't leave here without a list of things you can go do. Then I'm going to spend the rest of the talk trying to convince you to actually do them. Are you guys ready?
You should have an email newsletter if you have nothing else. If you have nothing else. You probably think, "Developers hate email."
That is the one opportunity you have to make something just for them that no one else consumes. No one on Hacker News can ruin your email newsletter, so you should definitely have one.
And you should have an email drip campaign, even if it has just one drop in the drips where it's just, "Hi, thanks for signing up." Can you automate that, please? Those are enough for the first year. That's literally enough for the first year if they're good. You should care about the open rates. If you use SendGrid for example, then make a little dashboard or something so you can see the metrics for your overall lists and some other metrics about the campaign because that's not going to be enough just the way it is.
If you are feeling ambitious, make a blog. In the first year, if you had an email newsletter, a drip email campaign and a blog, you'd be better than 90% of developers tools companies out there. I could probably finish the talk right now. You guys could to do that for a year and it would be really, really good for your business. So just please write this list down. Okay, you have a blog. What's going in your blog? You could post once a month. If it's really, really good, that's awesome. Post once a month, post once a year, post. Just post. That's the whole problem. Just fucking do it. Sorry, I swear on the camera.
You are the only thing standing between you and marketing. It's not marketing's fault that you're not posting on your blog. There's a bunch of other things. Have a contest. Think about your documentation like content. Don't relegate it to some crappy ass wiki that's not even part of your website. Make it beautiful and take the time. If you have to write custom CSS for it, fine. If you can figure out a way to hack WordPress or a bunch of these other tools like Assistly â€” that's what we use. There's lots of things.
Your documentation is not just a secondary thing. It's literally probably the pages that are visited most on your website.
Have a great 'How it Works' page. It could be just above the fold. That was our web window. Have some simple visual diagram of how your product works. You're probably thinking, "This isn't marketing, this is product." That's the thing. A great product is great marketing.
People say that and they think of iPhones. They think of Steve Jobs. Everything you're making is product and everything you're making could be marketing. If people are looking at it and they have a chance to reject you because they didn't like it, then it's marketing because you're getting rejected at scale. So think about it that way.
Here's one thing that's not marketing by itself: Social media is not marketing. Just because you tweet doesn't mean anything. Why are you tweeting? What are you linking to? The link is the marketing. It's just a channel. The biggest problem I sometimes see is a company will be really active on Twitter and then they won't have updated their blog in three or four months. What are they linking to? It's not terrible, they might be linking to other peoples' content.
Every single one of those tweets is a missed opportunity to link to your great content.
You're probably thinking, "Danielle, you should have listed so many more types of marketing." You could do events or you could do â€” there's a million things, why am I blanking â€” you could do advertising or retargeting or all these other things. For your five person company, that's all very, very hard and very expensive. These are all organic things you do that don't cost you anything other than time.
So going back, I wanted to talk about just the first three months of your plan. Say you just digest this talk, you've been thinking about starting to do content and you go back to your team. What does the first three months actually look like? I would definitely go back to the list with the email and just dig into what could be in there. The newsletter, you're probably wondering not just what to put in it, but why would anyone read a company newsletter? I don't know, I do this a lot, I just kind of archive those.
If the first newsletter is full of really useful resources and links, people will save it and they'll come back to it. We found this a lot.
We found trailing open rates of months on that first email that we would send out for Twilio.
There's a really great blog post. There's all these really great blog posts by the way, if you guys search for developer marketing from like the '90s. These are not maintained websites. People have written about this, especially in the Microsoft community. I can't even remember who this is, but there was this guy and he took an email that he'd been sending to his community and it was really long and really dense. I was thinking, "I would hate to get this." And he shares the stats and it's just like terrible open rate, incredible click-through rate, and then he shows the open rate over time as people start forwarding it.
Basically, you could take your email and say, "If the open rate is higher than some percentage, then I should probably mix the page on my website." And now you've taken it and you've repurposed it. Now it's a page on your website. Now it's a page on your website and you can tweet about it. "Look! We've got this page on our website, it's a great guide for how to get started with our product." And you tweet about it. Then you find out that people are starting to send it to each other. Maybe you see it on Stack or you see it on Hacker News, Reddit or you start seeing link backs for it. It just takes a while and then it's like, "I could write a blog post about it. Here's a blog post about the page, about the email about how to get started with our company."
You've made all this content with this really one thing. It's just reusing these ideas. Every time you're hopefully making it a little better.
You set post-to-post and this amazing thing happens. What do you guys think it is? No one reads it. No one reads it because blogging at the beginning is really, really frustrating. No one reads it.
You go on your merry way and imagine you've found some other things that are working. Who here, just raising hands I know won't show up well on camera, but who here has a blog for their company right now? More than half. Go back through your blog, grab all the blog posts you wrote and just republish them. Yeah, like every year. This is great on two levels: One is it's just it's efficient, right? You already wrote that content. It was a lot of work to write it. You might as well just make it better and publish it again.
The second thing is something more fundamental. You have a psychological problem, you have a major problem. It is you will never be able to think like a noob again about your company. You won't. You know exactly how everything got made. You just cannot be in their headspace of, "What am I doing? How do I start? This is confusing." You'll always be like, "Now it's perfect."
The cool thing is that if you republish content, then you can battle this mistake that's so commonly made by just republishing the noob stuff because that's the stuff you usually publish first.You publish the "blah, blah, API 101" post. That was probably the first post your wrote, maybe very early. Or maybe you wrote a post on your culture and the kind of developer you wanted to be and work with. All that stuff is really good content forever. There's somebody new signing up for, I don't know, "blah, blah, API" â€” somebody new signed up right now, and again, and again, and they're all noobs and you might as well love them because they can make you a lot of money and they're developers, too.
Your content will basically suffer from the curse of knowledge. You know so much about your platform that the only fun things to write about are the complicated things. Very respectable from an intellectual standpoint. Very frustrating if I'm the noob.
I heard some laughter. You should totally do that, it's really fun. And you'll see how different it is as you just continue to have more users. Oh, and then you know what you can do? You can email all your users and tell them that you posted that post about that page that came from that email that you originally wrote two years ago. Literally you could do that right now and you'd be reusing this stuff. It's wonderful! You're like, "I don't even need to actually write that many things. I just need to write the right things and then rewrite them in different ways enough times until they work." It's surprisingly like building software. It's very weird.
There's this other problem. I'm going to talk a lot about the psychological problems that are keeping you from doing marketing. You probably think you don't know what to do, but you're already getting marketed to all the time. You could just copy the things other people do that you like and not do the things that you don't like about their programs.
But you're really worried about being judged probably.I certainly am, every time I write a blog post. It doesn't matter that I've publish a ton of stuff. A button is sitting there, I think it's WordPress, right now it's blue, the layout that I have. Sometimes I stare at it for 10 minutes and I realize that you have to lower the bar.
Totally counter-intuitive, you lower the bars, publish it, typos, conceptual mistakes that are major that are going to get you really embarrassed. Yeah, that's going to happen.
Get good at comments because you're going to have to fix things. It's never going to be perfect, just like your product. If you wait so long that you're not embarrassed of anything, you've waited way too long. You have to lower the bar, especially for that first post.
At Twilio, something that we did when people joined the company that I think is really interesting and really just started off as me being lazy and not knowing how to manage new employees, but turned into something cool, is we made people write a post where they introduce themselves to the community. This was totally a trick. People would write this boring post, it was their whole resume and all the things they've done. I was like, "There's no fucking way I'm publishing that ever." I could just go to your LinkedIn.
It makes me kind of mad in a way that people do it, but you start to realize this is how we think. We think about ourselves first.Then we would ask them, "Turn it around. What are you bringing to the table for these customers? Why should this audience even care that you joined the company? Write about it from their perspective. They're the audience here and you're trying to prove to them that they should be happy that you're part of Twilio now."
That was always a light bulb moment for people where they realized it wasn't about what they'd done and who they were, it was really about what customers had done, who customers were and how we can make them more successful. You might think that's trite, but try to write that post. Try to write it. It's hard. It's hard to change your view.
As developers, and look, I was in marketing and now I've been writing code for the past 18 months in my own startup. I'm going to stereotype developers â€”but this is me, I'll just tell you my experience. It's a lot easier to write code for yourself and people just like you. You're like, "There must be some other people like me. I'm going to write this and I'll explain it the way I know best and I'll try to do a really good job, but it's going to be for people like me."
The truth is not everyone is like you and way fewer people are like you than you think. I think it's very hard sometimes to write for your audience.
Write that post.If you haven't written a blog post yet, that's a great one to start with.Why is your company great? What is your company going to do that makes developers' lives better? Try to write the resume version, write the, "Feature, feature, feature, feature, feature, oh and by the wayyou'll save some time." And then you'll probably turn out that's it actually, "Hey you'll build all these amazing things that change your life and processes and save you time and by the way, feature, feature, feature, feature." It's actually totally reversed.
People always talk about writing about customers, that's another really fun one. If you can't write about yourself, writing about customers is a great way to make sure you write for your audience because then you have to talk about what they've done and you're ideally at the bottom of the post.
So the first thing you'll think is â€” who's the good example right now? Who should I pick on? I'll pick on Box. I really love Box. I think that Box talks about Box too much. They actually have all these amazing customers. I don't know if anyone from Box is here. I think the crazy thing is that the minute that you flip it and you talk about time saved, like for themit's with file storage primarily and all of the connectors there. It's kind of mind-blowing.It's like, "Shouldn't this be in TechCrunch?" Shouldn't it? Didn't you actually change the world and all that fluff was just like feature, feature, feature?
You guys are the TechCrunch for your customers. You're going to write the story that nobody else is writing about them potentially. You can actually understand how they fit in that entire space.
Everyone here who has read TechCrunch is probably qualified to write a blog post because you can just take their model, take their paragraphs, flip it upside down so you start with the benefits, and then write the story. Your company at the bottom, it's still there. It's your blog, right? Your header's in the upper left corner. This is really funny that my company's logo, which has nothing to do with developers, is up here. But it's great because now you've all seen the Mattermark logo.
Even if only the last paragraph is about you guys, you're still getting that brand value. Your blog is like the cheapest banner ad in the world.
Writing about customers, talking to people like they're human, lowering the bar, everything is news, be your own TechCrunch. You didn't want me to tell you these things.
Everyone I talk to about developer marketing, and I talk to lots of people about it â€”I don't know, I'm still trying to figure out exactly what people are looking for â€”but, I still think there's this sense that it's going to somehow be really easy. The secret is that you're really running a newsroom. You're going to just grind. Everything else in building a company, you ship it and it's like it's shipped and it's great and you're like, "I'm going to build the next thing." Marketing is just doing the same thing over and over again and incrementally getting better at it every single day for the rest of your life. That is so foreign, I think, to building product. Building product should be like that.
Probably startups we don't think a lot about what our companies will be like in 20 years, but this is kind of the core of the disconnect. I can get the 80% part. I can get a blog post out, but I've got to get better and better. If I have a contest, I have to run it every week for 10 weeks or 20. I have to make sure I get a blog post out every week or more so people will expect something from me. I have to tweet every day for my company. It's actually kind of weird, that thing that suddenly it's like "manager time". You have to time block yourself for doing that. It's very unnatural.
I actually think there's a bit of a mindset shift that has to happen. It has to be okay for you to ship something crappy, incrementally improve it, and never ever, ever, ever stop doing it.
If you find something that works for example, like contests, you pretty much might be committing to contests for the rest of the company's life. That's kind of the difference, I guess. You're committing to customers from product, but it doesn't scale the way software does.
Going back to stuff you can publish, since you're probably wondering, "Okay, Danielle, you've told me I should take my welcome email and publish it. You've told me I should write a blog post about myself and then flip it around and explain the value I'm bringing my customers, maybe make my employees do it. You told me I should blog about customers." Of course, by blog, I also mean tweet and email and do all the distribution stuff. What else?
How about support tickets? How many times have you written the same answer to a support ticket? You're probably thinking, "That's my FAQ." Great, blog your FAQ. Every single question on your FAQ is a blog post and a tweet, and probably five answers on Stack Overflow and a bunch of other places, forums for your particular language or technology of choice.
Email. Publish great internal emails that you feel comfortable sharing with the outside world. Say you've launched something and it's really hard, publish that crazy email that you wrote your team at 3 o'clock in the morning, maybe edit it a little, but publish it. That's all content. People love the process of how the sausage is getting made, so sharing with them. I hope you guys are making lists.
Any communication that you do at scale. If someone on your team goes and speaks at a conference that's a blog post and a tweet and a bunch of other stuff. You have a meet-up, hire a photographer, like that guy, and pay him,"whatever you got paid," and publish the pictures on Flickr and on the blog.
Everything that you do is news for your community. It's doesn't matter that it's not news for the rest of the world, it's news in your community and your community will care about it.
Anything you do where you're communicating or connecting with people at scale could be at more scale. That's kind of the annoying thing, is it's the little things that you won't notice so you have to literally take tabs on, "What are all these different things my company's doing?"
As your company gets bigger, you have different teams so your teams are each producing news. Those are some of the bare company things I guess, but fundamentally you're probably already doing cool things like the first time you do a meetup and 20 people show up is just amazing. You should definitely blog about it. Your meetup itself is another opportunity. When you start it, kick it off.
Really, if you start listing all these things,you could definitely have a blog post every day. It just kind of builds like that.
I've talked a lot about the types of content. It's very prescriptive, I'm just giving you this list of stuff and you might be wondering if these are the right things, but you could just toss these out. Try them, test them, if they work, awesome, if they don't, try them one more time maybe and then throw them out. The reason that that matters, the reason I'm saying this, is I can't tell you, I can show you. I've tried to show with the things I've done. But my style, and I think the style with marketing to developers is much more show than tell. It's the same thing. I can't convince you right now.
Say I want to get you to adopt Twilio, I can't convince you. I can get you interested.I can get you to come to the door, to the front page of Twilio, click the Docs page probably and maybe how it works, and I can get you there. But, all I can do then is show you that it works and how it works.
Telling you doesn't make me money. That's the unfortunate and frustrating part about marketing is telling is just the top of the funnel. Showing is your product.
On that note, if your product is broken, marketing will not save it. It will just frustrate you and maybe make you fail faster which could be really good. If you're bringing a lot of people, if you're marketing finally figures out a way to connect with people, and they're still struggling and you just feel like you're stuck, there might be something else that's wrong. But, you could use marketing to find out what that is because you'll hopefully be reading the comment sections, feedback, emails and support.
Sometimes I think people think hiring marketing is a silver bullet. Honestly, my success at Twilio comes down to the company having an incredible product. I feel very fortunate they asked me to join them very early and ultimately all I wanted to do was make sure that I didn't do a huge disservice to a great product by giving it crappy marketing. It's still ultimately about making the product great.
This is like a huge list of stuff to do. OH! In the voice. If you respect developers' intelligence, they'll respect you more. That's a huge problem with marketing language is it makes you feel stupid. What's a good example? I used to have so many. Consumer marketing does this all the time, it's like the "sex sells" stuff. It totally works, but if you try that with developer marketing, you better watch out because Reddit will get you because it's offensive. It's already offensive to your intelligence as a consumer, but you're just programmed to accept that in a movie or a television program â€” you're going to see ads with the standard way of selling to you, manipulating you.
Developers are really good at knowing when they're being manipulated. That's a unique problem you have. You can't do some of the typical things which is why if you hire a marketing agency that's only done consumer stuff, or a PR agency that's only done consumer stuff, there's a really good chance it's not going to work out because they are thinking about people as a group. They're thinking about stuff that works on people as a group, and manipulating people as a group, like cows.And developers don't like to be cows, or cats, by the way.
I'm almost out of paper, but I feel like there's so much more to say. We're going to have a long Q and A session. By the way, I'm happy to be very specific or very high-level or whatever. These are just the things I thought about this morning when I wrote this for 20 minutes. I wrote it twice,
"Don't make people feel stupid."
That's sort of the same thing as respect their intelligence. This is the noob thing again.
Say you have Troll come after you onHacker News in the comments and you totally want to just rip this guy a new one.I think your only answer in every single situation is to be classier. The developer community is full of really bad actors in online forums who are anonymous and you are not anonymous when you're talking about your company. They will find out who you are and it will reflect badly on your company.You don't get to be a troll, you have to be a troll slayer. Troll slayers have to be above reproach. That's part of the not making people feel stupid. You don't get to do that.
I think that's way more fun from an internet chat room culture standpoint, is just to smack down people who say negative things about your company, but you don't get to do it anymore. You're basically corporate self now, just a little bit, not like "the man" corporate, but people are going to find out that you represent your company.I swear things you say will come back to bite you in SEO.
That is everything I wrote here except for, "Just fucking do it." I'm happy to talk about in the comments specific things I've done, specific things that have happened that I've blogged about or totally random things that I'm not even thinking about.
The bottom line with developer marketing is they're people. You're trying to convince them of an idea so you can fill their headspace.
They've got this precious time, they're not coding, they're listening to you, so use it wisely. And think about how to get rejected at scale then you'll have customers and you'll have more of them. Then you can recycle all your stuff and do it again next year and then it'll look like it's genius and it's new. That's my talk.
Q: How do you measure success?
A: Well, if your product does make money, then ultimately making money is definitely very important. But some of the things that you're going to do early on are super frustrating because they're not very measurable. I think you should start with things you can measure just because it's frustrating to do things like net promoter score, which is a little more soft.
I think you should look at web traffic. I think you should look at how many times you got mentioned on Twitter. I think you should look at whether or not people comment at all on your launch, on Hacker News, on threads where your company is mentioned oryour technology is mentioned. I think you should have an IRC room and people should broadly know it's there and you should be monitoring the levels of how many people hang out in there.
You can do that by the way, you can screen and you don't necessarily have to have a separate client. You can be doing it on your phone. It doesn't have to be you answering every question, just monitor the level of people helping each other. Anything you can quantify really.
The thing is if you faked all those things, if you made those things go up: If I do a TechCrunch launch tomorrow and then I email 20 friends and I'm like, "Hey, will you write a positive comment?" This is totally gaming the system, but everyone's doing that. It actually works. People go and they see there's an engagement here and then they want to engage. Part of the reason to monitor this isn't just so you can be, "Ha ha! I've got 20 comments!" It's still someone else will be, "Ha ha! They've got 20 comments!" and they want to comment.
I actually would avoid measuring revenue because it doesn't matter, in the very beginning stage, whether you made five or ten thousand dollars. Unless you're literally running out of money and it does matter, like paying bills matter. It's sort of confusing, with the exception of usage-based products like APIs that charge per unit, it doesn't necessarily tell you a lot. You had one $5,000 customer, now you have two, but there's always these other people over here you're not talking to. That's only true in the zero to six months part.Beyond that, classic marketing measurement stuff applies, like: top of funnel, middle, money.
Q: How do you incentivize your team to produce content?
A: I think you have to make it kind of addictive. It's very motivating to get a blog post that has a lot of traffic and a lot of engagement just from a human kind of "I want to be in the spotlight for a moment" standpoint. That doesn't work for everyone, though. Part of it is you just have to make it part of your culture from the beginning and make sure people understand that they're the best ones right now to talk to your customers. No one sells it like a founder. No one sells it like a first 10 engineering team.
A lot of that comes back down to, "I feel like I'm going to be judged. I've never done this before," and maybe making it safe â€” creating an environment like that blog post, where they're heavily edited, where they get a lot of feedback, where everybody does it.
At Twilio everyone had to build an app when you joined, and you have to present the app to the company. Interestingly, it's kind of the same thing as if you present it at a meetup. It's kind of like every one had then done at one time. If you ask someone to present Twilio later on, they're like, "I've kind of done that before." If you can make it part of the internal culture, then maybe you can make it come to the outside when you need to call on someone to help.
Also, have the developers write the documentation themselves. Don't give it to a copy editor because the copy editor doesn't know how to code. Generally, it's not very good. Have them help you clean it up, but developers should write it.
Think of, you know how Amazon does that "write a press release first" thing for product? You can do "write the documentation first" for new developer tools. You'd learn a lot that way.
Q: What's the ideal length for a blog post?
A: The shortest possible length to get the point across is usually good just because of attention span. One of the challenges for developer tools companies is that there's usually code in the post â€” a good post I think should have code in a lot of cases â€” then they do get long very quickly. I think it's not a bad idea to do the tl;dr. A lot of places, that would be considered not good form from a writing perspective, like in the news. You could basically do a little outline at the top and even anchor link people to things for super long posts.
It's more about the goal. How are you going to measure that the people that you wrote for, or say it's like a How Toor example code, how are you going to know that that actually got done? Are they going to fork something in GitHub so you can see it? Are you going to ask them to post stuff back? How are you going to know that it worked is probably the more important thing. It could be super long if it's really good, it would be wonderful. I guess that's not helpful because it's basically saying,
"However long it takes to get people to do something is how long it should be." That's probably the case.
Q: What content makes the most money?
A: Can we start with that one instead? I'll get you the other ones, too. The content that makes the most money is case studies. You have to write them. I hate writing them, I won't deny. Of all the content, I just find them super frustrating. However, the reason they're frustrating is because they're so much more rigorous. What's going to happen with a case study is it's going to get read by someone in a big company and they're going to use it to decide if you're legit or not.That's the least popular, but the most monetarily awesome.
The most popular thing is something that gets on Hacker News so it usually has some combination of intellectual interest and something controversial. It's true. So if there's something going on in the community that you think is important, you can calm it down in a meaningful way, then yeah, it's going to be popular. How will it reflect well on your brand is a whole other question.
The best piece of content is the piece of content that makes people think more highly of your company than they did before. That could be a lot of things. I think it's more about what your strengths are.
At Twilio, I think our strength was contests. I think these contests were really fun and developer contests at that time, there weren't a ton of them, but now they're everywhere. Same with hackathons, by the way. Hackathons were not a thing when we started doing hackathons. Now hackathons are everywhere! I would not do a hackathon right now. Maybe I would, but I'm not doing it every day. It's usually changing all the time.
It's usually the underappreciated thing where you can be the best at it, is the content that rocks.
I will say one caveat to all of this is I would not do video content at all. It's super, super hard to produce it, it takes a ton of time. Look at this incredible setup these guys have here. This is what it takes to make really good videos. Until you're ready to really commit, and have a team and have the gear â€” usually it just ends up looking horrible.
Go Google my name on YouTube and you'll see a bunch of stuff I made early on. I look back and I'm like, "I really wish I had control of the Twilio accounts so I could take that down." I should probably take it down, I probably could.
Video was very hard. I used to think I was really good at screencasting. There are people out there who'll do it for you and make it look really good. Everyone says, "I need a video on the front page of my site!" Please don't make it yourself.
Q: How do you avoid creating monotonous content?
A: Stuff does get monotonous, but that's not an early stage problem. The early stage problem is generally just having it. Here's an experiment:
Tweet the same thing twice today. Find something that people will actually comment or retweet, find something they engage with.
Do it at 10 o'clock in the morning and then do it at 4 o'clock in the evening and see what happens. See if anyone tells you. Tweet the same thing every day. See how many days it takes before people actually notice. It's amazing!No one is looking at stuff at the same time. Take all the links you tweeted for your company over the past month and tweet them again, seriously.
People are just busy and they're looking at lots of things. I think it's very hard to be monotonous. In a way, you kind of want to be consistent and there's that fine line, so you're probably not there yet.
Q: Do you have any experiences with content that wasn't well received, and how did you handle it?
A: I wrote a blog post about all the VCs that don't have any money, right before I started my company about helping VCs make better investments. That was definitely the worst post from a "pissed off people" perspective. The really good thing is that when you make people angry, that means they're thinking about you. Yeah! They weren't thinking about you before, but they have a strong opinion about you now! You got them angry. Basically you want people... this is totally, "Hey, I can't HR violate people who don't work for me."
You want people who either want to sleep with you or hate you. The middle is stupid. The middle is wasted. Seriously, no one remembers the middle. The hate one is, I think, easier.I don't know. You get a lot of people to hate you and then basically you just engage them individually. You talk to them and some of them will still hate you and some won't.
In that case, I ended up having about 100 phone calls with various investors who felt it was their job to educate meon the industry, which was awesome, and they definitely did more than I realized. I know way more about VC now. I started a whole company around it after I did that. I mean, I'm not dead. No one put a hit on me and I frankly think that VCs are way scarier than developers. I don't know, it's like you don't die, you just turn off the internet and go back to being a normal person â€” take a shower, take a walk and do things for the next 12 hours and don't look at your computer and then go deal with it.
Q: What is too much content?
A: There's some benefit to being consistent. If you are feeling very loquacious, and you write a bunch of posts, you have 20 posts and you're like, "Ah! I just want to post these all today!" You're probably going to get a pretty quick diminishing return, you might as well just schedule them out over time. People like to know what to expect. If they don't expect 20 posts from you, and then you suddenly post 20 times, they're probably not going to come back to your site 20 times that day. But, if they learn that there's something new and interesting every day, there's a good chance they'll check your site once a day.
Unless you really need some massive traffic spike, I don't think there's a huge benefit, and then you've kind of fired all your bullets.
Everything builds on each other so that you get this incremental increase in distribution every time.
If I read a great post from you today and I'm looking for you tomorrow, maybe I didn't retweet that first one because I've never heard of you before, I just read it and I forgot. But now I've kind of already warmed up to you and the second one I'm like, "Oh I really like her! Man, two posts in a row that I really like," and I'm like, "I gotta tweet this to everyone!" By the third one, I'm seeing your posts in my feed and I might even just share them without even reading them because I trust you now. I trust that you make great content. It's sort of you'd be missing out on the opportunity to develop that with your readers if you did that all at once.
Q: Can you discuss the value of using different channels? For example a blog post vs. an email campaign.
A: They say in marketing, in general, it takes seven impressions to turn a person into a customer. Some people hang out in certain channels a lot. Hacker News I read every day, but I also get kind of fatigued around certain topics in there, and I'll stop reading certain threads.
The value of multiple channels is you need different opportunities to connect with the same people.
There's some overlap of people who are going to multiple channels. If I wanted to reach a developer, I'd probably make sure that I was on Reddit, Hacker News, Stack, our blog, Twitter, Facebook, LinkedIn. Very quickly it adds up and I know it's not because I know for sure that I'll get them, but there's a chance I'll get two or three impressions.
Do you ever get that sense that something's blowing up, like something really popular, and you can't even totally put your finger on why, but your friend told you about it and you saw it on Twitter, then you saw it on TechCrunch, then you saw it on Hacker News. You can manufacture that by just being in all those channels. That's what that does, is it creates the effect of surrounding.
Another really good thing to do by the wayis to follow people on Twitter. Every single time you follow people on Twitter, it generates an email saying, "Brand followed you," with your logo. That is free advertising. The thing is, to do it very strategically so that people feel like you're just everywhere, listening to everything, sharing things they care about. That's what channels can do. And then you seem really big because they're like, "How can these people be everywhere?"
Retargeting is the best one. I feel like we retargeted once and our ads were on the front page of the New York Times. People were like, "You guys must be huge. You must have this huge budget to be on the front page of the New York Times!" I'm like, "I think I spent $500 onReTargeter.com, but thank you." That's what it does, I think.
Q: What other ways or ideas can you utilize content to reach developers that is more likely to turn into a business transaction?
A: One cool thing is that you're going to start thinking of all the business use cases for your company and then be tempted to go build them. You know how when you have lots of startup ideas? You have lots of startup ideas and you're doing this one, you're like, "I'd better tell all these people all these startup ideas because I need someone to build this so I don't accidentally go off and make this my side project and then build it, too." You can kind of do the same thing with your own startup.
You know better than anyone the businesses that can get built on the platform, so just write the recipes for them. Usually, your recipes will be really rudimentary and they'll be really basic.
We did a lot of stuff that was like, "Do blah blah and 10 lines of code," or "Write Google Voice in 50 lines of code," and then people take it much further. People are really bad with platforms initially at figuring out what they can do, even though you've opened up something really cool to them, it's just a little bit hard to connect the dots. The more you can do it, I think that's really big. I wouldn't worry about money though directly as much as just use cases.
I'll give you guys one example:GroupMe was built on Twilio and I was at the hackathon where they were building that and group messaging seems really cool, but like all consumer things, I was like, "This just seems like a toy." It turns out to be an awesome business, but you don't always know. Sometimes it's good to just power the toys and let the hobbyists decide what's exciting to them.
Q: What are your thoughts on having a live chat on a company's webpage?
A: I think it's great.The one hard thing is sometimes staffing it. If you're very popular, you're going to run into a problem where you literally can't handle the number of channels. I think IRC is a better place to shunt people off to. I think chat is great for support, so key places where people could fall out of your funnel, it's good to have Zopim or Olark, or one of these tools.
I do think that you want to try to get your community helping each other as much as possible because that's the only thing that's going to really scale for you long term. Figuring out the appropriate places for chat is really crucial.
In the early days though, you want to talk to everyone. It might be fine if you're just starting and there's only at any given time there would be only 5 or 10 people on your website simultaneously, then it's probably great.I used to use that and just say "hi" to every person. It would just pop up "hi" and they'd think it was creepy and then we'd have this great conversation. If you're social like that and you can be friendly and helpful over chat, it's pretty awesome. But it doesn't scale.
Q: What are the best practices for getting emails?
A: I would automatically opt people in and then I would make sure to build good, segmented lists. Keep your lists for your drip campaign separate from your newsletter. If you're producing a lot of content, maybe even go further and say, "We have this really important newsletter we want to make sure everyone reads. It's about features versus this other community newsletter that is separate."
Getting them, I would automatically opt them in, at least at the beginning. If you get a really large unsubscribe rate, you might need to reevaluate that, but people tend to expect to get helpful content. And if the emails are high quality, you won't have a problem.Another thing about high quality is people are really weird about perception versus reality with email. If the production quality of the email is high, people will assume it's high quality even if it's not. Use MailChimp or something that has nice templates and you can probably fake it a little bit until you really get to your groove on content.
It's really uncanny if you doan A/B test of a really basic template versus something that's a little shinier and same content, you'll get different everything â€” different click-throughs, different unsubscribes. Everything can be A/B tested, even the things that don't seem like they can.
Q: How do you make sure your content is relevant to developers or your audience?
A: Other developers are also building businesses so a lot of these things are universal challenges. They can make good content.
I think the key is that if the person inside your company really wants to write it, getting someone to write something that they don't want to write if very hard. If someone's really passionate about engineering culture or maybe they've come up with a really good deployment process, or some other internal thing that they're really proud of, giving them the opportunity to be platform to show that off, is going to be: 1) great for your recruiting, 2) it makes them happy and proud as an individual and, 3) you don't really know if it'll hit.
Sometimes those posts really take off just because no one's talking about it or it's a hard thing.I think deployment is one that's endlessly difficult for different organizations, all new tech coming out for that all the time.
People love talking about how the sausage is made, so yeah, I would let them write. The only thing is if it gives away secrets which you guys should ask me about. I'm just going to ask myself a question.
Q: What don't you publish?
A: You should be really careful to decide where the line is of what you don't talk about.
At Twilio, one thing that Twilio does not talk about is the stack. Occasionally, they'll pull back the curtain and explain certain parts of how Twilio is built, but generally, they're pretty closed about that and there's a lot of very strategic and important reasons over the long term.
One of the challenges is everybody inside the engineering team knows exactly how everything is being built. You have to make sure you have a clear conversation internally about what you do and don't want to share. If you're really building IP that is groundbreaking in some way, you probably do have the defensible things you want to not be publishing about broadly.
You should assume your competitors are reading everything you're publishing.
Q: How candid should we be with our opinions? How can it affect the company?
A: His question is should he voice his opinion that something is stupid or be really blunt or brutal about things? It's hard because it's nice to be able to just be free with your speech. It's the wonderful thing about the internet. But yeah, it can do damage to your company. Especially if you're bad at arguing. If you tend to use ad hominem attacks, or argue from intimidation, or use a lot of the lower levels of argument, you're just going to get ripped apart by smart people. Don't even do it.
However, if you think something is actually really bad â€” bad for the ecosystem, unethical, terribe, like maybe the NSA â€” then I think you can write about it. I think you can put your name on legislature and you can go for it. But you have to realize that you will be remembered forever as being against that thing. Just like how our government officials are remembered for their record, you're going to have to be able to stand behind it. Just make sure it's worth the mental energy.
There's definitely things worth taking a stand on, but you're going to have to basically be the guy who takes a stand on that for a very long time.
For example, emacs vs. vim and being an asshole about that, probably not worth it at all. At all. Or even just general religious words in development are usually avoidable things.
Q: What voice should I write in?
A: I would just write in a personal voice always. The company voice becomes an amalgamation of personal voices. The company voice is sort of saved for very special things like announcing new product or new features.Even when Steve Jobs gets up on stage and he's like the famous announcer, he still speaks in his voice. It just happens to become Apple's voice. But it's a human voice because humans like to be talked to by humans.
The only exception would be when bad things happen and you don't have the personal voice to be authoritative enough. For example, your site's down or you lose people a lot of money, security breach, those things, you almost need to use the company voice because it needs to be very, very clear. Those should be exceptions cases. Crisis communications is an interesting question because you do produce content around that.
You're downtime page is a crisis communication tool, your blog, other channels become distribution for that, that might be an exception to what I just said in terms of the voice. It kind of depends on whether or not the CEO, for example, has had a voice in the community and is respected. If they're kind of behind the scenes, which is very common frankly â€”they're building product, they're coding, they're not really putting their voice out. Them stepping forward can have two outcomes:either they're really good at it and it reflects well on the company or they're very uncomfortable and it would be better to use the company voice. That's a choice you have to make.
If you have more questions about crisis communication, I'd be happy to dig into that. It's certainly something you'll face sooner or later.
Q: What's the best way to use contests?
A: Contests are interesting because if you're not specific about what you want people to do, they just don't know what to do. You have a platform company and you say, "Whoever builds the coolest app, we are going to give you..." (we gave away netbooks, that tells you some sense of how long ago that was) "We're going to give you ... some kind of, like a Pebble Watch or something." The problem is with contests two things: one, you never get all the entries until the night before, so it's super stressful the whole time you're running it. With the ones that are broad, the entries are usually bad.
You want to have things that are themed, and then the prize should connect to that. Like: let's do a contest about wearable devices and health, then have the prize be a watch. Or: let's do a contest about pets, could be a category and then the prize is a donation to the SPCA. Getting really specific is really good. The other thing is you can seed it. If you know someone built something cool that is deserving of a prize, then basically go ask for competition with their thing. Use them as the example. If no one comes along, you can give them the prize. That way you have a winner.
The worst thing is to have a contest with no winner, that's really embarrassing. I think that we merely avoided that sometimes and you always make things look as good as you can to the outside world. You're trying to always make your community look super vibrant and sometimes you just hit on the wrong thing and it just doesn't work. You kind of have to be prospecting for winners and being like, "Hey, you should totally enter our contest!" It's not just like, "Here's the contest. See you in a week." That's a big thing.
Trends work really well. To write good content, you need to read a lot. I'd be reading and whatever things developers are talking about a lot are usually the ones to hook into. I think it would have been really funny to do a Soylent contest recently. I don't even know how that would work, but it would be hilarious because it's taking up so much mindshare. Figuring out how to hook into trendy things is generally the way to go.
Q: Was there an internal revision process? Do you rely on an editor?
A: I was a terrible editor. You get really busy. It's better if you can trust someone to just write their piece and edit themselves end to end. Obviously it's nice to get feedback, but the reality of a startup is it's really small.
I think it's nice to build an editorial group of friends outside of your company who can edit you. And it's also fun for them to be able to see stuff early as you grow as a writer.
I think it's very hard to farm out topics to other people, I think they need to write about something they actually care about. Generally, they like to write about things they pick for themselves. You have to convince them that they pick them for themselves or you have to let them pick them.
Eventually build a content team and they'll do it all and that'll be awesome. In the meantime, it's probably just you for the first year or so â€” you and maybe a couple of people on your team who just decide to do it together.
Q: Can you force people to write content?
A: You can't force people to write content. That's like the hardest thing. You can't force people to write code, you can't really force people to do things in general in startups. Yeah, it doesn't work at all.
You have to show the payoff. It has to be fun somehow. It has to make them feel good about themselves, reflect well on them.
As we built the evangelism team, I feel like we kind of became more like a talent agency and we had these amazing people and they chose to work for us and they already brought a lot of their "interestingness" to the table. You're just trying to make sure you've given them a stage to stand on that's actually worth it. That's pretty hard, I think.
You can't force them, for sure, and I think you want to basically pay attention to what they do that works and then try to get them to do more of the thing that works.
Q: What do you look for in a good content or marketing person?
A: Great command of the English language is still so hard to find. I feel like I read so many applications that were so bad â€” and by the way, I dropped out of college â€” so when I saw people graduating from great schools with horrible essays that didn't make any sense. That's number on. Using English. It doesn't even have to be proper. It's not like I want people to write business English, I just want them to write English that makes sense. That sounds so silly, but that's 80%.
I guess for developer content, they should probably write decent code, too, right? You don't want them to go out and publish code samples and embarrass you,now that part is quite high. Decent code that you can understand, decent content. John, I'm like totally complimenting you here to make up for before.
An opinion. Another huge problem is that I think the people who are most successful in building a voice and a following have their own world view on how things should be done. It's not just towing the party line, there's an aspect of being confrontational and getting out there. John could talk about this a lot more, but he was promoting REST in the dot net community, which I think was a little bit different. I think there's an aspect if you're looking for people who don't fit exactly, they're like the tall poppy in some community. Then I'm sure all the other stuff is just getting it done. What do you think?
Commentor (John Sheehan of Runscope): The other two things are the ability to create a narrative even when there isn't one.
People will tell you interesting things about their companies. You sometimes have to create the problem for them so you can turn it into a story that's more interesting than just the problem they solve.
And then empathy, understanding what you're writing about, what it meant to the person that you're writing about so that they're willing to go brag about it to their other friends because it feels like they wrote it when you wrote it.
Danielle: What he said.
Q: What resources or blogs do you use for inspiration?
A: I wish I could tell you that I did that. I tend to read books for that from a writing perspective. I read tons of blogs, but for inspiration, you need storytellers and I just feel that it's very hard to find that online. I also write very long form, for anyone who reads me, I write 1,000 plus words pieces generally now.
For you though, for what you're doing, I think what's important is to read the people your community trusts and respects. That's going to change over time. It's usually a combination of developers, designers, marketers that don't sound like bullshitters, it's a company-building people. I think it's very actually hard.
When I get in a writing rut, this is really silly, I don't even know if it's worth saying, I always read Jane Austin when I can't write because I find that she is able to make a story out of nothing, like John said. She takes all this dialogue, it's an amazing skill, she's like the best gossiper ever, but she creates this incredible tension around these very simple things that are happening. It's kind of like when people tell you what their startup does and sort of seems boring and there's no story. And she makes the story. She commands dialogue. I hear dialogue in my head as I'm writing.
If you find something like that, it's less about the subject matter and much more about how it makes you think differently. That's the best one I've found. I think sometimes the really good writing out there is still the best stuff for becoming a good writer, not blogs.
Q: Is it better to have a main source for all of your content or use different channels for different kinds of content?
A: First, I think you should have a main source because it's more efficient to have one place that you're going to work the hardest to curate of all the places. And that's the place that at the end of the day if you have to shut down all the others, or if you land one person, that place would always be really good.
I think that place should be on your website with your brand, your complete ownership and control of it. It's very, very, very important. Blogs generally do that for most companies early on and then eventually, the broader website is actually the place. By the way, no one asked me who owns the website and you probably all think the developers do. This is kind of to your question.
Your website is your marketing.
Your product is, for developer tools, usually not the website itself. It's usually something else. It's a service. It might have a portal where you log in and you check how much you're paying or how much you've used or where you get help. The website is entirely a marketing vehicle. At the beginning, it'll feel like everybody owns the website and there won't be a big difference.
To the extent that you don't own your website, you will be hindered by your ability to build that place that everyone comes for content. That's your legacy, that's like your library of Alexandria for your company where all the knowledge is ultimately going to go back to.
Twitter's just a channel. GitHub's just a channel. GitHub might be more than that because you might have actually great code there. At the end of the day, if GitHub was gone, you'd put the code on your site. If Twitter was gone, you'd use another channel. All these things will just pass and there'll be new things. Your website could potentially be there like a physical space almost for a really long time.
Q: How do you strategically place yourself to communicate with developers?
A: I think that what I said about surrounding people so that they can find you in the channels they like is pretty important. They shouldn't feel forced to come to your site, they should just feel like they encounter you in the places where they already are.
I think another thing I was chatting with someone earlier tonight is post things in places where you can help people. On Hacker News, one of the problems is I go to Hacker News to goof off. I don't go there to answer questions or solve problems. But I go to Stack to fix something that's not working in my code or to discover new tech or answer some specific question. Orcora, too, is like this. Those places are a lot of work, a lot more work than Hacker News because you're just posting a link and then (PWOOM!)
That's another huge piece of it is making sure that when people come there, that their intention is somehow connected to what you're delivering. Otherwise, the quality of the people that come through that channel is just very low. Does that help?
Q: Do you have any case-studies of companies that have a good developer marketing strategy?
A: I think the ones that you can name are the ones that you're remembering because they're everywhere: GitHub, Box, Dropbox but also because they have consumer products so that helps them a lot. By the way having consumer products is not a terrible idea for getting developers, even if it's free. Tengine does a really good job. Urban Airship does a good job. Sorry, they don't roll off the tongue like they used to. Those are some of the ones, you named GitHub, obviously I think Twilio does a good job.
I often think about that more, but the truth is that it sort of only matters when you need it. That's why I don't think of them, and then I'm thinking of toolsI'm using. I'm using Mamp right now, and I'm using Coda. How did I find those things? How did I pick Coda out of all the possible options? It's sort of more about they're good when I needed them and now they just kind of fade into the background of my toolkit and they're just part of my life now. I'm probably more active with those tools than almost anything else that I use, but I don't even think about it anymore. They're just part of my life.
I logged into Twilio today and bought some phone numbers, actually, for a new employee. But, I only login to Twilio only once a month or so because it just works. I do all my meetings with their conference line and stuff that I've got set up.
One thing is if you are trying to figure out good comparisons for yourself, go try to find how to do what you do.
If your company is like a rapid deployment environment, go imagine that you were going and you're trying to pick one. Go do all the things you think people would do to find you and go see who pops up before you. Who comes up first in search? Who's got better reviews?
That's what I would do if I was going to go try and answer your question better than I just did. I would find out what you do and then I'd go figure out how people would find you.