The Fundamentals of Building Mission-Driven Technology with Danilo Campos

Screaming in the Cloud - A podcast by Corey Quinn

Categories:

Danilo Campos, Proprietor of Antigravity, joins @quinnypig on Screaming in the Cloud to discuss his philosophy behind building tools that not only enhance developer experience but also improve the future of our world. Danilo shares his thoughts on how economic factors have influenced tech companies and their strategies for product, open source, and more. He also shares what he thinks is another, better way to approach these strategies, without ignoring the economic element. About DaniloDanilo Campos wants a world where technology makes us more powerful and expressive versions of ourselves. He worked with GitHub and the White House to deliver coding platforms to public housing residents, supported Glitch.com in its last days as an independent, and developed products for multiple early-stage startups, including Hipmunk. Today Danilo offers freelance developer experience services for devtools firms through Antigravity DX.Links Referenced:Antigravity DX: https://antigravitydx.com/Blog: https://redeem-tomorrow.comTranscriptAnnouncer: Hello, and welcome to Screaming in the Cloud with your host, Chief Cloud Economist at The Duckbill Group, Corey Quinn. This weekly show features conversations with people doing interesting work in the world of cloud, thoughtful commentary on the state of the technical world, and ridiculous titles for which Corey refuses to apologize. This is Screaming in the Cloud.Corey: Welcome to Screaming in the Cloud. I’m Corey Quinn, and periodically on this show, we like to gaze into the future and tried to predict how that’s going to play out. On this episode, I want to start off by instead looking into the past, more specifically my past. Before I started this place, I wound up working at a company called FutureAdvisor, which was a great startup for all of three months before we were bought by a BlackRock. I soon learned what a BlackRock actually was.While I was there, I encountered an awful lot of oral tradition around a guy named Danilo, and he—as it turned out—was a contractor who had been brought in to do a fair bit of mobile work. Meet my guest today, Danilo Campos, who is at present, the proprietor of a company called Antigravity DX. Thank you so much for joining me, I appreciate it.Danilo: Hey, Corey, it’s good to be here.Corey: It’s weird talking to you, just because you were someone that I knew by reputation, and if I were to take all the things that were laid at your feet after you no longer had been there, it feels like you were there for 20 years. What did you actually do there, and how long were you embedded for?Danilo: I loved the FutureAdvisor guys. I thought they were such a blast to work with. I loved what they were working on. I learned so much about how finance and investing works from FutureAdvisor, and somehow it was only seven months of my life. I’d been introduced to the founders as a freelance iOS developer at the time—this was 2014—and a guy I had worked with at Hipmunk actually put me in touch with these guys, and we connected. And they needed to get started doing mobile. They’d never done any mobile stuff, they didn’t have anyone on staff who did mobile stuff.And by that point, I’d shipped I think, must have been half a dozen iOS native apps, and so I knew this stuff pretty well. I understood the workflows, I understood the path to getting from idea to shipped product, and they just wanted occasional help. How do we wireframe this? How do we plan the product that way? How do we structure this thing? And so, it started off as this just, kind of, occasional troubleshooting consulting thing.And I think about August 2014. They call me in for a meeting, they said, “Hey, we’re stuck. We don’t know how to get this thing off the ground. Could you help us get this project moving so that we actually ship it?” And so, I just came and embedded for seven months, and by the end of it, I was just running the entire iOS engineering team. We had a designer working with us. We had, I think it was four folks who were building the product. We had QA. It was a whole team to get this thing out the door. And we got it out the door after seven months of really working at it. And like I said, it was a blast. I love those folks.Corey: I have to be clear, when I say that I encountered a lot of what you had done. It was not negative. This was not one of those startups where there’s a glorious tradition of assassinating the character out of everyone who has left the company—or at least Git repos—because they’re not there to defend themselves anymore. There were times where decisions that you had made were highlighted as, “We needed to be doing things more like this.” There were times it was, “Oh, we can’t do that because of how you wound up building this other thing.”And it was weird because it felt like you were the hand of some ancient deity, just moving things back and forth in your infinite wisdom of the ancients. It was unknowable, and we had to accept it as gospel, whether we liked it or not, at different times. In practice, I now know this was honestly just the outgrowth of a rapidly expanding culture where you’ve got to go from a team of five people to the team of 50 and keep everyone rowing in the same direction, ideally. But it was a really interesting social dynamic that I got to observe as a result, and I’m just tickled pink to be able to talk to you now. What are you doing these days?Danilo: Thank you for the context, by the way, because you know, I move on, as you do in a contract capacity, and you hope things work out.Corey: Yeah. To be clear, it was never a context of, “There’s the bastard. Get him.” Like, that is not the perspective we are coming at this from at all.Danilo: Yeah, yeah, yeah. No, and it’s hard because it was a very strange, alien codebase compared to the rest of the company. I get how it ended up in that spot. These days, I am a freelance developer experience consultant, and I spent a year-and-a-half at Glitch.com. And developer experience was always something that I really cared about. I did some work at GitHub that was about getting people—specifically teenagers living in public housing—into computing and the internet, and I’d had to do a bunch of DX work to make that happen because I had an afternoon to get people from zero to writing code.And that is not a straightforward situation, especially in a low-income housing environment, for example, right? So, I cared about this stuff a lot. And then I spent a year-and-a-half at Glitch.com, and it was like getting a graduate degree on everything about the leverage for creating outcomes in developer tools. And I just, I felt like I was carrying some gift from the Gods. I just, I felt the need to get this out to the wider world, and so that’s what I do with Antigravity.Corey: When I got to catch up with you in person for the first time at the excellent and highly recommended Monktoberfest conference—Danilo: Excellent.Corey: —that the folks over at RedMonk put on every year, it was interesting, in that you and I got to talking very rapidly, not about technology as such, but about culture and the industry and values and the rest. It was a wonderfully refreshing conversation that I don’t normally get to have so soon after meeting someone. I think that one of the more interesting aspects of our relatively wide-ranging conversation in a surprisingly brief period of time focused, first off, among the idea of developer tools and what so many of them seem to get wrong. I know that we basically dove into discussing about our violently agreeing opinions around the state of developer experience, for example. What are the hills you’re willing to die on in that space?Danilo: I think that computing generally exists to amplify and multiply our power. Computing exists to let us do things that we could not do with the simple, frail flesh that we’re born with, right? Computers augment our ambitions because they can do things with infinite iteration. And so, if you can come up with something that you can bottle in the form of an algorithm that repeats infinitely, you can have incredible impact on the world. And so, I think that there’s a responsibility to find ways to make that power something that is easy to hand to other people and let them pick up and run with.And so, developer tools, to me, has this almost sacred connotation because what you’re doing is handing people the fire of the Gods and saying, “Whatever you can come up with, whatever your imagination allows you to do with these tools, they can repeat infinitely and make whatever change you want—for good or for ill—in the world.” And that’s very special to me. I think we’ve gotten bored of it because it’s just, you know, it’s a 50-year-old business at this point. But I think there’s still a lot of magic to it, and the more we see the magic, the more magical outcomes we can coax out of everyday people who become better developers.Corey: From my perspective, one of the reasons I care so much about developer experience is that the failure mode of getting it wrong means that the person trying to understand the monstrosity you’ve built feels like they’re somehow not smart, or they’re just not getting it in some key and fundamental way. And that’s not true. It’s that you, for whatever reason, what you have built is not easily understandable to them where they are. I go back to what I first heard in 2012, at a talk that Logstash creator, Jordan Sissel wound up saying, where his entire thesis was that if a user has a bad time, it’s a bug.Danilo: Yeah.Corey: And I thought that that was just a wonderfully prescient statement that I wanted to sign onto wholeheartedly. [That was 00:09:08] my first exposure to it. I know that’s not the entirety of developer experience by a long shot, but it’s the one where I think you lose the most mind share when you get it wrong.Danilo: Well, and I’m glad that you bring that up because I think that kind of defines the spectrum of the emotional experience of interacting with developer tools. On one end of the spectrum, you’ve got, “I feel so stupid. This has made me feel worse about myself. This has given me less of a sense of confidence in myself than I had when I started.” And at the other end of the spectrum, the other extreme is, “I cannot believe I am this cool. I cannot believe that my imagination has been made manifest in this way that now exists in the world and can go out and touch other people and make their lives better.”Those are the two, kind of, extremes of the subjective emotional experience that can come from developer tools. And so, I think that there is a business imperative that really pushes us toward the extreme of making people feel awesome. I think about this in the context of Iron Man, you’ve seen Iron Man, yeah.Corey: Oh, yes.Danilo: All right. So, the Iron Man suit is the perfect metaphor for a developer tool that is working correctly for you, right? Because on its own, the suit is not very interesting, and on his own, Tony Stark is not all that powerful, but you combine the suit and the person, and suddenly extraordinary emergent outcomes come out. The ambition of the human is amplified, and he feels so [BLEEP] cool. And I think that’s what we’re looking to do with developer tools is that we want to take a person, amplify their range, give them a range of motion that lets them soar into the clouds and do whatever they need to do up there so that when they come back down, they feel transformed. They feel like more than what they started.Corey: I would agree with that. There’s a sense of whimsy and wonder as I look through my career trajectory, going from a sysadmin role, where you there was a pretty constant and hard to beat ratio in most shops—and the ratio [unintelligible 00:11:29] varied—but number of admins to the number of servers. And now with the magic of cloud being what it is, it’s a, “Well, how many admins does it take to run X number of servers?” Like, “Well, as an [admin done 00:11:39] right, I can manage all of them because that’s how programming languages work.” And that is a mystical and powerful thing.But lately, it seems like there’s been some weird changes in the world of developer tooling. Cynically, I’ve said a couple of times that giving a toss about the developer experience was in fact a zero interest rate phenomenon. Like, when you’re basically having to fend off casual offers of 400 grand a year from big tech, how do you hire and retain people at a company that has one of those old, tiny profit-generating business models and compete with them? And a lot of times, developer experience was part of how you did that. I don’t know that I necessarily believe that that is as tied to that cynical worldview as I might pretend on the internet, but I don’t know—I do wonder if it’s a factor because it seems like we’ve seen a definite change in the way that developer tools are approaching their community of users and customers.Danilo: Well, my immediate reflex is to open up the kind of systems theory box and look at what’s inside of that. Because I think that what we are experiencing, if we use the interest rate lens, is a period of time where everyone is a little bit worried that the good times are over for good. And I feel the sense of this in a lot of places. I think developer experience is a pretty good avatar to try this on with because I definitely also perceive it in that sphere.During the heyday of 0% interest rates, everything was about how much totalizing growth can you achieve? And from a developer tools perspective, all right, well, we need to make it so that the tools, kind of, grow themselves, so let’s invest a lot in developer experience so that people very quickly get onboarded, without us having to hold their hand, without us having to conduct a sales call, let’s get them to the point where they can quickly understand—because the documentation is so good and the artifacts are so good—exactly how to use these tools to maximum effect. Let’s get them to a point where it’s very easy for them to share the results of their work so that other people see the party and really want to join in. And so, all kinds of effort and energy and capital was being invested in this kind of growth strategy.And now I think that people are, again, a little bit afraid that the good times are over, and so we see this really sales-driven culture of growth, where it’s like, all right, well, for this company to succeed, we have to really make sure that we’re going and closing these big sales, and if individual developers can’t figure out how the hell this works, well, that’s their problem, and we’re not going to worry about it. And we’ve talked about this: this fear of the good times being over drives people, I think, to all kinds of bad behavior. The rug-pulling that we’ve seen in open-source licensing where somebody’s like, “All right, I’ve taken a bunch from this community, and now I’m going to keep it, and I’m not going to give anything back.” This is the behavior of people who are afraid that the good times are behind them. I don’t have the luxury of being that pessimistic about the future, and I don’t think our industry can afford it either.[midroll 00:15:03]Corey: The rules changing late in the game is something that has always upset me. It feels inherently unfair, and it’s weird because you can have these companies say that, “Look, we’ve never done anything like that. Why wouldn’t you trust us?” Right up until the point where they do. Reddit is a great example, where for years, they had a great API—ish—that could do things that their crap-ass mobile client natively couldn’t. And Apollo was how I interacted with Reddit constantly. I was a huge Reddit user. I was simultaneously, at one point, moderator of the legal advice subreddit and the personal finance subreddit. I was passionate about that stuff, and it was great.And then they wound up effectively killing all third-party clients that don’t bend the knee, and well, why am I going to spend my time donating content and energy and time to a for-profit company that gets very jealous when other people find ways to leverage their platform in ways that they don’t personally find themselves able to do. Screw ‘em. I haven’t been back on Reddit since. It’s just a, “Fool me once, shame on me story.” Twitter did the exact same thing. I built a threading Twitter client simultaneously deployed to 20 AWS regions, until they decided they didn’t want people creating content through their APIs and killed the whole thing with no notice. Great. Now, they’re—I got an email asking me to come back. Go to hell. I tried that once. You’ve eviscerated people’s businesses and the rest.And you see it with licensed changes as well. But it all comes down to the same thing, from my perspective, which is an after-the-fact changing of the rules. And by moving the goalposts like that, I wonder what guarantees a startup or a project that doesn’t intend to do those things can offer to its community. Because, look, HashiCorp made its decision to change the licensing for Terraform. Good for them. They’re entitled to do that. I’m not suggesting, in any way shape or form, that they have violated any legal term.And I don’t even know they’re necessarily doing anything that doesn’t make sense from their point of view. And the only people I really see that upset about it are licensing purists—which I no longer am for a variety of reasons—people who work at HashiCorp, obviously, and their direct competitors who are not sympathetic in that particular place. But as a counterpoint, if they wind up building a new open-source project, of course, I’m not going to contribute. I mean, that’s a decision I get to make. And I don’t know how you square that circle because otherwise, if that continues, no one will be able to have a sense of safety around contributing to anything open-source unless they’re pleased to wind up doing volunteer work for a one-day unicorn.Danilo: So, I really appreciate the economical survey of the landscape that you just provided because I think that captures it really well. The Reddit case in particular breaks my heart. I will go to my grave absolutely loving Steve Huffman. Steve Huffman gave me my first break as a paid developer and product designer, and he was an enormous pain in the ass to work with, and I loved every minute of it. Like, he’s just an interesting, if volatile, character.And I see that volatility playing out with Red Hat in the incredible hostility that they were conveying around being held to account for these changes. And I have a lot of sympathy for that crew because they’ve built all this value, they kind of missed the euphoria boat in terms of, you know, getting the best price for an IPO, for example, and they’ve got to figure out, all right, how do we scrape together value from what we’ve got within the constraints that we have? How do we build a fence around the value that we’ve got and put a tollbooth in front of it so that the public markets are excited about this and give us our best bang for the buck? That’s Steve Hoffman’s job. That’s his crew’s job. I understand the pressures and I respect that.And I think that the way they went about it this year was short-sighted because what it does is it undervalues everybody who isn’t in the boardroom, making decisions with them. I think what we have to understand that when we build software, Metcalfe’s law applies to developer tools just as much as any other network here. And so, the people who are stakeholders, who are participants, who are constituents of your community, are load-bearing members of the value chain that you are putting together, and so when you just cut them out, you might be nicking an artery that bleeds out very, very, very slowly. And the sentiment that you just expressed here about how your experience of Reddit was soured, I mean you’re the enthusiast type, right? Like, who wants to sign up for the drama of flame wars and moderation except if you really just love it?And so, what they were able to do was take people who, for years, absolutely loved it, and just drain away their love and enthusiasm for it. And the thing is, over time, that harms the long-term value that you are trying to actually protect. When we live in a world where computers can do all of this stuff infinitely, when they will provide us with extraordinary scale, when information can be copied and distributed at near-zero marginal cost, what we’re doing is setting up chains of incentives to get people to do stuff, essentially, for free. You were unpaid labor doing that moderation, and the reason that you did it for free was because it was fun, was because it spoke to something inside of you that really mattered, and you wanted to provide for a community of other people who also cared about these topics. And that fun was taken away from you. So, there’s a bunch of this stuff that doesn’t fit into a spreadsheet, and if we make decisions exclusively on what fits into a spreadsheet, we’re going to turn around someday and find that we have cut off some of the most valuable parts of what makes this industry great.Corey: I agree. I feel like companies have a—they launch, and they want the benefits of having an open-source community, but as they grow and get to a point of success and becoming self-sustaining, it’s harder to see those benefits because at that point, it just feels like it’s all downside: you are basically giving what you built away to your direct competitors, you are seeing significant value scattered throughout the ecosystem that you are capturing a very small portion of, and it becomes frustrating—especially in historical environments—where you have the sense of—back when you built the company years ago, it’s well, obviously we’d be the best place to host and run this because no one’s going to run this as well as the people who built it. And then cloud companies, with their operational excellence, come in and put the lie to that, in many cases [laugh]. It’s like, oh dear. Not like that.And I understand, truly, the frustration and the pain and the fear that drives companies in that position. And I don’t have a better answer, which is my big problem because I’m just sitting here saying, “You’re doing it wrong. Don’t do it like that.” “Okay, well, what should they do instead?” “No, I just want to be angry. I’m not here to offer solutions.” And I feel for them. I do. I have a lot of empathy for everyone involved in this conversation. It just sucks, but we need a better outcome than the current state, or we’re going to not see the same open innovation. Even these days, when I build things, by default, I don’t build in the open, not because I’m worried about competitive threats, but because I don’t want to deal with people complaining to me about things that I’ve built and don’t want to think about this week.Danilo: I think that we’re living through the hangover of—I mean, if you looked at the crypto craze as an example of this hangover, right—here we were with the sky the limit. We can sell monkey pictures for extraordinary amounts of money and there’s nothing behind it. We went from euphoria to fear in the space of a handful of quarters. And so, that has put all of us, even the most optimistic, in a place where we feel our backs are against the walls. But I think the responsibility we have is, again, computing fundamentally changes the economics of so many categories of labor, and it changes the economics of information generally.And so, we can do a bunch of stuff that doesn’t cost that much over the long-term, relative to the value it creates. But it only works if we have a really clear thesis of the value we’re creating. If we don’t value the contributions of a community, if we don’t value the emergent outcomes that arise from building something that’s very expressive, that then lets outsiders show up and do things that we never predicted, if we’re not building strategies that look at this value as something that is precious instead of something to be cut off and captured, then I think that we just continue to spiral down the drain of paranoia, and greed, and fear instead of doing things that actually create long-term sustainable growth for our business.Corey: I really wish that there were easier, direct paths. Like on some level, too, it’s—I feel like this is part of the problem, that every company views going public as its ultimate goal.Danilo: Yeah.Corey: At least that’s what it feels like. Like The Duckbill Group. If we ever go public, my God, I will have been so far gone from this company long before then, just because at that point, you have given control over to people who are not aligned, in many cases, with the values that you founded the company with. Like, one of the things I love about being a small business is that I don’t need to necessarily think the next quarter’s earnings. I can think longer-term. “Okay, in two or three years, what do I want to be doing?” Or five or ten. I’m not forced into this narrow, short-sighted treadmill where I have to continually show infinite growth in all areas at all times. That doesn’t sound healthy.Danilo: I agree, and I think that this is a place where I can give you a lot of hope because I look at a handful of economic tailwinds that are really going to make it possible to build businesses in a different way than was practical before. If we look at the last cycle, one of the absolute game changers was open-source. So, you showed up and there was already a web server written for you, and there was already a database written for you, and so you would just pull these things off the shelf instead of having to hire a team that would build your web server from scratch, that would build your database from scratch. And so, that changed the economics of how companies could be made, and that created an entire cycle of new technology growth.And if we look for an analogy of that kind of labor savings for the next technology cycle, we’re going to see things like cloud-based serverless services, right? So like, now you don’t need to even administer a Linux server. You don’t need to know how the server works under the hood. You pay one company for an API that gives you a database, and they manage the stuff. So, I’m thinking of companies like Neon, or PlanetScale, right? You give them cash, they give you a database, they worry about it, they do all of the on-call stuff, you don’t have to think about. So, this makes it even cheaper to build things of higher complexity because you are outsourcing much of the management of that complexity to other firms. And I think that that pattern is going to change the overall costs of starting and scaling and maintaining any sort of web-based product. And so, that’s number one.And then number two, is that when we look at stuff like large language models, the stuff that you can do with ChatGPT in terms of figuring out how to solve a broad array of problems that maybe you don’t have a lot of domain expertise in, I think that means that we’re going to see smaller teams get even further than we expect. And so, the net result of these trends is going to be, you don’t need to take vast amounts of venture funding in order to get to a company that serves a large number of people at a meaningful scale, with meaningful returns for the principles involved, and then they don’t have to go all the way down to the IPO route. They don’t have to figure out some sort of mega-scale unicorn exit; they can just build companies that work, that solve customer problems, keep it close, and then you don’t have the totalizing endless need for growth. I think we’re going to see a lot more of that this cycle.Corey: I sure hope you’re right. I think that there’s been a clear trend toward panic, or at least if not panic, then at least looking at current conditions and assuming that they’ll persist forever. We just saw ten years of an unprecedented bull run, where people tended to assume that interest rates would be forever low, growth was always going to be double-digit at least, and there was no need to think about anything that would ever argue against those things. For the first few years of my consulting company, it was a devil of a problem trying to convince people to care about their AWS bills because frankly, when money is free, there is no reason for someone to. They are being irrational if they do. Now, of course, that’s a very different story, but at the time, I felt for a while like I was the one who was nuts.Danilo: So, the interest rate conditions are always going to make people behave a certain way. That’s why they exist, right? We have monetary policy designed to influence business behavior. And if we look at that zoom, then we say, “All right, look, this stuff is all cyclical. We know there’s going to be good times, we know there’s going to be lean times, but at the end of the day, we care about building stuff.” Right?I don’t spend a lot of time with the sort of venture capitalist set who’s really obsessed with building, but I really love building. I just, I can’t stop building things. It is what I was put on this planet to do, and I think that there are so many people who feel exactly the same way. And so, regardless of the larger interest-rate phenomenon, we have to find a path where we can just build the stuff that we need to build. Build it for our reasons, for the right reasons, not because we just want to cash out. Although, you know, getting paid is great. I don’t begrudge anyone that.Corey: You can’t eat aspirations, as it turns out.Danilo: That’s right, right? We’ve got to worry about the economics, and that’s reasonable. But at the end of the day, making things happen through technology is its own mission and its own reward, regardless of what some sort of venture fund needs to make return happen. So, I think that we are going to get past this moment of slump and return to the fundamentals of we need to build technology because building technology makes us feel good and creates impact in the world that we absolutely need. And those are the fundamentals of this business.Corey: I agree with you wholeheartedly. I think that I’ve been around too many cycles—this is a polite way of saying I’m old—and you learn when that happens that everything that feels so immediate and urgent in the moment, in the broad sweep of things, so rarely is. Not everything can be life or death because you’ll die lots of times.Danilo: Yeah.Corey: I really want to thank you for taking the time to speak with me. If people want to learn more, where’s the best place for them to find you?Danilo: If you want to engage me for my thinking and strategy around humanist technology tools growth, you should find me at antigravitydx.com. And if you want to read more about what I think about, I maintain a blog at redeem-tomorrow.com, and you can learn all about my thinking about the last cycle, and the coming one as well.Corey: And I will absolutely include a link to that in the [show notes 00:31:52]. Thank you so much for taking the time to speak with me. I appreciate it.Danilo: It’s a pleasure, Corey. Thank you for having me. Really great to chat.Corey: Danilo Campos, proprietor at Antigravity DX. I’m Cloud Economist Corey Quinn, and this is Screaming in the Cloud. If you’ve enjoyed this podcast, please leave a five-star review on your podcast platform of choice, whereas if you’ve hated this podcast, please leave a five-star review on your podcast platform of choice, along with an angry, insulting comment taking care within that comment to link to a particular section of the FutureAdvisor code repo.Corey: If your AWS bill keeps rising and your blood pressure is doing the same, then you need The Duckbill Group. We help companies fix their AWS bill by making it smaller and less horrifying. The Duckbill Group works for you, not AWS. We tailor recommendations to your business, and we get to the point. Visit duckbillgroup.com to get started.