# Mitchell Hashimoto’s new way of writing code

An episode of [The Pragmatic Engineer](https://invisiblenetwork.ai/podcast/1769051199), 25 Feb 2026, 1 h 58 min.

Audio: https://api.substack.com/feed/podcast/188952833/e91e9da4b4ea9fb4d1a5c7dd77751c59.mp3

Brought to You By: • Statsig — The unified platform for flags, analytics, experiments, and more. • Sonar – The makers of SonarQube, the industry standard for automated code review • WorkOS – Everything you need to make your app enterprise ready. — How has the day-to-day workflow of Mitchell Hashimoto changed, thanks to AI tools? Mitchell Hashimoto is one of the most influential infrastructure engineers of our time, and is one of the most pragmatic builders I’ve met. He is the co-founder of HashiCorp and creator of Ghostty. In this episode, we talk about how he got into software engineering, the history of HashiCorp, and the challenges of turning widely used open-source tools into a durable business. We also go into what it’s really like to work with AWS, Azure and GCP as a startup. Mitchell shares how he uses AI these days, and how agents have completely changed how he works. We touch on Ghostty, open source, and what’s changing for software engineers and founders in an AI-native era. — Timestamps (00:00) Intro (02:03) Mitchell’s path into software engineering (07:19) The origins of HashiCorp (15:52) Early cloud computing (18:22) The 2010s startup scene in SF (23:11) Funding HashiCorp (25:23) The Hashi stack (32:33) Why HashiCorp’s business lagged behind its technology (35:28) An early failure in commercialization (38:28) The open-core pivot and path to enterprise profitability (48:08) Taking HashiCorp public (51:58) The near VMware acquisition (59:10) Mitchell’s take on all the cloud providers (1:06:02) AI’s impact on open source (1:07:00) Why Mitchell built Ghostty (1:09:11) Why Mitchell used Zig (1:10:38) How terminals work and Ghostty’s approach (1:17:31) AI’s impact on terminals and libghostty (1:19:13) How Mitchell uses AI (1:22:02) Ghostty’s evolving AI use policy (1:28:36) Why open source must change (1:31:46) The problem of Git in monorepos (1:36:22) What needs to change to work effectively with AI (1:39:57) Mitchell’s hiring practices (1:47:52) Mitchell’s AI adoption journey (1:50:41) Advice to would-be founders (1:52:21) Mitchell’s advising work (1:53:20) What’s changing for software engineers (1:55:03) How Mitchell recharges (1:55:50) Book recommendation — The Pragmatic Engineer deepdives relevant for this episode: • AI Engineering in the real world • The AI Engineering stack • Pressure on commercial open source to make more money – and HashiCorp changing its license • How Linux is built with Greg Kroah-Hartman — Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

## Transcript

[0:00] SPEAKER_00: If AI agents can write code,
[0:01] SPEAKER_00: open pull requests,
[0:02] SPEAKER_00: and ship features,
[0:03] SPEAKER_00: do we even need open source contributors anymore?
[0:06] SPEAKER_00: Michelle Hashimoto,
[0:06] SPEAKER_00: the co-founder of HashiCorp,
[0:08] SPEAKER_00: has been thinking deeply about this,
[0:09] SPEAKER_00: the future of open source,
[0:11] SPEAKER_00: and how to efficiently integrate AI into its day-to-day workflow.
[0:15] Michel built the tools that power modern cloud infrastructure,
[0:17] Terraform,
[0:18] and the HashiStack.
[0:19] SPEAKER_00: He also created the popular terminal,
[0:21] SPEAKER_00: Ghosty,
[0:22] and I consider him to be one of the most thoughtful voices in
[0:25] the industry on how
[0:26] SPEAKER_00: AI is changing the craft of software engineering.
[0:28] SPEAKER_00: In today's episode,
[0:29] SPEAKER_00: we cover the original story of HashiCorp,
[0:32] SPEAKER_00: a failed university research project,
[0:33] SPEAKER_00: a notebook of unsolved problems,
[0:35] SPEAKER_00: and an email from his future co-founder that he answered in two minutes.
[0:39] SPEAKER_00: his honest,
[0:39] SPEAKER_00: unfiltered take on working with AWS Azure and Google Cloud as partners,
[0:43] both the arrogance and also the brilliant engineers who never
[0:46] thought about the
[0:47] SPEAKER_00: business,
[0:47] SPEAKER_00: how he's adapted to AI coding tools,
[0:49] SPEAKER_00: why he always keeps an agent running in the background,
[0:52] and his practical advice for engineers who have not yet warmed
[0:54] up to AI agents,
[0:56] SPEAKER_00: and many more.
[0:57] If you're interested to hear from one of the most hands-on
[0:59] builders in the industry
[1:00] SPEAKER_00: and want to know where AI tools are useful versus not,
[1:03] SPEAKER_00: then this episode is for you.
[1:05] SPEAKER_00: This episode was presented by Statsig,
[1:07] SPEAKER_00: the unified platform for flags,
[1:08] SPEAKER_00: analytics,
[1:09] SPEAKER_00: experiments,
[1:09] SPEAKER_00: and more.
[1:10] Check out the show notes to learn more about them and our other
[1:12] season sponsors,
[1:13] SPEAKER_00: Sonar and WorkOS.
[1:15] SPEAKER_00: Michelle, welcome to the podcast.
[1:17] SPEAKER_00: It's awesome to be here in person.
[1:20] Yeah,
[1:21] it's cool to meet you in person after so many years of
[1:23] following you.
[1:25] You've had such a massive impact on the tech industry and
[1:28] software engineers,
[1:29] SPEAKER_00: but how did it start?
[1:30] SPEAKER_00: I think the high level is the same story as a lot of people.
[1:32] I self-taught around 12,
[1:35] 13,
[1:35] early teens,
[1:36] motivated by video games,
[1:38] same as a lot of people.
[1:40] SPEAKER_01: Although I really quickly realized that I liked web.
[1:42] SPEAKER_01: You know, web was new.
[1:43] SPEAKER_01: Google wasn't out yet.
[1:44] SPEAKER_01: I think web was new.
[1:44] SPEAKER_01: It's like, I kind of like
[1:46] really quick i never became a video game programmer i really
[1:49] quickly just became a
[1:49] web programmer php pearl that sort of stuff and uh because i
[1:54] was so young the only
[1:55] way i could learn was through whatever code was published
[1:58] online and so that's how
[1:59] i got acquainted with open source i didn't know that's what it
[2:03] was called then but
[2:04] a kid with no job no money um parents didn't want to buy you
[2:08] know professional
[2:08] books were like i don't know what they are now but they were
[2:11] like 50 bucks then
[2:12] SPEAKER_01: right and
[2:13] and so they were like no way right this and also they didn't
[2:16] believe i was going to
[2:16] read it and so there was no way they're going to buy that so um
[2:20] yeah this anything
[2:21] i find online was my my in into coding i'd walk to school every
[2:25] day with a group of
[2:26] friends there's a period of time where i printed out the first
[2:30] or second chapter of
[2:31] SPEAKER_01: the php manual
[2:33] I remember it was about 30 to 40 pages of paper and I never
[2:38] programmed all the stuff.
[2:39] SPEAKER_01: And I'm 12.
[2:40] SPEAKER_01: It's very confusing.
[2:42] SPEAKER_01: So I read the whole 40 pages every walk to school.
[2:45] And I don't remember how long it took me,
[2:47] but I did that a long time before.
[2:48] SPEAKER_01: You know,
[2:49] SPEAKER_01: I remember this one moment where I was walking to school where suddenly I
[2:52] SPEAKER_01: understood what these dollar sign things were.
[2:56] SPEAKER_01: For whatever reason, it just came in.
[2:58] SPEAKER_01: Those are variables, right?
[2:59] SPEAKER_01: Variables, yeah, yeah.
[3:00] SPEAKER_01: And I really understood.
[3:02] SPEAKER_01: I never heard that word before.
[3:04] SPEAKER_01: You don't hear the word variable as a 12-year-old out in any context.
[3:09] And finally,
[3:09] at one point,
[3:10] it hit me that they store things and things could change.
[3:15] SPEAKER_01: And I remember just weeks of reading this thing and not understanding it,
[3:19] SPEAKER_01: getting to school so excited.
[3:21] SPEAKER_01: It triggered.
[3:22] SPEAKER_01: And then after that, I remember stuff happened really quickly.
[3:25] SPEAKER_01: What kind of stuff did you build?
[3:26] SPEAKER_01: Websites?
[3:27] SPEAKER_01: Yeah, websites.
[3:27] SPEAKER_01: It was gaming-related websites.
[3:29] SPEAKER_01: It was, like, a lot of, like, game cheat stuff, forum software.
[3:33] SPEAKER_01: Yeah, I mean, I had a lot of fun cloning websites.
[3:36] SPEAKER_01: You know, poorly, but, like, PayPal was out.
[3:39] And then I really wondered,
[3:40] like,
[3:40] how does money get transferred over the internet?
[3:42] SPEAKER_01: How does that work?
[3:43] SPEAKER_01: So I tried to build, like, copies of cloning websites.
[3:46] SPEAKER_01: I did, like, masquerade as an 18-year-old on, like, freelance websites.
[3:51] SPEAKER_01: And so I got...
[3:53] You know,
[3:53] 100 bucks here,
[3:54] 50 bucks here to do like image,
[3:57] like upload stuff.
[3:58] I decided to study computer science in college,
[4:00] went to the University of Washington.
[4:01] SPEAKER_01: I mean, I guess that's when you would call it serious.
[4:04] SPEAKER_01: But I was I was like, really?
[4:07] SPEAKER_01: I mean, I was coding every day as much as I could through high school.
[4:11] SPEAKER_02: Oh, okay.
[4:12] SPEAKER_00: That's impressive.
[4:14] SPEAKER_00: Were you alone with this in your friend group?
[4:16] SPEAKER_00: Were there other people doing it or was it kind of lonely?
[4:19] SPEAKER_01: It was lonely.
[4:19] SPEAKER_01: It was very lonely.
[4:20] SPEAKER_01: It was lonely in the real world.
[4:22] And then I quickly found online friends through like MSN
[4:25] Messenger and ALN Messenger and
[4:28] forums I found online friends which many I have met now and I
[4:31] still keep in touch
[4:32] which was cool but no I mean like back then I mean being a
[4:37] being a programmer one
[4:38] no one knew that word but being into computers was like a
[4:41] social death kiss and so
[4:45] even my closest friends didn't know my best friends and stuff
[4:47] like I hid it from
[4:48] all of them and I didn't talk about it at school and stuff like
[4:51] that so it was just
[4:51] a secret until I went to college and college is when I decided
[4:54] to like let it all
[4:55] SPEAKER_01: out
[4:55] SPEAKER_01: the big like break that I got was I blogged and my freshman year,
[5:01] SPEAKER_01: late freshman year heading into summer after it of college,
[5:05] someone just emailed me out of the blue and I kind of thought
[5:08] it was a scam.
[5:08] SPEAKER_01: It was just like,
[5:10] SPEAKER_01: do you want to,
[5:10] SPEAKER_01: you know,
[5:11] SPEAKER_01: it was,
[5:11] SPEAKER_01: do you want to be a Ruby on rails programmer?
[5:13] SPEAKER_01: And I didn't know Ruby.
[5:14] SPEAKER_01: I was a PhD programmer.
[5:16] SPEAKER_01: I had never done Ruby.
[5:17] I'd never done rails,
[5:17] but I got this email and I'd never been like headhunted before.
[5:21] SPEAKER_01: Like I didn't know what this was.
[5:22] SPEAKER_01: I was also 18.
[5:23] SPEAKER_01: So I didn't really know what to think about it.
[5:25] I probably would have not responded except that the person
[5:28] contacted me was in LA.
[5:31] And so I did respond and we set up a meeting,
[5:33] like a real physical meeting.
[5:35] And I met him and met the company and realized this is real and
[5:39] they're serious and genuine.
[5:41] SPEAKER_01: And I took that job.
[5:42] SPEAKER_01: And yeah, I mean, that was, I learned a lot on the job there.
[5:46] SPEAKER_01: So that was a huge change.
[5:48] SPEAKER_00: Was it a startup, a small company, something like that?
[5:50] no it was a consultancy so it's kind of like one of those
[5:52] standard like it was like
[5:53] 2007 Ruby on Rails had blown up it was already very popular and
[5:59] there was all these
[6:00] consultancies that appeared out of nowhere that was basically
[6:02] like we'll build your
[6:04] minimum viable product and yeah and we're one of those shops so
[6:08] great job for a
[6:08] college student because we'd see a client for like two months
[6:11] and I would build a
[6:12] YouTube style website and then I would build like a
[6:15] philanthropy website and then
[6:16] I'd build an e-commerce website and like it was just like I got
[6:19] to learn all these
[6:20] different technologies and different scale challenges and
[6:22] different like there
[6:23] wasn't a lot of scale because we're building MVPs but different
[6:25] like thinking of
[6:26] SPEAKER_01: scale problems yeah it was great
[6:29] SPEAKER_00: How did eventually HashiCorp start?
[6:33] SPEAKER_00: What happened between getting this Ruby job to a few years later?
[6:37] SPEAKER_00: It kind of starts with this Ruby job.
[6:40] SPEAKER_01: There was one guy that worked at the company,
[6:44] SPEAKER_01: and he's pretty into his privacy,
[6:46] SPEAKER_01: so I won't share his name,
[6:47] SPEAKER_01: but he was my boss.
[6:47] SPEAKER_01: And there was no Roku.
[6:49] SPEAKER_01: There was no engineer.
[6:50] SPEAKER_01: So you had to self-host.
[6:51] SPEAKER_01: And Ruby on Rails hosting then was kind of like,
[6:54] So he was the guy who got all these projects hosted on
[6:58] dedicated servers.
[6:59] SPEAKER_01: And I didn't know anything about that.
[7:01] SPEAKER_01: And he ran Linux,
[7:03] SPEAKER_01: and he had long black hair,
[7:05] SPEAKER_01: and he didn't use a mouse,
[7:08] SPEAKER_01: and all these things that were so weird to me.
[7:10] SPEAKER_01: And I was just intrigued.
[7:11] SPEAKER_01: He sat in the corner.
[7:12] SPEAKER_01: He didn't want to talk to anybody.
[7:15] SPEAKER_01: And I just wanted to know more about what that world was.
[7:17] SPEAKER_01: And luckily, despite appearances, he's very nice.
[7:21] SPEAKER_01: And so,
[7:23] SPEAKER_01: yeah,
[7:24] SPEAKER_01: I think as soon as I showed a genuine interest,
[7:26] SPEAKER_01: started asking a lot of questions,
[7:27] SPEAKER_01: he started just giving me challenges.
[7:30] Like,
[7:30] well,
[7:31] the first challenge I remember he did is he unplugged my mouse.
[7:33] And it's funny because I don't think there's an era of time
[7:36] where if you did that,
[7:36] SPEAKER_01: it probably would have been some kind of harassment or something.
[7:38] But he literally said,
[7:39] unplug my mouse and said,
[7:42] you're never going to work with a mouse again.
[7:44] SPEAKER_01: So figure it out.
[7:44] SPEAKER_01: I'm not going to tell you how.
[7:46] Just unplug my mouse,
[7:48] restart the computer,
[7:49] your problem now,
[7:50] and took the mouse away.
[7:52] SPEAKER_01: Took me about a week, and I got really good with the keyboard.
[7:54] SPEAKER_01: Harsh lesson.
[7:55] SPEAKER_01: Harsh lesson.
[7:56] SPEAKER_01: And once I got good with the keyboard,
[7:58] SPEAKER_01: he said,
[7:58] SPEAKER_01: okay,
[7:59] SPEAKER_01: here's,
[7:59] SPEAKER_01: he installed screen on my,
[8:01] SPEAKER_01: you know,
[8:02] SPEAKER_01: early Tmux.
[8:02] SPEAKER_01: He installed screen in my terminal and said, figure this out.
[8:05] SPEAKER_01: You're going to use this now.
[8:06] SPEAKER_01: You know, there's no questions like you will use this.
[8:09] SPEAKER_01: And he just slowly instilled on it on me.
[8:12] SPEAKER_01: And as we got there, then it became, you know, here's SSH.
[8:16] SPEAKER_01: Here's a package manager.
[8:18] SPEAKER_01: He's like slowly taught me more and more.
[8:20] SPEAKER_01: And that got me just in.
[8:21] SPEAKER_01: I loved him like immediately.
[8:22] SPEAKER_01: It was like, this is super cool, super fun.
[8:25] SPEAKER_01: So that long winded process got me into infrastructure.
[8:28] SPEAKER_01: And then simultaneously or very shortly afterwards,
[8:31] I joined a research project at the University of Washington
[8:33] called the Seattle
[8:34] SPEAKER_01: Project,
[8:35] SPEAKER_01: which is a terrible name because you can't Google it.
[8:38] SPEAKER_01: But it's called the Seattle Project.
[8:39] SPEAKER_01: It was.
[8:40] SPEAKER_01: I'm sure it doesn't exist anymore.
[8:41] SPEAKER_01: And it was, again, another popular thing during this time.
[8:45] SPEAKER_01: was kind of like folding at home.
[8:48] SPEAKER_01: They were trying to generalize folding at home,
[8:49] SPEAKER_01: which is can a bunch of people compute of different,
[8:53] SPEAKER_01: you know,
[8:54] SPEAKER_01: it could be your home machine,
[8:55] SPEAKER_01: it could be an unused rack,
[8:56] SPEAKER_01: it could be in your basement,
[8:58] SPEAKER_01: it could be around the world,
[8:59] but can you donate all this heterogeneous hardware and then can
[9:03] you generalize a
[9:04] scheduler on top of it so that academic institutions across the
[9:08] world could just
[9:09] SPEAKER_01: run workloads?
[9:10] SPEAKER_01: And not just research, like the job I got
[9:13] was basically to very vaguely to create not the scheduler
[9:19] component but like create
[9:21] the ability to spin up all these nodes um and and a bunch of
[9:25] other stuff it's very
[9:26] vague but but it was this infrastructure problem and i
[9:29] completely failed at it like
[9:31] SPEAKER_01: i i tried for a quarter but from a technical side i just failed and
[9:36] SPEAKER_01: And I wrote down in his notebook,
[9:38] SPEAKER_01: like,
[9:38] what I thought the pieces were missing that I couldn't solve
[9:42] this problem in a
[9:43] SPEAKER_01: quarter,
[9:43] SPEAKER_01: in a 10-week period.
[9:44] SPEAKER_01: Like, why?
[9:45] SPEAKER_00: Well, we need this, we need this, we need this.
[9:47] It's interesting to see how structured Michel was in his
[9:50] approach in defining
[9:51] SPEAKER_00: components that would later become parts of the hashi stack.
[9:53] SPEAKER_00: And this leads us nicely to our seasoned sponsor, WorkOS.
[9:57] One thing I've learned from studying great engineers,
[9:59] Michel included,
[10:00] is that they're
[10:00] SPEAKER_00: very deliberate about what they choose to build.
[10:03] SPEAKER_00: Great engineers don't just ship fast,
[10:05] SPEAKER_00: they think in systems,
[10:06] SPEAKER_00: they understand leverage,
[10:07] and they're careful about what becomes part of their long-term
[10:10] service area.
[10:11] SPEAKER_00: If you're building SaaS,
[10:12] SPEAKER_00: especially an AI product,
[10:13] SPEAKER_00: authentication and enterprise identity can quietly turn into a long-term
[10:17] SPEAKER_00: investment.
[10:18] SAML edge cases,
[10:19] directory sync,
[10:20] audit logs,
[10:21] and all the things enterprise customers expect.
[10:23] SPEAKER_00: WorkOS provides these building blocks as infrastructure,
[10:26] so your team can stay focused on what actually differentiates
[10:29] your product.
[10:29] SPEAKER_00: Great engineers know what not to build.
[10:32] SPEAKER_00: If identity is one of those things for you, visit WorkOS.com.
[10:35] SPEAKER_00: And with this,
[10:36] let's get back to Michel's notebook with all the components he
[10:39] would end up
[10:39] SPEAKER_00: building at HashiCorp.
[10:40] SPEAKER_01: And I still have this notebook at my house here,
[10:43] SPEAKER_01: but the problems are really like,
[10:45] SPEAKER_01: you know,
[10:45] I have no way to declaratively manage the different resources
[10:49] that are out there.
[10:50] SPEAKER_01: I have no way to network these together in a private network.
[10:53] SPEAKER_01: You know, I wrote these things down.
[10:55] SPEAKER_01: And there was a lot of stuff there that I never ended up building,
[10:57] SPEAKER_01: but a subset of that was ultimately what HashiCorp would end up building.
[11:01] And I shared this with my undergraduate like boss who is
[11:05] Armand,
[11:06] who was my co-founder.
[11:07] SPEAKER_00: Yep.
[11:08] SPEAKER_01: So he was later became your co-founder.
[11:09] SPEAKER_01: Yes.
[11:10] SPEAKER_01: He was the, my, my boss on the undergrad side.
[11:13] SPEAKER_01: And I shared it with them as kind of an exit interview.
[11:16] SPEAKER_01: Like this is what it is.
[11:18] SPEAKER_01: And then some period of time passed, not much weeks passed.
[11:21] And he emailed me out of the blue and was like,
[11:24] do you want to do a startup together?
[11:25] That,
[11:26] you know,
[11:26] you're a teenager and you have no idea what this commitment is.
[11:28] is you're like 21 or something at this point uh probably not
[11:31] even probably probably
[11:32] 19 or 20 yeah and he emailed me out of the blue like do you
[11:34] want to start up like
[11:35] person you never met or you barely met never met personally
[11:38] like all this stuff
[11:39] it's so funny and he emailed me that at like 11 30 near college
[11:42] i emailed him back
[11:43] in two minutes and said sure and he remembers thinking wow
[11:48] you're started so fast
[11:49] SPEAKER_01: that he's just in he's ready to go
[11:51] SPEAKER_01: That was sort of the start of our friendship.
[11:54] SPEAKER_01: And again,
[11:56] SPEAKER_01: there's overlapping pieces here,
[11:57] SPEAKER_01: but I was also at the time working on something called Vagrant.
[12:00] SPEAKER_01: And Vagrant came out of the consultancy, less the research project.
[12:04] It was solving the problem in this consultancy where we had new
[12:07] clients every two
[12:08] SPEAKER_01: months and we had different teams.
[12:09] How do we create reproducible dev environments so I could go
[12:12] help somebody without
[12:13] SPEAKER_01: a lot of billable hours?
[12:14] SPEAKER_01: Yeah.
[12:14] So this is a development environment that you could spin up
[12:17] quickly,
[12:18] right?
[12:18] SPEAKER_01: Yeah, yeah, yeah.
[12:19] SPEAKER_01: The metaphor I always had was...
[12:21] SPEAKER_01: I didn't use Windows then,
[12:21] SPEAKER_01: but the metaphor I always used was,
[12:22] SPEAKER_01: how could I double-click and open a demo?
[12:24] SPEAKER_01: Yeah, pretty much.
[12:25] SPEAKER_01: That was a metaphor I used because... It's a good one.
[12:27] SPEAKER_01: Yeah,
[12:28] the problem we were having was any hour waste in a consultancy
[12:31] that you can't bill
[12:32] SPEAKER_01: is just a waste.
[12:33] SPEAKER_01: And so it was basically like,
[12:34] SPEAKER_01: if somebody else is behind schedule,
[12:36] SPEAKER_01: how can I jump in,
[12:38] SPEAKER_01: help implement a feature,
[12:39] SPEAKER_01: and jump out?
[12:40] SPEAKER_01: And we were in that era...
[12:43] Just setting up the dev environment for a project might take
[12:46] you half a day.
[12:47] SPEAKER_00: And you couldn't build that for the client, right?
[12:49] SPEAKER_00: The client will only pay for the work.
[12:51] SPEAKER_01: Yeah, you couldn't build that for the client.
[12:52] SPEAKER_01: So it'd be like four hours of work wasted.
[12:54] And it would probably mess up your dev environment for your
[12:57] actual client because
[12:59] SPEAKER_01: you would be a different Ruby version,
[13:00] SPEAKER_01: a different Rails version.
[13:02] SPEAKER_01: And so you would kind of destroy both ends.
[13:04] SPEAKER_01: And so Vagrant came out of that.
[13:05] SPEAKER_01: which was, I just need to go over there.
[13:07] SPEAKER_01: And what ended up becoming vagrant op suite,
[13:10] SPEAKER_01: you know,
[13:11] SPEAKER_01: few minutes,
[13:12] SPEAKER_01: let's help you for the next two hours.
[13:14] SPEAKER_01: And then, and how did you build it back then?
[13:16] SPEAKER_01: Was it some kind of virtual machine or?
[13:17] SPEAKER_01: Yeah, it was with virtual box, virtual Oracle.
[13:19] SPEAKER_01: Well, it wasn't the sun then, but virtual box.
[13:22] SPEAKER_01: And,
[13:22] SPEAKER_01: and that's,
[13:23] SPEAKER_01: that's another cool constraint,
[13:24] SPEAKER_01: which is that I was a college student,
[13:26] SPEAKER_01: so I had no money.
[13:27] SPEAKER_01: So this was expensive back then, right?
[13:29] SPEAKER_01: Virtualization was expensive.
[13:31] SPEAKER_01: Virtual box was free and open source.
[13:33] SPEAKER_01: I don't care about the open source side for that.
[13:35] SPEAKER_01: I was never going to read it, but yeah, it was free.
[13:38] SPEAKER_01: That was why I did it.
[13:39] SPEAKER_01: And that's why I did that and not like EC2, which did come out by then.
[13:43] But I didn't do EC2 because I didn't have money to pay for
[13:45] these instances.
[13:45] SPEAKER_01: So yeah, that was the constraints.
[13:48] SPEAKER_01: And I like bringing that up because I think
[13:51] So much of software engineering is understanding constraints
[13:54] and working with these
[13:55] SPEAKER_01: constraints.
[13:56] In your prior podcasts,
[13:57] they were called forces,
[13:59] like static and dynamic forces.
[14:00] SPEAKER_01: It's that.
[14:01] SPEAKER_01: And I think that helps create better software when you have constraints.
[14:05] SPEAKER_01: And that was my constraint.
[14:06] SPEAKER_01: Yeah.
[14:07] SPEAKER_01: Yeah,
[14:07] SPEAKER_01: so that was,
[14:08] SPEAKER_01: we have Vagrant,
[14:09] SPEAKER_01: we have this failed infrastructure project,
[14:12] SPEAKER_01: we have sort of my boss at consultancy getting me into infrastructure,
[14:16] SPEAKER_01: and all of the,
[14:17] SPEAKER_01: and then,
[14:17] SPEAKER_01: I mean,
[14:18] SPEAKER_01: externally,
[14:18] SPEAKER_01: we had the cloud being introduced,
[14:20] SPEAKER_01: AWS,
[14:21] SPEAKER_01: I went to school at University of Washington,
[14:22] SPEAKER_01: so...
[14:23] SPEAKER_01: I was right there.
[14:24] SPEAKER_01: Right in the epicenter.
[14:26] SPEAKER_01: Amazon was next door, right?
[14:28] SPEAKER_01: Amazon was right next door.
[14:29] SPEAKER_01: They donated a bunch of credits right away.
[14:31] SPEAKER_01: I knew about the launch.
[14:32] SPEAKER_01: Most of the CS students at UW interned at Amazon.
[14:37] SPEAKER_01: Not necessarily AWS, but also including AWS, but all over.
[14:40] armand uh interned at uh aws and so like i i was in the bubble
[14:47] of like cloud cloud
[14:48] cloud aws aws aws when people were pronouncing s3 like s cubed
[14:52] like people didn't
[14:53] know how to pronounce it right that's how that's how new it was
[14:55] and so yeah all
[14:56] this stuff kind of came together and uh kind of led me on the
[14:59] path to to build
[15:00] tooling to better manage and at that moment in time when you
[15:04] saw cloud you know you
[15:05] SPEAKER_00: saw was being big
[15:07] did you know or have a conviction that it would be big or as
[15:11] big as cloud had become?
[15:12] SPEAKER_00: Because this was,
[15:13] SPEAKER_00: I'm just trying to put yourself back,
[15:14] SPEAKER_00: like this was very,
[15:15] SPEAKER_00: very new back then,
[15:16] SPEAKER_00: right?
[15:17] SPEAKER_00: Totally, yeah.
[15:18] SPEAKER_00: And I think,
[15:18] SPEAKER_00: you know,
[15:18] SPEAKER_00: like if I imagine,
[15:19] I assume more people would have been skeptics for a thing that
[15:22] is just a fad or
[15:22] SPEAKER_00: whatever.
[15:23] SPEAKER_00: What was it like?
[15:24] SPEAKER_00: Can you bring us back a little bit there?
[15:26] Compared to today,
[15:28] it was very unpolished,
[15:31] I guess,
[15:31] as I would describe it.
[15:32] SPEAKER_01: You know, like, AWS in general was very unreliable.
[15:36] SPEAKER_01: S3 was the only ever reliable piece.
[15:38] SPEAKER_01: Everything else was totally unreliable.
[15:41] SPEAKER_01: And there was only a few services.
[15:43] SPEAKER_01: Like, EBS didn't even exist when we started.
[15:45] SPEAKER_01: So there was no durable storage besides S3 when I first started with it.
[15:49] SPEAKER_01: It just felt very raw.
[15:51] SPEAKER_01: And I never really viewed it as this is going to be big.
[15:55] SPEAKER_01: I mean, eventually, I thought it was going to be big.
[15:57] SPEAKER_01: What I viewed it as is this is the better way to do it.
[16:01] SPEAKER_01: This feels like the better way to do it.
[16:02] SPEAKER_01: Just, yeah, at a base level.
[16:04] SPEAKER_01: Like,
[16:05] SPEAKER_01: whether this wins or loses in the realm of markets and social,
[16:10] SPEAKER_01: like,
[16:11] SPEAKER_01: popularity,
[16:11] SPEAKER_01: I don't know.
[16:12] SPEAKER_01: But this felt good.
[16:14] SPEAKER_01: And so that's what kind of pushed me towards it is
[16:18] SPEAKER_01: And I say this over and over,
[16:19] SPEAKER_01: I'm really motivated by,
[16:21] SPEAKER_01: like,
[16:21] SPEAKER_01: what's the most fun and what,
[16:22] SPEAKER_01: like,
[16:22] SPEAKER_01: feels right.
[16:24] SPEAKER_01: And it just felt right to me.
[16:27] SPEAKER_01: I think where I started making the bet,
[16:30] SPEAKER_01: me and Armand both started making some kind of bet,
[16:32] SPEAKER_01: was not just when we started Hashgorp,
[16:34] SPEAKER_01: but we started Hashgorp on the basis of,
[16:36] SPEAKER_01: like,
[16:36] SPEAKER_01: multi-cloud.
[16:37] SPEAKER_01: And...
[16:39] SPEAKER_01: I really like to contextualize that at the time we were starting this,
[16:44] SPEAKER_01: which was like 2001,
[16:46] SPEAKER_01: 2012,
[16:46] SPEAKER_01: which is that AWS was huge.
[16:48] SPEAKER_01: Azure didn't really exist and Google Cloud didn't really exist.
[16:52] SPEAKER_00: There was Google App Engine, right?
[16:53] SPEAKER_00: It wasn't even Cloud.
[16:54] SPEAKER_01: Correct.
[16:55] SPEAKER_01: I used to use that when it was App Engine.
[16:57] SPEAKER_01: Yeah, yeah.
[16:58] SPEAKER_01: And so in that context,
[17:01] SPEAKER_01: as we were pitching these cloud agnostic tools,
[17:03] SPEAKER_01: I mean,
[17:03] SPEAKER_01: we got a lot of raised eyebrows being like,
[17:06] SPEAKER_01: this is a waste of time because AWS is the only player in town.
[17:09] SPEAKER_01: And our conviction was at that point,
[17:12] SPEAKER_01: cloud is going to be huge and anything that's economically huge,
[17:17] SPEAKER_01: other people want a piece of that pie.
[17:19] SPEAKER_01: And so you're not going to just have AWS.
[17:21] SPEAKER_01: It'll be huge,
[17:22] but you're going to have these others pop up and Microsoft is
[17:24] not going to sleep on
[17:25] SPEAKER_01: it and Google's not going to sleep on it and who knows who else.
[17:28] SPEAKER_01: And
[17:29] SPEAKER_01: Who knows?
[17:29] SPEAKER_01: And that was our conviction.
[17:30] SPEAKER_01: That was our bet.
[17:31] SPEAKER_01: And it mostly played out that way.
[17:34] SPEAKER_00: So when you decided to start HashiCorp, you had Vagrant.
[17:37] SPEAKER_00: What was the idea to invest in commercialized Vagrant?
[17:40] And did you go out to raise money or did you start doing it
[17:43] with Bootstrap?
[17:44] SPEAKER_00: How did that go?
[17:46] SPEAKER_00: It wasn't to commercialize vagrant.
[17:47] So what we had done is Armand and I both worked at this mobile
[17:50] ads company startup.
[17:51] SPEAKER_01: There's like less than 30 people.
[17:54] And we had built like with Python and C like these really rough
[18:01] prototypes of these
[18:02] SPEAKER_01: ideas that I had in this notebook of like service discovery and
[18:06] SPEAKER_01: like an early version of Terraform we called Launchy.
[18:08] We had DNS-based service discovery by connecting an
[18:12] off-the-shelf DNS server with
[18:14] SPEAKER_01: Postgres,
[18:15] SPEAKER_01: and we did all these,
[18:15] SPEAKER_01: like,
[18:16] SPEAKER_01: hacky things,
[18:17] SPEAKER_01: but they felt good.
[18:18] And again,
[18:18] we get back to this,
[18:19] like,
[18:20] how things feel to me to motivate me.
[18:22] SPEAKER_01: Like, it felt right, directionally right.
[18:24] SPEAKER_01: I...
[18:25] SPEAKER_01: I graduated.
[18:26] SPEAKER_01: The environment in Seattle was not very startup-heavy at the time.
[18:29] SPEAKER_01: Basically,
[18:30] SPEAKER_01: everyone was like,
[18:30] SPEAKER_01: are you going to work for Amazon or are you going to work for Microsoft?
[18:33] SPEAKER_01: Yeah, that was kind of the end.
[18:35] To a certain extent,
[18:36] Facebook was starting to show up up there,
[18:37] but that was it.
[18:39] SPEAKER_01: I knew I wanted to work for startups, so I moved to San Francisco.
[18:42] SPEAKER_01: I moved to San Francisco,
[18:43] SPEAKER_01: found a startup that would hire me,
[18:45] SPEAKER_01: which was a mobile ads thing,
[18:47] SPEAKER_01: and just wanted to learn.
[18:50] SPEAKER_01: That's the short step there.
[18:51] SPEAKER_01: I ended up in San Francisco.
[18:53] And I convinced Armand was actually going to do a PhD at
[18:56] Berkeley and he was
[18:57] SPEAKER_01: accepted and in and he was just a huge deal.
[18:59] SPEAKER_01: Huge deal.
[19:00] SPEAKER_01: I mean, incredible program.
[19:02] And so he was going to go there and he would have done amazing
[19:04] things there.
[19:05] SPEAKER_01: But I convinced him to join this mobile ad startup.
[19:08] SPEAKER_01: He actually took a year deferment on the PhD.
[19:10] SPEAKER_01: He's like, I'll give it a year.
[19:11] SPEAKER_01: Yeah, I'll join this mobile ad.
[19:13] SPEAKER_00: And I'll go back for Berkeley for sure.
[19:14] SPEAKER_01: If it doesn't work out, I'm going to go back.
[19:16] SPEAKER_01: And what ended up happening in that year is now what we get to,
[19:20] SPEAKER_01: which is that we had this hodgepodge of prototype tools that felt right.
[19:27] SPEAKER_01: And we were going to all these little startup mingling parties.
[19:30] SPEAKER_01: You know, it was like things like GitHub drink ups, but also just like
[19:34] are this is such a san francisco thing and that's why i think
[19:37] it's even though i
[19:38] don't want to live there again it was so magical at the time um
[19:41] was like across the
[19:41] street was this company that was called zim right at the time
[19:45] ultimately came lyft
[19:46] and they invited us over to get drinks and have pizza to demo
[19:52] this new app with a
[19:53] SPEAKER_01: mustache that like didn't have a name and
[19:55] SPEAKER_01: Wow.
[19:56] SPEAKER_01: Yeah, so like stuff like that.
[19:57] SPEAKER_00: You were there when I was born.
[19:58] SPEAKER_01: Yeah, yeah, yeah.
[19:59] SPEAKER_01: And like that happens all the time, like all the time in San Francisco.
[20:04] SPEAKER_01: And it's not unique to me at all.
[20:05] Yeah,
[20:06] there's a bunch of stories there that I think aren't worth
[20:08] getting into.
[20:08] SPEAKER_01: It's just like, it's fun.
[20:10] SPEAKER_01: But I went to all these things and people would just talk.
[20:12] SPEAKER_01: They're all a bunch of tech guys, right?
[20:15] SPEAKER_01: And you'd be like, what are you working on?
[20:16] SPEAKER_01: And there's two things I realized.
[20:19] SPEAKER_01: One is all these companies are cloud-first.
[20:22] SPEAKER_01: They're all just adopting AWS-first.
[20:24] SPEAKER_00: There was no dedicated... So this was like in 2011, 2012 or so.
[20:29] SPEAKER_00: They just went and paid for cloud, which was brand new, right?
[20:32] The previous generation just had on-prem,
[20:34] I remember people,
[20:35] server rooms and server admins.
[20:38] SPEAKER_00: They had roles for those, all that jazz.
[20:40] SPEAKER_00: That was just gone.
[20:42] SPEAKER_01: gone.
[20:42] SPEAKER_01: That must have been a massive shift.
[20:44] I literally can't think of one social event I went to where
[20:46] there was somebody that
[20:47] SPEAKER_01: had dedicated servers.
[20:48] SPEAKER_01: The only one is maybe Twitter.
[20:50] SPEAKER_00: Yeah,
[20:50] but I think we probably have to emphasize that this was a
[20:53] massive shift in the
[20:54] SPEAKER_00: industry,
[20:55] SPEAKER_00: right?
[20:55] SPEAKER_00: And it probably was only happening in Silicon Valley.
[20:57] SPEAKER_00: Probably.
[20:59] SPEAKER_00: Yeah, probably.
[21:00] SPEAKER_00: Well, I have it for everyone else.
[21:01] SPEAKER_01: At a scale that was larger than anywhere else.
[21:03] SPEAKER_01: It was probably in Silicon Valley.
[21:04] SPEAKER_01: The joke used to be,
[21:05] SPEAKER_01: because AWS is so unreliable,
[21:07] SPEAKER_01: the joke used to be that when AWS went down,
[21:10] SPEAKER_01: all these startups finally became more cash flow neutral.
[21:15] SPEAKER_01: They would lose less money.
[21:16] SPEAKER_01: So there would be a huge U.S.
[21:18] East outage,
[21:19] and everyone would be like,
[21:21] are you going to migrate regions?
[21:22] SPEAKER_01: Like, no, we're saving money right now.
[21:25] SPEAKER_01: But,
[21:27] SPEAKER_01: yeah,
[21:27] SPEAKER_01: getting back to it,
[21:29] SPEAKER_01: everyone was cloud-first,
[21:31] SPEAKER_01: cloud-born,
[21:31] SPEAKER_01: cloud-native,
[21:32] SPEAKER_01: whatever you want to call it.
[21:33] SPEAKER_01: And the other thing was,
[21:35] they were hitting all the same challenges that we were hitting
[21:38] and they didn't use
[21:40] SPEAKER_01: our tools cause they were just like internal prototype tools.
[21:42] SPEAKER_01: But, but I knew that our tools felt good.
[21:45] SPEAKER_01: So I had these two things come together where I had some ego,
[21:48] SPEAKER_01: some hubris where I'm like,
[21:49] SPEAKER_01: I'm pretty sure we're building the right thing along with,
[21:51] SPEAKER_01: I think the industry is moving in that direction and like we could cut,
[21:54] SPEAKER_01: we could come together.
[21:55] SPEAKER_01: Um, and so that led to let's start a company based around that.
[22:01] SPEAKER_01: The fact that I had vagrant was more of like a,
[22:05] SPEAKER_01: industry respect.
[22:06] SPEAKER_01: I mean, Vagrant wasn't that big then, so that's not saying much.
[22:10] But I just had some foundation publicly to give some
[22:15] credibility to head in this direction.
[22:18] SPEAKER_01: That was about it, and we started Hosh Corp.
[22:20] SPEAKER_00: And then when you decided you incorporated,
[22:22] SPEAKER_00: you know,
[22:22] SPEAKER_00: got the thing,
[22:23] SPEAKER_00: did you decide to raise money?
[22:24] SPEAKER_00: Because again,
[22:25] SPEAKER_00: back then,
[22:25] SPEAKER_00: I guess it wasn't as common wisdom,
[22:28] SPEAKER_00: you know,
[22:28] SPEAKER_00: Y Combinator was probably starting around that time.
[22:30] SPEAKER_00: So like startups,
[22:31] SPEAKER_00: were startups a big thing or was it a given that,
[22:33] SPEAKER_00: okay,
[22:33] SPEAKER_00: if you start a startup,
[22:34] SPEAKER_00: you're going to raise money?
[22:35] SPEAKER_01: In my social bubble, it was pretty much a given.
[22:37] SPEAKER_01: And
[22:39] SPEAKER_01: And not just that.
[22:41] SPEAKER_01: We incorporated.
[22:41] SPEAKER_01: I self-funded.
[22:43] I transferred $20,000 from my savings account into this
[22:49] corporate account,
[22:50] initial funding.
[22:51] SPEAKER_01: And I worked off of that.
[22:52] SPEAKER_01: I paid myself $0 for the first six months.
[22:55] SPEAKER_01: So the $20,000 was purely towards whatever things that company needed.
[22:59] SPEAKER_01: That was the first six months.
[23:01] SPEAKER_01: And then Armand joined after six months.
[23:03] SPEAKER_01: And we decided to raise.
[23:06] SPEAKER_01: And
[23:07] SPEAKER_01: The motivation there really is there weren't many other options.
[23:11] There were basically three options,
[23:13] as I saw it then,
[23:14] which was bootstrapping,
[23:16] right?
[23:16] SPEAKER_01: Just build something,
[23:19] SPEAKER_01: make money,
[23:20] SPEAKER_01: and as it becomes affordable,
[23:21] SPEAKER_01: continue to grow,
[23:22] SPEAKER_01: reinvest and grow.
[23:23] SPEAKER_01: Bootstrapping.
[23:24] SPEAKER_01: VC on the other side.
[23:25] And then in the middle was what I called patronage,
[23:27] which was not Patreon-style stuff today.
[23:32] SPEAKER_01: That infrastructure didn't exist.
[23:33] SPEAKER_01: There was no...
[23:35] subscriber donate type infrastructure then patronage was more
[23:39] like you might be
[23:40] able to convince a company like vmware to pay your salary for
[23:45] you to work on some
[23:46] idea and the best example is redis at vmware and yeah and we
[23:49] kind of laid out this
[23:50] plan that we wanted to do which was which at inception of the
[23:54] company included
[23:56] SPEAKER_01: terraform console
[23:58] SPEAKER_01: It included everything but Vault.
[24:00] SPEAKER_01: Vault came a little bit later.
[24:01] SPEAKER_01: And we looked at that and said,
[24:04] SPEAKER_01: if we bootstrap this,
[24:05] SPEAKER_01: even if we hit it out of the park,
[24:07] SPEAKER_01: this is going to take us a decade just to build the software.
[24:10] SPEAKER_01: And that's in the best case scenario.
[24:12] SPEAKER_01: This is just going to be slow.
[24:13] SPEAKER_01: And the problem with slow is that things have a window.
[24:15] SPEAKER_01: And the cloud is growing so fast that if we were that slow,
[24:18] SPEAKER_01: someone else was going to do it their own way.
[24:22] SPEAKER_01: I mean, I guess that was the primary issue.
[24:23] SPEAKER_01: We really just wanted to go fast.
[24:26] SPEAKER_01: You knew you needed to.
[24:27] Yeah,
[24:28] we needed to hire many engineers right away and start building
[24:32] right away.
[24:32] SPEAKER_01: And so VC was the route we chose.
[24:35] SPEAKER_00: Can you talk us through the first several products and what they do?
[24:38] SPEAKER_00: We know Vagrant,
[24:39] but just for those who are less aware of what became the Hashi
[24:43] stack later,
[24:43] SPEAKER_00: right?
[24:44] SPEAKER_01: Yeah, let me see if I can still get these in order.
[24:45] SPEAKER_01: I'm pretty sure I can.
[24:46] SPEAKER_01: So this Vagrant was predated.
[24:48] The first product that came out of HashiCorp itself was a
[24:50] product called Packer.
[24:53] SPEAKER_01: Kind of understated...
[24:55] publicly but kind of underpins a lot of things in the industry
[24:58] to this day that's
[24:59] an image building uh tool so building amazon images vmware
[25:04] images etc um i'm not
[25:07] SPEAKER_01: even sure how much like publicly came out but there are whole cloud like
[25:12] multi-billion dollar cloud platforms that all of their official
[25:15] images are like the
[25:16] SPEAKER_01: service images are built with packer
[25:19] Everyone was trying to utilize this horizontal scaling,
[25:22] auto-scaling nature of AWS.
[25:23] SPEAKER_01: That was the dream.
[25:24] SPEAKER_01: And it's kind of like the Cold Star problem with serverless today.
[25:30] If you were waiting tens of minutes for your server to be
[25:32] ready,
[25:32] you couldn't react.
[25:34] And so my idea was do that,
[25:37] snapshot the image,
[25:38] and then next time just spin up that image.
[25:40] SPEAKER_01: And so that was Packer.
[25:42] SPEAKER_01: That was Packer.
[25:42] SPEAKER_01: So Vagrant Packer.
[25:44] SPEAKER_01: The next one that came out was Console.
[25:47] SPEAKER_01: Console was solving the networking problem,
[25:51] SPEAKER_01: and not networking,
[25:52] SPEAKER_01: it was more solving the service discovery problem,
[25:54] SPEAKER_01: which was
[25:55] SPEAKER_01: You have all these machines coming and going before,
[25:58] SPEAKER_01: again,
[25:58] SPEAKER_01: like to contextualize this,
[25:59] before you would have a static set of machines that had IPs and
[26:02] you would probably
[26:02] SPEAKER_01: use DNS or something,
[26:03] SPEAKER_01: but the IPs didn't change that much.
[26:04] SPEAKER_01: So you could be like, oh, my database is here and it's not moving.
[26:07] But if you're in this world where web servers and load
[26:10] balancers and databases are
[26:11] SPEAKER_01: just breathing,
[26:13] SPEAKER_01: that's how I always describe it,
[26:14] SPEAKER_01: breathing their creation,
[26:16] SPEAKER_01: destruction,
[26:16] SPEAKER_01: creation,
[26:17] SPEAKER_01: destruction,
[26:17] SPEAKER_01: like constantly.
[26:18] then things are happening at a scale where the service
[26:21] discovery needs to be much faster.
[26:22] SPEAKER_01: And not just faster,
[26:24] SPEAKER_01: but you want to have better guarantees that when you get a response that,
[26:27] SPEAKER_01: oh,
[26:28] SPEAKER_01: it's at this IP address,
[26:29] SPEAKER_01: so that IP address is like ready.
[26:30] SPEAKER_01: It's not just,
[26:31] SPEAKER_01: you know,
[26:32] I think this is also kind of more mainstream with like
[26:34] Kubernetes readiness checks
[26:36] SPEAKER_01: and health checks and things like that.
[26:37] SPEAKER_01: It was bringing that to more like physical server or cloud servers,
[26:42] SPEAKER_01: virtual machines and things like that.
[26:43] SPEAKER_01: And so that was console.
[26:44] SPEAKER_01: Then after that, I think we did Terraform.
[26:47] SPEAKER_01: Terraform spins up infrastructure code, describe your infrastructure.
[26:52] SPEAKER_01: In AWS parlance,
[26:53] SPEAKER_01: it was things like all the attachments,
[26:56] SPEAKER_01: EBS volumes,
[26:57] SPEAKER_01: gateways,
[26:58] SPEAKER_01: VPCs,
[26:59] SPEAKER_01: subnets,
[26:59] SPEAKER_01: and connecting them all together.
[27:01] SPEAKER_01: The idea was I wanted to have an empty AWS account or any cloud account,
[27:05] SPEAKER_01: and I wanted to have this text,
[27:07] SPEAKER_01: and I wanted to say,
[27:08] SPEAKER_01: make this text reality,
[27:09] SPEAKER_01: and that's what Terraform is.
[27:10] SPEAKER_01: And you would...
[27:11] SPEAKER_01: wait whatever amount of time it took AWS,
[27:13] SPEAKER_01: and you would blink,
[27:14] SPEAKER_01: and you would have thousands of resources.
[27:16] SPEAKER_01: And then with one command again, you could just tear it down to zero.
[27:19] SPEAKER_01: That was Terraform.
[27:20] SPEAKER_01: So that came out in 2014.
[27:21] SPEAKER_01: So that was the next thing.
[27:25] SPEAKER_01: And then was Vault.
[27:28] SPEAKER_01: Vault is the easiest to describe.
[27:30] SPEAKER_01: It's Secrets Management as core.
[27:32] SPEAKER_01: Secrets Management Encryption.
[27:34] grew to do a lot more things but that was like like well we
[27:36] have like our on your
[27:37] local developer machine you have you got like your environment
[27:40] variables i'm doing
[27:40] that at scale at a team level at a company level at a service
[27:44] services need to
[27:45] access all these stuff securely yeah it was much more focused
[27:49] on the like the the
[27:50] production environment secrets um i had dreams and visions of
[27:55] really solving like
[27:56] SPEAKER_01: developer secret problem but vault really never never did that well
[27:59] SPEAKER_00: Michel just talked about secrets management,
[28:01] SPEAKER_00: which turned out to be a pretty important focus area for him.
[28:04] In general,
[28:05] security is both very valuable but also pretty hard to do well.
[28:08] SPEAKER_00: This leads us nicely to our season sponsor, Sonar.
[28:11] Looking at where we are today,
[28:13] we've now moved past tap completion into the era of agentic AI.
[28:17] SPEAKER_00: Autonomous agents are opening pull requests.
[28:19] SPEAKER_00: One big question.
[28:20] SPEAKER_00: How do we get the speed of AI without inheriting a mountain of risk?
[28:24] Sonar,
[28:24] the makers of SonarCube,
[28:26] has a really clear way of framing this,
[28:28] vibe,
[28:28] then verify.
[28:30] SPEAKER_00: The vibe part is about innovation,
[28:32] giving your teams and your AI agents the freedom to build and
[28:35] iterate at high
[28:35] SPEAKER_00: velocity.
[28:36] SPEAKER_00: The verify part is the essential automated guardrail.
[28:39] SPEAKER_00: As agents start contributing more of our code base,
[28:42] SPEAKER_00: independent verification that checks every line,
[28:44] SPEAKER_00: human or machine generated,
[28:46] against your quality and security standards is more critical
[28:49] than ever before.
[28:50] Helping developers and organizational leaders get the most out
[28:52] of AI while ensuring
[28:53] SPEAKER_00: quality,
[28:54] SPEAKER_00: security,
[28:54] and maintainability is one of the main themes of the upcoming
[28:57] Sonar Summit.
[28:58] SPEAKER_00: This isn't just a user conference.
[29:00] SPEAKER_00: It's where devs,
[29:01] SPEAKER_00: platform engineers,
[29:02] and engineering leaders are coming together to share practical
[29:04] strategies for this
[29:05] SPEAKER_00: new era.
[29:06] SPEAKER_00: I'm excited to share that I'll be speaking there as well.
[29:08] If you're trying to figure out how to adopt AI without
[29:10] sacrificing code quality,
[29:12] SPEAKER_00: join us at the Sonar Summit.
[29:13] To see the agenda and register for the free virtual event on
[29:16] March the 3rd,
[29:17] SPEAKER_00: head to sonarsource.com slash pragmatic slash sonarsummit.
[29:21] SPEAKER_00: And with this,
[29:22] let's get back to HashiCorp and why the company decided to
[29:25] raise six months after
[29:26] SPEAKER_00: founding.
[29:27] But yeah,
[29:28] it's just basically like,
[29:29] yeah,
[29:29] where do you store your secrets?
[29:30] SPEAKER_01: And the secrets were not just,
[29:32] SPEAKER_01: I forgot the words I used to describe this,
[29:33] SPEAKER_01: but secrets were not just like passwords,
[29:35] SPEAKER_01: but it was also like PII.
[29:36] SPEAKER_01: So how do you protect emails and addresses and stuff for your customers?
[29:41] SPEAKER_00: Or credit card numbers.
[29:41] SPEAKER_00: Credit card numbers.
[29:43] SPEAKER_01: So Vault was core to all of that and continues to be.
[29:46] SPEAKER_01: That is hard to build, something like that.
[29:50] Yeah,
[29:50] we were really scared when we built that,
[29:52] actually,
[29:52] because we kind of hid the fact.
[29:54] SPEAKER_01: We never lied about it.
[29:56] But nobody on the team that built Vault had more than one
[29:59] quarter of security,
[30:01] SPEAKER_01: undergraduate security experience.
[30:02] SPEAKER_01: There was no professional security engineers from industry.
[30:05] SPEAKER_01: There was no professional security academics.
[30:07] and uh yeah we built it we got a lot of audits because of that
[30:10] like we were scared
[30:11] so we did get a couple we for us it was very expensive as a
[30:15] startup we paid a
[30:16] couple firms tens of thousands of dollars for vault 0.1 to
[30:19] audit it we paid two um
[30:21] we got we shared the early beta with a lot of people who were
[30:24] security experts in
[30:26] order to review it not publicly just privately um we got a lot
[30:29] of good feedback um
[30:31] SPEAKER_01: but yeah we we didn't want that exposed in a sense so i
[30:34] SPEAKER_00: I understand.
[30:35] SPEAKER_00: But I mean,
[30:36] SPEAKER_00: it kind of validates that you can build good stuff with,
[30:39] SPEAKER_00: I guess,
[30:40] SPEAKER_00: people who might not have the experience,
[30:42] SPEAKER_00: but I guess people were learning,
[30:43] SPEAKER_00: right?
[30:43] SPEAKER_01: Yeah,
[30:44] SPEAKER_01: the security stuff ended up,
[30:45] SPEAKER_01: you know,
[30:46] SPEAKER_01: we really quickly hired professionals that helped the product.
[30:49] SPEAKER_01: And the security stuff was always pretty solid.
[30:51] But I think what it really showed was what the security
[30:55] industry needed was a shift
[30:56] SPEAKER_01: in user experience more than a shift in like what it did.
[31:00] Because like what we were doing was not fundamentally different
[31:02] than existing multi
[31:06] SPEAKER_01: hundred million billion dollar companies that already existed.
[31:09] But the experience,
[31:10] the way you interface with it was dramatically different.
[31:13] SPEAKER_01: And that was, I think, a good example of that.
[31:15] SPEAKER_01: Yeah.
[31:16] SPEAKER_01: And after Vault came... Nomad.
[31:19] SPEAKER_01: Nomad.
[31:19] SPEAKER_01: Yeah, Nomad, which was our scheduler, which was a couple years late.
[31:25] SPEAKER_01: To the market, yeah.
[31:27] SPEAKER_01: You say scheduler.
[31:28] SPEAKER_01: Was it not an orchestrator?
[31:29] SPEAKER_01: I always described it as scheduling.
[31:31] SPEAKER_01: What did it do?
[31:32] SPEAKER_01: Simple thing.
[31:33] SPEAKER_01: You have a pool of compute.
[31:34] SPEAKER_01: It's finally solved that problem that we had in undergraduate.
[31:37] SPEAKER_01: You have a pool of compute.
[31:38] You have an app that has a certain set of requirements and it
[31:41] needs to find a place to run it.
[31:42] SPEAKER_00: Yeah, yeah.
[31:42] SPEAKER_00: The undergrad problem we talked about.
[31:44] SPEAKER_00: And as you're building out like these,
[31:46] SPEAKER_00: you said like some of these took years,
[31:47] SPEAKER_00: like how did the business,
[31:50] SPEAKER_00: like HashiCorp as a business work?
[31:52] SPEAKER_00: Like did you, did you start to generate some?
[31:54] SPEAKER_00: There was no business.
[31:55] SPEAKER_00: There was no, so, so like, all right, tell me about this one.
[31:58] SPEAKER_01: Yeah, I think we waited too long to develop a business.
[32:01] But for four years,
[32:03] there was actually revenue from a couple of random sources.
[32:07] SPEAKER_01: But there was no real reproducible growing business.
[32:10] SPEAKER_00: So you were just building this vision of the founder's vision of like,
[32:15] SPEAKER_00: right,
[32:16] SPEAKER_00: we need all these things.
[32:18] SPEAKER_00: That would have taken like a decade of bootstrap.
[32:19] SPEAKER_00: Let's build it.
[32:20] SPEAKER_00: Build it in five years and figure it out.
[32:22] SPEAKER_00: That was literally it.
[32:23] SPEAKER_01: Yeah, that was literally it.
[32:24] SPEAKER_01: And, you know, it was all open source.
[32:26] And I always had this mentality,
[32:28] which was like,
[32:29] if the company fails,
[32:31] it doesn't matter.
[32:32] Because if there are good ideas,
[32:33] the open source community will just continue.
[32:36] SPEAKER_01: And so I don't think I would ever tell that to my investors at that time.
[32:39] SPEAKER_01: But,
[32:40] SPEAKER_01: you know,
[32:40] SPEAKER_01: I had this idea,
[32:40] which was like the technology was the most important thing to
[32:43] get out into the
[32:43] SPEAKER_01: world.
[32:44] SPEAKER_01: The business, I really sure hope we could figure it out.
[32:48] SPEAKER_00: But it's not the most important thing.
[32:49] SPEAKER_00: Yeah.
[32:50] SPEAKER_00: And for those engineers who are thinking of becoming founders or,
[32:54] SPEAKER_00: you know,
[32:55] SPEAKER_00: might be founders,
[32:56] SPEAKER_00: how did this work with your investors?
[32:57] SPEAKER_00: You know, when they put in money, like did they get some board seats?
[33:00] SPEAKER_00: Did you have to manage expectations?
[33:02] SPEAKER_00: Because I'm hearing just putting a bit of my business hat on is like,
[33:05] SPEAKER_00: you know,
[33:05] SPEAKER_00: for four years,
[33:06] SPEAKER_00: you're building these cool things.
[33:07] SPEAKER_00: You don't exactly have a business plan.
[33:09] SPEAKER_00: How did that work?
[33:10] Or they just believe that eventually you guys will figure it
[33:13] out or they sell some
[33:14] SPEAKER_00: kind of traction with like open source.
[33:16] SPEAKER_00: It's traction.
[33:17] SPEAKER_01: And I don't think what we did was atypical for Silicon Valley.
[33:20] SPEAKER_01: So the really broad hand wavy way I like to describe it is,
[33:24] SPEAKER_01: you know,
[33:24] SPEAKER_01: your seed is about building the product.
[33:27] SPEAKER_01: You don't even know if there's product market fit.
[33:29] SPEAKER_01: You're just guests,
[33:29] SPEAKER_01: not you're,
[33:30] SPEAKER_01: you're making educated guests,
[33:31] SPEAKER_01: but you're building something,
[33:32] SPEAKER_01: getting the A,
[33:33] SPEAKER_01: you've sort of proven hints of product market fit.
[33:36] but you definitely don't have it yet you've proven hints and
[33:39] then when you get the
[33:40] SPEAKER_01: b you've proven product market fit and now you haven't really proven like
[33:44] repeatable revenue you've you now have hints of revenue but you
[33:48] know the product is
[33:49] useful you know people like the product and want to use the
[33:51] product and maybe want
[33:52] to pay for the product but you don't know exactly how to get
[33:55] everybody to pay for
[33:56] the product and then cd and so on it's just continuing to build
[33:59] the repeatable
[34:00] SPEAKER_01: revenue machine
[34:01] SPEAKER_01: And so with that framework in mind, we were on the right track.
[34:04] SPEAKER_01: It was basically like to build the product.
[34:08] We had clear product market fit by the A in terms of the open
[34:12] source,
[34:13] right?
[34:13] We had millions of downloads,
[34:15] a lot of stars on GitHub,
[34:17] all sorts of signals that showed that
[34:20] SPEAKER_01: This was resonating.
[34:21] SPEAKER_01: We had zero revenue.
[34:23] SPEAKER_01: And so,
[34:23] SPEAKER_01: you know,
[34:23] SPEAKER_01: it was raise money and slowly,
[34:26] SPEAKER_01: slowly get closer and closer to solving the business problem.
[34:29] And I think we're just a year or two late or like later than
[34:32] the average startup.
[34:33] But the general keyframes were the same,
[34:37] just on the slightly wrong timeline,
[34:38] I guess.
[34:40] SPEAKER_00: And then when you decided to do a business,
[34:42] this was you already had the Hashi stack and then you built
[34:45] managed offering.
[34:46] SPEAKER_00: I remember.
[34:46] SPEAKER_00: Yeah.
[34:47] SPEAKER_01: Our first foray into commercialization was a total failure.
[34:51] SPEAKER_01: It was this.
[34:52] SPEAKER_01: Oh, really?
[34:53] SPEAKER_01: Yeah.
[34:53] SPEAKER_01: We had this product that some people,
[34:55] SPEAKER_01: you would have to have been a diehard HashiCorp product fan to know this,
[34:59] SPEAKER_01: but.
[34:59] SPEAKER_01: We had this first product that was called Atlas.
[35:02] And the idea was commercially shipping the vision of running
[35:07] all the products.
[35:08] SPEAKER_01: And so there's a couple death knells there.
[35:11] SPEAKER_01: One of them was that you had to run all the products.
[35:13] SPEAKER_01: And so if you were just like a vault user,
[35:15] SPEAKER_01: you had a really impossible time buying into our commercial product.
[35:20] And the second was just that it was just a huge problem to like
[35:23] attach onto.
[35:24] SPEAKER_01: Regardless of the option required,
[35:25] you're trying to solve the problem that multiple different
[35:29] buying organizations in
[35:31] SPEAKER_01: a company were fighting over.
[35:32] SPEAKER_01: So like even the people who had adopted all our tools,
[35:35] SPEAKER_01: we ran into the problem of who pays for it.
[35:37] SPEAKER_01: It wasn't as simple as engineering paying for it.
[35:38] SPEAKER_01: Correct.
[35:39] SPEAKER_01: I think one of the lessons that I would have,
[35:41] SPEAKER_01: you know,
[35:42] I would have for engineers that become founders that don't have
[35:44] a business
[35:44] SPEAKER_01: background.
[35:44] One of the tough lessons I had to learn is that companies want
[35:47] to pay for software,
[35:48] SPEAKER_01: but they will fight over whose budget owns that.
[35:52] SPEAKER_00: Budgets are important, right?
[35:54] SPEAKER_01: Yes, so the budget has to exist.
[35:55] SPEAKER_01: And if it looks like a networking problem,
[35:57] SPEAKER_01: they're going to say,
[35:58] SPEAKER_01: oh,
[35:58] SPEAKER_01: networking should pay for that.
[35:59] SPEAKER_01: So I have more budget to buy my other toys that I want.
[36:02] SPEAKER_01: Or I can hire more people.
[36:03] SPEAKER_01: Yeah, it could get broken down into like vendor budgets.
[36:07] SPEAKER_01: It could already be earmarked for external purchase.
[36:09] But yeah,
[36:10] so we have this product that was like,
[36:11] does security pay for it?
[36:12] SPEAKER_01: Does networking pay for it?
[36:15] SPEAKER_01: Does dev tooling pay for it?
[36:17] SPEAKER_01: Like, where does this go?
[36:18] And it's just that Spider-Man meme where everyone's pointing at
[36:20] each other.
[36:21] SPEAKER_01: Ultimately, you don't sell anything.
[36:23] SPEAKER_01: And so that was a failure for that reason.
[36:26] SPEAKER_01: So I don't remember the total time we chased this down,
[36:31] SPEAKER_01: but we had a board meeting for sure on a Friday.
[36:34] SPEAKER_01: And board meetings were usually on Fridays.
[36:36] SPEAKER_01: And we had this board meeting.
[36:38] SPEAKER_01: We're based in the city of San Francisco.
[36:41] SPEAKER_01: Board meetings were an hour south in real Silicon Valley.
[36:45] SPEAKER_01: And it didn't go well.
[36:47] SPEAKER_01: There was no yelling.
[36:49] SPEAKER_01: There was nobody saying, you guys are...
[36:52] messing up there was nothing like that it was just the way I
[36:55] describe it is when
[36:57] your parents aren't happy with you but they don't have to say
[37:00] that they're not
[37:00] happy with you you know but you know they're not happy with you
[37:04] we had this board
[37:05] SPEAKER_01: meeting we drove home Armand and I complete drive home was silent
[37:11] SPEAKER_01: It's Friday night,
[37:12] SPEAKER_01: so usually what we do is we go straight to...
[37:14] SPEAKER_01: Armand lived in the city and I lived in LA already,
[37:16] but we'd go straight back to Armand's place and just have a
[37:20] glass of wine,
[37:21] SPEAKER_01: debrief,
[37:22] SPEAKER_01: talk through things.
[37:23] SPEAKER_01: And we didn't talk in this car right home.
[37:26] SPEAKER_01: Armand drove straight to the office.
[37:28] SPEAKER_01: I didn't question that.
[37:30] SPEAKER_01: We went into the office, sat at a table not much larger than this.
[37:34] SPEAKER_01: The only difference was there would be a whiteboard here.
[37:37] SPEAKER_01: I think one of us at that point said,
[37:40] SPEAKER_01: Well, that didn't go well.
[37:43] SPEAKER_01: We both knew it.
[37:43] SPEAKER_01: We didn't feel good.
[37:45] SPEAKER_01: And the sequence of events here is now very fuzzy,
[37:49] SPEAKER_01: but at a certain point,
[37:51] SPEAKER_01: we decided,
[37:53] SPEAKER_01: let's play this experiment where if there was no sunk cost,
[37:57] SPEAKER_01: if we were starting from scratch,
[37:58] SPEAKER_01: what would we do differently today?
[38:00] SPEAKER_01: We whiteboarded all this stuff.
[38:01] SPEAKER_01: What we whiteboarded out was per product,
[38:03] SPEAKER_01: enterprise products,
[38:05] SPEAKER_01: and doing Vault first,
[38:07] SPEAKER_01: and all this stuff.
[38:07] SPEAKER_01: We wrote it out.
[38:09] SPEAKER_01: Spent some amount of time there.
[38:10] SPEAKER_01: It's still Friday.
[38:11] SPEAKER_01: It might be Saturday in terms of the time of day, but it's still Friday.
[38:14] I think it was Armand who looked at the board and goes,
[38:17] why don't we just do that?
[38:19] SPEAKER_01: Like, why not?
[38:20] SPEAKER_01: And I was like, yeah, why not?
[38:23] SPEAKER_01: So we decided over the course of that weekend,
[38:26] SPEAKER_01: Just throw it all away.
[38:28] SPEAKER_01: Just throw everything we were doing before away.
[38:30] SPEAKER_01: We had two paying customers.
[38:31] SPEAKER_01: We were like, just breach contract.
[38:33] SPEAKER_01: I don't know.
[38:33] SPEAKER_01: Like, figure it out.
[38:34] SPEAKER_01: Like, get out of it.
[38:35] SPEAKER_01: We're done.
[38:37] SPEAKER_01: And we convened an all-hands meeting on Monday.
[38:40] SPEAKER_01: Probably only about 20,
[38:41] SPEAKER_01: 30 people in the company that time,
[38:42] SPEAKER_01: but we convened an all-hands meeting over Zoom.
[38:45] SPEAKER_01: And we might not have used Zoom then, but whatever video chat.
[38:48] SPEAKER_01: And we said, okay, we're switching directions.
[38:51] SPEAKER_01: We are now enterprise as our customer, open core per product.
[38:57] We would have this open source and we would have a forked
[38:59] version internally that
[39:00] SPEAKER_01: had closed source features.
[39:02] SPEAKER_01: It was a fork, but yeah.
[39:04] SPEAKER_01: Open core business model.
[39:05] SPEAKER_01: Armand and I thought people would quit.
[39:08] SPEAKER_01: We thought we would lose.
[39:09] SPEAKER_01: We don't have an exact number.
[39:11] SPEAKER_01: We thought it would shatter some level of confidence and like,
[39:15] SPEAKER_01: wow,
[39:15] SPEAKER_01: these guys have no idea what they're doing.
[39:17] SPEAKER_01: We didn't have any idea what we're doing.
[39:19] SPEAKER_01: And
[39:20] you know open core even then had a bit of a like icky taste in
[39:24] people's mouth and
[39:25] so like we thought people would just like philosophically quit
[39:27] being like no i came
[39:28] here to work on open source i'm not going to do open core um
[39:30] enterprise was kind of
[39:32] just like a sooty boring thing there was like multiple facets
[39:35] of why people might
[39:35] SPEAKER_01: quit nobody quit uh the vibes in slack were amazing super positive
[39:43] SPEAKER_00: Oh, yeah.
[39:44] SPEAKER_00: What happened?
[39:44] SPEAKER_00: You think like why people?
[39:46] SPEAKER_01: Yeah, we asked about it in one on ones and follow ups.
[39:49] We asked about it and it was really like everyone is kind of
[39:52] just like buzzing that
[39:54] SPEAKER_01: we had a clear direction and a conviction.
[39:57] SPEAKER_01: And, you know, there's fear of the unknown.
[39:59] SPEAKER_01: But but before there was this feeling of like,
[40:01] SPEAKER_01: we're just we're just throwing darts at the wall and doing this thing.
[40:05] SPEAKER_01: And we don't know who exactly who our customer is.
[40:08] SPEAKER_01: And there was all this uncertainty in a different way.
[40:10] SPEAKER_01: And now it was like,
[40:11] SPEAKER_01: we don't know if this will work,
[40:12] SPEAKER_01: but at least we're just going to sprint towards this.
[40:15] SPEAKER_01: Like there's these clear things,
[40:16] SPEAKER_01: which is like definitely enterprise,
[40:18] SPEAKER_01: definitely open core,
[40:19] SPEAKER_01: definitely vault.
[40:19] Like all these things are set in stone that gave us a different
[40:22] set of certainty
[40:23] SPEAKER_01: that suddenly the company was like,
[40:25] SPEAKER_01: let's go.
[40:26] SPEAKER_01: Um, so yeah, nobody quit.
[40:27] SPEAKER_01: It went super well.
[40:28] SPEAKER_01: And,
[40:29] SPEAKER_01: um,
[40:29] SPEAKER_01: we started,
[40:30] SPEAKER_01: I don't,
[40:30] SPEAKER_01: I don't know what time of year,
[40:31] SPEAKER_01: but it was,
[40:31] SPEAKER_01: it was like in the fall we built vault enterprise,
[40:35] SPEAKER_01: um,
[40:35] SPEAKER_01: by the new year within like the first quarter of,
[40:38] SPEAKER_01: of trying to do sales.
[40:39] SPEAKER_01: We could just like tell that it was different.
[40:41] SPEAKER_01: It wasn't like obviously successful yet,
[40:43] SPEAKER_01: but just the caliber of conversation we're having the,
[40:47] the distance we're getting in the buying process and the speed
[40:51] we're doing it,
[40:52] SPEAKER_01: it just felt different.
[40:53] SPEAKER_01: And what was different of this approach?
[40:55] SPEAKER_01: Yeah,
[40:55] SPEAKER_01: I mean,
[40:56] SPEAKER_01: part of it just comes down to like the classic startup,
[40:58] SPEAKER_01: like listen to your customer.
[40:59] And we should have listened from the beginning because our
[41:03] potential customers were
[41:04] SPEAKER_01: screaming at us to do what we ended up doing,
[41:06] which is we would give these pitches about adopt all the
[41:09] products and buy this pie
[41:10] SPEAKER_01: in the sky thing.
[41:11] And there were so many meetings where someone would be like,
[41:13] okay,
[41:14] I'll think about that.
[41:15] SPEAKER_01: But how do you replicate your secrets involved?
[41:18] They would just ask these questions where if I was just
[41:22] listening,
[41:22] I was so blinded.
[41:23] SPEAKER_01: A lot of us were blinded, but I was so blinded.
[41:25] SPEAKER_01: If I was just listening,
[41:26] SPEAKER_01: I'd be like,
[41:27] SPEAKER_01: wait,
[41:28] SPEAKER_01: a lot of people are asking about secrets replication.
[41:31] SPEAKER_01: And that's an at-scale problem.
[41:34] SPEAKER_01: Maybe we could close source that.
[41:37] SPEAKER_01: That's what we ended up doing.
[41:38] That was our first feature with secrets replication,
[41:41] not even across data centers.
[41:42] SPEAKER_01: The first feature was just a cluster of vault servers in a single region.
[41:49] SPEAKER_01: You would sell this more focused product,
[41:51] SPEAKER_01: but now the problem I talked about earlier,
[41:53] SPEAKER_01: security was definitely the buyer.
[41:55] SPEAKER_01: There was an obvious budget, obvious person you were talking to.
[41:59] SPEAKER_01: There was a feature that resonated with that scale.
[42:03] And so we were just having much higher quality meetings in
[42:06] terms of getting this done.
[42:07] RAJESH MADRANI- Michel just talked about how HashiCorp managed
[42:10] to build a product
[42:11] that Enterprise customers cared about and wanted to buy because
[42:14] it resonated with
[42:14] SPEAKER_00: their scale.
[42:15] SPEAKER_00: This brings us nicely to our presenting partner for the season, Statsig.
[42:19] Static offers engineering teams the tooling for experimentation
[42:22] and feature
[42:22] flagging that used to require years of internal work to build
[42:25] and is especially
[42:26] SPEAKER_00: important on enterprise scale.
[42:27] SPEAKER_00: Here's what looks in practice.
[42:29] SPEAKER_00: You ship a change behind a feature gate and roll that gradually,
[42:32] SPEAKER_00: say,
[42:32] SPEAKER_00: to 1% or 10% of users at first.
[42:35] SPEAKER_00: You watch what happens.
[42:36] SPEAKER_00: Not just did it crash, but what did it do to the metrics you care about?
[42:40] SPEAKER_00: Conversion, retention, error rate, latency.
[42:43] SPEAKER_00: If something is off, you turn it off quickly.
[42:45] SPEAKER_00: If it's trending the right way, you keep rolling it forward.
[42:48] SPEAKER_00: And the key is that the measurement is part of the workflow.
[42:51] You're not switching between three tools and trying to match up
[42:53] segments and
[42:54] SPEAKER_00: dashboards after the fact.
[42:56] SPEAKER_00: Feature flags,
[42:56] SPEAKER_00: experiments,
[42:57] SPEAKER_00: and analytics are in one place,
[42:59] SPEAKER_00: using the same underlying user assignments and data.
[43:01] This is why teams at companies like Notion,
[43:03] Brex,
[43:04] and Atlassian use Statsig.
[43:05] SPEAKER_00: Statsig has a generous free tier to get started,
[43:08] SPEAKER_00: and pro pricing for teams starts at $150 per month.
[43:10] To learn more and get a 30-day enterprise trial,
[43:13] go to statsig.com slash pragmatic.
[43:15] And with this,
[43:16] let's get back to the episode and what came after they built
[43:18] Vault.
[43:19] SPEAKER_01: And I get asked on the open source side all the time,
[43:21] SPEAKER_01: but these buyers,
[43:23] SPEAKER_01: like corporate buyers,
[43:25] SPEAKER_01: do not care at all about open source.
[43:27] SPEAKER_01: They don't care at all.
[43:28] SPEAKER_01: Like they need a commercial agreement.
[43:32] SPEAKER_01: And so the closed source nature of it, like,
[43:36] Some people needed like legal protections around like code
[43:39] escrow in terms of
[43:41] SPEAKER_01: downtime and stuff like that.
[43:42] SPEAKER_01: That was about the extent of it.
[43:44] SPEAKER_01: Otherwise they were like, you know, we need support.
[43:46] SPEAKER_01: We need proof of concept to prove it works.
[43:48] Um,
[43:49] we need some white papers in terms of like other customers
[43:51] scale,
[43:52] blah,
[43:52] blah,
[43:52] blah.
[43:53] SPEAKER_01: Um, and yeah, that's what we had to build up after that and get going.
[43:56] SPEAKER_01: And then,
[43:57] so you started selling with vault and then you did it for the
[43:59] other products as
[43:59] SPEAKER_01: well,
[44:00] SPEAKER_01: right?
[44:00] SPEAKER_01: Yeah, we did terraform and we did console, um,
[44:04] we had it for all the products,
[44:05] but,
[44:05] but,
[44:06] you know,
[44:06] all this data is public.
[44:07] SPEAKER_01: You could look at it and, well, for a period of time, it was public.
[44:10] You could look at it in like the public reports of when
[44:11] HashiCorp was a public company.
[44:13] SPEAKER_01: You know, it really broke down to all Terraform.
[44:15] One thing I,
[44:16] I remember is Terraform just became so,
[44:20] so,
[44:20] so popular across the industry.
[44:22] SPEAKER_00: So like,
[44:22] SPEAKER_00: you know,
[44:23] SPEAKER_00: like there's a hashi stack,
[44:24] SPEAKER_00: but I,
[44:24] I only layer that all the other parts existed because like
[44:27] Terraform just seemed to
[44:29] SPEAKER_00: be everywhere.
[44:29] SPEAKER_00: Why do you think that sudden popularity was?
[44:33] It's so funny to hear that because I accept and know that now
[44:36] and I feel the same
[44:37] SPEAKER_01: way that you feel now that Terraform is this huge thing.
[44:40] SPEAKER_01: But for the longest time,
[44:42] SPEAKER_01: like we were the vagrant company,
[44:43] SPEAKER_01: like all the other tools were like no one knew the other tools.
[44:46] SPEAKER_01: And not only that,
[44:47] SPEAKER_01: like Terraform,
[44:50] SPEAKER_01: one of the things that kind of frustrates me,
[44:51] SPEAKER_01: I haven't heard it recently,
[44:52] SPEAKER_01: but for a period of time,
[44:53] SPEAKER_01: one of the things that frustrated me was like,
[44:55] SPEAKER_01: oh,
[44:55] SPEAKER_01: they only won because they were first to market.
[44:57] SPEAKER_01: I hear that a lot.
[44:58] SPEAKER_01: And we were like seventh to market.
[45:01] SPEAKER_01: Okay.
[45:02] SPEAKER_01: So like.
[45:03] SPEAKER_00: To market in what category?
[45:04] SPEAKER_01: In terms of that infrastructure as codes.
[45:07] SPEAKER_01: So there were like other like players who.
[45:10] SPEAKER_00: So many.
[45:10] SPEAKER_01: Yeah.
[45:10] SPEAKER_01: Yeah.
[45:11] SPEAKER_01: And no one was a clear winner.
[45:12] SPEAKER_01: It was a warring market.
[45:13] SPEAKER_01: But like that first year 2014 when we came out to Airform.
[45:18] I,
[45:19] you know,
[45:19] at that time,
[45:20] one of my marketing strategies was I was at every conference.
[45:23] SPEAKER_01: I went, I traveled an obscene amount.
[45:26] SPEAKER_01: I was speaking wherever I could,
[45:29] SPEAKER_01: but even if I couldn't speak,
[45:29] SPEAKER_01: I was going just to talk to people.
[45:32] And there's actually a little anecdote here was when the COVID
[45:35] lockdowns happened
[45:36] SPEAKER_01: in March,
[45:36] SPEAKER_01: 2020,
[45:37] SPEAKER_01: my wife and I had nothing to do and we didn't have kids yet.
[45:40] SPEAKER_01: And we opened up our calendars and we realized that
[45:45] SPEAKER_01: We had been dating since 2012,
[45:47] and the first time in almost 10 years of our relationship that
[45:52] I will have been in
[45:53] SPEAKER_01: the same place longer than eight days.
[45:56] SPEAKER_01: No.
[45:57] SPEAKER_01: For almost 10 years,
[45:58] SPEAKER_01: nine years,
[45:58] SPEAKER_01: for nine years straight,
[46:00] SPEAKER_01: I had been somewhere different at least every eight days.
[46:02] SPEAKER_01: That's how much you traveled.
[46:04] SPEAKER_01: That's how much I traveled, yeah.
[46:05] And I know there's consultants that travel a lot more and
[46:07] stuff,
[46:07] but like,
[46:08] SPEAKER_01: I was traveling a lot.
[46:09] SPEAKER_01: I was coding a lot.
[46:10] SPEAKER_01: I was doing all these things.
[46:12] SPEAKER_01: You must have coded while you traveled as well.
[46:14] SPEAKER_01: All the time.
[46:14] SPEAKER_01: I had a whole system.
[46:15] SPEAKER_01: When I started traveling, in-flight Wi-Fi didn't exist.
[46:17] SPEAKER_01: Yeah, exactly.
[46:19] SPEAKER_01: Even now, it's kind of patchy.
[46:20] SPEAKER_01: Yeah,
[46:20] SPEAKER_01: so I wrote these scripts that I ended up iterating on,
[46:22] SPEAKER_01: but mostly used,
[46:24] SPEAKER_01: where I downloaded all the GitHub issues,
[46:27] SPEAKER_01: and I categorized them,
[46:28] and I would just break it down into tasks that none took more
[46:32] than 10 to 15
[46:32] SPEAKER_01: minutes.
[46:34] SPEAKER_01: And I just created this list and when I was on the plane,
[46:37] SPEAKER_01: I would just one by one bust them out.
[46:40] SPEAKER_01: There's no internet, so just commit them locally.
[46:42] And then I would get back and some people used to notice this
[46:45] because I would land
[46:46] and you would get this push and people would get these email
[46:48] notifications where
[46:49] SPEAKER_01: like 30 issues were closed all at once.
[46:51] SPEAKER_01: Wow.
[46:52] But I found the key was pre-planning what issues we were going
[46:55] to work on.
[46:56] SPEAKER_01: I did that online on the ground.
[46:58] SPEAKER_01: Yeah.
[46:59] And then breaking them down into 15 minute chunks because I
[47:02] found it was really
[47:02] SPEAKER_01: hard to get into like multi-hour,
[47:05] SPEAKER_01: even when I was traveling to Japan or something,
[47:07] SPEAKER_01: it's really hard to get into like multi-hour flow on an airplane.
[47:10] So I was like,
[47:10] I'm only going to work on the stuff that isn't like heavy
[47:13] design work.
[47:13] SPEAKER_01: None of that.
[47:14] SPEAKER_01: It's just like bug fixes, right?
[47:16] SPEAKER_01: Like just cleaning stuff up.
[47:17] SPEAKER_01: And so that was my process.
[47:18] SPEAKER_01: Yeah.
[47:19] SPEAKER_00: In 2021, HashiCorp went public.
[47:22] SPEAKER_00: What is it like to go public, both in terms of preparing for it?
[47:25] SPEAKER_00: How did it feel?
[47:26] SPEAKER_00: What changed after?
[47:28] SPEAKER_01: On the prep side,
[47:29] I don't have the full answer because I also stepped down from
[47:32] the executive team
[47:33] SPEAKER_01: about maybe six months before we went public.
[47:35] So I was part of some of the planning and obviously I was very
[47:37] aware that we were
[47:38] SPEAKER_01: planning to go public and,
[47:40] SPEAKER_01: but like,
[47:41] SPEAKER_01: for example,
[47:42] SPEAKER_01: I wasn't part of the roadshow or any of that,
[47:45] SPEAKER_01: but yeah,
[47:46] SPEAKER_01: you know,
[47:46] SPEAKER_01: from my seat,
[47:48] SPEAKER_01: the parts that I was part of,
[47:49] SPEAKER_01: the parts that I had visibility onto,
[47:50] SPEAKER_01: I mean,
[47:50] SPEAKER_01: it's,
[47:52] SPEAKER_01: it takes over a year to do it.
[47:54] SPEAKER_01: So there's a lot of prep and there's some funny things that you do.
[47:58] Like you do,
[47:59] you start running like a public company at least two quarters
[48:03] before you're public.
[48:05] SPEAKER_01: I don't remember what the drop dead date is,
[48:06] SPEAKER_01: but there's a date where you could just like cancel going public.
[48:09] SPEAKER_01: And it's pretty close.
[48:10] SPEAKER_01: Like it's like very close to when you actually like have that day.
[48:14] So you,
[48:15] you kind of run like a public company and to the point where
[48:18] you do mock earnings calls.
[48:21] like you actually with a conference room table your investors
[48:27] are the public
[48:28] investors that aren't in the room they go somewhere else and
[48:30] they talk over the
[48:31] speakerphone and ask you the types of questions um your cfo or
[48:35] vp of finance gives
[48:36] the full report of the quarter they try to frame the types of
[48:40] questions again you
[48:41] run it and you try to figure out like whether it's running well
[48:44] enough i guess and
[48:46] SPEAKER_01: That's sort of what the prep feels like.
[48:47] And there's an obscene amount of secrecy because from a
[48:51] regulation standpoint,
[48:52] SPEAKER_01: you can't talk about any of this.
[48:53] And so,
[48:54] I mean,
[48:54] you can look back at even the dumb stuff like hacker news
[48:57] comments.
[48:57] SPEAKER_01: Like I just want radio.
[48:58] It's the clearest signal that a company is going to go public
[49:01] because I want radio
[49:01] SPEAKER_01: silent on every topic because everything became questionable.
[49:06] I remember there was just a point because I there was a hacker
[49:09] news comment I gave
[49:11] SPEAKER_01: like eight months before we went public and our general counsel
[49:15] like in the middle of the night like you have to delete that
[49:17] after he talked to me
[49:18] I was like I could see how that might affect things but like I
[49:22] didn't realize the
[49:22] matter and I ended up deleting it and is this because you're
[49:25] not supposed to give
[49:27] SPEAKER_00: public information away or something like that
[49:30] SPEAKER_00: I don't remember the exact regulation, to be honest.
[49:32] SPEAKER_00: Yeah, but there's some regulation about like not leaking information.
[49:38] SPEAKER_01: It's not really.
[49:39] SPEAKER_01: I mean,
[49:40] SPEAKER_01: it's all information,
[49:41] SPEAKER_01: but it's more about like you can't influence the market in any way.
[49:45] SPEAKER_01: And so,
[49:46] SPEAKER_01: yeah,
[49:47] SPEAKER_01: and you can't make promises because if you say we're going to go public,
[49:50] SPEAKER_01: it might cause even private funding to froth up.
[49:53] SPEAKER_01: And it's a form of fraud.
[49:56] SPEAKER_01: Um, so yeah, basically like I just stopped talking about everything.
[50:00] SPEAKER_01: I don't know how seriously other people take it,
[50:02] but I took it to the point where I planned this trip to New
[50:06] York to go public and I
[50:09] invited my parents and I didn't tell my parents why we were
[50:11] going to New York.
[50:12] SPEAKER_01: And I just told them,
[50:13] SPEAKER_01: I want you to go to New York.
[50:15] SPEAKER_01: It's really, really important.
[50:16] SPEAKER_01: It has to do with HashiCorp.
[50:17] SPEAKER_01: And they were like, sure.
[50:19] SPEAKER_01: And I said, I can't tell you about it.
[50:21] SPEAKER_01: And they said, sure.
[50:22] SPEAKER_01: And I told them maybe a month in advance.
[50:24] SPEAKER_01: We had a dog.
[50:25] SPEAKER_01: We had to get our dog sat by my aunt.
[50:28] SPEAKER_01: And I just told them we're going on a family vacation.
[50:31] SPEAKER_01: up to the point we left.
[50:33] SPEAKER_01: Nobody except my parents knew basically.
[50:37] None of my friends,
[50:38] nothing except the friends that worked at the company.
[50:40] SPEAKER_01: But yeah, that's what it's like leading up to it.
[50:44] SPEAKER_00: Yeah, I was at Uber when we went public and
[50:46] And previously,
[50:47] I read that while before going public,
[50:50] HashiCorp VMware made an offer earlier.
[50:54] SPEAKER_00: Way early.
[50:55] SPEAKER_00: That was like in super early days.
[50:56] SPEAKER_00: That was like two years in the company.
[50:57] SPEAKER_01: We went public like 10 years in the company.
[50:59] SPEAKER_00: So when they tried to buy you, what was it like?
[51:02] SPEAKER_00: Did you almost sell at some point?
[51:04] SPEAKER_00: Was there any point where you were close to potentially selling?
[51:06] it felt close and and and i got a lot of accounts afterwards
[51:10] that it was very close
[51:12] it came down to like one vote on the vmware board was what i
[51:14] heard about two years
[51:15] in the company we were only three employees me including me and
[51:17] armand so we had
[51:18] one employee i guess is two founders and employees three of us
[51:22] we got approached by
[51:22] vmware um you know i didn't know what this would be like and it
[51:27] is not what it what
[51:28] SPEAKER_01: it isn't is they don't show up and say we would like to buy you
[51:32] SPEAKER_01: No?
[51:33] SPEAKER_01: No.
[51:33] SPEAKER_01: That would be too obvious.
[51:34] The way it happens is you get an email from some low-level
[51:38] business development
[51:39] SPEAKER_01: person that wants to just like talk vaguely.
[51:42] SPEAKER_01: And the vague talk is they're not interested in buying you.
[51:46] One of the jobs of BD people at large companies is just to have
[51:49] an understanding of
[51:50] SPEAKER_01: the ecosystem.
[51:51] SPEAKER_01: So it's really just like let's have an understanding.
[51:53] They might have had an executive tell him or her to go talk to
[51:57] this company.
[51:58] SPEAKER_01: There might already be an executive kind of poking around, but
[52:00] SPEAKER_01: Yeah, so it kind of starts out that way.
[52:02] SPEAKER_01: It turns into, would you like to come by our offices and meet in person?
[52:07] SPEAKER_01: Oh, our VP of engineering swung by.
[52:10] SPEAKER_01: Let's talk to him.
[52:11] SPEAKER_01: Nice to meet you.
[52:14] SPEAKER_01: Then I think this is our actual timeline.
[52:16] And then I think there was a dinner where there was three
[52:19] VMware executives at the dinner.
[52:22] At that point,
[52:23] we thought they might be interested,
[52:25] but it was still so...
[52:27] SPEAKER_00: Oh, so much dancing.
[52:29] SPEAKER_01: Oh, this is months before there was even an offer.
[52:32] SPEAKER_01: It was still so social.
[52:33] SPEAKER_01: Like we drank,
[52:35] SPEAKER_01: we talked about our hobbies and interests and very not about,
[52:39] SPEAKER_01: I mean,
[52:39] SPEAKER_01: very basic about like tech.
[52:42] SPEAKER_01: It's really more of a vibe.
[52:43] SPEAKER_01: So they'd go to dinner.
[52:45] SPEAKER_01: And then it started to get more serious.
[52:47] SPEAKER_01: We spent more time in Palo Alto,
[52:48] SPEAKER_01: the VMware offices,
[52:49] SPEAKER_01: where we started talking about partnerships,
[52:51] SPEAKER_01: about how can VMware help our products more?
[52:55] SPEAKER_01: And it starts about partnerships.
[52:56] And then it turns into hypothetical,
[52:59] if you had the resources of VMware,
[53:01] what would you do?
[53:04] SPEAKER_01: We're like six meetings in at this point.
[53:06] SPEAKER_01: There's no offer of anything.
[53:08] SPEAKER_01: And then at a certain point,
[53:10] SPEAKER_01: honestly,
[53:10] SPEAKER_01: we were getting tired of it because nothing was happening.
[53:13] SPEAKER_00: It sounds like you're a startup and you're going to all these meetings.
[53:15] SPEAKER_01: Oh, and I don't even live in the Bay Area.
[53:17] SPEAKER_01: So I was flying up all the time.
[53:18] SPEAKER_01: It was a waste of time.
[53:19] And to a lot of founders,
[53:22] that is the warning I give them is M&A becomes a waste of time.
[53:24] SPEAKER_01: So I have another story.
[53:25] SPEAKER_00: M&A Merged and Acquisitions.
[53:26] SPEAKER_01: Yeah, Merged and Acquisitions becomes a waste of time.
[53:28] SPEAKER_01: So I'll tell you another anecdote after this.
[53:30] SPEAKER_01: Yeah.
[53:31] SPEAKER_01: Um,
[53:31] SPEAKER_01: ultimately we kind of politely had the like,
[53:35] SPEAKER_01: okay,
[53:35] SPEAKER_01: let's like shit or get off the pot kind of conversation.
[53:39] And they,
[53:41] uh,
[53:41] put an LOI in front of us,
[53:42] which is a letter of intent,
[53:45] letter of intent.
[53:46] SPEAKER_01: The LOI was, it was one page.
[53:48] SPEAKER_01: Um,
[53:49] SPEAKER_01: you know,
[53:49] SPEAKER_01: it was,
[53:50] it's basically like a non like semi binding promise that we're
[53:54] pursuing buying you.
[53:56] SPEAKER_01: No number on there.
[53:58] SPEAKER_01: It's just like kind of vague.
[53:59] SPEAKER_01: Still no number.
[54:00] SPEAKER_01: Yeah, well, verbally.
[54:01] SPEAKER_01: Yeah.
[54:02] SPEAKER_01: They're not writing anything down.
[54:03] SPEAKER_01: They're not putting anything in email.
[54:04] SPEAKER_01: None of that.
[54:05] SPEAKER_01: It's just verbal.
[54:06] SPEAKER_01: And so at that point,
[54:06] SPEAKER_01: verbally,
[54:08] SPEAKER_01: we had gotten a drop of $20 million,
[54:11] SPEAKER_01: which...
[54:11] SPEAKER_01: Doesn't sound that much.
[54:13] SPEAKER_00: Well, yeah, but we're... I'm 23 years old.
[54:14] SPEAKER_00: Oh, yeah.
[54:15] SPEAKER_00: The three of you, 23 years old.
[54:15] SPEAKER_01: I'm 23 years old.
[54:16] SPEAKER_00: Me and Armand together own 70% of the company.
[54:17] SPEAKER_00: Okay, yeah.
[54:25] SPEAKER_01: Yeah, it sounds interesting, to say the least.
[54:29] SPEAKER_01: What I tell people is you start thinking about the things you will buy.
[54:34] SPEAKER_01: It's a dangerous path.
[54:35] SPEAKER_01: That's what happens.
[54:36] SPEAKER_01: Yeah.
[54:40] We had advice from people who said it's like phenomenally too
[54:45] low,
[54:45] like wildly too low.
[54:46] SPEAKER_01: So go ask much higher.
[54:49] And we asked,
[54:51] I don't remember anymore,
[54:51] but we asked for maybe like 40 or 50 or something.
[54:53] SPEAKER_01: And they just said, yes.
[54:55] SPEAKER_01: They said, okay.
[54:56] SPEAKER_01: And then, you know, it's like way too low.
[55:00] SPEAKER_01: And that was verbal, too, so there was nothing binding about that, yes.
[55:03] SPEAKER_01: And it wasn't like,
[55:03] SPEAKER_01: yes,
[55:04] SPEAKER_01: it was more like,
[55:05] SPEAKER_01: okay,
[55:05] SPEAKER_01: we'll work on that,
[55:06] SPEAKER_01: you know,
[55:06] SPEAKER_01: but very positive.
[55:08] SPEAKER_01: Like in this indirect, it's an indirect yes.
[55:10] SPEAKER_01: Indirect business sense.
[55:11] SPEAKER_01: Indirect, yes.
[55:12] SPEAKER_01: And it turned into, come meet the CEO of VMware.
[55:14] You know,
[55:15] like,
[55:15] clearly they're interested because we're,
[55:16] like,
[55:16] climbing still.
[55:18] SPEAKER_01: Armand and I, we kind of started getting cold feet because...
[55:23] SPEAKER_01: The way we described it is it's a dream-killing amount of money.
[55:27] SPEAKER_01: It's like you would take the money,
[55:29] SPEAKER_01: but you're too small to be important to a company like VMware.
[55:32] SPEAKER_00: So they're going to just...
[55:33] SPEAKER_00: Because even though it's like so much money...
[55:35] SPEAKER_00: Personally,
[55:35] SPEAKER_00: it's so much money.
[55:36] But you know that at VMware level,
[55:38] I guess you see the revenue there,
[55:39] all that.
[55:40] SPEAKER_00: You realize that for them, it's not a big deal.
[55:42] SPEAKER_00: It's meaningless to them.
[55:43] SPEAKER_00: Yeah, it's meaningless.
[55:44] SPEAKER_00: That's crazy.
[55:45] SPEAKER_00: That messes with your mind, you know?
[55:46] SPEAKER_01: Yeah, yeah.
[55:47] So it becomes this thing where it's like personally,
[55:49] your life could change.
[55:50] SPEAKER_01: But this thing that we both were truly passionate about,
[55:54] like the thing I wanted to work on more than anything else
[55:56] would end in a sense,
[55:57] SPEAKER_01: because,
[55:59] SPEAKER_01: you know,
[55:59] SPEAKER_01: I would probably get thrown into like working on ESX or something,
[56:02] SPEAKER_01: you know,
[56:03] SPEAKER_01: and you would get a manager of a VM where you're not even the CEO.
[56:06] The executives make it sound like they're going to do all this
[56:08] stuff with your products.
[56:09] SPEAKER_01: But like, that's just one executive in a cog of corporate machinery.
[56:13] SPEAKER_01: So we started getting cold fee being like,
[56:15] SPEAKER_01: If they're interested, maybe we're on to something.
[56:19] If we're on to something,
[56:20] we want to sell out early and sell out in a way where our dream
[56:23] dies.
[56:24] SPEAKER_01: That's why it's like a dream killer.
[56:25] Armand,
[56:26] very maturely,
[56:27] and he's two years younger than me,
[56:28] so he's 21 at this time.
[56:29] SPEAKER_01: No, he sounds like the older one.
[56:31] SPEAKER_01: Yeah, yeah, yeah, yeah.
[56:32] SPEAKER_01: He's very mature.
[56:33] SPEAKER_01: And Armand very maturely came up with the,
[56:37] SPEAKER_01: I forgot where it comes from,
[56:38] SPEAKER_01: but the risk minimization,
[56:40] SPEAKER_01: not risk,
[56:41] SPEAKER_01: the regret minimization framework.
[56:44] SPEAKER_01: He was like, what?
[56:45] SPEAKER_01: Personally on your own, go think and I'll do the same.
[56:48] SPEAKER_01: And let's come up with a number that
[56:51] SPEAKER_01: If we walked in the next day and they said,
[56:54] SPEAKER_01: we're killing everything,
[56:55] you're going to go work on ESX for the next four years because
[56:58] we were going to
[56:58] SPEAKER_01: have a lockup no matter what.
[56:59] You're going to work the next four years that we would be like,
[57:01] cool,
[57:02] this is worth it.
[57:03] SPEAKER_01: Like, what's the minimum no regret or minimum regret?
[57:07] SPEAKER_01: We came back,
[57:07] SPEAKER_01: and I don't remember exactly what our numbers were,
[57:09] SPEAKER_01: but they were pretty close,
[57:10] SPEAKER_01: and we ended up at 100.
[57:11] SPEAKER_01: And we, and so we're like, it felt so wrong.
[57:14] SPEAKER_01: Like how could we possibly ask for a hundred?
[57:15] SPEAKER_01: But we're like, we said, this is what we're going to do.
[57:17] SPEAKER_01: And we stuck to it.
[57:18] SPEAKER_01: So we went back, we asked for a hundred and it wasn't a no.
[57:23] SPEAKER_01: And there wasn't a yes.
[57:24] SPEAKER_01: This one had a lot more hesitance.
[57:26] SPEAKER_01: It was a lot more like, we'll get back to you.
[57:30] SPEAKER_01: Right?
[57:30] SPEAKER_01: Like, I don't know.
[57:31] SPEAKER_01: But it wasn't a no.
[57:33] And basically,
[57:35] they came back to us and said,
[57:37] this requires board approval.
[57:39] SPEAKER_01: So we're convening a board meeting next week.
[57:41] SPEAKER_01: Like, unplanned.
[57:43] SPEAKER_01: That's not when they're board meeting.
[57:44] SPEAKER_01: We're convening the VMware board.
[57:45] SPEAKER_01: We're going to vote on this.
[57:47] SPEAKER_01: And then we heard that the vote didn't pass.
[57:49] SPEAKER_01: That was that.
[57:49] it's just crazy how so such small things could you know ripple
[57:54] oh yeah like
[57:55] influence if that was an extra yes who knows what your story
[57:58] yeah the one person
[58:00] you might have you know like it's hard but you know in VMware
[58:03] you might have been
[58:04] clogging away on like this project yeah yeah yeah I mean we
[58:07] didn't build Terraform
[58:08] yet so Terraform might have probably never would have existed
[58:12] high confidence I
[58:12] know who the vote was I know why they voted that way like I
[58:15] know a lot more details
[58:16] SPEAKER_01: but it's like I it's it worked out obviously in my favor but yeah
[58:19] SPEAKER_00: So you've left HashiCorp and you're independent.
[58:23] And one thing about cool about being independent is you're just
[58:26] very honest about stuff.
[58:27] SPEAKER_00: And there was this really interesting thread where on Twitter,
[58:31] SPEAKER_00: you wrote about,
[58:32] SPEAKER_00: you said,
[58:32] SPEAKER_00: like,
[58:32] SPEAKER_00: ask me anything about the big cloud providers because at HashiCorp,
[58:35] SPEAKER_00: you've worked with all of them.
[58:37] SPEAKER_00: What was your experience back then of,
[58:39] SPEAKER_00: you know,
[58:40] SPEAKER_00: like Azure,
[58:41] SPEAKER_00: AWS,
[58:42] SPEAKER_00: Google Cloud,
[58:43] like your kind of honest view of how they work back then and
[58:46] possibly like how has
[58:47] SPEAKER_00: your views changed on them?
[58:49] SPEAKER_01: The precursor to that is while I was at Hotspur,
[58:51] I always had to be very careful about what I said about any of
[58:54] the cloud providers
[58:55] SPEAKER_01: because we're partners with all of them.
[58:56] SPEAKER_01: We're partners and I didn't want to insult anyone.
[59:00] SPEAKER_01: And so I was just very professional.
[59:01] SPEAKER_01: Yeah.
[59:02] about all their relationships and then like we like all of them
[59:05] like yeah or just
[59:06] say nothing or just give nothing nice to say don't say anything
[59:08] at all and then i
[59:09] left and i was still i kept that up because it was too close i
[59:11] was still flying too
[59:13] close to the sun as they say and then enough time passed where
[59:15] i was like yeah like
[59:17] my opinion doesn't really matter and um yeah so my to answer
[59:21] your question um my
[59:24] SPEAKER_01: broad view of all them was that
[59:26] SPEAKER_01: AWS was really arrogant.
[59:29] SPEAKER_00: Annoyingly arrogant was how I'd describe it.
[59:31] SPEAKER_00: And when you say arrogant,
[59:33] SPEAKER_00: can you help us understand how you work with them or what part of them?
[59:37] SPEAKER_00: Is it just general?
[59:39] SPEAKER_00: I'll start disclaiming this,
[59:41] SPEAKER_01: though,
[59:41] that we worked with so many people there that there were
[59:44] individuals and all of
[59:46] SPEAKER_01: them were awesome and nice and kind.
[59:48] SPEAKER_01: So I'm not trying to make individual judgments here.
[59:50] It was just more of how all of it came together and how it felt
[59:54] as a whole.
[59:55] SPEAKER_01: So by arrogant,
[59:55] SPEAKER_01: I mean,
[59:56] SPEAKER_01: it always felt like they were doing us a favor at every turn in terms of
[1:00:00] SPEAKER_01: partnerships,
[1:00:00] SPEAKER_01: in terms of just getting a meeting with them.
[1:00:03] It always felt like you should be thankful that we're spending
[1:00:06] time talking to you.
[1:00:07] SPEAKER_01: And not just that,
[1:00:08] SPEAKER_01: but also like there was always this subtle vibe of like,
[1:00:12] SPEAKER_01: we will just spin up a product and kill your company.
[1:00:14] SPEAKER_01: You know, it felt that no one ever said that.
[1:00:18] SPEAKER_01: Well,
[1:00:18] SPEAKER_01: it kind of got to a point where it was sort of like,
[1:00:20] SPEAKER_01: if we don't come to terms,
[1:00:21] SPEAKER_01: we're going to build this service.
[1:00:23] SPEAKER_01: It did kind of come to that.
[1:00:24] SPEAKER_00: But you know, we did see that later on with Elastic and
[1:00:27] SPEAKER_01: That had already happened.
[1:00:28] SPEAKER_01: Oh, it happened already.
[1:00:30] SPEAKER_01: Yeah, just not with us, but with other companies.
[1:00:32] SPEAKER_01: With OpenSearch.
[1:00:33] SPEAKER_01: Yeah,
[1:00:33] SPEAKER_01: and they always publicly spun it as like,
[1:00:36] SPEAKER_01: oh,
[1:00:36] it's so great and builds the ecosystem larger and we're doing
[1:00:40] it by the letter of
[1:00:41] SPEAKER_01: the license.
[1:00:42] SPEAKER_01: You know, all has truth elements to it, but it's still not a nice thing.
[1:00:46] SPEAKER_00: No,
[1:00:46] I don't think people paying attention to open source
[1:00:50] appreciated what Amazon did
[1:00:52] with Elastic's business and it showed how open source can be
[1:00:57] weaponized against a
[1:00:58] SPEAKER_00: company that spends their blood,
[1:01:00] SPEAKER_00: sweat,
[1:01:00] SPEAKER_00: and tears.
[1:01:01] SPEAKER_00: And I guess, you know, HashiCorp, you had the same thing, right?
[1:01:03] SPEAKER_00: Because you were publishing permissive.
[1:01:04] SPEAKER_00: Well, I mean, open source needs to be permissive.
[1:01:07] SPEAKER_00: It was an MBL license.
[1:01:08] SPEAKER_00: Yeah, so like Amazon could have spun up anything they wanted.
[1:01:12] SPEAKER_01: There was like a two-year period where I think for the entire two years,
[1:01:17] the entire leadership team was terrified that at any moment
[1:01:22] there would be like a
[1:01:23] SPEAKER_01: vault service or something would pop up.
[1:01:27] SPEAKER_01: And so, yeah, that's sort of my characterization of AWS.
[1:01:30] SPEAKER_01: It really took like,
[1:01:31] SPEAKER_01: for example,
[1:01:31] SPEAKER_01: teeth ringing to get them to help with the AWS Terraform provider.
[1:01:36] SPEAKER_01: We had...
[1:01:37] SPEAKER_01: I don't remember the exact number,
[1:01:38] but we had something like five full time engineers employed
[1:01:43] working on only the AWS
[1:01:44] SPEAKER_01: provider for Terraform,
[1:01:45] SPEAKER_01: which,
[1:01:46] SPEAKER_01: you know,
[1:01:46] SPEAKER_01: maths out full benefits and everything to like a million dollars a year.
[1:01:50] And all of that was pure open source,
[1:01:54] pure integration with a commercial entity.
[1:01:57] SPEAKER_01: And they were not helping us at all.
[1:01:59] And,
[1:01:59] and they were the last of any of the cloud providers that
[1:02:02] provide any sort of help there.
[1:02:03] SPEAKER_01: And it,
[1:02:04] it came down to some drama where we went to a meeting and
[1:02:08] basically said that we're
[1:02:10] SPEAKER_01: going to publicly say that the AWS provider is deprecated and we're done.
[1:02:16] SPEAKER_01: Like, the community could pick it up or whatever, but we're going to
[1:02:19] yeah because you didn't get any help from them yeah and it's
[1:02:21] taking up too much
[1:02:21] work and there's too many bugs and you're shipping honestly aws
[1:02:23] is shipping
[1:02:24] features too fast and like it's just like not worth it and that
[1:02:27] freaked them out
[1:02:28] and finally they started helping you know they might recount
[1:02:31] their side of things
[1:02:31] differently but that's pretty much it felt like no movement for
[1:02:34] years and we said
[1:02:36] that and movement started happening really fast so yeah there
[1:02:39] was that um microsoft
[1:02:41] SPEAKER_01: i would i have the most positive view on microsoft
[1:02:44] SPEAKER_01: They had a really hairy technical product is how I describe it.
[1:02:46] SPEAKER_01: It was very difficult to use.
[1:02:48] SPEAKER_00: Azure?
[1:02:49] SPEAKER_01: Azure and a lot of nouns like principles.
[1:02:54] SPEAKER_01: I still to this day,
[1:02:56] SPEAKER_01: and I've integrated with the service,
[1:02:57] SPEAKER_01: don't fully understand the IAM hierarchy of Azure.
[1:03:04] I just kind of bolted it and got it working with a team,
[1:03:06] and that was that.
[1:03:07] SPEAKER_01: But technically,
[1:03:09] SPEAKER_01: kind of,
[1:03:10] SPEAKER_01: but from the business side,
[1:03:12] SPEAKER_01: super competent professionals and team players.
[1:03:16] SPEAKER_01: That's how I describe it.
[1:03:18] SPEAKER_01: We went into every meeting with them,
[1:03:19] SPEAKER_01: and a lot of our meetings,
[1:03:21] SPEAKER_01: the first question was,
[1:03:22] SPEAKER_01: how do we both win?
[1:03:24] SPEAKER_01: That was the first question.
[1:03:26] SPEAKER_01: Very pleasant.
[1:03:27] SPEAKER_01: Awesome.
[1:03:27] SPEAKER_01: They were the first people to jump on board supporting Terraform.
[1:03:31] Sure,
[1:03:32] that's some kind of bias,
[1:03:32] but like they were consistent throughout the years.
[1:03:35] SPEAKER_01: So positive on Microsoft.
[1:03:39] SPEAKER_01: And Google Cloud,
[1:03:40] SPEAKER_01: you know,
[1:03:40] SPEAKER_01: my,
[1:03:41] SPEAKER_01: yeah,
[1:03:41] SPEAKER_01: Google Cloud in general,
[1:03:42] SPEAKER_01: it was always like the best technology,
[1:03:45] SPEAKER_01: the most incredible technology and architectural thinking.
[1:03:50] And I swear none of them,
[1:03:52] it felt like none of them cared or thought about the business
[1:03:56] at all.
[1:03:57] SPEAKER_01: It was like every partnership meeting,
[1:03:59] we'd spend hours talking about the coolest edge cases and
[1:04:04] scalability and how this
[1:04:05] SPEAKER_01: is going to work.
[1:04:06] SPEAKER_01: And like,
[1:04:07] I think the best public example that you could just see in
[1:04:10] history was they were
[1:04:11] SPEAKER_01: the only company that when they partnered with us to write the provider,
[1:04:14] SPEAKER_01: they spent a lot of time building this very good,
[1:04:18] SPEAKER_01: I think they called it magic something.
[1:04:20] SPEAKER_01: They fully automated the whole thing.
[1:04:21] SPEAKER_01: So when they shipped the new Google Cloud thing,
[1:04:23] SPEAKER_01: it had a Terraform provider resource right away.
[1:04:26] SPEAKER_01: And not just like it didn't feel automated.
[1:04:28] SPEAKER_01: It felt very ergonomic and like it was good.
[1:04:31] SPEAKER_01: It was really good.
[1:04:32] SPEAKER_01: And so they had that.
[1:04:34] SPEAKER_01: But whenever we would get into how do we do co-sale?
[1:04:38] How do we like attribute your sales engineer's quota to selling
[1:04:44] like infrastructure
[1:04:45] SPEAKER_01: that's spun up by Terraform?
[1:04:46] SPEAKER_01: Like how do we do this?
[1:04:48] SPEAKER_01: So like the business side of things?
[1:04:49] SPEAKER_01: Crickets.
[1:04:50] SPEAKER_01: Like, impossible to get anyone.
[1:04:52] SPEAKER_01: Not just impossible,
[1:04:53] SPEAKER_01: it was like,
[1:04:54] SPEAKER_01: even if you got someone,
[1:04:55] SPEAKER_01: they would say something for 20 minutes and be like,
[1:04:58] SPEAKER_01: okay,
[1:04:58] SPEAKER_01: cool,
[1:04:58] SPEAKER_01: we have two more hours,
[1:04:59] SPEAKER_01: let's figure this other thing out.
[1:05:01] SPEAKER_01: And yeah, that's what it felt like.
[1:05:03] SPEAKER_01: And the other disclaimer I'd give is all this knowledge was circa,
[1:05:06] SPEAKER_01: I don't know,
[1:05:08] SPEAKER_01: 2019,
[1:05:09] SPEAKER_01: something like that.
[1:05:09] SPEAKER_01: So maybe in the past seven years,
[1:05:11] SPEAKER_01: things have dramatically changed,
[1:05:12] SPEAKER_00: but that's what it felt like.
[1:05:14] Going to open source,
[1:05:16] you're actively involved in open source and open source today.
[1:05:20] SPEAKER_00: And it seems open source is changing a lot,
[1:05:24] SPEAKER_00: especially with AI and you're seeing stuff at Ghosty.
[1:05:28] Can you tell us how open source has changed with Ghosty,
[1:05:32] with the AI contributions?
[1:05:33] SPEAKER_00: And what are you seeing with open source maintainers?
[1:05:35] SPEAKER_00: Seems like there's a bit of drama or worrying stuff happening.
[1:05:39] SPEAKER_00: Well,
[1:05:39] SPEAKER_00: I would say more broadly,
[1:05:42] SPEAKER_01: the issue facing open source today is,
[1:05:45] SPEAKER_01: I mean,
[1:05:47] SPEAKER_01: there's multiple,
[1:05:47] but the one that I feel is most prevalent across industries
[1:05:51] right now is AI
[1:05:53] SPEAKER_01: contributions.
[1:05:54] SPEAKER_01: And specifically,
[1:05:57] SPEAKER_01: the ratio,
[1:05:58] SPEAKER_01: the signal to noise ratio being incredibly low,
[1:06:01] SPEAKER_01: or in other words,
[1:06:02] SPEAKER_01: just being super noisy with low quality contributions.
[1:06:05] SPEAKER_01: It's just stressing the system quite considerably.
[1:06:08] SPEAKER_00: And yeah.
[1:06:08] SPEAKER_00: And so after you left HashiCorp, you started Ghosty.
[1:06:14] SPEAKER_00: How many years ago was that?
[1:06:15] SPEAKER_00: Was that like two years or so?
[1:06:17] SPEAKER_01: Well, I left HashiCorp over two years ago or a little over two years ago.
[1:06:19] I had like poked around with prototypes of Ghosty like maybe
[1:06:24] three years ago.
[1:06:24] SPEAKER_01: But after I left HashiCorp,
[1:06:26] SPEAKER_01: I started just like kind of working on it like 20 hours,
[1:06:28] SPEAKER_01: like much more just because it was the thing.
[1:06:32] SPEAKER_01: that I had.
[1:06:32] SPEAKER_00: What drew you to go see?
[1:06:34] SPEAKER_00: What was your kind of vision and why you started working on it?
[1:06:36] SPEAKER_00: It's a better terminal, right?
[1:06:39] SPEAKER_00: It's a terminal.
[1:06:40] Heh.
[1:06:41] SPEAKER_00: Better is subjective.
[1:06:42] SPEAKER_00: I insult it because I like it better.
[1:06:45] SPEAKER_00: But yes, a terminal.
[1:06:46] SPEAKER_00: An opinionated terminal, right?
[1:06:47] SPEAKER_01: Opinionated.
[1:06:49] Very modern in terms of supporting as many of the newer specs
[1:06:53] as possible that
[1:06:54] enable functionality like displaying images or clicking on your
[1:06:59] prompt to move the
[1:06:59] SPEAKER_01: cursor.
[1:07:01] SPEAKER_01: But dozens more examples like that.
[1:07:04] SPEAKER_01: The original thing that drew me to it is
[1:07:07] SPEAKER_01: is the exact opposite of good advice that people usually give to people,
[1:07:10] SPEAKER_01: which is that you find the problem and you build a solution.
[1:07:14] SPEAKER_01: And what I did, and you pick the best technology that then solved that.
[1:07:17] SPEAKER_01: What I did was I found a set of technologies and I was like,
[1:07:20] SPEAKER_01: what can I build with these technologies?
[1:07:22] SPEAKER_01: I went the opposite direction.
[1:07:23] SPEAKER_01: And I had spent over 10 years, 12 years,
[1:07:27] at HoshCorp Incorporated and three years prior to that doing
[1:07:31] infrastructure open
[1:07:31] source so 15 years in total just thinking almost all the time
[1:07:35] about infrastructure
[1:07:36] and cloud services and things like that and so I had felt that
[1:07:39] I was rusty I had
[1:07:40] SPEAKER_01: sort of like my skills have had weakened on
[1:07:44] SPEAKER_01: desktop software systems programming to a certain extent because i was so
[1:07:48] constrained by networking challenges distributed systems so
[1:07:51] like low-level systems
[1:07:52] programming had had had atrophied i had never really worked
[1:07:56] with gpus and gpus i
[1:07:58] guess crypto was happening but i kind of ignored that whole
[1:08:00] trend um but this is
[1:08:02] pre-ai so but gpus were obviously in use and i just felt like i
[1:08:06] had no idea how
[1:08:07] SPEAKER_01: they work so i want to go to desktop so i picked all these like different
[1:08:10] SPEAKER_01: technologies and
[1:08:11] SPEAKER_01: And I said, okay, Zig, because it looked cool to me.
[1:08:14] SPEAKER_00: I just wanted to try it.
[1:08:15] SPEAKER_00: Kenton, for those of us, I'm not into Zig.
[1:08:18] SPEAKER_00: I heard good things about it.
[1:08:19] SPEAKER_00: Can you explain why Zig is so interesting,
[1:08:22] SPEAKER_00: innovative,
[1:08:22] SPEAKER_00: and why does it grab so many devs' attention?
[1:08:26] SPEAKER_01: I don't know why it grabs other people's attention,
[1:08:28] SPEAKER_01: but for me,
[1:08:28] SPEAKER_01: it just felt like the best better C that I saw out there.
[1:08:33] And I am someone that's coming from the position where I
[1:08:35] actually enjoyed writing
[1:08:37] SPEAKER_01: C.
[1:08:38] SPEAKER_01: So a better C sounds great to me.
[1:08:40] SPEAKER_01: To me,
[1:08:41] SPEAKER_01: it's not very annoying in terms of like,
[1:08:43] SPEAKER_01: if I want to blow my own foot off,
[1:08:45] SPEAKER_01: please let me blow my own foot off.
[1:08:46] you know a bunch of qualities came together where i thought on
[1:08:49] the surface it
[1:08:49] looked cool but it's very hard to judge a programming language
[1:08:52] on the surface so i
[1:08:52] wanted to build something with it and so yeah i picked zig gpus
[1:08:56] desktop software
[1:08:57] what could i build uh for for all my time at hosch corp um i
[1:09:02] built clis and i was
[1:09:03] like well i live in a terminal like what does it take i don't i
[1:09:07] live in a terminal
[1:09:07] and yet i understand very little about terminal so why don't i
[1:09:09] just like build a
[1:09:10] SPEAKER_01: toy project that's a terminal
[1:09:12] SPEAKER_01: That's how it started.
[1:09:13] SPEAKER_01: And as with a lot of stuff,
[1:09:15] I find that once you dig beneath the layer of taking something
[1:09:19] for granted,
[1:09:20] you realize that everything is way more nuanced and complicated
[1:09:24] than you imagined
[1:09:25] SPEAKER_01: it to be.
[1:09:26] SPEAKER_01: And terminals were the same way as once I dug beneath the surface,
[1:09:29] SPEAKER_01: I realized how much they were doing,
[1:09:32] SPEAKER_01: how brittle some things were,
[1:09:34] SPEAKER_01: how much better certain things could be.
[1:09:36] SPEAKER_01: And I got sucked in to being like, I want to do this better.
[1:09:40] SPEAKER_01: Yeah.
[1:09:40] SPEAKER_00: For someone who's a dev, I use terminals as well.
[1:09:45] SPEAKER_00: I'm going to ask the stupid question.
[1:09:46] SPEAKER_00: How hard could it be?
[1:09:47] SPEAKER_00: What does a terminal actually do?
[1:09:49] SPEAKER_00: Can you maybe tell us how GoSee is structured?
[1:09:53] SPEAKER_00: What are the things that it needs to do?
[1:09:55] SPEAKER_00: Just give it a little empathy of all the work that you're doing.
[1:09:59] SPEAKER_01: I actually get that a lot.
[1:10:01] SPEAKER_01: I get that question a lot.
[1:10:01] SPEAKER_01: It's definitely not a dumb question.
[1:10:03] It gets asked less now,
[1:10:04] but a lot of people are like,
[1:10:05] I thought they were done.
[1:10:06] SPEAKER_01: It's usually the most feedback I get.
[1:10:08] SPEAKER_01: What is there to do in a terminal?
[1:10:11] so at a basic level they don't do a lot the problem is that the
[1:10:15] the functionality
[1:10:15] has grown significantly of what terminal developers want to do
[1:10:18] but let me let me
[1:10:19] just give um what they do it's kind of like an application
[1:10:22] development platform
[1:10:23] right it's like a it's it's not an operating system you're not
[1:10:25] dealing with like
[1:10:26] hardware level problems but it is like an application sandbox
[1:10:30] on top of that and
[1:10:31] that other applications run within it and need to render text
[1:10:34] they need to render
[1:10:35] colors and images and widgets and mouse events and all this
[1:10:40] stuff like you're the
[1:10:42] best description is it's like it's like a browser but for text
[1:10:44] content and so all
[1:10:46] of the complexities that a browser has a terminal has similar
[1:10:50] ones a smaller scale
[1:10:51] but similar ones and if you try to extend what a terminal is
[1:10:55] capable of then it it
[1:10:57] SPEAKER_01: gets you know
[1:10:58] SPEAKER_01: you start bringing in more and more problems.
[1:10:59] SPEAKER_01: Like as soon as you brought images into a terminal,
[1:11:01] SPEAKER_01: you've introduced like a whole new ecosystem of problems.
[1:11:03] But the tongue-in-cheek answer I like to give to Ghosi's
[1:11:06] complexity is that it's
[1:11:08] SPEAKER_01: 30% of terminal and 70% of font renderer.
[1:11:14] SPEAKER_01: And yeah, that's what it feels like.
[1:11:15] SPEAKER_01: It's really like a problem of,
[1:11:17] SPEAKER_01: you know,
[1:11:17] SPEAKER_01: that terminal screen you see,
[1:11:18] SPEAKER_01: whether it's GPU or CPU rendered,
[1:11:20] SPEAKER_01: that terminal screen you see is like you're drawing on a canvas.
[1:11:24] SPEAKER_01: So you are building a renderer for text in there.
[1:11:28] SPEAKER_01: Everything kind of bubbles from there.
[1:11:29] SPEAKER_01: So from a rough architecture standpoint of Ghosty,
[1:11:32] I like bringing it down in terms of threads because GoTo is
[1:11:34] multi-threaded.
[1:11:35] SPEAKER_01: Most terminals are not, but I'm not saying that as a positive point.
[1:11:39] SPEAKER_01: It's just a good way to describe the architecture.
[1:11:40] SPEAKER_01: We have a central UI thread, which just draws the windows and stuff.
[1:11:44] SPEAKER_01: That's pretty standard for desktop software.
[1:11:46] And then we have an IO thread,
[1:11:47] which runs the actual shell that you're seeing.
[1:11:49] So any bytes that we send or it sends back to us,
[1:11:52] it's processed by the IO thread.
[1:11:55] SPEAKER_01: And then we have a renderer thread, which is actually drawing it.
[1:11:58] SPEAKER_01: So the best way to think about it is it's on a VSync clock through 30,
[1:12:02] SPEAKER_01: 60,
[1:12:04] 120 frames per second.
[1:12:04] SPEAKER_01: It's just sampling what the terminal state is and then drawing it.
[1:12:07] SPEAKER_01: And the renderer itself uses a font subsystem on the same thread.
[1:12:11] SPEAKER_01: But we have to take the fact that this grid has this character,
[1:12:15] SPEAKER_01: these sets of characters,
[1:12:18] SPEAKER_01: and map them into fonts and do that all on our own.
[1:12:20] A lot of people think,
[1:12:21] oh,
[1:12:21] doesn't the operating system install that for you?
[1:12:23] SPEAKER_01: But they don't unless you're much higher level.
[1:12:27] Like,
[1:12:27] you know,
[1:12:28] you can't just draw easily,
[1:12:29] you know,
[1:12:30] monospace text in that way.
[1:12:31] SPEAKER_01: You have to really put pieces together.
[1:12:33] SPEAKER_01: That's the big picture.
[1:12:35] SPEAKER_01: It's quite simple at that level.
[1:12:36] And then just,
[1:12:37] you know,
[1:12:38] extend all the functionality the terminals have into that.
[1:12:41] So you're kind of like building like a 2D graphics engine a
[1:12:44] little bit that has
[1:12:45] SPEAKER_00: like very focused on fonts.
[1:12:48] SPEAKER_01: Yeah, yeah.
[1:12:50] SPEAKER_01: From a renderer side, it's very simple.
[1:12:51] The renderer is actually not that complicated,
[1:12:53] and I won't overcomplicate it.
[1:12:54] SPEAKER_01: The hardest part is actually maintaining the terminal state.
[1:12:57] SPEAKER_01: So the way terminals work is they're a grid of monospace cells.
[1:13:01] SPEAKER_01: So you'll have like 80 by 24, 80 columns, 24 rows.
[1:13:05] And there's commands that the program could send to move the
[1:13:08] cursor or say,
[1:13:10] SPEAKER_01: if I like to say,
[1:13:10] SPEAKER_01: think of it like a paintbrush.
[1:13:11] SPEAKER_01: I could say, make the paintbrush red and bold.
[1:13:13] SPEAKER_01: And everything after that is red and bold.
[1:13:15] SPEAKER_01: And now change it.
[1:13:16] SPEAKER_01: And you're just maintaining the state and drawing around.
[1:13:18] SPEAKER_01: And then there's all the scroll back, right?
[1:13:20] SPEAKER_01: People are used to in terminals going back.
[1:13:22] SPEAKER_01: Yeah.
[1:13:23] SPEAKER_01: that's where the challenge is,
[1:13:24] SPEAKER_01: is doing that in a fast,
[1:13:25] SPEAKER_01: performant way,
[1:13:26] SPEAKER_01: and that's what I try to do with GoSee.
[1:13:28] SPEAKER_01: I mean,
[1:13:29] SPEAKER_01: I show this,
[1:13:30] SPEAKER_01: there's so many benchmarks we run,
[1:13:32] SPEAKER_01: but one of the most obvious ones that shows the speed,
[1:13:34] SPEAKER_01: which also gets a lot of criticism,
[1:13:37] SPEAKER_01: is just catting,
[1:13:38] SPEAKER_01: reading a large file.
[1:13:40] SPEAKER_01: If you just, like,
[1:13:41] SPEAKER_01: dump a bunch of text, how fast can it get through it?
[1:13:43] SPEAKER_01: And you'll see a stark difference between modern terminals.
[1:13:46] SPEAKER_01: I'm not just going to say ghosty here.
[1:13:47] SPEAKER_01: If you take ghosty,
[1:13:48] SPEAKER_01: kitty,
[1:13:50] SPEAKER_01: alacrity,
[1:13:52] SPEAKER_01: any of these newer terminals,
[1:13:53] they're all going to do great compared to terminal.app on macOS
[1:13:58] or traditional
[1:14:00] SPEAKER_01: Linux terminals.
[1:14:01] SPEAKER_01: The criticism is
[1:14:02] SPEAKER_01: why does that matter and you know the easy answer is when you um when you
[1:14:07] accidentally cat a file like a lot of people will force close
[1:14:10] um the creator of
[1:14:11] redis posted a great comment for me a great credit comment on
[1:14:14] hacker news about why
[1:14:16] he loves ghosty which is that he previously previously used to
[1:14:19] tail production
[1:14:20] redis logs and you know just spews logs out and he used to have
[1:14:23] to send them to an
[1:14:24] SPEAKER_01: intermediary file and then read them out later
[1:14:27] so he could render it so he could render it and actually work
[1:14:30] with it and he
[1:14:30] doesn't have to do that anymore because Ghost is fast enough
[1:14:32] that he could just let
[1:14:33] it dump while he's going through it parsing it like mentally
[1:14:38] parsing it things like
[1:14:39] SPEAKER_01: that and that just saves him time and yeah
[1:14:42] SPEAKER_00: There's something to be said.
[1:14:44] SPEAKER_00: At some point,
[1:14:44] we should probably talk more about the fact that a lot of
[1:14:47] software these days does
[1:14:48] SPEAKER_00: not care about performance.
[1:14:49] SPEAKER_00: I think it's refreshing to actually have examples,
[1:14:52] SPEAKER_00: and I hope we will at some point maybe get back to it.
[1:14:56] SPEAKER_00: We'll talk about AI.
[1:14:56] SPEAKER_00: It might not help, but there's a level of craftsmanship, right?
[1:14:59] SPEAKER_00: Just like not wasting resources or being efficient or
[1:15:02] SPEAKER_00: I think we all,
[1:15:03] SPEAKER_00: like,
[1:15:04] SPEAKER_00: I see in my day-to-day life,
[1:15:05] SPEAKER_00: like,
[1:15:06] SPEAKER_00: we have more powerful resources,
[1:15:08] SPEAKER_00: laptops,
[1:15:09] SPEAKER_00: phones,
[1:15:09] SPEAKER_00: and they're not getting any faster,
[1:15:11] SPEAKER_00: and it's just frustrating at times.
[1:15:13] SPEAKER_01: It's kind of like the love of the game.
[1:15:14] SPEAKER_01: I mean, a lot of Ghosty is just the love of the game.
[1:15:17] SPEAKER_01: Like,
[1:15:18] SPEAKER_01: I like to say,
[1:15:19] SPEAKER_01: like,
[1:15:19] SPEAKER_01: our renderer,
[1:15:19] SPEAKER_01: because,
[1:15:21] SPEAKER_01: like I just claimed before,
[1:15:22] SPEAKER_01: like,
[1:15:22] SPEAKER_01: it's not complicated.
[1:15:24] SPEAKER_01: I'm not ever going to say that Ghosty is,
[1:15:26] SPEAKER_01: like,
[1:15:27] SPEAKER_01: a 2D game,
[1:15:28] SPEAKER_01: because a 2D game,
[1:15:29] SPEAKER_01: from a rendering standpoint,
[1:15:30] SPEAKER_01: is much more complicated.
[1:15:31] But I do care a lot about the render and we got our render down
[1:15:35] to for a full
[1:15:36] screen on on my Mac set of grids each frame updates and roughly
[1:15:42] I don't know it's
[1:15:43] SPEAKER_01: like it's something like nine microseconds or something.
[1:15:48] SPEAKER_01: Um, that doesn't include the draw time.
[1:15:49] SPEAKER_01: That's just like taking the state and submitting work to the GPU.
[1:15:52] SPEAKER_01: It's about nine microseconds and the GPU takes some time.
[1:15:56] SPEAKER_01: 120 Hertz, 120 frame per second frame is 8,333 microseconds.
[1:16:02] SPEAKER_01: So if you have nine,
[1:16:03] SPEAKER_01: you know,
[1:16:03] SPEAKER_01: again,
[1:16:04] SPEAKER_01: we don't have the number of how long the GPU takes,
[1:16:06] SPEAKER_01: but it's super,
[1:16:08] SPEAKER_01: it doesn't take much time at all.
[1:16:09] SPEAKER_01: You're leaving a lot of options and work for what I'm saying is like,
[1:16:13] SPEAKER_01: we could have made it 2000 microseconds.
[1:16:15] SPEAKER_01: And it wouldn't have mattered.
[1:16:17] SPEAKER_01: You would still get that performance, but that's not fun.
[1:16:20] SPEAKER_01: I want to make it sub 10.
[1:16:23] SPEAKER_00: I like the fun.
[1:16:24] Yeah,
[1:16:24] so we spent a lot of time just like,
[1:16:26] it was a big,
[1:16:27] I blogged about it.
[1:16:27] SPEAKER_01: It was this thing where we got it down from,
[1:16:29] SPEAKER_01: it used to be about 800 microseconds and got it down to like nine.
[1:16:33] SPEAKER_01: And I thought that was awesome.
[1:16:35] SPEAKER_01: Even though for end users, it doesn't make a difference.
[1:16:38] SPEAKER_00: But as you say, the craft and the love of the game.
[1:16:41] So when you started out building Goalsy,
[1:16:43] that was around the time where I think ChatGPT was out.
[1:16:46] SPEAKER_00: There were some tools.
[1:16:47] How did your tool set change in terms of how you're developing
[1:16:49] day-to-day?
[1:16:50] SPEAKER_00: There's two sides to that.
[1:16:51] SPEAKER_01: So one, AI gave a huge boost to terminals, which is a funny thing.
[1:16:56] SPEAKER_01: How so?
[1:16:58] SPEAKER_01: The number,
[1:16:58] SPEAKER_01: because of Claude code and all these things,
[1:17:00] SPEAKER_01: the amount of time spent in a terminal has gone up,
[1:17:03] SPEAKER_01: which if you told me in 2023 terminal usage would go up,
[1:17:06] SPEAKER_01: I would say,
[1:17:07] SPEAKER_01: no,
[1:17:07] SPEAKER_01: it's not going to go up.
[1:17:08] SPEAKER_01: I had no disillusions that I was going to save terminals.
[1:17:12] SPEAKER_01: And I didn't, right?
[1:17:13] SPEAKER_01: AI came out and came out with all these CLI tools.
[1:17:17] And even when you're seeing Codex apps and Claude apps is
[1:17:22] leaving the terminal,
[1:17:23] SPEAKER_01: they're still executing.
[1:17:25] SPEAKER_01: so many things in a pseudo-terminal.
[1:17:28] The number of terminals out there is massively larger than
[1:17:33] there was in 2023,
[1:17:34] SPEAKER_01: which is hilarious.
[1:17:35] SPEAKER_01: Oh, wow.
[1:17:36] SPEAKER_01: Yeah.
[1:17:37] SPEAKER_01: So random.
[1:17:38] SPEAKER_01: Super random.
[1:17:39] And so that's part of why one of the things I'm doing with
[1:17:41] Ghosty is extracting,
[1:17:43] SPEAKER_01: it's actually extracted already,
[1:17:44] SPEAKER_01: what I've called libGhosty,
[1:17:46] SPEAKER_01: which is everyone reinvents this very small surface area of a terminal,
[1:17:49] SPEAKER_01: and because they do it,
[1:17:51] SPEAKER_01: it breaks,
[1:17:51] SPEAKER_01: like,
[1:17:52] SPEAKER_01: all sorts of things break.
[1:17:52] SPEAKER_01: Like, if you run a
[1:17:54] Docker build or push to a platform like Heroku and you do
[1:17:57] enough weird things in
[1:17:58] the terminal that aren't actually that weird just like draw a
[1:18:00] progress bar it
[1:18:01] renders it like chaos all over the place all over the place
[1:18:04] yeah and it's just
[1:18:05] because they've poorly implemented a tiny subset of a terminal
[1:18:08] because they're more
[1:18:09] SPEAKER_01: complicated than people think
[1:18:10] And so libgoc is this minimal zero dependency library that
[1:18:13] people can embed terminals anywhere.
[1:18:15] SPEAKER_01: Oh, cool.
[1:18:15] SPEAKER_01: And yeah, MIT license.
[1:18:17] And just,
[1:18:17] it's really like,
[1:18:18] I'm tired of seeing broken terminals everywhere.
[1:18:20] SPEAKER_01: So please use this.
[1:18:21] SPEAKER_01: So, okay.
[1:18:23] SPEAKER_01: That's the one angle.
[1:18:23] SPEAKER_01: Really funny.
[1:18:24] SPEAKER_01: But the other angle is actually AI usage.
[1:18:26] It's hard to say I'm a big fan,
[1:18:27] but within the right categories of things.
[1:18:31] SPEAKER_01: I think that it's a revolutionary tool, and I get a lot of joy using it.
[1:18:36] SPEAKER_01: Yeah, I use it every day.
[1:18:38] I use tools like CloudCode and AMP and Codex and the chat tools
[1:18:43] every day for some
[1:18:44] SPEAKER_01: aspect of my life,
[1:18:44] SPEAKER_01: and it's really allowed me to choose things
[1:18:48] what i want to actually think about right i think that's the
[1:18:52] most important thing
[1:18:52] is that i always felt limited in terms of oh i'm gonna have to
[1:18:56] spend the next two
[1:18:56] hours i don't know doing this boilerplate annoying stuff and
[1:19:02] that i don't want to
[1:19:03] learn about but now i don't have to learn about it which is
[1:19:06] yeah i'm not i'm not
[1:19:08] like getting skill formation in that category but i could now
[1:19:11] spend those two hours
[1:19:13] SPEAKER_01: doing something else and that's the best to me
[1:19:15] SPEAKER_00: In your workflow, do you just use a single agent?
[1:19:18] SPEAKER_00: Do you use multiple agents?
[1:19:19] SPEAKER_00: Have you experimented with them?
[1:19:21] SPEAKER_00: I've tried a bit of everything.
[1:19:22] SPEAKER_01: I would say my standard workflow.
[1:19:23] What I try to do is I try,
[1:19:26] I endeavor to always have an agent doing something at all
[1:19:30] times.
[1:19:31] SPEAKER_01: Maybe not when I sleep.
[1:19:32] SPEAKER_01: I don't go that far.
[1:19:32] SPEAKER_01: A lot of people do go that far.
[1:19:33] SPEAKER_01: I don't go that far.
[1:19:34] SPEAKER_01: But while I'm working, I basically say I want an agent.
[1:19:39] SPEAKER_01: If I'm coding, I want an agent planning.
[1:19:42] SPEAKER_01: If they're coding, I want to be reviewing.
[1:19:44] SPEAKER_01: But there should always be an agent doing something.
[1:19:48] SPEAKER_01: So you have a separate tab.
[1:19:50] yeah separate tab and and sometimes it's multiple i don't
[1:19:54] there's a lot of work
[1:19:54] that i do around cleaning up what agents do and i don't run
[1:19:58] like gas town-esque
[1:20:01] like things and so i'm the the mayor so to speak and so i don't
[1:20:05] want to run too
[1:20:05] SPEAKER_01: many i don't find it that fun to clean their stuff up but
[1:20:08] periodically I'll run two in competition with each other
[1:20:13] because it's a harder task
[1:20:15] and I don't have a high confidence that they're going to just
[1:20:17] like crush it.
[1:20:18] I'll just run Claude versus Codex or something like that or
[1:20:21] I'll have one coding.
[1:20:22] SPEAKER_01: I'll have one doing like some sort of research task.
[1:20:25] SPEAKER_01: I absolutely love them for research.
[1:20:27] SPEAKER_01: That's awesome.
[1:20:28] SPEAKER_01: And then I'll be doing something else but
[1:20:30] SPEAKER_01: No more than two, I would say.
[1:20:32] SPEAKER_00: The code that they generate,
[1:20:33] do you always review it or have you kind of got a bit more
[1:20:37] loose and some people
[1:20:38] SPEAKER_00: swear on closing the loop,
[1:20:41] SPEAKER_00: having validation for it,
[1:20:42] SPEAKER_00: or are you still like,
[1:20:44] I want to see the exact code and I'll review if it's correct
[1:20:47] and what I expected.
[1:20:48] SPEAKER_01: Matters what I'm working on.
[1:20:49] SPEAKER_01: Mm-hmm.
[1:20:50] SPEAKER_01: If it's ghosty, I'm reviewing everything that's going into it.
[1:20:54] If it's like I set up a personal wedding website from one of my
[1:20:57] family members,
[1:20:58] SPEAKER_01: I don't care at all what the code looks like.
[1:20:59] SPEAKER_01: Did it render right in the three browsers that I tried?
[1:21:02] SPEAKER_01: Yes.
[1:21:02] SPEAKER_01: Did it render right on my phone?
[1:21:04] SPEAKER_01: Yes.
[1:21:04] SPEAKER_01: Don't care what the code looks like.
[1:21:06] SPEAKER_01: Doesn't make any network works?
[1:21:07] SPEAKER_01: No.
[1:21:07] SPEAKER_01: Has no secrets access?
[1:21:08] SPEAKER_01: I don't care.
[1:21:09] SPEAKER_01: Ship it.
[1:21:10] SPEAKER_01: It's only going to be online for two months, so ship it.
[1:21:13] SPEAKER_00: And then how did the AI policy at Ghostly change?
[1:21:15] I remember that maybe a year ago or so,
[1:21:19] you asked for disclosures if someone is using it.
[1:21:22] And just very recently,
[1:21:23] you kind of cracked down and said like,
[1:21:27] all right,
[1:21:27] no more.
[1:21:27] SPEAKER_01: Yeah, we're going to change again.
[1:21:28] SPEAKER_01: Well, I'm not going to change, I'm going to iterate.
[1:21:30] SPEAKER_01: So yeah, a year ago, I started asking for disclosure.
[1:21:33] SPEAKER_01: And people,
[1:21:34] SPEAKER_01: you know,
[1:21:35] SPEAKER_01: the very fair question there is,
[1:21:39] SPEAKER_01: what does it matter how the code is produced?
[1:21:41] And the reason to me it always mattered was because it dictates
[1:21:46] how much effort I
[1:21:47] SPEAKER_01: go into fixing it.
[1:21:49] SPEAKER_01: Because if you produce the code with AI and you did it really quickly,
[1:21:53] SPEAKER_01: then I'm not going to spend hours fixing up your code.
[1:21:58] SPEAKER_01: You spend your time.
[1:21:59] Yeah,
[1:22:00] because you know that person didn't put much time in it,
[1:22:02] not much human time.
[1:22:03] SPEAKER_00: You're kind of trying to mirror it, right?
[1:22:05] SPEAKER_00: It's ever for effort.
[1:22:06] If you put in hours,
[1:22:07] I'm going to put in hours back,
[1:22:08] and I'm going to help you.
[1:22:09] But if you put in a few minutes and never read anything and
[1:22:11] threw it over the wall,
[1:22:12] SPEAKER_01: then I should be able to read it in a few minutes,
[1:22:13] SPEAKER_01: say,
[1:22:14] SPEAKER_01: no,
[1:22:14] SPEAKER_01: thank you,
[1:22:15] SPEAKER_01: and close it.
[1:22:16] SPEAKER_01: It's fair, and I need to better understand what that is.
[1:22:20] SPEAKER_01: And,
[1:22:21] SPEAKER_01: you know,
[1:22:21] SPEAKER_01: it's not about bad code,
[1:22:22] SPEAKER_01: because open source has always gotten bad code contributions.
[1:22:27] But the difference before is usually those bad code
[1:22:29] contributions came from people
[1:22:31] that were genuinely trying their best and put in a lot of
[1:22:34] effort just to get to
[1:22:35] SPEAKER_01: that bad code point.
[1:22:36] SPEAKER_01: And so people behave differently.
[1:22:38] SPEAKER_01: I would always try to reciprocate by being like,
[1:22:40] SPEAKER_01: this is someone very junior or this is someone just new to the project.
[1:22:43] SPEAKER_01: And I would try to educate them and be like,
[1:22:44] SPEAKER_01: okay,
[1:22:45] SPEAKER_01: we should do this better and give these careful reviews.
[1:22:47] But if it's bad code that there was low effort,
[1:22:50] I'm not going to give a careful review.
[1:22:51] SPEAKER_01: So again, like, I wanted to know these things.
[1:22:54] SPEAKER_01: And the disclosure worked decently well.
[1:22:56] SPEAKER_01: The issue wasn't the disclosure.
[1:22:58] The issue was that the quantity of low-quality AI PRs that we
[1:23:05] were getting reached
[1:23:08] SPEAKER_01: a point where it was too high.
[1:23:10] SPEAKER_00: Like,
[1:23:10] SPEAKER_00: Do you know why that might have happened?
[1:23:12] SPEAKER_00: More people instructed agents to contribute a PR to fix an issue?
[1:23:16] SPEAKER_00: Do you have theories or actually seen evidence of why this happened?
[1:23:21] SPEAKER_01: I have theories, and I've seen some evidence.
[1:23:25] Obviously,
[1:23:25] there's the rise of just AI usage in general,
[1:23:27] but the real trend that...
[1:23:29] SPEAKER_01: a step change that I saw at a certain point.
[1:23:31] SPEAKER_01: And I don't know when it happened because I don't use agents in this way.
[1:23:34] SPEAKER_01: But at a certain point, they started opening PRs.
[1:23:37] SPEAKER_01: You know,
[1:23:37] SPEAKER_01: before it was like you generate code and maybe they commit and stuff,
[1:23:41] SPEAKER_01: but you would still like push it to a branch and open the pull request.
[1:23:44] SPEAKER_01: At a certain point, they started opening PRs.
[1:23:47] SPEAKER_01: And there was a dead giveaway at AI because at least to this day,
[1:23:51] SPEAKER_01: to the point we're recording this,
[1:23:53] the way Claude opens a PR is it opens a draft with no body and
[1:23:59] then it edits a body
[1:24:01] SPEAKER_01: later and then reopens it for review.
[1:24:03] SPEAKER_01: Which is not how a human would do it.
[1:24:05] SPEAKER_01: oh, like one human a year would do that.
[1:24:07] SPEAKER_01: And now it's happening three times a day.
[1:24:10] SPEAKER_01: And so even if they're not disclosing AI or they're hiding it,
[1:24:13] SPEAKER_01: it's like,
[1:24:13] SPEAKER_01: oh,
[1:24:13] SPEAKER_01: and it happens at a speed that's unrealistic.
[1:24:15] It opened,
[1:24:16] the body came in less than a minute later and it opened less
[1:24:18] than a minute later.
[1:24:19] SPEAKER_01: Like pure AI.
[1:24:21] SPEAKER_01: I just tweeted about this a couple days ago,
[1:24:22] SPEAKER_01: which is just like,
[1:24:24] I wish that these agentic tools would put a pause on opening
[1:24:28] PRs for a second
[1:24:30] because I think that's the point where it's really causing a
[1:24:32] lot of friction.
[1:24:33] SPEAKER_00: How did you change the policy?
[1:24:34] SPEAKER_00: Are you considering closing down PRs?
[1:24:37] SPEAKER_00: You mentioned that recently, that the thought crossed your mind.
[1:24:41] SPEAKER_00: I would say I was crashing out in that moment.
[1:24:46] SPEAKER_01: But kind of.
[1:24:47] So we shipped this policy update where PRs written by AI are no
[1:24:52] longer allowed
[1:24:53] SPEAKER_01: anymore unless they're associated with an accepted feature request.
[1:24:57] So you can't just drive by and be like,
[1:24:59] I did this thing that I've never talked to you about.
[1:25:01] SPEAKER_01: Here you go.
[1:25:02] SPEAKER_01: And we get about two or three of those a day.
[1:25:05] SPEAKER_01: And so we just close those.
[1:25:07] SPEAKER_01: I literally don't even read the content.
[1:25:08] SPEAKER_01: I could see it's AI.
[1:25:10] SPEAKER_01: I could see there's no fixes issue number.
[1:25:12] SPEAKER_01: I just close it.
[1:25:13] SPEAKER_01: No idea if the code is good.
[1:25:14] SPEAKER_01: Don't care.
[1:25:15] SPEAKER_01: It's just policy.
[1:25:16] SPEAKER_01: Don't have time for that.
[1:25:17] SPEAKER_01: That's pretty much where we landed on currently.
[1:25:21] SPEAKER_01: And we're recording this in the middle of another transition,
[1:25:24] SPEAKER_01: which I already have the PR open,
[1:25:26] where we're going to switch to a explicit vouching system for
[1:25:31] the community.
[1:25:31] SPEAKER_01: So you're no longer able to open a PR at all,
[1:25:35] SPEAKER_01: AI or not,
[1:25:36] SPEAKER_01: don't care anymore,
[1:25:36] which is I think the people who criticize where it came from
[1:25:40] doesn't matter.
[1:25:40] SPEAKER_01: It doesn't matter anymore.
[1:25:41] Now all that matters is that another community member has
[1:25:45] vouched for you.
[1:25:46] SPEAKER_01: And if they vouched for you,
[1:25:48] SPEAKER_01: you're added to a list where forever or indefinitely you could open a PR.
[1:25:52] SPEAKER_01: If you behave badly,
[1:25:54] SPEAKER_01: then you,
[1:25:55] SPEAKER_01: the person who invited you,
[1:25:56] and the entire tree of people they ever invited are blocked
[1:25:59] forever for the repo.
[1:26:00] SPEAKER_01: This reminds you a little bit of the social lobsters.
[1:26:03] SPEAKER_01: Lobsters, yes.
[1:26:04] SPEAKER_01: That's what it's based off of.
[1:26:05] So the idea is that you're putting your own reputation on the
[1:26:09] line by vouching for
[1:26:11] SPEAKER_01: somebody else.
[1:26:12] SPEAKER_01: I'm a reasonable person.
[1:26:13] If this happens and I or one of our maintainers or community
[1:26:16] made a mistake,
[1:26:17] SPEAKER_01: if you just hop into Discord or email and seem like a reasonable,
[1:26:21] SPEAKER_01: apologetic person...
[1:26:23] SPEAKER_01: I'm not going to spend a lot of time,
[1:26:24] SPEAKER_01: like,
[1:26:24] SPEAKER_01: there's not going to be,
[1:26:25] SPEAKER_01: like,
[1:26:25] SPEAKER_01: a,
[1:26:26] SPEAKER_01: I don't know,
[1:26:26] SPEAKER_01: a mock,
[1:26:27] SPEAKER_01: like,
[1:26:28] SPEAKER_01: court-type session.
[1:26:29] SPEAKER_01: I'm just going to be like, okay, I'll give you another chance.
[1:26:31] SPEAKER_01: So, yeah, we're sort of moving to that system.
[1:26:32] SPEAKER_01: I think one thing that's a little bit different is,
[1:26:34] SPEAKER_01: and I should say that this is,
[1:26:36] SPEAKER_01: one,
[1:26:36] SPEAKER_01: inspired by lobsters,
[1:26:37] SPEAKER_01: but specifically in the AI space,
[1:26:39] SPEAKER_01: it's inspired by this project called Pi.
[1:26:42] SPEAKER_01: They do this.
[1:26:43] SPEAKER_01: Well, they do, they... It's a self-improving...
[1:26:47] SPEAKER_01: So like build your own agent toolkit.
[1:26:49] SPEAKER_01: So,
[1:26:50] SPEAKER_01: you know,
[1:26:50] SPEAKER_01: kind of ironically,
[1:26:51] SPEAKER_01: it's an AI tool,
[1:26:52] but they care a lot about code quality and anti-slop and things
[1:26:55] like that.
[1:26:56] SPEAKER_01: So they have a similar mechanism,
[1:26:59] SPEAKER_01: a little bit less of the tree and some other,
[1:27:01] SPEAKER_01: but a similar,
[1:27:02] SPEAKER_01: you can't open a PR unless you're vouched for it.
[1:27:04] And the other difference here that we're going with is in
[1:27:08] addition to vouching
[1:27:09] SPEAKER_01: where you could positively mark someone,
[1:27:11] SPEAKER_01: you could actually denounce users.
[1:27:13] SPEAKER_01: So if there's a bad actor, you could actually ban them.
[1:27:17] SPEAKER_01: Not just like you can't even attempt to contribute again.
[1:27:20] SPEAKER_01: And that's just a, yeah, we had one yesterday where someone opened PR.
[1:27:25] SPEAKER_01: We closed it because it violated, it had no associated issue.
[1:27:28] SPEAKER_01: And it was AI.
[1:27:29] SPEAKER_01: And then they just reopened it.
[1:27:32] SPEAKER_01: Like not the same one.
[1:27:32] They resubmitted a new branch and reopened it like less than 10
[1:27:35] minutes later.
[1:27:35] SPEAKER_01: I was like, oh my gosh.
[1:27:37] SPEAKER_01: So stuff like that is just, it's, the problem is it's just wasting time.
[1:27:41] It feels like most of open source will have to change because
[1:27:45] of AI,
[1:27:46] right?
[1:27:46] SPEAKER_00: Like it's,
[1:27:47] SPEAKER_00: You probably know more maintainers,
[1:27:49] SPEAKER_00: but I hear your story is not the only one,
[1:27:51] SPEAKER_00: you know,
[1:27:51] SPEAKER_00: like the project closed down PRs.
[1:27:54] GitHub is,
[1:27:55] I think,
[1:27:55] just shipping a feature that projects can automatically close
[1:28:00] or reject PRs.
[1:28:02] SPEAKER_01: Yeah, I think open source will have to change in a lot of ways.
[1:28:04] SPEAKER_01: I mean,
[1:28:04] SPEAKER_01: I think,
[1:28:05] SPEAKER_01: I forgot who wrote this,
[1:28:06] SPEAKER_01: but one of the logical extremes is if agents are so good,
[1:28:09] SPEAKER_01: you don't need open source anymore because you can just build it,
[1:28:12] SPEAKER_01: right?
[1:28:12] SPEAKER_01: Theoretically, yes.
[1:28:13] SPEAKER_01: That's the extreme.
[1:28:14] SPEAKER_01: I don't ascribe to that extreme, but that's one of the extremes.
[1:28:17] The issue is there used to just be this natural back pressure
[1:28:21] in terms of effort
[1:28:22] SPEAKER_01: required to submit a change.
[1:28:23] SPEAKER_01: And that was enough.
[1:28:24] SPEAKER_01: And now that that has been eliminated by AI.
[1:28:28] SPEAKER_01: I like the wording that Pi uses,
[1:28:30] which is that AI makes it trivial to create plausible looking
[1:28:35] but incorrect and low
[1:28:36] SPEAKER_01: quality contributions.
[1:28:37] SPEAKER_01: And that's the fundamental issue.
[1:28:39] You know,
[1:28:39] open source to a certain extent has always been a system of
[1:28:43] reputation,
[1:28:43] right?
[1:28:44] SPEAKER_01: Like you earn some trust and you get more access that,
[1:28:46] SPEAKER_01: you know,
[1:28:47] SPEAKER_01: and that's how it's supposed to work.
[1:28:49] SPEAKER_01: But yeah,
[1:28:50] it's been that reputation system has been taken advantage of in
[1:28:53] a certain sense
[1:28:54] SPEAKER_01: with AI.
[1:28:55] SPEAKER_01: or the default allow PRs has, you know, has been taken advantage of.
[1:28:59] And so I think like this vouching system that we're proposing
[1:29:04] for my project,
[1:29:05] SPEAKER_01: I think it's like very true to what open source is,
[1:29:07] SPEAKER_01: which is that open source has always been a system of trust.
[1:29:10] Before we've had a default trust and now it's just a default
[1:29:14] deny and you must get
[1:29:15] SPEAKER_01: trust by somebody.
[1:29:17] SPEAKER_00: Do you think we might see a lot more forking happening though?
[1:29:20] SPEAKER_01: I hope so.
[1:29:21] SPEAKER_01: I hope so.
[1:29:21] SPEAKER_00: Because until now,
[1:29:22] forking used to be like a fork off a little bit because it was
[1:29:26] a lot of effort.
[1:29:28] SPEAKER_00: It wasn't to keep up.
[1:29:30] SPEAKER_00: It never seemed viable to fork a proper project, right?
[1:29:33] SPEAKER_01: Yeah, and I am separate from AI and everything.
[1:29:37] SPEAKER_01: I have always been a huge proponent,
[1:29:40] SPEAKER_01: or I guess in the past few years,
[1:29:41] SPEAKER_01: I've been a huge public proponent of there should be a lot more forks,
[1:29:45] SPEAKER_01: like a lot more forks,
[1:29:46] SPEAKER_01: because open source,
[1:29:48] SPEAKER_01: I think,
[1:29:50] One of the reasons maintainers have been taken advantage of to
[1:29:52] some extent is that
[1:29:53] SPEAKER_01: contributors have some sort of entitlement,
[1:29:57] SPEAKER_01: whether it's toxic entitlement or not,
[1:29:59] SPEAKER_01: but there's some sort of entitlement,
[1:30:00] SPEAKER_01: which is I've made a valuable change,
[1:30:03] SPEAKER_01: and it's clean,
[1:30:04] SPEAKER_01: and it works great,
[1:30:05] SPEAKER_01: so you should accept it.
[1:30:06] SPEAKER_01: But you really don't have to.
[1:30:09] SPEAKER_01: You absolutely don't have to.
[1:30:11] And then I've seen this time and time again where you have a
[1:30:13] high-quality PR,
[1:30:14] SPEAKER_01: like perfect PR,
[1:30:15] SPEAKER_01: but you say no,
[1:30:17] SPEAKER_01: and there's anger in the community.
[1:30:20] SPEAKER_01: But the thing is,
[1:30:21] SPEAKER_01: I've said this since 10 years ago in the Hotspur days,
[1:30:24] SPEAKER_01: hitting the merge button is the easiest step.
[1:30:26] SPEAKER_01: Getting to and hitting the merge button is the easiest step.
[1:30:29] SPEAKER_01: Undergraduates should be able to do that.
[1:30:31] SPEAKER_01: After that,
[1:30:31] it's the years of maintaining whatever you just merged within
[1:30:35] the context of your
[1:30:36] SPEAKER_01: roadmap,
[1:30:38] SPEAKER_01: the bugs,
[1:30:39] SPEAKER_01: customer needs,
[1:30:40] SPEAKER_01: all that stuff.
[1:30:41] SPEAKER_01: That's the hard part.
[1:30:42] SPEAKER_01: You're signing up to keeping this forever.
[1:30:44] SPEAKER_01: It's very hard to remove features or anything, remove anything.
[1:30:47] SPEAKER_01: So
[1:30:47] The core privilege you get with open source,
[1:30:49] like OSI open source,
[1:30:50] is forking.
[1:30:51] SPEAKER_01: And that's the right you got.
[1:30:55] SPEAKER_01: You should fork it and maintain your own software.
[1:30:57] SPEAKER_00: Yeah.
[1:30:57] SPEAKER_00: One interesting impact of AI,
[1:31:00] SPEAKER_00: someone tweeted about how there's a rumor that big tech is looking into
[1:31:04] SPEAKER_00: re-architecting their monorepos because of agentic tooling,
[1:31:07] SPEAKER_00: AI tooling,
[1:31:08] SPEAKER_00: just a lot more code being churned out.
[1:31:10] SPEAKER_00: What's actually happening?
[1:31:11] SPEAKER_00: What's the problem with Git?
[1:31:12] SPEAKER_01: The problem with Git,
[1:31:13] SPEAKER_01: I mean,
[1:31:13] SPEAKER_01: I think there's a lot of problems with Git,
[1:31:15] but the monorepo problem with Git is that Git is relatively bad
[1:31:19] at very large
[1:31:20] SPEAKER_01: repositories because you pretty much have to clone the entire repository.
[1:31:23] There's some extensions to fix that,
[1:31:25] but official mainline Git can't really do that,
[1:31:27] right?
[1:31:28] And so for very large changes,
[1:31:31] very large repositories,
[1:31:33] it's sort of annoying to maintain.
[1:31:35] SPEAKER_01: And then if you have a lot of churn in it,
[1:31:37] SPEAKER_01: it's very hard to get changes into whatever your trunk is,
[1:31:39] SPEAKER_01: your main,
[1:31:40] SPEAKER_01: your master branch,
[1:31:41] SPEAKER_01: right?
[1:31:41] SPEAKER_01: You constantly have to rebase.
[1:31:42] SPEAKER_01: Merge queue solves that to a certain extent.
[1:31:44] SPEAKER_01: I think merge cues works for humans at a certain scale,
[1:31:49] SPEAKER_01: but the merge cues could get quite deep.
[1:31:50] SPEAKER_01: But then if you sort of 10X that,
[1:31:53] SPEAKER_01: like,
[1:31:54] SPEAKER_01: conservatively,
[1:31:55] SPEAKER_01: I think 10X that,
[1:31:56] SPEAKER_01: and then if you buy into,
[1:31:57] SPEAKER_01: like,
[1:31:57] SPEAKER_01: hype cycles and you 100 or 1,000X that,
[1:32:00] I think it gets completely untenable in terms of how are you
[1:32:03] ever getting any
[1:32:05] SPEAKER_01: semblance of cohesiveness onto the main branch quickly.
[1:32:10] SPEAKER_01: And so...
[1:32:12] SPEAKER_01: Yeah,
[1:32:12] SPEAKER_01: I think there's a confluence of problems there,
[1:32:14] SPEAKER_01: which is the merge queue problem,
[1:32:16] SPEAKER_01: the disk space problem,
[1:32:18] SPEAKER_01: the,
[1:32:19] SPEAKER_01: like,
[1:32:19] SPEAKER_01: branching review type problem.
[1:32:22] SPEAKER_01: Oh,
[1:32:22] SPEAKER_01: I also tweeted another time where,
[1:32:25] SPEAKER_01: like,
[1:32:26] SPEAKER_01: Git has this,
[1:32:27] SPEAKER_01: you branch and you push up your branches,
[1:32:28] SPEAKER_01: but the branches are only the positive.
[1:32:30] SPEAKER_01: Like, when you close a PR and you don't accept it, like...
[1:32:34] SPEAKER_01: You pretty much are the branch.
[1:32:36] GitHub,
[1:32:36] you could reaccess closed PRs,
[1:32:37] but a lot of people don't even get to the PR stage.
[1:32:40] SPEAKER_01: They experiment.
[1:32:40] SPEAKER_01: They're like, oh, this isn't the right way.
[1:32:42] SPEAKER_01: And they never push the branch.
[1:32:44] SPEAKER_01: And that's like relatively important information.
[1:32:48] SPEAKER_01: Relatively important.
[1:32:49] SPEAKER_01: It's not as important as the positive,
[1:32:51] but I think there should be a lot more branches and get a lot
[1:32:54] more information.
[1:32:56] that we just never throw away like we're at to me we're sort of
[1:32:59] at the like gmail
[1:33:00] moment for email for version control where like you used to
[1:33:04] really have to like
[1:33:05] curate delete all this email and then gmail came out gave a gig
[1:33:09] away for free to
[1:33:09] everybody never had to think about their tagline or something
[1:33:12] was like never
[1:33:13] deleted email i remember seeing that in some set of marketing
[1:33:15] it's like archive it
[1:33:16] right never delete it and that's where i feel like we should be
[1:33:19] out with code which
[1:33:19] SPEAKER_01: is like just
[1:33:21] SPEAKER_01: Just huge repos, a lot of context.
[1:33:23] We need better tooling in order to find relevant context in
[1:33:27] that Git repo or
[1:33:28] SPEAKER_01: version-controlled repo.
[1:33:29] SPEAKER_01: I would say that the real, you ask for, like, real examples.
[1:33:33] SPEAKER_01: I do advise a company that's currently stealth but working in this space.
[1:33:38] SPEAKER_01: And the real examples is driven by the highly agenda companies,
[1:33:42] SPEAKER_01: the companies that are,
[1:33:43] SPEAKER_01: like,
[1:33:43] SPEAKER_01: going really all in and drinking the Kool-Aid.
[1:33:46] And they're struggling in terms of the amount of churn that
[1:33:50] these agents is causing
[1:33:51] SPEAKER_01: is so much greater than humans.
[1:33:53] SPEAKER_01: And it's not an AI review problem or anything.
[1:33:55] SPEAKER_01: It's really just like a release problem,
[1:33:57] SPEAKER_01: like managing the merge queues,
[1:33:59] humans getting access to the right set of data in the
[1:34:02] repository and things like
[1:34:03] SPEAKER_01: that.
[1:34:03] So are there problems performance problems mainly with Git or
[1:34:08] just like even the workflow of?
[1:34:09] SPEAKER_01: Yeah, all of it.
[1:34:10] SPEAKER_01: Performance for sure, but workflow.
[1:34:12] SPEAKER_01: Yeah.
[1:34:12] SPEAKER_01: I mean,
[1:34:13] SPEAKER_01: like every time you pull here,
[1:34:14] SPEAKER_01: you can't,
[1:34:15] SPEAKER_01: you can't push because every time you pull,
[1:34:16] SPEAKER_01: there's another chain.
[1:34:17] SPEAKER_00: Like every time you push it.
[1:34:18] SPEAKER_00: Oh, there.
[1:34:19] SPEAKER_00: Yeah.
[1:34:19] SPEAKER_00: There, there's a lot of parallel work as well.
[1:34:22] SPEAKER_00: Do you think Git will be around with his education in a few years?
[1:34:25] SPEAKER_00: Who knows,
[1:34:25] but what's interesting is this is the first time in like 12 to
[1:34:30] 15 years that anyone
[1:34:32] SPEAKER_01: is even asking that question without laughing.
[1:34:35] SPEAKER_01: We're not laughing.
[1:34:36] SPEAKER_01: Right.
[1:34:36] SPEAKER_01: Like if five years ago you said,
[1:34:38] SPEAKER_01: well,
[1:34:39] SPEAKER_01: Git will be around in five years,
[1:34:40] SPEAKER_01: you'd be like,
[1:34:41] SPEAKER_01: yeah,
[1:34:41] SPEAKER_01: of course it will be around.
[1:34:42] SPEAKER_01: Like that's crazy to think, right?
[1:34:44] SPEAKER_01: But now people could ask that question.
[1:34:46] SPEAKER_01: And of course,
[1:34:46] SPEAKER_01: some people laugh,
[1:34:47] but there are people that critically think that Git might not
[1:34:50] be around in five
[1:34:50] SPEAKER_00: years.
[1:34:51] SPEAKER_00: Well,
[1:34:51] I think you do want to save the prompt history because often
[1:34:53] reading the prompt is
[1:34:54] SPEAKER_00: actually,
[1:34:55] SPEAKER_00: if it's a bunch of code generated,
[1:34:56] SPEAKER_00: the pull request is meaningless.
[1:34:57] SPEAKER_00: Changes will happen.
[1:34:58] SPEAKER_01: Git and GitHub forges in their current form do not work.
[1:35:05] with agentic infrastructure today and it's nascent today so
[1:35:10] yeah where this change
[1:35:12] will happen and i'm not exactly sure and that's not something
[1:35:14] i'm trying to change
[1:35:16] myself but it you know i'm on the receiving end in terms of
[1:35:19] agent user and a
[1:35:20] SPEAKER_01: maintainer where i'm like this isn't
[1:35:21] working what other engineering practices that you know we have
[1:35:25] been relatively
[1:35:26] stable for like 10 20 or even more years you think have to
[1:35:29] change or are looking to
[1:35:30] change thinking things like cicd testing code review other you
[1:35:35] know ways of yeah
[1:35:37] you know amp has a saying which is is it's kind of clickbaity
[1:35:42] but it's so true as
[1:35:43] everything is changing and this is this is the first time
[1:35:45] really where it feels
[1:35:46] SPEAKER_01: like is the first time in my
[1:35:51] SPEAKER_01: relatively short to other people,
[1:35:52] but still a 20-year professional career that so much is on the
[1:35:57] table for change at
[1:35:59] SPEAKER_01: one time.
[1:35:59] SPEAKER_01: And I'm an optimist, so it's really exciting to me.
[1:36:02] SPEAKER_01: It's a lot of fun, but we've never seen so much editor mobility.
[1:36:07] SPEAKER_01: Editors used to be one of those things that once someone picks an editor,
[1:36:10] SPEAKER_01: it's very hard to get them off that editor.
[1:36:11] SPEAKER_01: They're stuck.
[1:36:12] The level of editor mobility in the past few years between VS
[1:36:15] Code and Cursor and
[1:36:16] SPEAKER_01: just jumping around is...
[1:36:18] SPEAKER_01: So there's a bunch of mobility there in terms of,
[1:36:21] SPEAKER_01: I mean,
[1:36:22] cursor itself is a great example of a company that reached an
[1:36:24] insane valuation that
[1:36:26] SPEAKER_01: you could never have gotten pre-AI on an editor product.
[1:36:28] SPEAKER_01: So editor forges, CICD for sure.
[1:36:31] SPEAKER_01: And I think that testing in general,
[1:36:33] SPEAKER_01: because to make an agent better,
[1:36:35] SPEAKER_01: it needs to be able to validate its work.
[1:36:36] SPEAKER_01: And so tests go from even the best test case scenarios don't have like,
[1:36:43] SPEAKER_01: I mean,
[1:36:43] SPEAKER_01: the best,
[1:36:43] SPEAKER_01: I guess,
[1:36:43] SPEAKER_01: have full coverage,
[1:36:44] SPEAKER_01: but that's a very extreme.
[1:36:46] The very good test case scenarios just test like one of the
[1:36:50] edge cases and one of
[1:36:51] SPEAKER_01: the happy cases and,
[1:36:52] SPEAKER_01: you know,
[1:36:53] SPEAKER_01: bad case.
[1:36:53] SPEAKER_01: And they just kind of go through and if it passes,
[1:36:55] SPEAKER_01: it's probably good paired with a human who's thought about the problem.
[1:37:00] But AI is more goal oriented in terms of I want this feature to
[1:37:05] work this way that
[1:37:07] if it doesn't see a spec somewhere or a test somewhere that
[1:37:10] other things should
[1:37:11] SPEAKER_01: work in a different way,
[1:37:12] SPEAKER_01: it'll just break it on its path to its own goal.
[1:37:15] SPEAKER_01: And so I've heard this called a lot of things.
[1:37:18] SPEAKER_01: I mean,
[1:37:19] SPEAKER_01: the one I like the most is like kind of like harness engineering,
[1:37:22] SPEAKER_00: which is like harness engineering.
[1:37:23] SPEAKER_01: Yeah.
[1:37:23] SPEAKER_01: It's like,
[1:37:24] SPEAKER_01: and I've been,
[1:37:25] one of my like goals for this calendar year has been to spend
[1:37:27] more time doing that,
[1:37:28] SPEAKER_01: which is that anytime you see AI do a bad thing,
[1:37:32] SPEAKER_01: try to build tooling that it could have called out to,
[1:37:35] SPEAKER_01: to have prevented that bad thing or course corrected that bad thing.
[1:37:39] SPEAKER_01: And so it's sort of like moving from the product and working on the
[1:37:41] harness for the product or product development and so yeah
[1:37:46] there's there's a lot of
[1:37:47] that where i think testing has to change to be far more
[1:37:50] expansive but cicd is not
[1:37:53] set up just resource performance wise to be able to do stuff
[1:37:56] like that um so yeah
[1:37:58] i'm not sure how it changes but that's going to change too so
[1:38:01] everything is on the
[1:38:02] table it's really interesting yeah and a lot of tools to be
[1:38:06] built one other thing
[1:38:08] SPEAKER_00: observability
[1:38:09] SPEAKER_01: Yeah.
[1:38:09] SPEAKER_01: And then,
[1:38:10] SPEAKER_01: and I guess on that same topic,
[1:38:12] SPEAKER_01: I mean,
[1:38:12] SPEAKER_01: of the volume and scale and observability,
[1:38:14] SPEAKER_01: it's also like the sandbox.
[1:38:16] SPEAKER_01: Like I didn't think even being in infrastructure and being heavily into
[1:38:20] SPEAKER_01: infrastructure,
[1:38:21] SPEAKER_01: you know,
[1:38:22] containers blew up the amount of like minimal compute units we
[1:38:26] had like floating
[1:38:27] SPEAKER_01: around everywhere.
[1:38:28] SPEAKER_01: I didn't think that was going to go up.
[1:38:30] I mean,
[1:38:30] it'd go up like predictably up,
[1:38:32] but I didn't think it was going to like slope change up.
[1:38:35] And it is like slope change up already just due to the sandbox
[1:38:38] environments that agents need.
[1:38:40] SPEAKER_01: And yeah,
[1:38:41] SPEAKER_01: I mean,
[1:38:41] that's super interesting to me because that stresses a whole
[1:38:44] lot of new systems.
[1:38:46] SPEAKER_01: I think,
[1:38:46] SPEAKER_01: you know,
[1:38:47] SPEAKER_01: the things that I worked on,
[1:38:48] SPEAKER_01: like all the products I worked on,
[1:38:49] SPEAKER_01: but also things in the ecosystem like Docker,
[1:38:52] SPEAKER_01: but like Kubernetes,
[1:38:52] SPEAKER_01: they're going to be stressed significantly because they're
[1:38:55] engineer for some level of scale but this is a different type
[1:38:59] of particularly
[1:38:59] non-production workload scale that you have to support so um
[1:39:04] yeah it's it's fun fun
[1:39:06] SPEAKER_00: problems going back to hiring you you've hired a lot of engineers and you
[1:39:11] previously talked about something really interesting this was i
[1:39:14] think in the
[1:39:14] context of maybe hashi corp how some of the best engineers
[1:39:17] you've hired had really
[1:39:18] SPEAKER_00: boring backgrounds can you talk about that
[1:39:22] SPEAKER_00: Like, who were the best engineers you hired?
[1:39:23] SPEAKER_00: Yeah, that's a better way to frame it.
[1:39:25] SPEAKER_01: Yeah, I stand by this.
[1:39:28] SPEAKER_01: The best engineers I can remember from my time at Hotspur,
[1:39:32] SPEAKER_01: but also just in every job that I've had,
[1:39:34] SPEAKER_01: are notoriously private.
[1:39:36] SPEAKER_01: Not because they want to be private,
[1:39:37] SPEAKER_01: because they just don't care to be public,
[1:39:39] SPEAKER_01: I guess would be the better way to put it.
[1:39:40] SPEAKER_01: I don't want to like carefully describe anyone without giving them away,
[1:39:43] SPEAKER_01: but you know,
[1:39:44] SPEAKER_01: they're just,
[1:39:44] SPEAKER_01: they don't have social media profiles.
[1:39:46] SPEAKER_01: Very often they honestly are nine to five engineers.
[1:39:49] SPEAKER_01: They go back and they don't code at night.
[1:39:51] SPEAKER_01: They just spend time with their family,
[1:39:52] SPEAKER_01: but because they don't do anything else during their working time,
[1:39:54] SPEAKER_01: they're like locked in and,
[1:39:57] SPEAKER_01: and they're really good.
[1:39:57] SPEAKER_01: And it's not about putting the hours.
[1:39:59] SPEAKER_01: It's also just skill wise, super strong.
[1:40:02] SPEAKER_01: So yeah, I always found like,
[1:40:05] SPEAKER_01: When I was reviewing resumes and stuff,
[1:40:07] when you find the person that has a resume where they don't
[1:40:10] have any GitHub,
[1:40:11] SPEAKER_01: even a GitHub account,
[1:40:12] SPEAKER_01: some people are like,
[1:40:12] SPEAKER_01: oh,
[1:40:12] SPEAKER_01: you have to have public contributions to stand out.
[1:40:15] SPEAKER_01: That is a way to stand out.
[1:40:17] SPEAKER_01: But also,
[1:40:17] if you have zero public contributions and you've just worked at
[1:40:20] companies that also
[1:40:21] SPEAKER_01: I've never heard of before,
[1:40:23] SPEAKER_01: it kind of is interesting to me,
[1:40:25] SPEAKER_01: which is like,
[1:40:25] SPEAKER_01: okay,
[1:40:26] SPEAKER_01: you might know something deep.
[1:40:28] SPEAKER_01: Yeah.
[1:40:31] SPEAKER_01: Yeah,
[1:40:31] SPEAKER_01: I think that,
[1:40:32] SPEAKER_01: you know,
[1:40:33] SPEAKER_01: the problem is,
[1:40:33] SPEAKER_01: and the funny,
[1:40:34] the ironic thing is I spend a lot of time on social media and
[1:40:37] these engineers are
[1:40:38] SPEAKER_01: better than me.
[1:40:39] But the funny thing is every moment you spend on social media,
[1:40:42] time is zero sum.
[1:40:43] So every moment you spend on social media is taking away from
[1:40:46] something else.
[1:40:46] SPEAKER_01: And the issue is it's not one for one because as every engineer knows,
[1:40:50] SPEAKER_01: the time it takes to really
[1:40:52] get your mind into flow to get going with something is it
[1:40:57] varies but it takes time
[1:40:59] and so when you context switch to social media if you if
[1:41:02] something's compiling and
[1:41:03] you tab over and you spend time you you've given something up
[1:41:07] in terms of thinking
[1:41:08] I think one of the best things I do spend a lot of time on
[1:41:11] social media but
[1:41:13] Maybe unhealthy amount of time on social media,
[1:41:16] but also an unhealthy amount of time at night.
[1:41:20] SPEAKER_01: I don't have insomnia, but it takes me a long time to fall asleep.
[1:41:23] SPEAKER_01: And it's because I just sit there in the dark.
[1:41:25] And I love,
[1:41:27] some people do this in the shower,
[1:41:27] but it's not long enough for me.
[1:41:29] SPEAKER_01: I love to just sit in bed, lights off, my wife's sleeping.
[1:41:32] SPEAKER_01: And I just think through, like I'm writing code in my head.
[1:41:36] SPEAKER_01: I'm thinking through products.
[1:41:37] SPEAKER_01: I'm thinking through website copy.
[1:41:38] I'm thinking through,
[1:41:39] I'm running CLIs in my head of how it's going to feel.
[1:41:42] SPEAKER_01: And sometimes, last night, I went to bed at 9.30 because I'm a dad.
[1:41:47] SPEAKER_01: So I go to bed early.
[1:41:50] SPEAKER_00: You have to wake up and you don't know when you have to wake up.
[1:41:53] SPEAKER_01: Yeah, yeah.
[1:41:53] SPEAKER_01: And I didn't even feel like I was up that long.
[1:41:57] SPEAKER_01: I was like, oh, I gotta go to the bathroom.
[1:41:58] SPEAKER_01: I should really actually go to sleep.
[1:42:00] SPEAKER_01: And I looked and it was 1230.
[1:42:01] SPEAKER_01: And all I was thinking about was,
[1:42:04] SPEAKER_01: it's so dumb,
[1:42:04] but all I was thinking about was this vouching system of how
[1:42:07] vouching might work
[1:42:08] SPEAKER_01: and might not work.
[1:42:09] SPEAKER_01: And I've always had this thing where I'm willing to, I like competing.
[1:42:14] SPEAKER_01: I think competition's fun.
[1:42:15] SPEAKER_01: But
[1:42:16] I always feel fair game to compete with anyone in product
[1:42:19] building space because I
[1:42:20] SPEAKER_01: think I'll spend more time thinking about it than they will.
[1:42:23] SPEAKER_01: I think people turn it off and I try not to turn it off.
[1:42:26] SPEAKER_01: So yeah,
[1:42:27] SPEAKER_01: I mean,
[1:42:28] I think the point of all that is the best engineers are the
[1:42:31] ones that context
[1:42:33] SPEAKER_01: switch the least probably.
[1:42:34] SPEAKER_00: Having used AI agents, do you think this might change?
[1:42:39] SPEAKER_00: Because these agents can go on and think or do work for you.
[1:42:45] SPEAKER_00: How would you hire in this new world where using AI is kind of a given?
[1:42:50] SPEAKER_00: Most devs will prompt and fewer and fewer write,
[1:42:53] SPEAKER_00: even though best devs clearly know how to write code as well.
[1:42:59] SPEAKER_01: I would definitely require competency with AI tools.
[1:43:03] SPEAKER_01: You don't need to use them for everything.
[1:43:05] That's not important to me,
[1:43:06] but it's an important tool to understand the edges of.
[1:43:10] It's like any other tool where sometimes it's useful and
[1:43:13] sometimes not useful,
[1:43:14] SPEAKER_01: but if you ignore it completely,
[1:43:16] SPEAKER_01: you're going to do something suboptimal in a time period.
[1:43:19] SPEAKER_01: I mean, the best example to me is proof of concepts.
[1:43:23] SPEAKER_01: Like constantly in real product organizations,
[1:43:26] you have an idea and you need to like demo it out to figure out
[1:43:29] if it works.
[1:43:30] I would much rather someone just like throw slop at a wall that
[1:43:33] you're never going
[1:43:34] SPEAKER_01: to ship and spend a day doing that.
[1:43:37] SPEAKER_01: you know,
[1:43:38] may less than a day do that rather than spend a week doing it
[1:43:41] organically as a
[1:43:42] SPEAKER_01: human,
[1:43:43] SPEAKER_01: like,
[1:43:43] SPEAKER_01: cause you're going to throw it away anyway.
[1:43:45] SPEAKER_01: And you didn't even,
[1:43:46] SPEAKER_01: you might throw it away because it's a bad idea,
[1:43:48] SPEAKER_01: but I'd rather prove it out.
[1:43:49] SPEAKER_01: And so just slop it up.
[1:43:50] SPEAKER_01: And so this is why it's so nuanced.
[1:43:52] SPEAKER_01: I'm so like,
[1:43:53] SPEAKER_01: I'm so get so worked up about sloppy PRs to open source,
[1:43:57] but it's because there's a time and place for them and that's
[1:43:59] not the time and
[1:44:00] SPEAKER_01: place for them,
[1:44:00] SPEAKER_01: but there is.
[1:44:01] SPEAKER_01: And so I would hire in that way.
[1:44:04] SPEAKER_01: And I think the other thing that,
[1:44:06] SPEAKER_01: I don't know if it's the right thing to do,
[1:44:08] SPEAKER_01: but I would strive that,
[1:44:10] SPEAKER_01: that goal that I have,
[1:44:11] SPEAKER_01: I would strive for everyone to have an agent running it all the time.
[1:44:15] SPEAKER_01: Again,
[1:44:15] SPEAKER_01: like it doesn't need to be coding,
[1:44:16] SPEAKER_01: but to be doing something extra for you,
[1:44:19] SPEAKER_01: I would strive for that because,
[1:44:20] SPEAKER_01: uh,
[1:44:22] I do a driving that's my biggest one on the drive here I had
[1:44:24] some deep research
[1:44:25] going and it's like I will always spend 30 minutes on the
[1:44:29] boundaries when I wake up
[1:44:31] and before I stop working before I leave the house something I
[1:44:33] spend 30 minutes
[1:44:35] stop working what can my agent be doing next that's that's slow
[1:44:39] what's a slow thing
[1:44:40] my agent could do for the next time and I know I was gonna
[1:44:43] drive here for an hour
[1:44:44] it finished far faster than an hour but you know it was just
[1:44:46] like oh I need to do
[1:44:47] SPEAKER_01: some
[1:44:48] SPEAKER_01: library research.
[1:44:50] Okay,
[1:44:50] find all the libraries that have these properties that are
[1:44:53] licensed in this way.
[1:44:54] SPEAKER_01: And I was looking up some like HP3 stuff, quick stuff.
[1:44:58] SPEAKER_01: And so build that ecosystem graph for me.
[1:45:01] SPEAKER_01: Right before I left, I was working on
[1:45:04] something to do with this vouching system and I didn't quite
[1:45:07] understand the edge
[1:45:07] cases of what I was doing and I will think about that manually
[1:45:10] but why not just
[1:45:10] start just start an agent to like look at this repo and I use
[1:45:14] AMP to like consult
[1:45:15] the Oracle like think deeply about what the edge cases might be
[1:45:18] what am I missing
[1:45:19] if I had another two hours to work I wouldn't need the agent to
[1:45:21] do that I would
[1:45:22] have done it myself but I don't so why not have it do it so
[1:45:25] it's just part of my
[1:45:26] goal to always have one going and I unfortunately don't have
[1:45:28] one going because they
[1:45:29] SPEAKER_01: finished it all right now but
[1:45:31] SPEAKER_00: Interesting.
[1:45:31] SPEAKER_00: And so this agent running there is kind of,
[1:45:34] did I feel correctly that it's now so natural that it doesn't
[1:45:37] get in the way of
[1:45:38] SPEAKER_00: your own thinking?
[1:45:39] SPEAKER_00: Like you do your own thinking and you do your work,
[1:45:41] but every now and then you glance and you ping it or you start
[1:45:44] it or it's now,
[1:45:45] SPEAKER_00: so it's not distracting,
[1:45:46] SPEAKER_00: right?
[1:45:47] SPEAKER_00: Because I think that's.
[1:45:47] Yes,
[1:45:48] I actually turn off all the agent tools do this and I turn off
[1:45:51] the desktop notifications.
[1:45:53] SPEAKER_01: Yeah.
[1:45:54] SPEAKER_01: I think the desktop notifications are, for the most part, a mistake.
[1:45:57] SPEAKER_01: So, yeah, I turn those off.
[1:45:59] SPEAKER_01: I choose when I interrupt the agent.
[1:46:04] SPEAKER_01: It doesn't get to interrupt me.
[1:46:06] SPEAKER_01: So, for sure.
[1:46:07] And there's another aspect where I think my engineering has
[1:46:09] changed where I try to
[1:46:10] identify the tasks that don't require thinking and the tasks
[1:46:15] that do require
[1:46:15] SPEAKER_01: thinking and just delegate.
[1:46:20] SPEAKER_01: Like, delegate the work to an agent.
[1:46:22] SPEAKER_01: Sometimes...
[1:46:24] SPEAKER_01: It just feels productive to do the non-thinking tasks.
[1:46:27] SPEAKER_01: And you're like, yeah, I did a lot today.
[1:46:29] SPEAKER_01: I got this.
[1:46:30] SPEAKER_01: But a lot of times I just try to just delegate that out.
[1:46:33] SPEAKER_01: There's a lot of people that say you think less.
[1:46:35] SPEAKER_01: And I think if you use the tools wrong,
[1:46:37] SPEAKER_01: you do think less because you just launch an agent and,
[1:46:40] SPEAKER_01: I don't know,
[1:46:40] SPEAKER_01: go watch YouTube or scroll social media or something.
[1:46:42] SPEAKER_01: But if you instead view it as a way to choose what you think about,
[1:46:47] SPEAKER_01: then I think that you don't need to sacrifice that thinking.
[1:46:49] But I think the problem is the majority of the population
[1:46:52] probably won't do that.
[1:46:53] SPEAKER_00: Yeah, but it's still, I think it's good food for thought.
[1:46:56] And it's good to hear from you on how you're using it,
[1:46:58] and it's working for you.
[1:47:00] SPEAKER_00: When did you start to have this second agent running?
[1:47:03] SPEAKER_00: What made it switch?
[1:47:03] SPEAKER_00: Was it the models getting better, or...?
[1:47:05] SPEAKER_01: Yeah,
[1:47:06] SPEAKER_01: I don't remember which model it was,
[1:47:07] SPEAKER_01: but there was a certain...
[1:47:09] SPEAKER_01: I tried Cloud Code right when it came out,
[1:47:10] SPEAKER_01: which was like March or May last year?
[1:47:12] SPEAKER_01: Yeah, it was March, the beta, yeah, and the May public release.
[1:47:15] SPEAKER_01: Okay, I don't think I used the beta, so it was probably May.
[1:47:19] SPEAKER_01: Wasn't super impressed, honestly.
[1:47:22] And then,
[1:47:22] I mean,
[1:47:23] really quickly,
[1:47:23] by like the summer,
[1:47:24] at some point during the summer...
[1:47:26] SPEAKER_01: Oh, I remember.
[1:47:26] SPEAKER_01: I remember.
[1:47:28] I saw so many positive remarks about it that then I started to
[1:47:32] get scared that I
[1:47:34] SPEAKER_01: would be behind on how to use a tool.
[1:47:37] SPEAKER_01: And so I actually started forcing myself to...
[1:47:41] SPEAKER_01: I still didn't believe in it,
[1:47:42] SPEAKER_01: so I would do everything manually,
[1:47:44] but I was forcing myself to figure out how to prompt the agent
[1:47:47] to produce the same
[1:47:49] SPEAKER_01: quality result.
[1:47:51] I was working much slower because I was doubling the work and
[1:47:54] it was more than
[1:47:55] double because they're slow and we're going back and forth and
[1:47:58] I already had the
[1:48:00] SPEAKER_01: work done and all this stuff,
[1:48:01] SPEAKER_01: but I was forcing myself to do it
[1:48:03] SPEAKER_01: And you find stuff that I couldn't figure out.
[1:48:05] SPEAKER_01: I couldn't, like, it just wasn't there yet.
[1:48:07] SPEAKER_01: But then I found other stuff where it's like,
[1:48:08] SPEAKER_01: oh,
[1:48:09] SPEAKER_01: I naturally got to the same point that thousands of other people got to,
[1:48:12] SPEAKER_01: which is like,
[1:48:12] SPEAKER_01: oh,
[1:48:13] SPEAKER_01: if I do a separate planning step,
[1:48:15] SPEAKER_01: it does so much better.
[1:48:16] SPEAKER_01: And everyone got there.
[1:48:19] SPEAKER_01: And then I figured out,
[1:48:20] SPEAKER_01: oh,
[1:48:21] SPEAKER_01: if I have a better test harness for it to execute,
[1:48:24] SPEAKER_01: it does a lot better.
[1:48:25] And then,
[1:48:26] you know,
[1:48:27] I think everyone starts with,
[1:48:28] like,
[1:48:28] no agents.md or claude.md or anything.
[1:48:32] same thing I realized oh if it makes a mistake and I add that
[1:48:36] just to agents.md it
[1:48:38] never makes that mistake again like oh and like these are just
[1:48:41] like incremental
[1:48:42] things that I recognize when I see people that are new or I've
[1:48:48] watched a couple
[1:48:48] live streams like lurked on live streams or like kind of
[1:48:50] anti-AI people like try AI
[1:48:53] and it's one of those things where I'm like they're just
[1:48:56] swinging the hammer way
[1:48:58] SPEAKER_01: off right like it's because you haven't
[1:49:00] SPEAKER_01: The thing is,
[1:49:01] it's as if someone tried to adopt Git and they used it for an
[1:49:05] hour and decided they
[1:49:06] SPEAKER_01: weren't more productive with it.
[1:49:07] SPEAKER_01: It takes much longer than an hour to get proficient with Git,
[1:49:10] SPEAKER_01: but you put in the effort and then you reap the rewards later.
[1:49:13] SPEAKER_01: And it's sort of the same thing to me with AI tools.
[1:49:16] SPEAKER_01: What would your first advice be for someone who's not there yet?
[1:49:18] SPEAKER_01: My first advice would be reproducing your work with an agent.
[1:49:20] SPEAKER_01: And if you really,
[1:49:21] SPEAKER_01: really don't want an agent to code,
[1:49:23] SPEAKER_01: reproduce the research part of your work with an agent.
[1:49:27] SPEAKER_01: There's a lot of people where it's like,
[1:49:28] SPEAKER_01: I don't want it to write code for me for whatever reasons.
[1:49:31] SPEAKER_01: But yeah, just kind of delegate some of the other research parts.
[1:49:36] SPEAKER_01: There's so many places it could be helpful.
[1:49:38] So you don't need to pick up on the it must replace you as a
[1:49:43] person kind of propaganda.
[1:49:45] You could just find the corners of where you work and replace
[1:49:50] those parts.
[1:49:51] One thing that you give people is you give advice on for
[1:49:55] potential founders because
[1:49:56] SPEAKER_00: you're a successful founder.
[1:49:57] SPEAKER_00: You've had an exit.
[1:49:58] SPEAKER_00: You've built up this awesome company.
[1:49:59] You get a bunch of emails from people asking,
[1:50:01] hey,
[1:50:01] I want to be a founder.
[1:50:02] SPEAKER_00: What's your advice?
[1:50:04] SPEAKER_00: And you wrote about this,
[1:50:05] SPEAKER_00: you shared the email,
[1:50:06] but can you tell us what advice you typically give people and
[1:50:10] how is it received?
[1:50:12] SPEAKER_01: Well,
[1:50:12] SPEAKER_01: I usually ask something more specific because if someone's like,
[1:50:15] SPEAKER_01: what could I do to be successful?
[1:50:16] One,
[1:50:17] I also always disclaim that you're consulting someone with
[1:50:20] survivorship bias.
[1:50:21] SPEAKER_01: So you need to take that into account.
[1:50:24] SPEAKER_01: But I'm willing to share my experience as a survivor,
[1:50:27] SPEAKER_01: but just understand that there's survivorship bias.
[1:50:30] SPEAKER_01: But usually I ask for like, what's something more specific?
[1:50:32] SPEAKER_01: Like, what are you trying to do?
[1:50:33] SPEAKER_01: And so we usually get to like, should I open source my project or not?
[1:50:36] SPEAKER_01: Or should I be remote or not?
[1:50:37] SPEAKER_01: Or should I do enterprise?
[1:50:39] SPEAKER_01: And I don't know.
[1:50:42] But the most general advice I usually give people is startups
[1:50:45] are much longer than you think.
[1:50:48] SPEAKER_01: You're going to probably work on it for, I say, imagine 10 years.
[1:50:51] SPEAKER_01: A lot of people say five years, but I say, imagine 10 years.
[1:50:54] SPEAKER_01: Like, is this really something you want to work on for 10 years?
[1:50:56] SPEAKER_01: And is it something that,
[1:50:57] SPEAKER_01: like,
[1:50:58] SPEAKER_01: you need to have a certain amount of hubris in order to say,
[1:51:02] SPEAKER_01: I'm going to work on this for 10 years,
[1:51:03] SPEAKER_01: and I truly believe I'm going to do it better than anyone else.
[1:51:07] SPEAKER_01: There's nothing behind that, no substance behind that other than hubris.
[1:51:11] So you need to have a certain amount of ego and hubris in your
[1:51:14] head to make that,
[1:51:16] SPEAKER_01: but not too much where you'll be blind to change coming in,
[1:51:19] SPEAKER_01: so.
[1:51:20] That's usually like the first advice I give because a lot of
[1:51:22] people have cool
[1:51:23] SPEAKER_01: ideas,
[1:51:24] SPEAKER_01: but they're going to burn out relatively quickly.
[1:51:26] SPEAKER_00: So that's where I start.
[1:51:28] SPEAKER_00: So currently you're advising some companies.
[1:51:30] SPEAKER_00: What are you seeing with them?
[1:51:31] SPEAKER_00: Like what are startups doing these days?
[1:51:33] SPEAKER_00: What are they doing differently than, you know, like earlier?
[1:51:36] SPEAKER_00: How's that landscape?
[1:51:38] SPEAKER_01: Again,
[1:51:40] SPEAKER_01: it's really contextual in terms of like if you're an AI startup,
[1:51:42] SPEAKER_01: it's very,
[1:51:43] SPEAKER_01: very different.
[1:51:44] SPEAKER_01: How are AI startups?
[1:51:46] SPEAKER_01: working differently?
[1:51:47] SPEAKER_01: There's a lot of pressure to go faster than I've ever seen any startup.
[1:51:53] I think the industry is moving so fast that I don't advise any
[1:51:56] AI startups,
[1:51:57] SPEAKER_01: but I've talked to some of them.
[1:51:59] SPEAKER_01: Even as an advisor, I feel like it's too much pressure because
[1:52:02] they are just being pushed to prove themselves quickly whether
[1:52:06] it's through
[1:52:07] traction or revenue or something it's sort of like there's this
[1:52:09] mentality within
[1:52:11] that ecosystem where ai should allow you to go crazy fast and
[1:52:16] in addition to that
[1:52:17] there are a lot of companies moving crazy fast so um the change
[1:52:21] is happening i
[1:52:21] think that's the one thing outside of that i mean like i said
[1:52:24] it's just it's just a
[1:52:25] ton of opportunity in every space otherwise it's a lot of the
[1:52:28] same stuff i mean
[1:52:29] SPEAKER_01: it's remote versus non-remote open source versus not open source
[1:52:32] SPEAKER_00: Do you see the role of software engineers changing now,
[1:52:35] SPEAKER_00: especially at the A&A companies where engineers like yourself,
[1:52:38] SPEAKER_00: they're actually being way more productive?
[1:52:41] SPEAKER_00: They can produce a lot more code, a lot more output.
[1:52:45] SPEAKER_00: Are they being pushed into being like,
[1:52:46] SPEAKER_00: you know,
[1:52:47] SPEAKER_00: like wearing more hats,
[1:52:48] SPEAKER_00: talking to the business of being a bit more like a mini founder,
[1:52:51] SPEAKER_00: if you will?
[1:52:52] SPEAKER_00: I hesitate to say more productive.
[1:52:54] SPEAKER_01: I view that there's an expectation that they could do more.
[1:52:56] SPEAKER_01: I don't think that's necessarily more productive,
[1:52:59] SPEAKER_01: but it's more like you should be able to,
[1:53:02] SPEAKER_01: for example,
[1:53:03] SPEAKER_01: build a full demo,
[1:53:05] SPEAKER_01: design everything.
[1:53:06] SPEAKER_01: You don't need a team to do that anymore, right?
[1:53:09] SPEAKER_01: You should be able to do that, at least from a demo perspective.
[1:53:12] SPEAKER_01: There's no reason not to because, again, you could ship slot for that.
[1:53:14] SPEAKER_01: That's fine.
[1:53:15] SPEAKER_01: I mean,
[1:53:16] SPEAKER_01: this is still the same,
[1:53:16] but you should be able to research effectively and in a sense
[1:53:20] to handle more vague
[1:53:21] SPEAKER_01: tasks.
[1:53:22] SPEAKER_01: I'm seeing that a lot more.
[1:53:24] SPEAKER_01: The capacity to experiment is so much higher, I would say.
[1:53:28] SPEAKER_01: But then when it turns into productionizing something...
[1:53:33] SPEAKER_01: it feels similar to what it's always been.
[1:53:36] I think that there's a lot of companies that are eating the dog
[1:53:40] food of the AI
[1:53:42] SPEAKER_01: companies of shipping,
[1:53:43] SPEAKER_01: whatever.
[1:53:44] SPEAKER_01: And I think that's a little scary.
[1:53:45] SPEAKER_00: Yeah,
[1:53:45] SPEAKER_00: they look at Entropic and they're like,
[1:53:47] SPEAKER_00: oh,
[1:53:47] they build cloth co-work in 10 days and it'll be a billion
[1:53:49] dollar company.
[1:53:50] SPEAKER_00: They're freaking out of why they're not doing that.
[1:53:53] I think a big change is from like a pre-seed perspective or a
[1:53:57] pre-seed perspective
[1:53:57] SPEAKER_01: where you would be like,
[1:53:58] SPEAKER_01: I need to raise a seed in order to build a prototype.
[1:54:01] SPEAKER_01: that's like,
[1:54:03] SPEAKER_01: show me the prototype because,
[1:54:04] SPEAKER_01: yeah,
[1:54:05] SPEAKER_01: you should be able to build that really quickly for most things.
[1:54:06] SPEAKER_01: There's still hard tech out there that you can't do that.
[1:54:08] SPEAKER_00: So you do a bunch of coding.
[1:54:10] You do a bunch of thinking about coding as well,
[1:54:12] even as you're trying to fall asleep.
[1:54:14] SPEAKER_00: What refills your bucket outside of coding, outside of tech?
[1:54:18] SPEAKER_01: Obviously, the stereotypical things, like just
[1:54:22] taking breaks and being with my family and things like that but
[1:54:24] i mean i think the
[1:54:24] biggest thing is you know i am introverted so just quiet solo
[1:54:29] time um refills the
[1:54:31] most energy for me i live pretty close to the beach and just if
[1:54:35] i'm in a bad
[1:54:38] mentality things aren't working and feeling unproductive or
[1:54:41] something something's
[1:54:41] SPEAKER_01: going on like just closing my laptop and taking a walk outside
[1:54:47] like stuff like that helps a lot I have a lot of hobbies and
[1:54:49] stuff but it's I think
[1:54:51] like just as a general recharge it's it's that more than
[1:54:54] anything I know there's a
[1:54:54] lot of people it's like going out friends or something like
[1:54:57] that then I like that
[1:54:58] but that's not the full recharge for me and what's a book that
[1:55:02] would you recommend
[1:55:03] SPEAKER_01: and why
[1:55:05] SPEAKER_01: So I pretty much only read fiction outside of news.
[1:55:10] SPEAKER_01: Great.
[1:55:10] SPEAKER_01: Great?
[1:55:11] SPEAKER_01: Okay.
[1:55:12] The most recent book of fiction I read is an older book,
[1:55:15] and it is an easy read.
[1:55:16] SPEAKER_01: So I hope people are not like, oh, he's an idiot for reading this.
[1:55:19] SPEAKER_01: But it was...
[1:55:21] SPEAKER_01: what's it called?
[1:55:21] SPEAKER_01: The, the something life of Addie LaRue.
[1:55:24] SPEAKER_01: It's just like kind of a romantic type of fiction novel,
[1:55:28] SPEAKER_01: but yeah,
[1:55:29] SPEAKER_01: it's just about,
[1:55:29] SPEAKER_01: it's about,
[1:55:30] SPEAKER_01: I think it's like 10 years old.
[1:55:31] SPEAKER_01: It's older now.
[1:55:32] Um,
[1:55:32] but,
[1:55:33] uh,
[1:55:33] it's just about a woman who kind of sells her soul to live
[1:55:37] forever.
[1:55:37] SPEAKER_01: But the cost was no one remembers her once they walk out the room.
[1:55:41] SPEAKER_01: And, uh,
[1:55:42] SPEAKER_01: Yeah,
[1:55:42] SPEAKER_01: it's just going through her whole life of losing all human connection,
[1:55:47] SPEAKER_01: but she gets to live forever.
[1:55:50] SPEAKER_01: What that is like.
[1:55:51] SPEAKER_01: And I like reading fiction.
[1:55:53] SPEAKER_00: I like reading fiction at night.
[1:55:56] SPEAKER_00: I don't know.
[1:55:57] SPEAKER_00: I don't know if it's escapism or just like you just like,
[1:56:00] SPEAKER_00: you know,
[1:56:00] SPEAKER_00: you get to live in different roles.
[1:56:02] SPEAKER_00: It's still so different to the coding or anything.
[1:56:04] SPEAKER_00: It may maybe just helps me turn off the thing.
[1:56:06] I personally probably read way more fiction than I do
[1:56:10] professional nonfiction,
[1:56:11] honestly.
[1:56:12] SPEAKER_01: Yeah, I'm the same way.
[1:56:13] SPEAKER_01: It's my version of TV too.
[1:56:15] SPEAKER_01: TV to me is more of a social activity.
[1:56:17] Like if my wife wants to watch something together,
[1:56:19] like we'll watch a show.
[1:56:20] SPEAKER_01: But if I'm alone, I'm not going to watch a show.
[1:56:23] SPEAKER_00: I'm going to read probably.
[1:56:24] SPEAKER_00: Awesome.
[1:56:24] SPEAKER_00: Well, thanks so much for going through all of these details.
[1:56:29] It was just not great to hear from how you're working,
[1:56:32] the history of HashiCorp.
[1:56:34] SPEAKER_00: This was all just really interesting and motivating.
[1:56:36] SPEAKER_00: Yeah, thank you.
[1:56:37] SPEAKER_00: Thank you.
[1:56:38] SPEAKER_00: I hope you enjoyed this long and interesting conversation with Michel.
[1:56:42] One thing that really stuck with me from this conversation is
[1:56:44] Michel's own rule for himself.
[1:56:47] SPEAKER_00: Always have an agent that does something.
[1:56:49] SPEAKER_00: Not necessarily coding, just doing something.
[1:56:51] For example,
[1:56:52] while he was driving to this podcast recording,
[1:56:54] he had deep research running.
[1:56:55] SPEAKER_00: Before he leaves the house,
[1:56:56] SPEAKER_00: he asks himself,
[1:56:57] SPEAKER_00: what's a slow task that my agent could do while I'm gone?
[1:57:01] SPEAKER_00: An important part to all of this, he turns off all notifications.
[1:57:04] SPEAKER_00: The agent does not get to interrupt him.
[1:57:06] SPEAKER_00: He interrupts the agent when he's ready.
[1:57:08] Michel is in charge and he has a buddy who does the work that
[1:57:11] he has delegated
[1:57:12] SPEAKER_00: while he focuses on the problem that he is solving.
[1:57:14] SPEAKER_00: This is a nice challenge for anyone listening.
[1:57:16] SPEAKER_00: Next time you step away from your desk,
[1:57:18] SPEAKER_00: before you close the laptop,
[1:57:20] SPEAKER_00: ask yourself,
[1:57:21] SPEAKER_00: what slow tasks could an agent be doing while you're gone?
[1:57:24] SPEAKER_00: If you enjoyed this episode,
[1:57:25] share with a colleague who's thinking about where software
[1:57:27] engineering could be
[1:57:28] SPEAKER_00: heading.
[1:57:29] SPEAKER_00: And if you've not subscribed yet, now's a good time.
[1:57:31] SPEAKER_00: We have more conversations like this one coming.
[1:57:33] SPEAKER_00: Thanks and see you in the next one.

Shows are listed from Apple Podcasts' charts and directory, and Podcast Index where it is used. Every show and episode belongs to its publisher and plays from the publisher's own feed; this site hosts none of them.
