The Homebrew maintainers who built a startup - Mike McQuaid and John Britton from Workbrew

Interviewed by Scaling DevTools

Mike McQuaid and John Britton are cofounders of Workbrew - a tool that gives you the missing features for enterprises running Homebrew.

Show transcript
  • 0:00 Today's guests are Mike McQuaid and John Britton.
  • 0:02 They met while working together at GitHub.
  • 0:04 Mike and John are the founders of Workbrew,
  • 0:06 a startup built to provide the missing enterprise features
  • 0:10 for managing Homebrew.
  • 0:11 Mike is the project lead and longest serving
  • 0:15 maintainer of Homebrew, applause,
  • 0:17 the package manager for Mac
  • 0:19 that almost every one of you will have used.
  • 0:20 I used it today to install Docker.
  • 0:22 We get the inside story on Homebrew,
  • 0:25 including its London pub origins.
  • 0:26 I would never have imagined that it began in a pub in London
  • 0:30 with a random chat.
  • 0:31 I mean, I guess the naming and the beer theme
  • 0:34 might have led one slightly more in that direction.
  • 0:38 We learn what it's been like
  • 0:39 to work with the biggest company in the world, Apple.
  • 0:42 He's based in the Shetland Islands of Scotland.
  • 0:44 If you look at a map, Shetland is far away.
  • 0:47 Essentially, that's the short version.
  • 0:49 Someone in Apple being like,
  • 0:50 oh, we have to get this thing here.
  • 0:52 Like, can it not just go to an office
  • 0:54 or a bigger city or whatever?
  • 0:56 We can't.
  • 0:57 Like, if you want this to happen,
  • 0:58 this is what you need to show out, right?
  • 1:01 We learn how Mike and John
  • 1:02 think about open source sustainability.
  • 1:04 You will find various parts of the internet
  • 1:06 that don't like me very much for this viewpoint.
  • 1:08 But in the end, to me,
  • 1:09 the only way you are able to successfully scale that
  • 1:12 is you say some of these features go away.
  • 1:13 And how Mike and John are taking these lessons forward
  • 1:16 to build Workbrew with a very unique approach.
  • 1:19 Enjoy.
  • 1:20 Probably everyone listening has used Brew, Homebrew,
  • 1:25 to manage their packages on Mac,
  • 1:28 unless they're, like, really hardcore on Linux or Windows.
  • 1:34 Do you want to talk a bit about the actual, like, story of Homebrew?
  • 1:40 Because this is a tool that we all use.
  • 1:42 So I just want to say something about the hardcore Linux users.
  • 1:45 Is that I would say that, like, both Mike and I
  • 1:47 kind of came to be as hardcore Linux users
  • 1:50 and ended up in this situation of working on a Mac
  • 1:53 because of its similarity to Unix operating systems.
  • 1:56 But there was something huge missing there.
  • 1:57 And I think that the story of Homebrew's origin and whatnot
  • 2:00 that Mike will tell
  • 2:01 is definitely, like, going to encompass that as well.
  • 2:05 So, I mean, I guess as John said,
  • 2:07 I almost mentioned this earlier.
  • 2:08 But, yeah, for me, I realized recently
  • 2:10 I think I was a, you know, Linux user for,
  • 2:13 I don't know, like, five or six years primarily.
  • 2:17 And at less than a year after moving from Linux to macOS,
  • 2:20 I ended up maintaining Homebrew.
  • 2:21 So that's, you know, how I ended up over there.
  • 2:24 I've, my, occasionally when Linux people give me trouble,
  • 2:29 I point out I have, like, one commit in Linux kernel
  • 2:33 from back in the day, like, 2000 and whatever year it was.
  • 2:37 So, yeah, that's my nice little Linux fight back thing that I have.
  • 2:43 Linux credibility.
  • 2:44 Yeah, exactly.
  • 2:45 Also, fun fact, Homebrew itself runs on Linux nowadays as well.
  • 2:49 So we might talk about that later
  • 2:51 because it's sometimes a little bit confusing
  • 2:53 why you would want to do that.
  • 2:54 But anyway, so, right, we're back in 2009.
  • 2:58 I'm working in London for a stock called Mendeley.
  • 3:01 There's a guy called Max Howell
  • 3:03 also working in London for another stock called Last.fm.
  • 3:05 He has irritations with the way package management
  • 3:10 is currently working on Mac.
  • 3:11 He's been playing around with Mac ports and think and coming by.
  • 3:16 There was one other option that, like, leaves my mind right now.
  • 3:19 And I think he was whining about it in the pub one day
  • 3:22 and basically someone said to him,
  • 3:23 hey, if you hate package management and you know all this stuff so much,
  • 3:27 why don't you make your own package manager?
  • 3:29 I think mainly intending him to just shut up.
  • 3:31 But he went off and started work on Homebrew.
  • 3:34 It's interesting.
  • 3:36 You can kind of go back and look through the Git logs.
  • 3:38 It's like one of the kind of few examples, I guess,
  • 3:42 of a big open source project that was started with kind of re-be-driven development.
  • 3:45 So the first project commit in Homebrew itself
  • 3:49 is like a description of how Homebrew is going to work.
  • 3:51 And Mac wrote all that down before he wrote the codes.
  • 3:54 And I often think, like, that's a sign
  • 3:57 when things are going to be optimized for usability and developer happiness
  • 4:00 as you think from the outside in.
  • 4:02 Think, like, how should people be interacting with this
  • 4:04 rather than just, like, writing code and then being like,
  • 4:07 well, they interact with it how I tell them to.
  • 4:09 Anyway, so he'd been working on this for a little while.
  • 4:12 He open sourced it.
  • 4:13 It started to get picked up by a few more people.
  • 4:16 I discovered it because I basically built a sort of hack on top of Mac ports
  • 4:20 to make it work in the way I didn't know at the time.
  • 4:24 But this Homebrew tool worked to use a lot more stuff from the system
  • 4:28 so it'd be kind of faster to build various tools.
  • 4:30 I discovered Homebrew.
  • 4:31 I was like, this is cool, and sort of just started getting involved.
  • 4:34 And, yeah, I think one other non-Macs person
  • 4:40 had kind of been getting involved as a maintainer at that time.
  • 4:43 And, yeah, like, I guess, fast forward 15 years,
  • 4:45 we've got kind of gone from, you know, a few contributors,
  • 4:49 a few maintainers to about 30 maintainers.
  • 4:52 We've got about, I think, 15,000 or something contributors,
  • 4:56 maybe more than that, and 20,000 packages
  • 4:58 kind of in our, like, officially supported ecosystem
  • 5:01 and then probably tens of thousands more
  • 5:03 in the kind of wider ecosystem.
  • 5:04 That's so cool.
  • 5:06 I would never have imagined that it began in a pub in London
  • 5:10 with a random chat.
  • 5:12 I mean, I guess the naming and the beer theme
  • 5:15 might have led one slightly more in that direction
  • 5:18 if you ponder it sufficiently.
  • 5:20 Yeah, that makes more sense now.
  • 5:22 Wow.
  • 5:23 So, Mike, could you just tell me
  • 5:27 what you just told me about WorkOS?
  • 5:28 Because I just told Mike that WorkOS is the sponsor,
  • 5:31 and this is what Mike said.
  • 5:33 Yeah, so WorkOS isn't paying me any money for this.
  • 5:36 I pay WorkOS money for this,
  • 5:38 but WorkOS is, like, one of the best developer tools
  • 5:41 I've, like, ever used.
  • 5:42 It's the documentation and the experience
  • 5:45 with building with them is so, so good.
  • 5:48 Like, I initially was almost like,
  • 5:49 okay, this seems expensive,
  • 5:51 but then, like, I built an integration
  • 5:54 with them in about 20 minutes
  • 5:56 that I had spent two hours,
  • 5:58 sorry, two days,
  • 5:59 banged my head off the wall
  • 6:00 trying to build it directly with Okta.
  • 6:02 I then have, like,
  • 6:03 many, many SSO providers,
  • 6:05 like, support instead of just one.
  • 6:08 So, yeah, like, for me,
  • 6:09 WorkOS is one of the nicest developer experiences
  • 6:11 I've encountered in the last, like,
  • 6:13 five years, probably.
  • 6:14 And it's still surprising
  • 6:16 because a bunch of the developer team
  • 6:17 are ex-GitHub
  • 6:18 and therefore very good at their job.
  • 6:20 Amazing.
  • 6:21 And was it a case of, like,
  • 6:24 build it and they will come?
  • 6:26 I don't think so.
  • 6:28 I mean, the funny thing in open source land,
  • 6:30 back then we used to talk a lot more about this
  • 6:33 than we do now when it's, you know,
  • 6:35 there's a bit more of, like,
  • 6:36 oh, clout and you should get some GitHub stuff
  • 6:39 on your resume or CV or whatever.
  • 6:41 Like, back then I remember people said
  • 6:44 a lot of open source is just scratching your own itch, right?
  • 6:47 Where essentially Max had a problem himself
  • 6:50 that he wanted to solve primarily for himself
  • 6:52 and then he was like,
  • 6:53 okay, well, I'll put this on.
  • 6:55 At the time, also quite new,
  • 6:56 this thing called GitHub.
  • 6:57 And I guess that was the other sort of interesting thing
  • 7:00 and it's been interesting for me
  • 7:01 kind of being on both sides of that
  • 7:03 is, like,
  • 7:04 Homebrew was also one of the first software projects,
  • 7:06 certainly the first package managers
  • 7:08 to kind of really lean in heavily
  • 7:09 on the kind of GitHub way of doing things, right?
  • 7:13 So Max, from the outset,
  • 7:14 I guess he would say that he was being lazy
  • 7:16 and I guess, you know,
  • 7:17 maybe he was being lazy,
  • 7:18 but he was also being smart.
  • 7:20 The best engineers, in my opinion,
  • 7:21 are often fairly lazy
  • 7:23 because he had the attitude of, like,
  • 7:25 hey, I don't want to maintain this all myself.
  • 7:27 I want to have the community maintain this.
  • 7:29 And if you want the community to maintain it,
  • 7:31 you need to make getting involved,
  • 7:33 merchant pull requests,
  • 7:36 all this type of stuff,
  • 7:37 like, as easy as possible.
  • 7:38 So that was a big focus of his in the early days
  • 7:41 and that was, I guess,
  • 7:43 a big focus of mine increasingly
  • 7:44 with Homebrew and GitHub and things like that
  • 7:47 is that generally you want to take the behaviors
  • 7:50 that you want people to do
  • 7:51 in a developer tool
  • 7:52 and make them as easy as possible.
  • 7:54 And if the stuff you don't want people to do,
  • 7:56 you want to make that either impossible
  • 7:57 or harder for them to do
  • 7:59 than the easy thing,
  • 8:00 than the right thing.
  • 8:01 That makes sense.
  • 8:02 And what does that, like,
  • 8:03 functionally kind of look like?
  • 8:05 To me, in something like Homebrew,
  • 8:07 it looks like,
  • 8:09 I guess it depends on
  • 8:10 what layer you look at, right?
  • 8:11 So part of it is,
  • 8:13 essentially,
  • 8:14 we really try and optimize
  • 8:15 the friction of, like,
  • 8:17 onboarding, I guess,
  • 8:18 both from a user level
  • 8:20 and a contributor level
  • 8:21 and a maintainer level.
  • 8:22 So for a user,
  • 8:23 Homebrew was, I think,
  • 8:24 maybe one of the first projects,
  • 8:26 maybe the first to the now infamous,
  • 8:28 get a bash script
  • 8:30 and pipe it into curl
  • 8:32 that some people don't like very much.
  • 8:34 And if you don't like that
  • 8:36 then you might want to hear more
  • 8:37 about Workbrew later.
  • 8:38 We'll talk about that.
  • 8:39 But I guess from that perspective,
  • 8:42 a lot of these tools
  • 8:44 that have installers,
  • 8:45 having something where you can,
  • 8:46 like,
  • 8:47 get installed
  • 8:48 a single command,
  • 8:49 no dependencies,
  • 8:50 everything gets done for you.
  • 8:51 that was very heavily optimizing
  • 8:54 Similarly for contributors,
  • 8:56 the docs,
  • 8:57 the automation,
  • 8:58 the tooling,
  • 8:59 everything like that,
  • 9:00 such that the flow
  • 9:02 as possible
  • 9:03 for that person
  • 9:04 getting started
  • 9:05 with the project.
  • 9:06 And when we see people
  • 9:08 multiple times,
  • 9:09 we're quite aggressive
  • 9:11 about jumping on them
  • 9:12 and really prioritizing
  • 9:13 fixing that stuff
  • 9:14 the project scales,
  • 9:16 And we have still
  • 9:18 very, very many more
  • 9:19 than we have maintainers.
  • 9:21 And then the last thing
  • 9:22 is similarly doing that
  • 9:23 for the maintainer approach
  • 9:24 and they're making it easy
  • 9:25 for us to add new maintainers
  • 9:27 but also making it easy
  • 9:28 to do their job,
  • 9:29 trying to automate
  • 9:30 the absolute living hell
  • 9:32 out of everything
  • 9:33 we possibly can,
  • 9:34 trying to lean into,
  • 9:35 robots,
  • 9:36 automation,
  • 9:37 CI all over the place,
  • 9:40 linting all over the place
  • 9:41 to try and essentially
  • 9:42 just remove
  • 9:43 the amount of manual work
  • 9:44 that a human has to do
  • 9:46 that can be done
  • 9:47 by a robot
  • 9:48 or a CI
  • 9:49 or a GitHub action
  • 9:51 or whatever it may be.
  • 9:52 I mean,
  • 9:53 what makes it possible
  • 9:54 for such a relatively
  • 9:56 small team
  • 9:57 of volunteers
  • 9:58 to run
  • 9:59 a huge part
  • 10:00 of the infrastructure
  • 10:01 of Mac development.
  • 10:03 unbelievable to me
  • 10:04 how small but mighty
  • 10:07 that group of people is
  • 10:08 and they deserve
  • 10:09 all the accolades
  • 10:10 and all the support
  • 10:12 for, you know,
  • 10:13 as a developer myself,
  • 10:14 I'm a user of Homebrew.
  • 10:15 I use it every day.
  • 10:16 I couldn't imagine
  • 10:18 and it's just, like,
  • 10:19 unbelievable that,
  • 10:20 you know,
  • 10:21 it's possible
  • 10:22 to do something like that
  • 10:24 you know,
  • 10:25 small,
  • 10:26 dedicated crew.
  • 10:27 Yeah,
  • 10:28 I mean,
  • 10:29 it almost feels like,
  • 10:30 I don't know if I ever
  • 10:32 really thought about,
  • 10:33 oh,
  • 10:34 where did Brew come from?
  • 10:35 It's, like,
  • 10:36 like,
  • 10:37 inherent part
  • 10:38 of, like,
  • 10:39 like,
  • 10:40 developing with Macs.
  • 10:41 such a,
  • 10:42 did,
  • 10:43 did, like,
  • 10:44 Apple get involved
  • 10:45 in it at all?
  • 10:46 Not really.
  • 10:48 Like,
  • 10:49 they've helped us out
  • 10:50 So we have
  • 10:52 contacts at Apple
  • 10:53 who we can kind of
  • 10:54 escalate stuff to
  • 10:55 and help us out there
  • 10:57 and ask questions
  • 10:58 I guess the most notable
  • 11:00 case of Apple
  • 11:01 helping us out
  • 11:02 because obviously
  • 11:03 they realized that
  • 11:04 it was very much
  • 11:05 in their self-interest
  • 11:06 in that case to do it
  • 11:07 was when there was
  • 11:08 the Apple Silicon transition,
  • 11:09 you know,
  • 11:10 pretty much,
  • 11:11 as soon as they
  • 11:12 announced, like,
  • 11:13 move to Apple Silicon
  • 11:14 and there was these
  • 11:15 and stuff like that,
  • 11:16 they got in contact
  • 11:17 with us straight away
  • 11:18 and we're basically,
  • 11:19 like,
  • 11:20 of these kits
  • 11:21 of your maintainers
  • 11:22 and we also want to,
  • 11:24 like,
  • 11:25 get these kits
  • 11:26 in data centers
  • 11:27 so you can start
  • 11:29 building,
  • 11:30 building stuff in CI
  • 11:31 and automating things
  • 11:32 and packaging things
  • 11:33 and integrate that
  • 11:34 into your workflow
  • 11:35 and you're not having to,
  • 11:36 pay out the nose
  • 11:38 for a lot of this stuff.
  • 11:39 And even that process
  • 11:40 was kind of an interesting
  • 11:41 case of, like,
  • 11:43 worlds colliding
  • 11:44 there was conversations
  • 11:46 with some of the Apple folks,
  • 11:47 some of them knew already,
  • 11:48 some of them would go,
  • 11:49 so where's the homebrew office?
  • 11:50 And it's like,
  • 11:51 there is no homebrew office.
  • 11:52 There is no homebrew office.
  • 11:53 Okay, so what country
  • 11:54 are your maintainers based in?
  • 11:56 Like,
  • 11:57 All of them?
  • 11:58 Maybe, like,
  • 11:59 20 countries, right?
  • 12:00 And I remember, like,
  • 12:02 one of the folks
  • 12:04 who was very early
  • 12:05 getting a lot of our stuff
  • 12:06 sorted out
  • 12:07 and he's a workbrew employee
  • 12:09 nowadays as well
  • 12:10 and he's based
  • 12:12 in the Shetland Islands
  • 12:13 of Scotland.
  • 12:14 So, like,
  • 12:15 if you look at a map,
  • 12:16 Shetland is far away,
  • 12:18 That's the short version.
  • 12:20 And, yeah,
  • 12:22 basically, like,
  • 12:23 someone in Apple being like,
  • 12:25 how, like,
  • 12:26 we have to get this thing here.
  • 12:28 can it not just go to an office
  • 12:30 or a bigger city or whatever?
  • 12:31 And it's like,
  • 12:32 no, we can't.
  • 12:33 This is, like,
  • 12:34 if you want this to happen,
  • 12:35 this is what you need to
  • 12:36 sort out, right?
  • 12:37 And it did all get sorted out
  • 12:39 and it was all fine.
  • 12:40 But it's,
  • 12:41 it's definitely an interesting
  • 12:42 cultural thing.
  • 12:43 And I think Apple,
  • 12:45 you know,
  • 12:46 I'm a massive Apple fanboy.
  • 12:47 I basically own
  • 12:48 essentially almost every
  • 12:50 thing they've ever made
  • 12:51 with the exception
  • 12:52 And I'll take one
  • 12:53 if anyone wants to give
  • 12:54 one to me for free.
  • 12:55 But anyone's listening.
  • 12:57 for my startup lifestyle
  • 12:59 But, yeah,
  • 13:01 you know,
  • 13:02 But they definitely,
  • 13:03 like,
  • 13:04 don't quite get open source,
  • 13:06 there's certain teams
  • 13:09 and individuals
  • 13:10 in the organization
  • 13:11 who have that background
  • 13:13 or relationships
  • 13:14 or whatever.
  • 13:15 organizationally
  • 13:16 is, like,
  • 13:17 they're not,
  • 13:18 super tuned in
  • 13:19 until almost,
  • 13:20 how to partner
  • 13:21 with a bunch
  • 13:22 of volunteers
  • 13:23 with no legal entities
  • 13:24 scattered around the world.
  • 13:25 Yeah,
  • 13:26 it's actually really surprising
  • 13:27 that they're not
  • 13:28 giving bucket loads
  • 13:29 of money
  • 13:30 to you guys.
  • 13:31 I don't know.
  • 13:32 Well,
  • 13:33 this is a lot
  • 13:34 around open source
  • 13:35 right now,
  • 13:36 where it's like,
  • 13:37 why?
  • 13:40 I'm actually not
  • 13:41 being too facetious
  • 13:42 hopefully,
  • 13:43 why should they?
  • 13:44 They don't have to.
  • 13:46 Humbro is operating fine
  • 13:49 without getting buckets
  • 13:51 from Apple.
  • 13:52 And from both parties'
  • 13:55 it would be hard
  • 13:56 to justify going
  • 13:57 from nothing
  • 13:58 to buckets
  • 13:59 without some sort
  • 14:01 understanding
  • 14:02 that relationship is,
  • 14:04 of quid pro quo.
  • 14:05 And,
  • 14:06 you know,
  • 14:07 that's when
  • 14:08 you have
  • 14:09 a volunteer
  • 14:10 scattered around
  • 14:11 and,
  • 14:12 you know,
  • 14:13 maybe the world,
  • 14:14 I haven't checked
  • 14:15 Close to the largest
  • 14:16 company in the world.
  • 14:17 in the world,
  • 14:18 there's an imbalance
  • 14:21 there.
  • 14:22 also,
  • 14:23 maybe it's pertinent
  • 14:24 to maybe the way
  • 14:25 right now,
  • 14:26 where there's an awful
  • 14:27 in and around
  • 14:28 open source right now.
  • 14:29 And I'm maybe
  • 14:30 one of the old school
  • 14:31 maybe even free
  • 14:33 software people,
  • 14:34 kind of the point
  • 14:36 is they don't have
  • 14:37 to give you anything.
  • 14:38 I don't feel
  • 14:39 like any company
  • 14:40 who uses Homebrew
  • 14:41 or relies on Homebrew
  • 14:42 is obliged
  • 14:44 to Homebrew.
  • 14:45 a bunch of them do
  • 14:46 and that's great
  • 14:47 when they do
  • 14:48 appreciate that
  • 14:49 useful for us.
  • 14:50 But,
  • 14:51 if the license,
  • 14:53 if we demanded
  • 14:55 that every company
  • 14:56 gave us money,
  • 14:58 then in my mind,
  • 14:59 we're not open
  • 15:00 We're a different thing.
  • 15:01 We're a proprietary
  • 15:02 product with a free tier,
  • 15:03 right?
  • 15:04 My message would be like,
  • 15:05 don't try to use
  • 15:06 open source as a playbook.
  • 15:07 You know,
  • 15:08 build your product,
  • 15:09 get people to use it.
  • 15:10 Like,
  • 15:11 the idea that,
  • 15:12 open source is a marketing strategy
  • 15:14 is something I just see
  • 15:15 like way too often.
  • 15:16 Yeah.
  • 15:17 And I guess it depends
  • 15:18 what you're optimizing for,
  • 15:19 right?
  • 15:20 If you're trying to
  • 15:21 maximize reach,
  • 15:23 then,
  • 15:24 yeah,
  • 15:25 make it open source,
  • 15:26 put it under the most liberal
  • 15:27 open source license possible,
  • 15:28 the MIT license
  • 15:29 let everyone in the world
  • 15:31 But then converting
  • 15:33 those people into paying
  • 15:34 customers later
  • 15:35 is not something
  • 15:37 that you have built
  • 15:38 your relationship
  • 15:39 right?
  • 15:40 And it's funny
  • 15:41 because I guess
  • 15:42 the open source
  • 15:43 in some ways,
  • 15:44 I think like open source
  • 15:45 is a short-term
  • 15:47 business model.
  • 15:48 It's not a long-term
  • 15:49 profit-making business model.
  • 15:51 And it's one that
  • 15:52 when these companies
  • 15:53 get bigger
  • 15:54 and zero interest rates
  • 15:56 and investor pressure
  • 15:57 and all these types
  • 15:58 of things happen
  • 15:59 and you get squeezed more,
  • 16:00 then it's like,
  • 16:01 you know,
  • 16:02 to what,
  • 16:03 are you able
  • 16:05 to your,
  • 16:06 like,
  • 16:07 whoever it may be,
  • 16:08 your community,
  • 16:09 your customers,
  • 16:10 your employees
  • 16:11 hey,
  • 16:12 all this open source
  • 16:13 like,
  • 16:14 turns out,
  • 16:15 changed our minds.
  • 16:16 Bad idea.
  • 16:17 I don't know how to do that anymore.
  • 16:18 yeah,
  • 16:19 and I think John and I
  • 16:20 share a similarly
  • 16:22 bad taste in our mouth
  • 16:24 from places
  • 16:25 that have done that
  • 16:26 where it's not even
  • 16:27 doing the wrong thing.
  • 16:28 It's just,
  • 16:29 you cause a lot of aggro
  • 16:31 that you don't
  • 16:33 and that aggro
  • 16:34 ends up feeling like
  • 16:36 it is open source's fault
  • 16:38 whereas I think
  • 16:39 it's the exact opposite of that.
  • 16:41 open source to be
  • 16:42 something that it's not.
  • 16:44 that makes sense
  • 16:45 and yeah,
  • 16:47 it's like,
  • 16:48 it definitely is like
  • 16:49 one of the biggest
  • 16:50 conversations right now.
  • 16:51 I think even
  • 16:52 like the whole
  • 16:53 WordPress stuff
  • 16:54 is like
  • 16:55 this kind of like
  • 16:58 whether you should pay
  • 16:59 things that you're not
  • 17:00 obligated to
  • 17:01 or whether you should
  • 17:02 that you're not obligated to.
  • 17:04 I mean,
  • 17:05 to like looking at the origins
  • 17:07 and looking at the licensing.
  • 17:09 for me,
  • 17:10 it's like
  • 17:11 we have this internal
  • 17:12 that we talk about
  • 17:13 which is
  • 17:14 don't give what you'll
  • 17:15 later have to take away
  • 17:16 and when you think
  • 17:18 about open source,
  • 17:19 like what you're really doing
  • 17:20 is if you come from
  • 17:21 like the free software
  • 17:22 it's like the freedoms.
  • 17:23 The freedom to copy,
  • 17:24 the freedom to change,
  • 17:25 the freedom to distribute,
  • 17:26 you know,
  • 17:27 all of those
  • 17:28 like core tenants.
  • 17:30 if you're starting
  • 17:32 where you're telling
  • 17:33 what you're giving them,
  • 17:35 then of course
  • 17:36 the internet
  • 17:37 is going to be mad at you
  • 17:38 when you change that.
  • 17:39 Whereas like
  • 17:40 from our perspective
  • 17:41 the idea
  • 17:43 you know,
  • 17:44 building a business
  • 17:45 around open source
  • 17:46 is that
  • 17:47 this is an open source project.
  • 17:49 It's
  • 17:50 open to
  • 17:51 for anybody to do
  • 17:52 right?
  • 17:53 that doesn't have to change.
  • 17:55 You can come along
  • 17:57 and build a business
  • 17:58 related to it
  • 17:59 try to solve more problems
  • 18:01 the same problem space
  • 18:02 and
  • 18:03 not put yourself
  • 18:05 where your entire
  • 18:06 business model
  • 18:07 is like
  • 18:08 hinging on the fact
  • 18:09 that you need to
  • 18:10 change something
  • 18:12 about the way
  • 18:13 your open source project
  • 18:16 Like I think
  • 18:17 I'm not actually familiar
  • 18:18 with the
  • 18:19 situation with WordPress.
  • 18:20 like read over it
  • 18:21 like very briefly
  • 18:22 but
  • 18:23 there's definitely
  • 18:24 this case of
  • 18:25 open source projects
  • 18:26 there's like
  • 18:27 a valuable service
  • 18:28 and the business model
  • 18:29 provide support
  • 18:32 or the business model
  • 18:33 is provide a hosted version
  • 18:35 and to turn around
  • 18:36 we're the only people
  • 18:38 that can provide
  • 18:39 is a big challenge,
  • 18:41 And that's what a lot
  • 18:42 kind of come down to
  • 18:43 hey,
  • 18:44 we invested all of this effort
  • 18:45 an open source project
  • 18:46 and now we're going
  • 18:47 to like try to
  • 18:48 retain for ourselves
  • 18:49 the ability
  • 18:50 to be the only one
  • 18:51 as a hosted service
  • 18:53 and that just seems
  • 18:55 very challenging
  • 18:57 to operate
  • 18:58 and to execute
  • 18:59 and it
  • 19:00 doesn't really jive
  • 19:02 with the expectations
  • 19:03 want out of open source
  • 19:05 and so
  • 19:06 I just think
  • 19:07 a flawed logic.
  • 19:08 I think it's a much
  • 19:09 to say
  • 19:10 there's a huge
  • 19:11 infrastructure
  • 19:12 people make
  • 19:13 get a lot of value
  • 19:14 as it is
  • 19:15 and
  • 19:16 if there are
  • 19:17 why not go build
  • 19:18 those bits
  • 19:19 additional bits
  • 19:20 that are not
  • 19:21 that are
  • 19:23 kind of complimentary
  • 19:24 I think this brings us
  • 19:25 really easily
  • 19:26 into the concept
  • 19:28 building this
  • 19:29 it's the missing pieces
  • 19:31 Mike uses this analogy
  • 19:33 of like the Lego set
  • 19:34 if you think about
  • 19:36 and you think about
  • 19:37 the code
  • 19:39 and the available modules
  • 19:40 the standard bricks
  • 19:41 you can go and build
  • 19:43 with the standard bricks
  • 19:44 but when you buy
  • 19:45 that set
  • 19:46 that's the Millennium Falcon
  • 19:47 all these pieces
  • 19:49 that are super custom
  • 19:50 to your exact
  • 19:51 use case
  • 19:52 and those are the bits
  • 19:53 that we build
  • 19:54 right
  • 19:55 you've got Chewbacca's
  • 19:57 yeah exactly
  • 19:58 yeah
  • 19:59 they're not
  • 20:00 the Chewbacca is too
  • 20:01 specific to like
  • 20:02 your company
  • 20:04 you know
  • 20:05 that makes total sense
  • 20:07 and I guess
  • 20:08 it's also reassuring
  • 20:09 in the sense of like
  • 20:10 the open source part
  • 20:12 you
  • 20:13 you couldn't
  • 20:14 even if you wanted
  • 20:15 to do like
  • 20:16 a massive rug pull
  • 20:17 and be like
  • 20:18 homebrew
  • 20:20 no longer
  • 20:21 like
  • 20:22 or whatever
  • 20:23 because you
  • 20:24 you're working
  • 20:25 that I guess
  • 20:26 homebrew is not
  • 20:27 part of workbrew
  • 20:28 it's something
  • 20:29 that you're heavily
  • 20:30 affiliated to
  • 20:31 but you're not
  • 20:33 you don't own
  • 20:35 you're like
  • 20:36 building on top
  • 20:37 as well right
  • 20:39 Mike should talk
  • 20:40 like in a little
  • 20:41 I mean for me
  • 20:42 this sort of
  • 20:43 like
  • 20:44 why
  • 20:45 why now
  • 20:46 because
  • 20:47 various people
  • 20:49 including John
  • 20:50 for the last
  • 20:52 like you know
  • 20:53 10 years
  • 20:54 10 years
  • 20:55 hey you should
  • 20:56 go and make
  • 20:57 like a work
  • 20:58 a homebrew company
  • 20:59 and I've been like
  • 21:00 I don't like that idea
  • 21:02 and I think like
  • 21:03 for various reasons
  • 21:05 but one of those
  • 21:06 reasons was
  • 21:07 the fact that
  • 21:08 homebrew was in
  • 21:09 a place that
  • 21:10 there was a risk
  • 21:11 have happened
  • 21:12 10 years ago
  • 21:13 that like
  • 21:14 if a big
  • 21:15 injection of VC
  • 21:16 happened
  • 21:17 to go into
  • 21:18 something around
  • 21:19 you know
  • 21:20 in the homebrew
  • 21:21 that you could
  • 21:22 quite easily
  • 21:23 capture that project
  • 21:24 was so nebulous
  • 21:25 right
  • 21:26 whereas now
  • 21:27 governance structure
  • 21:28 like I'm
  • 21:29 leader of
  • 21:30 as was mentioned
  • 21:31 am literally
  • 21:32 elected to that
  • 21:33 position every year
  • 21:34 like
  • 21:35 it just so
  • 21:36 no one
  • 21:37 against me
  • 21:38 and no one
  • 21:39 has ever been
  • 21:40 elected except me
  • 21:41 had that position
  • 21:42 but that's
  • 21:43 not a guaranteed
  • 21:44 and if I
  • 21:45 were to
  • 21:46 really annoy
  • 21:47 everyone involved
  • 21:48 community
  • 21:49 and all the
  • 21:50 I would not
  • 21:52 get re-elected
  • 21:53 like someone else
  • 21:54 and they would
  • 21:55 and they would
  • 21:56 homebrew
  • 21:57 right
  • 21:58 so
  • 21:59 that structure
  • 22:00 means
  • 22:01 as well as
  • 22:02 boring licensing
  • 22:03 details stuff
  • 22:04 I wouldn't
  • 22:05 essentially
  • 22:06 is its
  • 22:07 it's a
  • 22:08 and it
  • 22:09 that way
  • 22:10 forever
  • 22:11 workbrew
  • 22:12 may or may
  • 22:13 like involved
  • 22:15 with homebrew
  • 22:16 like past
  • 22:17 present future
  • 22:18 whatever
  • 22:19 the idea
  • 22:20 that workbrew
  • 22:21 could somehow
  • 22:22 homebrew
  • 22:23 and take
  • 22:25 it's not
  • 22:26 right
  • 22:27 it's set up
  • 22:28 that that
  • 22:29 a tenable
  • 22:30 in some ways
  • 22:31 that I actually
  • 22:32 like the most
  • 22:33 and I don't
  • 22:34 work through
  • 22:35 so I'm not
  • 22:36 paid to say
  • 22:37 the relationship
  • 22:38 git and github
  • 22:39 was like
  • 22:40 I think that's
  • 22:42 look at like
  • 22:43 like a big
  • 22:44 has with
  • 22:45 that's the
  • 22:46 internally we
  • 22:47 kind of jive
  • 22:48 because it's
  • 22:49 like was github
  • 22:50 the development
  • 22:51 of a bunch
  • 22:52 in git
  • 22:53 sure like did
  • 22:54 github help
  • 22:55 of git
  • 22:56 but back
  • 22:58 when like
  • 22:59 and bitbucket
  • 23:00 and various
  • 23:01 of relatively
  • 23:03 git hosts
  • 23:04 were around
  • 23:05 like github
  • 23:06 trying to
  • 23:07 like eliminate
  • 23:08 or fork git
  • 23:09 or like find
  • 23:10 a way to
  • 23:11 like everyone
  • 23:12 who uses
  • 23:13 git on their
  • 23:14 needs to
  • 23:15 us money
  • 23:16 that was
  • 23:17 thing but
  • 23:18 I also think
  • 23:19 the growth
  • 23:20 of github
  • 23:21 hand in
  • 23:22 back and
  • 23:23 being a git
  • 23:24 bunch
  • 23:25 of I guess
  • 23:26 some of
  • 23:27 like I
  • 23:28 a bunch
  • 23:29 git that
  • 23:30 be there
  • 23:31 not been
  • 23:32 for github
  • 23:33 working full
  • 23:34 features
  • 23:35 right and
  • 23:36 the same
  • 23:37 homebrew
  • 23:38 some ways
  • 23:39 the features
  • 23:40 substantial
  • 23:41 we're still
  • 23:42 company
  • 23:43 but there's
  • 23:44 still stuff
  • 23:45 in homebrew
  • 23:46 which was
  • 23:47 and would
  • 23:48 there
  • 23:49 not for
  • 23:50 that we
  • 23:51 in the
  • 23:52 right and
  • 23:53 for all the
  • 23:54 use however
  • 23:55 yeah that's
  • 23:56 actually really
  • 23:57 cool and I
  • 23:58 the kind of
  • 23:59 comparison I
  • 24:01 ever heard
  • 24:02 anyone even
  • 24:04 make the link
  • 24:05 between git
  • 24:06 and github in the
  • 24:08 oh like this is
  • 24:10 you know like
  • 24:11 people do it
  • 24:12 like I don't
  • 24:14 people complain
  • 24:15 about like this
  • 24:16 project is too
  • 24:17 tied to this one
  • 24:18 um I you
  • 24:20 about git
  • 24:21 github um which
  • 24:23 is really cool
  • 24:24 as well
  • 24:25 thing you hear
  • 24:26 people periodically
  • 24:27 on the orange
  • 24:28 site is people
  • 24:29 being like hey
  • 24:30 people can think
  • 24:31 github are the
  • 24:32 same thing and
  • 24:33 they're not and
  • 24:34 isn't that bad
  • 24:35 right like and
  • 24:36 it's you know I
  • 24:38 don't think github
  • 24:39 cares very much
  • 24:40 about um about
  • 24:43 about not being
  • 24:44 associated one-to-one
  • 24:45 with git because
  • 24:46 they feel like that's
  • 24:47 not necessary
  • 24:48 for them right
  • 24:49 grown a brand
  • 24:50 which is bigger
  • 24:51 than git right
  • 24:52 and that's you
  • 24:54 know I think the
  • 24:55 way that both
  • 24:56 parties handled that
  • 24:57 admirable really
  • 24:58 other other ways to
  • 24:59 look at that too
  • 25:00 similarities between
  • 25:02 git and github
  • 25:03 and between what
  • 25:04 workbrew and
  • 25:05 you know git is
  • 25:06 kind of the
  • 25:07 behind the scenes
  • 25:09 like technical
  • 25:11 enabler of the
  • 25:12 product but you
  • 25:14 know the stuff
  • 25:15 github successful
  • 25:16 it wasn't just
  • 25:17 obviously there
  • 25:18 was like timing
  • 25:19 with git and
  • 25:20 decentralized version
  • 25:21 branching and merging
  • 25:22 all that stuff but
  • 25:23 like you know
  • 25:24 and the pull
  • 25:25 big you know the
  • 25:26 big drivers of the
  • 25:28 and I think that
  • 25:29 it's similar you
  • 25:31 that it's like
  • 25:32 there's this
  • 25:33 underlying architecture
  • 25:34 that brew is the
  • 25:35 software onto a
  • 25:36 machine there's a
  • 25:38 to do more than
  • 25:40 you know just the
  • 25:42 libraries that
  • 25:43 there's a huge
  • 25:44 opportunity for
  • 25:45 teams to
  • 25:46 have shared
  • 25:48 environments and
  • 25:49 do things that
  • 25:50 don't make sense
  • 25:51 player model and
  • 25:53 model and so
  • 25:54 you know we
  • 25:55 the opportunity
  • 25:56 add a lot of
  • 25:57 complementary
  • 25:58 functionality and
  • 25:59 you know build a
  • 26:00 business on that
  • 26:01 another kind of
  • 26:02 company that I
  • 26:03 really admire in
  • 26:04 this space of
  • 26:05 it's not quite
  • 26:06 open core like
  • 26:07 open core right
  • 26:08 like it's not
  • 26:09 they control git
  • 26:10 thing it's this
  • 26:12 complementary style
  • 26:13 and I'm not
  • 26:14 sure if you're
  • 26:15 company called
  • 26:16 tail scale but
  • 26:18 amazing kind of
  • 26:21 I want to call
  • 26:22 them like a VPN
  • 26:23 not quite a VPN
  • 26:24 it's a peer-to-peer
  • 26:27 tunneling like
  • 26:28 overlay network
  • 26:29 tool but it's
  • 26:30 built off of this
  • 26:31 called WireGuard
  • 26:32 and you know
  • 26:34 people don't really
  • 26:36 make the correlation
  • 26:37 and WireGuard
  • 26:38 unless they're really
  • 26:39 nerdy about it
  • 26:40 underlying enabling
  • 26:42 technology that
  • 26:43 they build kind
  • 26:44 of a multiplayer
  • 26:45 peer-to-peer
  • 26:46 administration layer
  • 26:47 on top of and
  • 26:48 they run you know
  • 26:49 all these like web
  • 26:50 do like stun
  • 26:51 tunneling and
  • 26:52 they do you know
  • 26:53 NAT traversals and
  • 26:54 complicated networking
  • 26:55 stuff that you
  • 26:57 but really there's a
  • 27:00 huge value in them
  • 27:01 and what's what's
  • 27:03 it's like all of
  • 27:04 functionality makes
  • 27:05 WireGuard feel like
  • 27:06 magic and that's
  • 27:07 their product and
  • 27:08 it's like WireGuard
  • 27:10 enabling technology
  • 27:11 and I think that
  • 27:12 you know for us
  • 27:13 similarly Brew is
  • 27:14 enabling technology
  • 27:15 that's really awesome
  • 27:16 and we want to
  • 27:17 magic to teams
  • 27:18 right bring it to
  • 27:19 can say you know
  • 27:20 get your engineers
  • 27:21 up and running as
  • 27:22 fast as possible on
  • 27:23 day one make sure
  • 27:24 makes a change to
  • 27:25 the developer
  • 27:27 environment it works
  • 27:28 you're not repeating
  • 27:29 yourselves over and
  • 27:30 over again when
  • 27:31 of date you can
  • 27:32 easily when there's
  • 27:33 a vulnerability you
  • 27:34 away you know about
  • 27:35 it you can you
  • 27:36 know remediate you
  • 27:37 an audit history of
  • 27:38 what's going on like
  • 27:39 all of this stuff
  • 27:40 is really really
  • 27:41 valuable from a
  • 27:42 business perspective
  • 27:43 and it's not
  • 27:44 something that you
  • 27:45 know the open
  • 27:46 source community is
  • 27:47 like eager to build
  • 27:48 like I don't see a
  • 27:50 lot of open source
  • 27:51 engineers in their
  • 27:52 what does this
  • 27:53 billion dollar
  • 27:54 company need to
  • 27:55 with my open source
  • 27:56 project let me spend
  • 27:57 my time working on
  • 27:58 it for free right
  • 27:59 so we can build some
  • 28:00 of those bits and
  • 28:01 and I mean that was
  • 28:02 in some ways the
  • 28:03 earliest motivation
  • 28:04 for work brew
  • 28:05 really was like
  • 28:06 we sort of decided
  • 28:07 on this we're going
  • 28:08 to build a commercial
  • 28:12 layer around
  • 28:13 homebrew before we
  • 28:15 nailed down the
  • 28:16 exact ideas but the
  • 28:17 exact ideas came
  • 28:18 from people in the
  • 28:20 homebrew community
  • 28:21 including one grumpy
  • 28:23 scotsman who may or
  • 28:24 may not be a very I
  • 28:27 don't know whatever
  • 28:28 adjective you want to
  • 28:29 like I said no to
  • 28:32 a lot of these
  • 28:33 things over the
  • 28:34 would come from a
  • 28:35 big company and say
  • 28:36 my compliance
  • 28:37 requirements mean I
  • 28:38 need to ABCD and
  • 28:40 and it would be a
  • 28:41 non-trivial lift for
  • 28:42 the homebrew folks
  • 28:43 and I'd be like now
  • 28:44 we're not going to
  • 28:45 periodically I would
  • 28:47 other maintainers and
  • 28:48 be like I'm just
  • 28:49 no one's super
  • 28:50 passionate about doing
  • 28:52 they're all like no
  • 28:53 don't want to do
  • 28:54 this how about
  • 28:55 project receives a
  • 28:57 large company to
  • 28:58 complete your
  • 28:59 questionnaire yeah
  • 29:01 exactly classic
  • 29:02 example right but I
  • 29:04 mean I found this
  • 29:05 actually like a
  • 29:06 previous job so like
  • 29:07 Linux guy and I
  • 29:09 worked on KDE like
  • 29:11 the Linux desktop
  • 29:12 environment and and
  • 29:14 one of the things I
  • 29:16 about back then I
  • 29:17 worked for a company
  • 29:18 called KDAB who
  • 29:19 consultancy company
  • 29:20 around QT that the
  • 29:22 tech that and KDE
  • 29:24 was built in and I
  • 29:25 because they were
  • 29:26 like the the biggest
  • 29:27 contributor to KDE
  • 29:28 of any like company
  • 29:29 right so I joined
  • 29:30 and I was like I'm
  • 29:31 this open source work
  • 29:32 gonna be sorry for
  • 29:33 money and it's gonna
  • 29:34 whatever and then I
  • 29:36 learned that like a
  • 29:37 lot of the open
  • 29:38 source work for money
  • 29:39 work around this
  • 29:41 stuff is the stuff
  • 29:43 right because all of
  • 29:45 the fun jobs that's
  • 29:46 the stuff that they
  • 29:47 problems getting
  • 29:48 volunteers in their
  • 29:49 spare time to make
  • 29:50 sure that they do
  • 29:51 this but like a
  • 29:53 essentially when you
  • 29:54 have a spec and
  • 29:55 you need to
  • 29:56 hell up something to
  • 29:57 make sure that like
  • 29:59 you behave in the
  • 30:00 same way as some
  • 30:01 software on windows or
  • 30:03 a bigger open
  • 30:04 whatever and you
  • 30:05 want to just like
  • 30:06 nail that down such
  • 30:07 that you completely
  • 30:08 of the specification
  • 30:09 right that's that's
  • 30:11 not so fun right
  • 30:12 like but it is
  • 30:13 really valuable and
  • 30:14 important to big
  • 30:15 companies and that
  • 30:16 they will pay for
  • 30:17 people to do right
  • 30:18 and in some ways I'm
  • 30:19 also inspired by that
  • 30:21 where it's previously
  • 30:23 with those
  • 30:24 organizations it
  • 30:25 wasn't that I was
  • 30:26 saying like we
  • 30:27 don't that your
  • 30:29 right it's your
  • 30:31 they did have
  • 30:32 problems and they
  • 30:33 them but it's like
  • 30:34 we can't solve that
  • 30:36 we're not the right
  • 30:38 people we're not
  • 30:39 qualified well enough
  • 30:40 and in some cases
  • 30:41 when even when
  • 30:43 people would come
  • 30:44 pull requests to
  • 30:45 this functionality
  • 30:46 functionality it was
  • 30:47 like well now no
  • 30:48 one's using it so
  • 30:50 it bit rots and
  • 30:51 then a year later
  • 30:52 someone tries to use
  • 30:53 it again it
  • 30:54 because homebrew
  • 30:55 doesn't use it
  • 30:56 right and 99.99%
  • 30:58 of homebrew users
  • 30:59 whereas now we
  • 31:00 have a world with
  • 31:01 workbrew with this
  • 31:02 it's like we have
  • 31:03 customers using this
  • 31:04 stuff every single
  • 31:05 day right so if
  • 31:07 project has an
  • 31:08 issue there we
  • 31:09 fix it within
  • 31:10 minutes or hours
  • 31:11 right instead of
  • 31:12 it being like a
  • 31:13 year of this thing
  • 31:14 just being broken
  • 31:15 right and so
  • 31:17 yeah I think I
  • 31:18 different way of
  • 31:19 doing this stuff
  • 31:20 this stuff and I
  • 31:21 think it's where
  • 31:23 people are best
  • 31:24 aligned right we
  • 31:26 in workbrew are
  • 31:27 best aligned to
  • 31:28 solve these problems
  • 31:29 for customers and
  • 31:30 we do it with some
  • 31:32 some proprietary
  • 31:33 software and we do
  • 31:34 some stuff for free
  • 31:35 and some stuff for
  • 31:36 money right and
  • 31:37 whereas workbrew is
  • 31:38 sorry homebrew is
  • 31:40 best aligned to do
  • 31:41 what suits the
  • 31:42 community to kind
  • 31:43 of coalesce behind
  • 31:45 the stuff that works
  • 31:46 for 99% of people
  • 31:47 right and if you're
  • 31:48 in some very
  • 31:49 niche use case or
  • 31:50 0.1% or whatever
  • 31:51 then it's you know
  • 31:52 it's probably not
  • 31:53 good for you as
  • 31:54 workbrew might be
  • 31:55 this is also the
  • 31:56 configuration or
  • 31:57 simple defaults or
  • 31:59 solving the case for
  • 32:00 the majority of
  • 32:01 people you know
  • 32:02 there are a lot of
  • 32:03 you know I'm not a
  • 32:04 I'm not a maintainer
  • 32:05 but I'm a contributor
  • 32:06 to homebrew and I'm a
  • 32:07 heavy user and there
  • 32:08 are some things in
  • 32:09 work the way I want
  • 32:10 them to but kind of
  • 32:12 the consensus is like
  • 32:13 this is the way it is
  • 32:14 because we need to
  • 32:15 make life manageable
  • 32:16 for the maintainers
  • 32:17 if we changed it the
  • 32:19 support load or the
  • 32:20 burden of maintain
  • 32:21 maintenance would be
  • 32:22 much higher so we've
  • 32:23 optimized for you know
  • 32:24 the homebrew project
  • 32:25 has optimized some
  • 32:26 things for maintainers
  • 32:28 rather than for users
  • 32:29 in the sense that like
  • 32:30 this always works it
  • 32:31 never has a problem
  • 32:32 we're never having to
  • 32:33 support it and so
  • 32:34 kind of the the idea
  • 32:36 of the project the
  • 32:38 open source project is
  • 32:39 kind of the one true
  • 32:40 way to use the thing
  • 32:42 that applies to the
  • 32:44 most people and is the
  • 32:45 most reliable and the
  • 32:46 most robust and the
  • 32:47 easiest to maintain and
  • 32:48 know every time a new
  • 32:49 mac os version gets
  • 32:50 released homebrew is
  • 32:51 waiting right like that's
  • 32:53 accomplishment for the
  • 32:55 project but when it
  • 32:56 comes to you know big
  • 32:57 companies something that
  • 32:59 we learned at our time
  • 33:00 at github was that you
  • 33:02 know a small company of
  • 33:03 100 employees telling a
  • 33:04 company of 100,000
  • 33:05 engineers how to build
  • 33:06 software is kind of
  • 33:08 laughable the idea that
  • 33:10 the 100 person company
  • 33:11 knows how 100,000
  • 33:12 person companies should be
  • 33:13 running their software
  • 33:14 teams and that you know
  • 33:15 controls aren't
  • 33:16 necessary right like
  • 33:18 these these kind of
  • 33:19 like very I don't know
  • 33:22 very basic ideas right
  • 33:23 and the reality is that
  • 33:25 those really big
  • 33:26 companies or you know
  • 33:28 the companies that have
  • 33:29 requirements they get a
  • 33:31 lot of value out of the
  • 33:32 things to have checkboxes
  • 33:34 and have options and to
  • 33:35 be able to say this is
  • 33:37 we make this tool you
  • 33:39 know fit our working
  • 33:40 style rather than having
  • 33:41 to conform to what's
  • 33:42 there and so another
  • 33:44 took away from our time
  • 33:45 make github and what
  • 33:47 we kind of emphasize
  • 33:48 that you know the idea
  • 33:51 of configurability is
  • 33:53 kind of a debt that you
  • 33:54 have to maintain and a
  • 33:56 burden and you know the
  • 33:58 open source project is
  • 33:59 not really willing to do
  • 34:00 that in in some cases
  • 34:01 but for us that's
  • 34:03 willing to sell we're
  • 34:05 to maintain to make this
  • 34:07 thing work for you know
  • 34:08 various sizes of
  • 34:09 companies with different
  • 34:10 controls and security
  • 34:11 and compliance requirements
  • 34:13 and all that kind of
  • 34:14 stuff and make that our
  • 34:16 value add to make it fit
  • 34:18 your needs and so I
  • 34:19 think it's just like a
  • 34:20 great opportunity to work
  • 34:21 with them work on an
  • 34:23 open source project but
  • 34:24 model and it's not
  • 34:26 really open core it's
  • 34:27 not really like an
  • 34:28 open source company it's
  • 34:29 more of like a
  • 34:30 complementary business to
  • 34:31 an existing open source
  • 34:32 company or an existing
  • 34:34 open source project I
  • 34:36 comes back in some ways
  • 34:37 to the title of the
  • 34:38 podcast right this is
  • 34:40 scaling dev tools right
  • 34:42 and in some ways there
  • 34:43 is the the open source
  • 34:45 way and there is the
  • 34:47 the business way and I
  • 34:48 think where it gets
  • 34:50 messy or people get
  • 34:51 confused is when they try
  • 34:53 and combine the two so
  • 34:55 about sustainability and
  • 34:57 open source nowadays right
  • 34:58 and I have been you know
  • 35:00 moderately critical on the
  • 35:04 internet and more loudly
  • 35:05 critical in person at
  • 35:07 that about the idea that
  • 35:09 essentially the way you
  • 35:10 fix open source
  • 35:11 sustainability is just
  • 35:12 throw money at every
  • 35:13 that fixes all the
  • 35:14 problems right it doesn't
  • 35:15 it doesn't I've seen it
  • 35:17 in hubbrew and I've seen
  • 35:18 it in many other
  • 35:19 projects and many other
  • 35:20 maintainers who are in my
  • 35:21 inbox like trying to
  • 35:23 done right the way in my
  • 35:26 experience the way you
  • 35:27 sustainability is by
  • 35:28 figuring out what
  • 35:30 sustainability looks like
  • 35:31 open source project right
  • 35:32 and some of that comes
  • 35:34 from personal boundaries of
  • 35:35 the maintainers with each
  • 35:37 other with the community
  • 35:38 personal boundaries with
  • 35:39 maintainers in terms of
  • 35:40 like what what are we
  • 35:41 doing here what are we
  • 35:42 trying to build right are
  • 35:43 we gonna do the Jamie
  • 35:45 Zawinski rule of like
  • 35:46 every all software grows
  • 35:48 client right or are we
  • 35:49 gonna say no this is the
  • 35:51 line beyond which we
  • 35:52 don't we don't go we're
  • 35:53 not interested that's out
  • 35:54 of scope use this other
  • 35:56 project whatever it may be
  • 35:57 and that's how you have to
  • 35:59 do this because in you
  • 36:00 know 10 years ago
  • 36:01 homebrew had probably like
  • 36:02 half the number of
  • 36:03 maintainers maybe a third
  • 36:05 uh but we had like maybe
  • 36:07 one like one tenth if not
  • 36:10 much less than that of the
  • 36:11 users right and the way
  • 36:13 you scale doing that as
  • 36:14 John kind of mentioned
  • 36:15 and alluded to as well is
  • 36:16 you do that by filing off
  • 36:18 the rough edges right and
  • 36:19 if you have a feature that
  • 36:20 blows up for users 10% of
  • 36:22 the time right there might
  • 36:23 be a bunch of used power
  • 36:24 users who love that
  • 36:25 feature and it makes their
  • 36:26 life really happy and the
  • 36:28 workflows are great but like
  • 36:29 if 10% of users who bump
  • 36:31 into that even they have
  • 36:32 like 0.1% of those
  • 36:33 users go and complain on
  • 36:36 our discussions or like
  • 36:38 in the past when we had
  • 36:39 IRC channels or in our
  • 36:40 issue track or whatever
  • 36:41 that gets very very hard
  • 36:43 for 30 people to manage
  • 36:44 right and the only way in
  • 36:46 the end like I've been
  • 36:48 you know some you will
  • 36:49 find various parts of the
  • 36:50 internet that don't like
  • 36:51 viewpoint but in the end
  • 36:53 to me the only way you
  • 36:54 are able to successfully
  • 36:55 scale that is you say
  • 36:56 some of these features go
  • 36:57 away right if you want to
  • 36:59 build a plugin or support
  • 37:00 your own way of doing
  • 37:01 things over here that's
  • 37:02 fine but in the open
  • 37:04 source project we do not
  • 37:05 have the infrastructure to
  • 37:07 do this stuff like we
  • 37:08 can't do it and if you
  • 37:10 there's that doesn't
  • 37:12 solve the problem either
  • 37:13 because you end up in
  • 37:14 this I should probably
  • 37:16 name for it but like
  • 37:17 this sort of open source
  • 37:18 sustainability money-wise
  • 37:20 gulf of like too much
  • 37:22 money for stickers not
  • 37:23 enough money to pay
  • 37:24 anyone right where like
  • 37:26 if you don't have a
  • 37:27 quite even one person's
  • 37:29 full-time salary coming
  • 37:31 it reliably but you've
  • 37:32 got way too much like
  • 37:34 what do you do with
  • 37:35 that and how do you use
  • 37:36 that to somehow magically
  • 37:37 scale the project so
  • 37:38 that everyone is able to
  • 37:39 do more with less or the
  • 37:42 same amount right but I
  • 37:43 think on the business
  • 37:44 side that's when it gets
  • 37:45 can go and build a
  • 37:46 business where if you
  • 37:48 most businesses well no
  • 37:51 most businesses certainly
  • 37:52 are business you start
  • 37:53 from the outset with a
  • 37:54 model of looking at
  • 37:56 being like well
  • 37:57 ultimately we are going
  • 37:58 to have to build
  • 37:59 something and we're
  • 38:00 people money for a
  • 38:02 product and exchange for
  • 38:03 that product like they
  • 38:04 are going to get a great
  • 38:06 user experience that they
  • 38:07 don't otherwise get
  • 38:08 right and to me like
  • 38:09 that's another way that
  • 38:10 you build sustainability
  • 38:11 both for open source and
  • 38:13 for dev tools in general
  • 38:14 right like github as a
  • 38:17 you know if you look at
  • 38:18 the offering on github
  • 38:19 nowadays and how many
  • 38:20 billions of features
  • 38:21 they have and ci runners
  • 38:23 thing you couldn't do
  • 38:24 that with a bunch of
  • 38:25 volunteers like you can
  • 38:26 do that with 30
  • 38:27 volunteers working
  • 38:28 right like maybe their
  • 38:31 2007 or 8 or whatever
  • 38:34 it was you could have
  • 38:35 done that you maybe
  • 38:36 that indefinitely with
  • 38:37 like a small number of
  • 38:39 people just doing things
  • 38:41 but you wouldn't scale
  • 38:43 that to you know like
  • 38:45 hundreds of millions of
  • 38:46 users for sure like
  • 38:47 that's all of that stuff
  • 38:49 requires many many
  • 38:50 people being having a
  • 38:52 level of dedication that
  • 38:53 is not really
  • 38:55 compatible with them
  • 38:56 having a full-time job
  • 38:58 yeah it may it makes
  • 39:00 uh it makes sense what
  • 39:01 you're saying there
  • 39:02 about like um you know
  • 39:05 how you unless you're
  • 39:06 paying people the full
  • 39:07 salary like money is not
  • 39:09 really going to help
  • 39:10 like do that and that
  • 39:11 you do need a company
  • 39:13 to go and like give
  • 39:15 those like those extra
  • 39:17 features that maybe not
  • 39:18 so many people need that
  • 39:20 cause a lot of problems
  • 39:21 you know you're you're
  • 39:22 willing to do all the
  • 39:23 boring fiddly things
  • 39:25 that big companies need
  • 39:28 and that is not fitting
  • 39:30 for open source it makes
  • 39:32 so much sense this is
  • 39:33 very cool i honestly like
  • 39:35 i hadn't really seen
  • 39:37 this sort of model or
  • 39:38 like really thought about
  • 39:39 this maybe it's probably
  • 39:40 the right way i'd seen
  • 39:41 it i guess but not
  • 39:43 thought about it um it's
  • 39:45 very cool and it seems
  • 39:46 like you're not gonna have
  • 39:48 to worry about really any
  • 39:50 of the kind of issues
  • 39:51 that a lot of open
  • 39:52 source companies have
  • 39:53 with like monetizing
  • 39:55 uh the project um it's
  • 39:59 very cool and we're kind
  • 40:02 but i just wanted to ask
  • 40:03 like who who are you
  • 40:05 like kind of selling to
  • 40:07 it's like it departments
  • 40:08 or how yeah so there
  • 40:10 there are really three
  • 40:12 you know types of people
  • 40:13 that are interested in
  • 40:14 in work brew um
  • 40:15 obviously first and
  • 40:16 foremost is the
  • 40:17 developer um homebrew is
  • 40:19 incredibly popular with
  • 40:20 developers on max and
  • 40:22 at the minimum there are
  • 40:25 developers out there that
  • 40:26 work at companies where
  • 40:27 they have security and
  • 40:28 compliance requirements
  • 40:29 that prevent them from
  • 40:30 using homebrew you know
  • 40:32 imagine trying to do your
  • 40:33 work without access to
  • 40:34 homebrew how much less
  • 40:35 productive you would be
  • 40:36 um so really one of the
  • 40:39 core you know values that
  • 40:40 we provide is just the
  • 40:41 ability for engineers that
  • 40:43 these security compliance
  • 40:44 requirements to have
  • 40:45 access to the tools that
  • 40:46 they already know and
  • 40:47 love and use um in
  • 40:49 addition for engineers we
  • 40:51 aim to you know make the
  • 40:53 process better help them
  • 40:55 get up and running faster
  • 40:56 um and really make it so
  • 40:58 that it's a treat your
  • 41:02 local development
  • 41:03 developer environment like
  • 41:04 its infrastructure and the
  • 41:06 idea being that you know i
  • 41:08 have worked in vms i've
  • 41:10 containers i've worked in
  • 41:11 cloud idees and they all
  • 41:13 have a trade-off in that
  • 41:15 you get consistency speed
  • 41:16 of startup all those
  • 41:17 types of things in
  • 41:18 exchange for worse
  • 41:20 ergonomics i love working
  • 41:23 on my local machine with
  • 41:24 my local editor on my
  • 41:25 local file system with my
  • 41:26 local network with all the
  • 41:27 things that are ergonomic
  • 41:29 and the way that i like
  • 41:30 them and anytime i
  • 41:31 introduce a docker or vm
  • 41:33 or cloud id or anything
  • 41:34 like that into my
  • 41:35 workflow it drains me it
  • 41:37 makes me less productive
  • 41:38 in addition all of those
  • 41:40 options cost more they're
  • 41:42 either you're paying for
  • 41:43 vms you're using more
  • 41:45 battery life using more
  • 41:46 processor you're doing
  • 41:47 whatever you have these
  • 41:48 really amazing apple
  • 41:50 silicon devices you're
  • 41:51 dollars pop for and
  • 41:53 then you're shelling out
  • 41:54 into a cloud environment
  • 41:55 like what what are we
  • 41:56 even doing it doesn't
  • 41:57 make any sense so that's
  • 41:59 the story for the
  • 42:00 developers it's like have
  • 42:01 access and have really
  • 42:02 great ergonomics the
  • 42:04 next big category of
  • 42:05 people is the it managers
  • 42:06 so these are the folks
  • 42:07 who in your company
  • 42:08 they're responsible for
  • 42:09 issuing you a laptop and
  • 42:11 making sure that you're
  • 42:12 up and running and for
  • 42:13 engineers oftentimes
  • 42:14 these people you don't
  • 42:15 need to interact with
  • 42:16 you can self-serve you
  • 42:17 can fix your own
  • 42:18 it department at github
  • 42:19 was amazing the people
  • 42:21 on that team you know
  • 42:22 were there to support
  • 42:23 you when you needed
  • 42:24 them they helped you
  • 42:25 situation they helped
  • 42:26 you with getting access
  • 42:27 to things but at the
  • 42:29 had the situation where
  • 42:30 we had a lot of talented
  • 42:31 engineers who knew what
  • 42:32 they were doing so it
  • 42:33 where they had a lot of
  • 42:34 trust and there was
  • 42:36 make sure things that
  • 42:37 were necessary got done
  • 42:39 and so as it managers
  • 42:40 we want to give them a
  • 42:41 way to lighten their
  • 42:42 workload and be able to
  • 42:44 get brew into the hands
  • 42:46 of their team in a
  • 42:47 reliable repeatable
  • 42:49 really easy way and then
  • 42:51 once it's out there know
  • 42:52 what's going on have
  • 42:53 visibility into how are
  • 42:54 people using this thing
  • 42:55 do i need to be worried
  • 42:57 that they're installing
  • 42:58 some software that could
  • 42:59 have a supply chain
  • 43:00 attack or things like
  • 43:01 that and then the last
  • 43:03 people that were you
  • 43:05 know trying to serve are
  • 43:06 whether it's a CISO
  • 43:08 or you know kind of
  • 43:09 somebody who's on the
  • 43:10 AppSec side but they're
  • 43:12 they're interested in
  • 43:13 is secure we're building
  • 43:15 a bunch of functionality
  • 43:17 around making sure that
  • 43:19 compliance standards so
  • 43:21 you know there's SOC 2
  • 43:22 there's ISO 27001
  • 43:24 there's you know all the
  • 43:26 different kind of credit
  • 43:28 card compliance like
  • 43:29 there's there's all
  • 43:30 different industries have
  • 43:31 their compliance standards
  • 43:32 and inevitably they
  • 43:34 people are using
  • 43:35 whether it means you
  • 43:37 know the people on
  • 43:38 their devices are using
  • 43:39 admin accounts rather
  • 43:40 than the standard users
  • 43:41 and what what's entailed
  • 43:42 interacts with that or if
  • 43:44 it's about what pieces of
  • 43:46 integrated into their
  • 43:47 workflows so you know
  • 43:49 we're serving those
  • 43:50 people by saying hey
  • 43:51 level overview of
  • 43:52 happening you can get
  • 43:54 alerts about when there
  • 43:55 are vulnerabilities you
  • 43:56 vulnerabilities you can
  • 43:57 set policies and
  • 43:58 guidelines to make sure
  • 43:59 that the usage of these
  • 44:01 tools are contained one
  • 44:03 of the really powerful
  • 44:04 features of homebrew is
  • 44:06 that it's not tied to
  • 44:08 one library of packages
  • 44:10 they're the official
  • 44:11 packages in homebrew core
  • 44:12 and homebrew cask but
  • 44:14 you can actually add a
  • 44:15 third-party library called
  • 44:16 a tap and install any
  • 44:18 software homebrew you can
  • 44:19 create your own taps you
  • 44:20 can use taps by third-party
  • 44:21 vendors and that
  • 44:23 represents for security
  • 44:25 folks a really really big
  • 44:27 issue they're like oh my
  • 44:28 god literally anything
  • 44:29 could be installed in the
  • 44:30 machines I have no idea
  • 44:31 about it and so you know
  • 44:33 for them we're making it
  • 44:34 so you can see are
  • 44:35 people using third-party
  • 44:36 libraries third-party
  • 44:37 taps which which ones are
  • 44:38 they using do you have a
  • 44:40 control policy that you
  • 44:41 need to implement so
  • 44:42 stuff around there that's
  • 44:44 really valuable and so
  • 44:45 you know those are the
  • 44:46 people we're trying to
  • 44:47 serve and I think that
  • 44:48 kind of the last thing
  • 44:49 I'll say about this is
  • 44:50 kind of the business
  • 44:51 model and like how
  • 44:52 this so we have pretty
  • 44:55 much two two stories
  • 44:58 version and one there's
  • 44:59 a paid version so
  • 45:01 workbrew is available
  • 45:02 for free for unlimited
  • 45:03 users unlimited devices
  • 45:05 it's the best way to
  • 45:06 install brew on a fleet
  • 45:08 whether you have 10 or
  • 45:09 10,000 devices you can
  • 45:11 go to workbrew you can
  • 45:12 install brew on every
  • 45:13 device have it be
  • 45:14 consistent get it ready
  • 45:15 minutes and have full
  • 45:17 visibility into everything
  • 45:18 there this is kind of
  • 45:20 like table stakes for
  • 45:21 any company that's doing
  • 45:22 any kind of sock to
  • 45:23 compliance or any kind
  • 45:25 of you know good
  • 45:26 security practices and we
  • 45:27 made that totally free
  • 45:28 then beyond that if
  • 45:31 security controls or
  • 45:33 if you want to add
  • 45:34 remote management or
  • 45:35 if you want to have
  • 45:36 any kind of interaction
  • 45:37 around automation and
  • 45:39 default packages and
  • 45:40 kind of environment
  • 45:41 setup then we have a
  • 45:42 paid plan that you can
  • 45:43 get additional features
  • 45:44 from but it's really
  • 45:46 targeted those those
  • 45:47 three use cases
  • 45:48 very cool very cool
  • 45:50 kind of reminds me of
  • 45:51 like sneak in a sense
  • 45:52 of like the kind of
  • 45:53 model that if you've
  • 45:55 thought about it that
  • 45:56 way but like I can
  • 45:57 totally imagine like
  • 45:58 I've I've had to use
  • 46:00 sneak at work because
  • 46:03 we went through
  • 46:04 sock to compliance and
  • 46:05 it was like just like
  • 46:08 my manager loved it
  • 46:10 because you know you
  • 46:11 can just everything is
  • 46:13 like you know compliant
  • 46:17 bits in with vanter and
  • 46:18 stuff like that and
  • 46:20 then for me it was
  • 46:21 like generally good
  • 46:22 because you know a lot
  • 46:25 of the time you just
  • 46:26 press a button upgrade
  • 46:28 and stuff rather than
  • 46:29 like solving it
  • 46:30 yourself but um yeah
  • 46:32 that's very cool it's
  • 46:34 uh very very exciting
  • 46:36 um yeah and thank you
  • 46:38 so much for sharing the
  • 46:40 journey and um yeah
  • 46:42 and thanks uh thanks
  • 46:43 mike for helping us
  • 46:44 download all the stuff
  • 46:47 we need onto our max
  • 46:48 so um yeah thank you
  • 46:51 john and mike um and
  • 46:53 thanks everyone for
  • 46:54 listening uh so workbrew.com
  • 46:56 if people want to
  • 46:57 learn more check out
  • 46:58 workbrew.com and you
  • 46:59 know thank you so much
  • 47:00 podcast we're really
  • 47:01 grateful to be here and
  • 47:02 have this conversation
  • 47:03 you know look forward to
  • 47:04 coming back at some
  • 47:05 point in the future and
  • 47:06 giving an update amazing
  • 47:07 yep thanks jack and
  • 47:09 listening