Microsoft Azure Insights From a Developer Advocate with Burke Holland of Microsoft
Burke Holland is a Nashville-based Developer Advocate for Microsoft. He’s one of the rare people who’s had a developer advocate position since way back in 2011, so I asked him about his path to what we now have started calling Dev Rel.
In this episode Burke answers questions like what is a developer advocate? What does a developer advocate do? And even how to become one. We also talked about finding your own authentic writing voice and how to grow your advocacy platform through writing.
Finally, I asked Burke to run me through some of the most exciting features of Microsoft Azure that every developer should be aware of including the VS Code IDE, Azure Cognitive Services, and Cosmos DB.
Ledge: Burke, good to have you, man! Thanks for joining us. Welcome! Could you give a two- to three-minute background story of yourself and your work so the audience can find out whom we’re talking to.
Burke: Sure. I was born in the summer of 1978. It was a warm day at 4:35 a.m. ─ a little earlier than expected but still a good sized baby about eight pounds and seven ounces.
I’m a developer. I live here in Nashville with you and I work for Microsoft as a developer advocate focusing on Azure, the cloud ─ to the cloud.
Ledge: To the cloud and beyond. Everybody wants to know, “How do I become an advocate?” because it sounds like the world’s coolest job. What does that mean and how do we get there?
Burke: That’s a great question. There are a couple of different questions here: What exactly is an advocate and what does it do? And then, how do I become one?
The first thing is what a developer advocate actually is because I think there’s a lot of confusion here. I once saw on Hacker News ─ which my first mistake was reading something on Hacker News.
But I saw that someone said that developer advocates are the Instagram models of technology which was so depressing because I would just make a terrible Instagram model. People on the podcast can’t see me but you can see me.
Ledge: We look very similar.
Burke: We do, actually. If I could ask God one question, it would be “Why am I bald?”
Let’s talk about developer relations for just a second. It’s sort of a new field of study or focus that’s gotten really popular in the last few years. I’ve been in this field for about eight years now back when it was called “evangelism.”
Historically, it was called “evangelism.” And if we go all the way back, the term actually comes from a guy named “Guy Kawasaki” who worked at Apple and he was the first one to popularize this idea of people who get paid to go out into the community and represent a product that’s not in a sales way.
So at Microsoft, we have this thing, sort of mantra, that we use in developer relations which is “help first and sell last.”
The goal of developer relations is really to raise awareness about the things that Microsoft makes and does specifically in regard to Azure but to do that in a way that has integrity.
So if I’m talking to someone who has a specific need around serverless, Microsoft might be the best option for them ─ but it might not.
And so, my job is to make sure that they understand everything that they need to know about the Microsoft serverless platform but also to help them make the right decision because if they’re better off on another platform, then that’s where they should go because, at the end of the day, if you force people to use your product and you talk them into using your product and it’s not what they really needed, they’re not going to be happy.
But if you help them find the right solution, what they’ll say is “I don’t use Azure but you should because I know those folks and they’re really nice and they’re extremely helpful.”
So they’ll actually advocate for you even though they don’t use your product which seems a little bit weird but that’s kind of how human beings work.
Developer relations is really all about that. It’s about being a representative for Microsoft and for Azure in the community but not in the typical way we think about which is “I’m going to sell you something.” I don’t have any quotas or figures attached to me. We, as developers, can have a very honest conversation.
Ledge: How do you get there? That sounds amazing. It’s like New Wave marketer, evangelist, whatever. There are so many things there.
You didn’t wake up in the morning fifteen years ago and be like, “I’m going to be an advocate someday.”
What’s the path? If folks are interested in that description that you just had because I think that is compelling, then what is the path to get there?
Burke: I think that’s sort of the one that everybody is trying to crack. For me personally, I fell into the career back in 2011. I went to my first tech conference down Chattanooga. It was called “DevLink.”
Did you hear about DevLink?
Ledge: I didn’t go to it but I think I’ve read smatterings about it ─ “Chattanooga, wow, cool!”
Burke: Back in the day, that conference was sort of the big Tennessee tech conference. It used to be in Nashville, then they moved it to Chattanooga and that was one of the first events I ever went to. And while I was there, I was just networking with people.
They hired me and I accepted the position not knowing anything about it; and that’s how I got into developer relations ─ sort of entirely by accident. But, for me, it seems to be a good fit because what I often will say about myself is that I’m a moderate developer so I’m good but I’m not google good.
In other words, Google is never going to hire me to come write their search algorithms. I’m never going to pass a Google whiteboard code review ever.
But I am a decent communicator. In other words, I can code but I can also communicate fairly well. And developer relations is exactly that. It’s for people who can code but they can also communicate very well. And if you could do those two things and you feel like you’re good or you’re a fair coder but a good communicator, then you would be excellent at developer relations.
Ledge: Yes, I love that because it really gives you ─ that’s very tangible. Thank you so much for that. I think it sounds like this mythical sort of unicorn job. It makes a lot of sense that it brings it into terms where like, “Hey, maybe I don’t need to be in sales or be a sales engineer or work for the marketing team. I can be an engineer where I know how to be and talk to other engineers.
You and I off-mike talked a little bit about ways to do that. One of the ways that I’ve seen you be successful at is in the writing arena. You have sort of these funny medium posts and tweets and you’ve done a lot of these neat stuff that makes it feel really tangible.
I’d love if you would talk about how our engineering friends can get better at and get involved in the writing and why that’s important.
Burke: Yes, sure. For developer relations, one of the things that is tricky about the job is that when you get into it, nobody really tells you what to do.
Every company that I’ve worked at has been like this. They sort of hire DevRel people; and then DevRel people are engineers. In Microsoft, we are in the engineering organization so we’re just right there alongside engineers who are building the products.
And the question that may come up is “What are you going to do as developer advocate?” and there’s not a lot of structure there.
So in terms of developer advocates, we think about going to events like conferences and hanging out and doing talks and drinking beers and basically being an Instagram model of tech.
That is definitely part of the job. But there’s a giant part of the job that occurs when you’re not doing those things.
First of all, you have to have enough credibility to get on a stage to talk about any subject. That’s not to say that you have to be foremost expert but you do sort of have to establish yourself in the community as being someone who has opinions and thoughts about certain subjects and maybe are looking at things in different ways or has dug into on specific topic.
And one great way to do that is to write. Writing is one of those things where it’s kind of like jogging or going to the gym. Before you do it, if you don’t do it a lot, you don’t want to do it, number one; and then, number two, you can barely do it.
So you go to the gym and you can’t lift anything because you haven’t been lifting or you run and you only make it half a mile before you feel like you’re going to die because you just haven’t been running.
So writing is the same way. It’s just a muscle and you have to flex it over and over again. But it’s one of the best ways to begin to engage in topics with people at scale.
If you went to a conference and you keynoted a big conference ─ the biggest tech conference we can imagine. Let’s say, you did the keynote at OzCon which is an enormous conference. And let’s just go on the high end and say there are 5,000 people in the room; that’s a lot of people.
You can write one blogpost and get 10,000 people to read it a whole lot easier than that; and anybody can do that. You don’t have to be given a keynote stage. The power of that cannot be understated. The beauty of the Internet is that everybody is now a reporter. Everybody can run their own media company.
When it comes to writing, the advice I would give people is to just sort of do it. And there are a lot of tips and tricks that I give but the ones that I think are the most important are ─ first of all, “Just do it” would be number one. The second one is to just get started writing about something ─ anything ─ and just write.
A lot of times, people are like “I’m not sure how to start this article” to which I would say, “Just start writing. Write the whole thing and then go back a second time and just take things out. Just take out all the stuff that sounds superfluous or just isn’t good.”
You’ll be surprised at how much of a coherent article you can get just from that process.
Another trick that I use quite a bit in writing is to bring in pop culture references. The more you write, the more you figure out your voice; and your voice is sort of “What do you bring to the conversation that’s kind of unique?”
Everybody has their own tone. My tone tends to be extremely tongue-in-cheek. So I use a lot of pop culture references, a lot of self-deprecating humor because that’s sort of my niche. But, then, you have people like Addy Asmani who works at Google who writes these huge long-form technical papers, and that’s his niche. That’s what he’s very good at.
So there is no real right or wrong way to write. You can be overly technical or you can be overly entertaining but you just have to sort of find where you fit.
I use the technique of using pop culture references a lot. I’ll use song lyrics. I’ll use quotes. I’ll use memes which are extremely popular. Yes, you can still do that. I use Twitter a lot so I’ll remember tweets or I’ll highlight them and I’ll quote those tweets in my posts.
But it’s just being able to pull from the world around you to write something and then make it so that it’s relevant to people and it’s something that they can engage with.
And then, the last tip I would give is that everybody out there has thoughts about things and they think they’re the only one who thinks that. So they may be working with a product or a stack or solving a problem and think, this isn’t right or this is not good or this is messed up or this is weird. How come nobody else is pointing this out?
And your general knee-jerk reaction to that is to think, well, everybody else has already figured this out. I’m the only one who doesn’t know.
That might be but everybody out there has this perspective on things and I would say that anytime you find yourself in a spot going, what in the world is this? that you think about turning that into a blogpost and writing about it.
One of those popular posts I ever wrote was a post called “OAuth Has Ruined Everything.” And it was basically just a rant about how terrible OAuth because I kept building this authentication mechanism using and using OAuth which is a spec ─ it’s not a specific product ─ and thinking, this cannot be the future.
But nobody else is saying anything so it sort of makes you feel like, as a developer, oh, I’m dumb or I don’t know or I’m not good because nobody else is struggling with this.
But I guarantee you, you’re struggling and there a million other people just like you who are struggling waiting for someone to stand up and point out and go, “Hey, this sucks and is no fun. Maybe there’s a better way to do this.”
Ledge: It speaks a lot to the instructions that I’ve gotten in speaking and talking. It’s just going to be about authenticity and sort of this open sharing and a little bit of vulnerability. It’s just like, well, I might look dumb because if there is, in fact, somebody out there who already knows the answer, what am I putting myself out there for?
It’s the stage fright, the anxiety thing that, I imagine, takes a little bit of time to get over. And you’re going to write and say things that just fall really flat. Your delivery, sometimes, is like, wow, that sucked!
However, keep at it. I think the discipline is really ─ it’s not that “Just do it the first time.” It’s just “Keep doing it.”
Burke: For sure, absolutely! And to offer a bit of encouragement to people, a lot of times, we’re scared to write or to put our opinion out there because we’re afraid that someone is going to blast us in the comments or they’re going to quote us and say, “Look at this stupid article that was written. This is the problem with everything.”
The thing is, the technology industry has this sort of weird issue where it’s kind of like honor culture but the honor culture is more of trying to one up each other on how smart we are.
And that sort of breeds this environment where people want to call out or nitpick everything that you say or do.
So if you just go into it knowing that people are going to do that, somebody is going to blast you. It happens to me all the time. And just to keep in mind that that person who blasted you might be having a rough day.
They might be really struggling at home or they could be in a relationship that’s breaking up. They could have a child that they’re struggling with. I mean, there are so many different things that affect people and to just sort of view people through that lens and respond to those folks with “Hey, thanks so much for your input; that’s a unique perspective” that I found, at least, in my career of doing this for eight years, everybody softens up; and everybody is kind if you will sort of take the first step to do that.
All of that is to say that you’re not be afraid to put it out there, and then just recognize that there’s always going to be someone who disagrees. There’s always going to be someone who thinks it’s a bad idea or it’s a bad perspective.
It’s okay. It’s totally fine.
Ledge: How has over the course of 8 years if you look back in the old work, how has your approach and your voice developed? And has it trended more to a different Burke who writes and presents than in real life or has it trended more to the other direction where your craft has started to look more like the real you?
Burke: I would say, in the beginning, I started out trying to write very technical pieces and I think that maybe a lot of us feel like we have to do that like I’m going to write a post on OAuth so I need to know everything to know about OAuth. And I’m going to break it down at a sub-atomic level and explain all the inner workings of it.
And what I realize is, number one, that’s not really who I am. I just don’t care that much.
There is a person on YouTube ─ all they do is videos of glitches and bugs in the game Paper Mario. I don’t know if you’ve ever seen that. But this is a guy who just is obsessed with Paper Mario and he has broken it down at the subatomic level.
If that’s for you as a developer, that’s great. For me, that was not me. What I tended to be fairly good at was to describe what is not a very deft problem; it’s just sort of an issue, and then to talk through that issue in a bunch of different ways but bringing sort of the perspective to it of ─
My voice when I write is kind of like “I’m a bit of a dingy developer and here’s how this looks to me.”
And so, what that allows me to do is just say and do all sorts of dumb things. And it’s okay because I’ve already sort of subtexted everything with “Hey, I’m not really that bright so here’s what I think about this.” And then if people come out to me, I can say, “Look, I told you up front I wasn’t really that smart.”
But in my experience, there’s always a ton of people who have always been like, “Man, I’ve always wondered about that.”
So my voice has definitely just moved towards being okay with that and I’m not trying anymore. I’m not trying to be somebody I’m not. I’m not pretending to be super technical or an extremely brilliant developer. I’m not Linus Torvalds. I never will be. But I’m totally fine with that. And there are so many developers who are just like me.
So my stage presence is much the same way whenever I do talks. It’s that same sort of persona. I don’t want to say it’s humility as much as it is just a certain level of self-awareness and not placing my value on how good a developer I am.
Ledge: That’s good advice for everybody. Before we run out of time, I did want to ask you ─ gosh, we’ve got a tremendous amount of inbound demand and developer demand for the AWS stack. And there’s Azure over there doing some amazing stuff.
I keep up on the industry news as much as I can in this sort of insights role that I have.
Just talk a little bit about what’s available there because I do want to make sure that everybody is out there giving all the tool sets a fair shake to solve the particular problems that are facing them.
Burke: That’s a great question. Sometimes, you’ll hear people say, “All clouds are the same” which is to say that there’s a lot of the same feature parity across clouds. So if you look at GCP cloud platform, Amazon, and Azure, you’ll find things like hosting; you’ll find AI platforms; you’ll find serverless.
Some of the things I think Azure does really well are ─ first of all, Microsoft makes VS Code and VS Code is just an amazing editor. I’ve written a lot about it.
And so, they also make extensions for VS Code that allow you to work directly with Azure from inside the editor so you can control your hosting. Your can write serverless functions. You can debug all that stuff locally. You can control your databases. You can write your queries. you can do all of that inside of VS Code.
I think that the advantage Microsoft has there with making the editor and also making Azure allows them to provide just an unparalleled level of integration into Azure services. That’s one thing that Azure does really well.
Another thing that they do quite well is they have something called “cognitive services” which is a set of REST APIs for adding in artificial intelligence to your projects.
So if you had something like the examples that we, sometimes, give or ─ say you had a comment system and it was global and you just received comments are all over the world from people buying your products and they come in all sorts of different languages, there’s an API that you can run against that that would translate everything into whatever language you needed and will do a sentiment analysis to tell you which comments are potentially negative and will also pull out any keywords that you might be looking for.
Perhaps, you’ll be able to mind that and figure out that a lot of people are complaining about your search functionality on your website where you, otherwise, wouldn’t have known that because you have a million comments that nobody has the time to read through.
So these are things that you plug into problems that you already have. I think one of the misconceptions about AI is that it’s like something you start over and then AI does the whole problem. That’s not really how it works.
How it works is you have a problem. You’re solving it in a lot of different ways, a lot of different pieces ─ your code, some database, some reporting.
And then, there are some problems that you can’t solve because you just have too much data or it’s too complex. And that’s where you plug in cognitive services. And they’re just REST API so anybody can call them, That’s another really neat thing that people should check out.
I’ll give you one more thing, and that would be something that’s called “Cosmos DB” which is a noSQL database and what’s really interesting about Cosmos DB is that it’s on a global scale.
So Azure has the advantage of having so many data centers all over the world. I think we’ve got the most.
So Cosmos DB helps you solve those things when you’re at that scale.
Ledge: That’s great. I love making people aware of what’s available because you get into a rut and you start using the same tools over and over again. And you become, I think, sort of dogmatic about what you know and miss the new developments.
Stuff is moving so fast in this space that it’s really good to take a view out and do some experimentation and learning.
Burke: Yes, it’s awesome and developers have so many choices. There are so many great choices out there which is amazing.
What an amazing time to be a developer! You can’t lose. It’s awesome.
Ledge: Burke, very cool to have you on, man! I appreciate the insights and sort of the authentic look inside how to create your own voice.
Burke: Well, thanks, man. Thanks for having me. I hope all that rambling was helpful to someone somewhere.