Workbrew, turning Homebrew into a business with Mike McQuaid

Interviewed by The Tech Lounge Podcast

I speak with Mike McQuaid, long-term maintainer of Homebrew, the macOS package manager, about Workbrew, a new commercial version of Homebrew that brings extra security and governance features to Homebrew.

Show transcript
  • 0:00 Oh hey, how are you? Great to hear. Here, come in. Make yourself comfortable. Like a
  • 0:12 drink? Sure. There you go. Welcome to the Tech Lounge. Shall we begin? Hello everybody
  • 0:24 and welcome to another Tech Lounge. I hope you are all sitting comfortably because today's
  • 0:31 interview is a good one. This interview formed the basis of an article I published on the
  • 0:38 Next Web a few months ago with Mike McQuaid, maintainer of Homebrew and now one of the co-founders
  • 0:45 of Workbrew. A lot of people who use macOS will have heard of Homebrew and the article
  • 0:52 was very popular. So I am looking forward to seeing what people think of this interview
  • 0:58 too. So let's just jump right in. Before we begin, there's just a few people at the door
  • 1:07 with some things to say that won't take very long. If you'd rather not hear these interruptions,
  • 1:13 then please support the show. You can find details in the episode and show notes.
  • 1:19 So, Mike, how are you today?
  • 1:25 Yeah, doing great, thanks. How are you, Chris?
  • 1:27 Good. I can see a guitar amp behind you. This is exciting too.
  • 1:30 Yeah, it's a bass guitar amp. I have a few guitars hiding behind me, unfortunately.
  • 1:36 I'm actually mostly a drummer. I have an electric drum kit, like just there.
  • 1:41 Oh, very cool. Yeah. I'm minor sadly, mostly for show nowadays, since I had kids. I had
  • 1:46 visions of my kids being virtuosic musicians at a young age and they have no interest in
  • 1:52 learning music so far.
  • 1:53 Yeah, my dad tried to do the same because my dad was a professional and I didn't get interested
  • 1:57 until I was a teenager and realized there were benefits to playing music, shall we say, as
  • 2:04 a young teen. So I found my own motivation. Anyway, so you represent two organizations, one organization,
  • 2:16 one company, both with a similar ending, homebrew and workbrew. I think we should, let's begin
  • 2:22 with homebrew. And let's, for those, I mean, in certain sectors it's very well known, but
  • 2:28 for those who don't know what it is, what is it? And I think a more important question
  • 2:33 might be, why is it as well?
  • 2:35 Sure. So I guess my highest level description of homebrew tends to be for people who aren't
  • 2:42 even in tech and have no idea really about computers is it's, I first asked them, have
  • 2:48 you heard of open source software? And if they haven't, I tend to give up. But assuming
  • 2:52 you have heard of open source software, which I imagine is most of the listeners to this,
  • 2:55 then homebrew is basically an app store for open source software. So it's a way for primarily
  • 3:02 developers, but a bunch of other people to install open source software primarily on their
  • 3:06 Macs. But it also supports Linux now. It also installs a bunch of non-open source now. And
  • 3:12 yeah, but that's the simplest one-liner, I think.
  • 3:14 Yeah. I mean, for any Linux people listening, it's a package manager as well, sort of, I suppose.
  • 3:20 But yeah, you are, like, I've used it for a very long time. And I, I would say it's probably
  • 3:24 about 50-50 at this point that I'm also using it for the non-open just because of the convenience.
  • 3:29 Yeah.
  • 3:30 Just to have everything in one place as much as possible is kind of nice because that doesn't
  • 3:35 really exist on Mac. It may surprise some people to hear this, but it's not really a thing.
  • 3:43 And it's, you were not the original maintainer or creator, were you, I think, from memory?
  • 3:47 No.
  • 3:48 So the original creator was a guy called Max Howell.
  • 3:51 So he created it, I guess, 15 years ago, last May. And I sort of knew of Max. He was a
  • 4:00 friend of, a friend. We both worked at startups in London. He was at Last.fm, which if you were
  • 4:05 in tech in that particular era.
  • 4:07 Yeah, scrubbling. Lots of scrubbling. And yeah, I was in a sort of similar startup in London
  • 4:12 called Mendeley. And yeah, and basically he, he used some other package managers on Max and
  • 4:19 he didn't like them. And he came up with Homebrew. And I found Homebrew fairly early on. I think
  • 4:23 I got involved, you know, probably less than six months after it was created. Started contributing,
  • 4:28 no real expectations of doing anything. And then now have been maintaining it for 15 years
  • 4:32 and contributed to the package manager itself, at least probably more than anyone else.
  • 4:37 You've been maintaining it for 15 years?
  • 4:39 15 years.
  • 4:40 So the project is older than 15 years?
  • 4:42 So the project is 15 years. Sorry. I go by calendar years and things. So the project turned
  • 4:48 15 a couple of months ago. And this is my 15th year. I guess my official 15 year anniversary
  • 4:54 would be like September or something.
  • 4:55 Yeah. Which is relatively, relatively old, long and mature in terms of sort of modern open
  • 5:02 source. That's, yeah, I guess.
  • 5:04 Yeah, I guess so.
  • 5:05 Yeah. And actually on a, on a side thing, I feel like didn't, didn't Max then go on to
  • 5:10 do CocoaPods? Or have I got that mixed up?
  • 5:13 So he worked later, he went and joined Apple at a later point in his career and he worked
  • 5:18 on the Swift package manager, which was, I don't really know that ecosystem super well,
  • 5:22 but I think that was sort of a somewhat related version of, like the official version of Cocoa
  • 5:27 Pops or something, but just for Swift.
  • 5:28 And when did the Linux version begin?
  • 5:33 Yeah. So that's, I can't remember the exact years off the top of my head, but there was
  • 5:37 a guy called Sean Jackman, I think, who started it originally. He started like a fork of Homebrew
  • 5:43 basically because he worked in bioinformatics. And the problem they had was they had these
  • 5:48 big, you know, supercomputers that they were allowed to compile software on, but they didn't
  • 5:52 get root. So they couldn't use the system package manager. And he figured out like, oh yeah,
  • 5:56 if I sort of like hack Homebrew this way and that way, then I can use it to install some
  • 5:59 stuff in my home directory. And yeah. And basically like over time, we sort of like built up relations
  • 6:05 with, with them. And then eventually the package managers merged and then the package repositories
  • 6:10 merged as well. So now Homebrew like officially supports Mac analytics.
  • 6:15 Ah, okay. So it's the same. So, okay. I have to be careful here. So for, for, for people
  • 6:20 who don't know with, with Homebrew, most things are called a formula. So you have the same
  • 6:24 formulas for all, all combinations these days.
  • 6:28 Yeah. Yeah. So the same formula is used to install stuff on Mac and Linux. I mean, there's
  • 6:33 some formula that only work on Linux and some formula that only work on Macs, but generally
  • 6:37 most of them work on Macs.
  • 6:38 And I know there have also been various decisions along the way in regards to the open, the non-open,
  • 6:44 the compiled, the non-compiled. Tell me a little bit of that journey. And, and I feel like there's
  • 6:50 been most recently this journey to reconsolidate as much as no, sort of. Yeah, maybe let's, let's,
  • 6:56 let's tell me the journey anyway.
  • 6:57 Sure. So Homebrew started off as what we would call like a from source package manager, which
  • 7:03 basically meant that if you've used in the Linux world, I guess something like Gen2, or
  • 7:08 I think even that's lesser nowadays, but certainly, so it would download the source code of the
  • 7:13 package and then it would fire up a compiler and turn away and then spit out in the end
  • 7:17 some binaries, you call them on your machine. And it's while it started off like that, like
  • 7:24 that was a very time consuming for users because some, you know, software would take minutes
  • 7:29 to install some software would take hours to install and, and B for us as maintainers, it
  • 7:35 was very error prone because there are a lot more things that can go wrong with compilation
  • 7:39 than not. Yep. So I remember Max initially kind of mentioned to me like, Hey, you know,
  • 7:44 it'd be worth playing around with this. And, and I created, so Homebrew has a beer theme overall
  • 7:49 and maybe clue from the name. So I created what I called bottles. So bottles are poured onto
  • 7:55 your, your system. And, uh, yeah. And basically like that started off just being a few of the
  • 8:00 most expensive packages to build being built on my machine, then evolved to a VM. And then
  • 8:05 we did a Kickstarter and whatever it was 2012 or 14 or something like that to get some of
  • 8:11 our own hardware. And then over time, eventually, um, we were building more and more things and
  • 8:17 then decided to kind of build basically everything on all our supported operating systems. Um, and we
  • 8:23 sort of flipped and sort of gradually from a from source package manager to a binary package
  • 8:28 manager. So you now, if you like brew install, whatever you will download our prebuilt version
  • 8:33 of whatever the open source software is, um, and that will be installed on your machine and
  • 8:37 that saves you time. It saves the world, probably some energy use or greenhouse emissions or whatever
  • 8:43 you want to say. Um, and yeah, and it's, it's also like way easier to support because stuff
  • 8:48 can still go wrong, but like the, the amount of stuff that goes wrong is, is dramatically reduced
  • 8:53 in that environment. And I guess the second part of your question. Um, so again, similarly, I can't
  • 8:58 remember the years with this, there was another, not really fork of homebrew, but almost like a sort
  • 9:03 of companion project to homebrew called homebrew casks. So homebrew casks or homebrew was doing
  • 9:09 to install open source software. And they thought, Hey, like, wouldn't it be nice to have something a bit
  • 9:12 like this that I could use to install, I don't Google Chrome, one password, whatever. Right. Um,
  • 9:17 so instead of downloading open source software, and then either in the old days building on your
  • 9:23 machine or nowadays building on our servers and then distributing that you just download with
  • 9:29 homebrew cask, the, the pre-compiled binaries from say Google or one password or whomever. Um,
  • 9:36 and then those are installed. And then I think again, maybe 2016, something around those
  • 9:40 eras, um, the two projects merged. It was mainly the work of a Google Summer of Code student called
  • 9:45 Anastasia. Um, and she worked, uh, really hard to get that done. And yeah. And then nowadays,
  • 9:51 if you write brew install, then it behaves pretty similar, like most of the time identically for
  • 9:57 packages, sorry, for formula, which are the things that are built from source and for casks, which are
  • 10:02 these, what we call these kind of binary packages. Yep. It's actually interesting. My other series of
  • 10:07 interviews at the moment, uh, this week is around immutable operating systems and you can kind of
  • 10:12 fake it a little bit with homebrew and you have this bundle thing as well. Yep. Of course the Mac
  • 10:18 isn't really designed like this though. And, and bundle we get you so far and maybe it doesn't work
  • 10:25 completely because most of the application developers are not expecting you to do this. So, uh, yeah,
  • 10:31 but it's, um, it's, um, it's interesting. You can kind of basically end up with a bit of a, uh, kind of a
  • 10:37 config file of your applications. Um, and there are other projects that sort of relate, but they're not
  • 10:43 quite as, um, as well maintained as homebrew or not as big, I suppose, um, for preferences and Mac app
  • 10:52 store and stuff like that. But you know, it's, it's, it's probably a very small group of Mac users who
  • 10:57 really actually want to do this. Yeah. So, so to dig a little deeper in case you are someone who
  • 11:04 that's piqued your interest, yeah, there's a promo project called homebrew bundle or if you like
  • 11:08 brew bundle. So that pulls things from a brew file, which looks a little bit like a gem file.
  • 11:12 If you've ever written any Ruby or, you know, Python requirements.txt or npm like package.json.
  • 11:19 And that basically says, here are the, the packages I want to install from homebrew, homebrew cask, or as
  • 11:24 you said, mentioned the Mac app store, or I think the other thing is like VS code extensions.
  • 11:28 And basically pull those down and install them. So that's a nice way of like having one file for
  • 11:35 either everything on your machine. So like, you know, setting up a new machine is dramatically quicker
  • 11:39 that way. Or alternatively, like you can also use it on like a project by project basis where you say
  • 11:45 this project needs, because again, a common thing in software projects is you might having
  • 11:49 to read me, okay, before you run gem install or whatever bundle install, you have to install
  • 11:54 Postgres and Redis and whatever your dependencies are. So this provides a nice way of doing that
  • 12:00 programmatically. And then you can like test that in CI and all this other thing. And you mentioned
  • 12:04 before about the immutability. And when we talk a little bit about work brew later on, like
  • 12:09 people, if they're interested in that, they should watch this space because this is something that
  • 12:13 I'm actively finding what I'm doing in the future.
  • 12:15 It's good I'm talking to you. I wasn't necessarily going to talk to you on that side, but we can
  • 12:19 mix it up a bit. And just, you mentioned Ruby files. Obviously, if you consider the time when
  • 12:25 homebrew started, Ruby was, I don't really want to get into the department of saying more or less
  • 12:32 popular, but it was maybe more commonly chosen as an option. And it's perfectly reasonable for what it
  • 12:40 does in homebrew. But has there been any thought about changing that at some point? Because,
  • 12:45 you know, programmers like to go with the new shiny and a lot of them don't think Ruby is the new shiny.
  • 12:50 Yeah.
  • 12:51 Well, so from a personal basis, I personally still love Ruby.
  • 12:55 Again, stuff at work brew that we'll talk about later, like I, all of our web application stack
  • 13:00 is built in Ruby on Rails because I still think that's the, one of the best ways of kind of getting
  • 13:05 started with a web application nowadays. But yeah, and there's always regular conversation
  • 13:10 about, oh, you know, should home Ruby move to another language? But the problem is the kind of
  • 13:14 formula that I mentioned before and tasks. So we would call them like a DSL, which stands for
  • 13:20 domain specific language. So it's basically like, if you go and look at a formula file, if you say,
  • 13:24 have, you know, used a Linux package manager before, you could probably look at that and without
  • 13:29 anyone explaining to you what's going on, have a reasonable understanding through a combination
  • 13:34 of the DSL being quite good and Ruby itself being quite expressive. You could look at that and be
  • 13:38 like, okay, I understand what's going on here. If it's downloading this from this place, it depends
  • 13:41 on this. It's then going to run these instructions, et cetera, et cetera. So the tricky thing with
  • 13:46 homebrew is if you want it to move to another language, then that Ruby based DSL is essentially
  • 13:51 supporting that in another language means supporting Ruby. So you're going to have to have some Ruby
  • 13:57 somewhere to shell out there, or you're going to have to do a homebrew, you know, homebrew is higher
  • 14:02 than v2 at this point, but like a massive breaking change versus homebrew where you break everything
  • 14:06 that exists already and move to like a new way of doing things. And in my experience, when you do
  • 14:11 that in an open source project, more times than not, you kill the project because people just
  • 14:16 don't want to migrate, make a fork. So yeah. So would we choose Ruby if we were building homebrew
  • 14:21 from scratch today? Probably not. Is it going to migrate away from Ruby? Also probably not.
  • 14:25 Yeah. And there's, yeah, we do more and more. The main, to be honest, the main problem with Ruby is
  • 14:30 just performance. So, and that's not a Ruby problem per se. It's more like how we use it and
  • 14:35 the competitors of like Swift and Go and whatever for CLI applications are just faster. They don't
  • 14:40 have to boot up a VM. But yeah, so essentially we're just trying to make homebrew faster instead of
  • 14:46 trying to rewrite it in another language that could potentially be faster.
  • 14:50 And there is a tremendous amount of tooling. That's the thing behind the scenes. Most people will just
  • 14:54 encounter one bit, but if you ever contribute and things like that, there's a lot of other tools
  • 14:58 that are all part of this ecosystem as well, I guess. So yeah. Yeah. And, and on that, before
  • 15:03 we kind of, I think this is a bridge question into workbrew. The project, I think, I don't know
  • 15:10 about any more, but certainly at periods of time was one of the biggest open source projects,
  • 15:14 however you measure that, uh, out there. Um, and so firstly, yeah. What is that like? Yeah.
  • 15:24 I know there have been challenges here, there and everywhere, um, throughout the project history,
  • 15:30 but yeah. What is that like? And this very much leads into workbrew in a second, but what is that like?
  • 15:36 Yeah. So, I mean, it's nice in some ways. Um, it's, it's funny. I had, uh, uh, opportune timing
  • 15:43 because, um, I worked from home in Scotland, in Edinburgh and over here, like tech's not nearly as
  • 15:50 big as it is in the U S and stuff. But I had a, a young lad come up to me in the gym today and be
  • 15:55 like, Oh, are you, are you the homebrew guy? Like, like, and he was like, Oh, I can't believe like a
  • 16:00 tech celebrity goes to my gym, which me being Scottish makes me like cringe unbearably. Someone's
  • 16:05 a flattery in public like that. Um, but yeah, so it's very, that part of it is strange, but nice,
  • 16:12 frankly. Like it's nice when I work on homebrew to know that like lots of people use this and that
  • 16:17 me spending my time on this stuff has a positive impact on other people. And people seem to generally
  • 16:23 feel favorably to it and enjoy using it and have good experiences. So yeah, that feels great. And,
  • 16:29 um, I still enjoy it, which is nice. I guess the, the flip slash slightly darker side to that is,
  • 16:36 you know, like being a large project, you get a lot of, um, hate from people like either people who
  • 16:43 are just frustrated because they hit a bug or because you changed something and they didn't
  • 16:47 read the release notes and now something that their work's broken or just people who, uh, frankly,
  • 16:52 there's a lot of entitled, uh, noisy whiners in open source who contribute very little and
  • 17:00 like to shout at people, make them feel bad. And my, one of my problems slash strengths is I have
  • 17:07 very little time for those people. And I just insta block them or like lock their issues,
  • 17:13 close their issues. I won't fix, I won't go on my way to spend my time fixing problems that are,
  • 17:19 you know, the people who are asking them or asking them in a, you know, borderline abusive way.
  • 17:24 And I'm also super protective of my maintainers and I don't want them to be treated that way
  • 17:29 either. Uh, so I guess that's the flip side of it, but you know, I, I guess I talked to another
  • 17:33 podcast recently about like open source and mental health. Exactly. And this year as well, I think
  • 17:38 you had a talk. Yeah. Yeah. So I, you know, this stuff comes up and I think for me, like I've,
  • 17:42 I would say I've never been burned out in the 15 years that I've worked on homebrew. I've probably
  • 17:46 not had more than a week or two weeks at most where I've not worked on homebrew in that time.
  • 17:53 And that's not because I feel compelled to it's because I enjoy doing it and I still enjoy working
  • 17:58 on it and I still value the people who use it and maintain it and stuff like that. And yeah.
  • 18:06 Yeah. Now, so this brings us to an interesting point. I may have been naive here because when
  • 18:11 I saw the, the, the work brew kind of announcements over the past sort of six to 12 months, and
  • 18:17 then I noticed, I think before that you were working at GitHub, I think.
  • 18:20 Yeah. Yep. Yeah. So I spent a decade at GitHub and this actually surprised me. So this is kind
  • 18:25 of, you know, a project of homebrew size and there are contributions and things. You've already
  • 18:31 mentioned a lot of infrastructure costs and I imagine they are pretty high. I was,
  • 18:35 actually surprised and maybe I'm naive here to see that that was the case, that you were
  • 18:40 working somewhere all that time, that there wasn't enough in the bank to pay one person,
  • 18:47 which took me by surprise. And it's somewhat damning of, I think the nature of something
  • 18:53 like homebrew as well, because he's largely a consumer open source project, not like something
  • 18:57 you could build a startup on, you know, traditionally.
  • 18:59 Yeah. So it's interesting. Like there's, there's pros and cons in some ways of that. So yeah,
  • 19:03 I guess it's funny because again, when I was at GitHub, the assumption most people have
  • 19:07 is that my primary job there was working at homebrew. And that was literally never the
  • 19:11 case. Like at, at most I spent, I think on maybe two occasions in 10 years, I spent two
  • 19:18 to three months where my primary project was something where GitHub needed homebrew to do
  • 19:23 something, homebrew needed something. So I was like, okay, cool. Can I spend some time on
  • 19:26 this? Um, but yeah, but most of the time that wasn't the case. And I just did it in my,
  • 19:30 I guess, you know, I did some of it during working hours, but you know, when you work
  • 19:34 from home for an American company, like what is a working hour or not a working hour, you
  • 19:38 know, it's a little bit, a bit nebulous. Right. And I think GitHub benefited from stuff
  • 19:43 I learned on homebrew, homebrew benefit from stuff I had on GitHub and GitHub were very heavy
  • 19:47 users of homebrew and GitHub, you know, paid my salary and also pay a lot of those expensive
  • 19:52 infrastructure costs that you mentioned are born by GitHub. Yeah. So yeah. Like, I mean,
  • 19:57 I don't, I guess like, you know, maybe I'm a, an older generation of open source kind of guy,
  • 20:01 but like personally, I don't see it as, uh, necessarily like a bad thing that the project
  • 20:07 didn't have enough money to pay me to work on it full time because I'm actually not sure
  • 20:11 I would have wanted that. Yeah. And like we're in the interesting middle ground as a project
  • 20:15 where we have essentially, I guess the way I frame it is like too much for stickers, not
  • 20:20 enough for a salary. Right. Well, we could pay someone a salary, but we couldn't look and say,
  • 20:26 okay, well, we can definitely pay someone a market rate ish salary for like years at a time. Um,
  • 20:31 without there being potential difficulties in that. So, yeah. So explain, I think, uh, again,
  • 20:39 probably the same question we began with, what is work brew and why is work brew? Why now? I think
  • 20:45 is maybe another question to add to that. Yeah. So work brew is essentially, we're building a
  • 20:52 commercial company on top of homebrew. So a pattern I'd seen again and again over the years working on
  • 20:58 homebrew is that you get big organizations with more compliance requirements, particularly who may
  • 21:04 have requirements to use stuff like MDM tools. They might have requirements that their users don't have
  • 21:08 admin access. They might have requirements around vulnerability mitigations or like SLAs or security
  • 21:14 reviews and things like that. And these were just things that homebrew, uh, either couldn't do or
  • 21:19 the homebrew maintainers who volunteers didn't have any interest in doing. Yeah. So it always seemed to
  • 21:25 me like there was a little bit of a commercial opportunity there and the time felt right for
  • 21:30 me and my co-founders, uh, formerly of GitHub to kind of enter the space and say, okay, well,
  • 21:36 the project's in a good place in terms of having like a decent governance structure and stability and
  • 21:41 good community, goodwill. And we're in a decent place in terms of like, it seems like a, a ripe kind
  • 21:48 of time to, to kind of try and go into this space and try and make homebrew better in this way for
  • 21:53 kind of enterprise customers. So, yeah, so that's, that's sort of where, uh, aligned and
  • 21:58 what workbrew looks like today. We're in private beta. We're going to go into public beta very
  • 22:02 shortly. And basically right now we're, uh, a like fleet management tool essentially for homebrew
  • 22:07 that kind of glues into your MDM tools. So you can run any homebrew command and configure homebrew
  • 22:12 on across all of the machines in your fleet, uh, in the same way, basically. And we have a slightly
  • 22:19 security enhanced version of homebrew where we're running things as a different user in like a different
  • 22:24 sandbox and stuff like that. And, but for the end user, it essentially feels exactly the same as
  • 22:28 as using homebrew normally where you just, you still run brew commands in a terminal and
  • 22:31 you get things working the same way.
  • 22:33 It's an interesting idea because yeah, that macOS sort of has a handful of these somewhat,
  • 22:39 um, there's a couple of the commercial MDM tools. I have used some of them being employed by also
  • 22:46 American companies at a distance in the past. Uh, and also I've also worked at companies that had
  • 22:51 like a weird assemblage of like a puppet scripts and things to do something similar. But there's always,
  • 22:56 it's MacOS and Apple have periodically had their own solutions with profiles and things which
  • 23:00 kind of come and go in terms of their enthusiasm for them. But there's never really been anything
  • 23:07 that cohesive that you would get on, on windows. And it's actually interesting that you, you know,
  • 23:12 I would say a lot of developer focused companies, it's highly likely that the engineers on Mac are using
  • 23:17 homebrew anyway. So, so it's an interesting play.
  • 23:21 Well, and there's an interesting other place where the, um, that almost like the cart and the horse
  • 23:28 being flipped here where there are some companies where due to their compliance requirements, they
  • 23:33 can't have developers using Macs. Right. And they've contacted us saying like, Hey, we have all these
  • 23:37 developers who want to use Macs. Our compliance requirements mean like ISO 2701 or whatever that they, uh,
  • 23:43 they have to have software be approved before it can be installed on their machines and stuff like that.
  • 23:48 And that means that they can't use homebrew. Like does workbrew have a solution to that?
  • 23:52 And we're able to say, yeah, we do have a solution to that. So the, the interesting thing that I didn't
  • 23:57 really think about when I was getting into this is it's not just upping the security profile for the
  • 24:02 people who are using homebrew in these bigger companies, but also enabling more people to use
  • 24:06 homebrew who want to and maybe use it at home when they're hobby projects, but aren't able to use it at
  • 24:10 work yet. Yeah. Yeah. Yeah. Just on the subject of the MDMs, like a lot of the ones I've used tend to
  • 24:17 to have their own kind of app store that you install from. Um, so how have you found integrating with
  • 24:22 those? Like, are they open to integration or are you kind of almost seen as like a competitor to
  • 24:27 their own internal tools? No, no, I don't think we're competing with those MDM tools. So they're,
  • 24:32 they're like in their app stores are, um, I mean, I can't speak for all of them, but the ones we've
  • 24:37 been in contact with seem to be happy with us kind of wanting to integrate with them. And it feels like
  • 24:42 it's win-win there because we're kind of solving different problems in some ways. Like,
  • 24:45 you know, there's some overlap. You could obviously use homebrew to install some of your
  • 24:48 software there, but generally the way people are using MDM tools, they're leaning on their MDM
  • 24:53 tool to do more of this stuff and homebrew to do less of this stuff. But there's some kind of
  • 24:58 nice blurred lines there and they'll allow us to kind of be value add where you can use us and an MDM
  • 25:03 tool and kind of get more value out of using both than you would out of just using us separately.
  • 25:07 Yeah. Um, and, uh, you, we, we, you kind of hinted at it, but this like immutability idea,
  • 25:14 I think that relates to the rollout, I guess, you know, um, something comes pre-installed that on
  • 25:21 boot runs through a bunch of brew scripts to install and set up.
  • 25:25 Yeah, exactly. So right now we're primarily focused on building something for kind of security and
  • 25:31 IT professionals where essentially the, I have partly working in, I worked on internal and
  • 25:36 external developer tools almost my entire time at GitHub. And I've worked on homebrew obviously for
  • 25:40 a while. So I have like a very high bar for myself and my company and everything like that for
  • 25:45 developer experience. So for me, like using homebrew should feel just as good, if not better, uh, when
  • 25:51 you're using it under workbrew as when you're using it without workbrew. So like that essentially for
  • 25:55 developers, the experience should be the same. And then we're building something where for security and
  • 25:59 it professionals, it's like dramatically better because workbrew does, sorry, homebrew does not
  • 26:03 play nicely with these MDM tools out of the box and workbrew does. Um, and we have very decent
  • 26:09 integration, but yeah, over time we're building more and more in the kind of developer space as well.
  • 26:14 So we don't have anything kind of ready for announcement or release yet there, but we definitely,
  • 26:20 I worked on some of these problems at, uh, GitHub and like a common complaint that people have with
  • 26:26 homebrew, for example, is because it's a, what you call a rolling release package
  • 26:29 manager, which essentially means homebrew will always try and be on the latest version of
  • 26:32 everything that it's not compatible with how most companies work. Most companies want to have
  • 26:38 everyone on the team be at least, you know, even if they're very upgrade happy, they want to be able
  • 26:42 to say, okay, well, let's upgrade everything for everyone on the team at the same time.
  • 26:46 And homebrew with brew files doesn't really let you do that yet. Um, and that's on the workbrew side,
  • 26:51 like that's probably our biggest developer centric problem that we're solving is we don't, as I say,
  • 26:57 we don't have anything ready for that now, but like the, the problem that we are aware is there
  • 27:01 and that we are, we have some early plans working on that is to essentially build something where
  • 27:06 you're able to kind of lock things down in that way so that you are able to protect versions like that.
  • 27:11 Interesting on that, because I noticed you, you listed on a feature list, like a, the console and you
  • 27:16 mentioned the kind of security and auditing that kind of thing. Um, does this go as far because I
  • 27:21 don't think core homebrew has this concept either, but introducing things like, you know, CVEs and
  • 27:27 vulnerabilities detected in packages, and that will also be a feature in homebrew?
  • 27:30 Yes. So that's, that's a feature we're building in workbrew. So you're right to say that there,
  • 27:35 there are some sources out there that provide, if you go looking, you can figure out kind of
  • 27:40 what CVs are in what homebrew packages, but there's an awful lot of false positives and false negatives
  • 27:45 in there. Um, and one of the advantages we have at workbrew is we're building this in a way that, um,
  • 27:51 because we have homebrew maintainers, for example, who work for us, that people can really benefit and
  • 27:56 the community will be able to benefit from essentially us using this information. But
  • 28:01 then our customers have a flow to be able to say, okay, this thing is right now outdated and very
  • 28:07 shortly if you have a CVE and then you can press literally one button to update that package over
  • 28:12 your entire fleet of devices and monitor which devices are on which versions and stuff like that.
  • 28:15 So, um, not that in any way I would will us another heartbleed or other like horrible vulnerabilities
  • 28:22 where people have to upgrade everything at once, but we will inevitably get
  • 28:26 to another one of those cases. And, um, my experience has been in the past, that's when
  • 28:31 poor Mac admins who themselves may not even use homebrew are put in a situation where they have
  • 28:37 to like hack together some script like yesterday to upgrade all their devices and then they find
  • 28:42 homebrew doesn't want to play nicely with their MDM provider and whatever. And instead work in those
  • 28:46 situations for our workbrew customers, it's like, okay, well, you go into the console, you click one
  • 28:49 button and then in 15 minutes, assuming the devices are on, they'll be updated to the latest version.
  • 28:54 So it makes, it makes people's lives a lot easier in those situations.
  • 28:57 Yeah. I'm interested to know how that kind of relationship works because homebrew has generally
  • 29:01 been a user, uh, initializes, whereas in this case you kind of have to have some sort of agent
  • 29:06 saying, Hey, initialize, you know, so it's a different dynamic as well.
  • 29:10 Yeah. Um, and are you planning a Linux version? Does it not make sense for workbrew?
  • 29:14 No, I mean, we're, we have our, uh, our eyes and ears open with this stuff. I mean,
  • 29:19 as you would expect for a kind of relatively early stage startup, we have lots of plans,
  • 29:24 but then the plans are, um, very heavily influenced by what our customers are interested in.
  • 29:31 And yeah, we're going to have, uh, we definitely have some customers who are interested in us
  • 29:36 having more support on Linux and we have essentially internal internally. Most of this stuff is already
  • 29:43 working for Linux, but we just haven't packaged it up nicely and made it an official kind of thing that
  • 29:48 we claim to support. We're definitely seeing most of the demand is on the Mac side right now, but
  • 29:53 on Linux and you know, who knows maybe one day on windows, then we have the potential to kind of
  • 29:59 support more of these things. One day homebrew and chocolatey will merge. That would be cool.
  • 30:03 Who knows? Stranger things have happened. Um, and, uh, if you don't mind me asking,
  • 30:10 like what is the, what has been the kind of the, the, the less tech side of things? Did you receive
  • 30:16 funding? Was it bootstrapped? Uh, how's that side of things going?
  • 30:20 Yeah. So we're, we're not ready to kind of announce things fully on that side. Um, but
  • 30:25 basically, yeah, we, we're kind of, um, yeah, we're just building, building the company, how we
  • 30:30 kind of think is best at the moment. If, you know, if you're the type of person who
  • 30:34 goes digging on the internet, you can probably find out more than I'm telling you now. But, uh,
  • 30:40 yeah, for now we will announce more in future, but for now we're sort of doing that stuff.
  • 30:46 And, uh, I feel like some people might ask as well, because, you know, this sort of relationship
  • 30:51 you've had, um, as you mentioned earlier is a more old school open source journey where,
  • 30:57 uh, you worked on something for a long time for the, the main motivation to make something good.
  • 31:02 And then later kind of thought, hmm, maybe I can monetize this. Whereas a lot of modern startups
  • 31:07 kind of look the other way with open source. Um, so the other question would be,
  • 31:12 do you anticipate, and then maybe it's too early to say anything from work brew actually
  • 31:16 rolling back into homebrew? Oh, I mean, already there's been many things actually that have gone
  • 31:22 into, into homebrew. So when you use workbrew and you run brew install on your machine, you're not
  • 31:27 running a fork of homebrew, you're running homebrew itself. So there's a certain amount of functionality
  • 31:32 that is just necessary that it goes into homebrew. But, uh, the nice way, I mean, as you said,
  • 31:37 well, I have been involved with open source for a while. I maybe have a little bit more of an old
  • 31:41 school ethos, but, um, one of our biggest principles as a company, um, and this comes from my CEO,
  • 31:48 John Britton, who says this one time, and I couldn't agree more is not to give away things today that
  • 31:53 you're going to have to take back tomorrow. Right. So, um, there is, there's a, there's parts of work
  • 31:58 brew that in future, they may that today you have to pay and in future might be free or open source
  • 32:04 or whatever, who knows. Um, but right now we're making sure that the stuff we do do is like tightly
  • 32:11 separated. And again, similarly, like everything in homebrew is open source, right. And we'll open,
  • 32:16 homebrew will be an open source, probably primarily volunteer run community run project forever. And, um,
  • 32:22 work group will probably be a for profit commercial enterprise, um, forever.
  • 32:28 At least it's nice and clear, I suppose.
  • 32:30 Yeah. And the separation there, because I mean, like without naming two specific names,
  • 32:34 obviously we've seen a lot of churn in the last few years of, um, various companies who made licensing
  • 32:40 decisions five or 10 years ago, which have now changed quite dramatically and had generated quite
  • 32:47 a lot of community backlash. And you know, I, I'm very sensitive to that. And I am a little bit of a
  • 32:53 open source purist in the, I still consider, you know, the open source, um, initiatives definition of
  • 32:59 open source to be what open source means. And if you don't comply with them, then you can be another
  • 33:04 thing, but I think you're probably not open source. Um, and if you go looking again, sniffing around
  • 33:09 work group stuff, you will see that we've generated a lot of open source contributions to homebrew,
  • 33:14 but we as a product ourselves are not open source. Um, and for me that, you know,
  • 33:19 there's, there's pros and cons of doing things different ways, but I think that we're doing
  • 33:24 things in a way I feel that is most respectful to the community, um, and most respectful to the
  • 33:29 maintainers of homebrew and the people who've got it to where it is today, where we say we have these
  • 33:33 separate entities and work group and homebrew are very good friends, but right now at least they are
  • 33:38 separate entities and they live in different houses and I'm the CTO and co-founder of work group and
  • 33:45 I'm the project leader of homebrew. So like that helps to avoid the falling out between those two things.
  • 33:50 But even then, like me being a project leader on homebrew, that's an elected position. I stand for an election
  • 33:55 every year and get elected by, um, the maintainers and other kind of wider scale community people.
  • 34:02 So yeah, it's, I think there's a nice, uh, separation there. And it's, it's funny, even the, the people who kind of
  • 34:08 are homebrew maintainers and work with us on workbrew, you know, one of the things I say
  • 34:13 is that, you know, I, when we're working on workbrew, I'm your boss now, but when we work on homebrew,
  • 34:18 I'm still not your boss, right? Like if you think I'm saying something and it's a bad idea, you tell me it's a bad idea,
  • 34:23 right? Like that's things don't change there. Cause I think that's how open source works the best.
  • 34:28 And if anything, I was very inspired by early GitHub that behaved a lot. Like, you know,
  • 34:33 there was some minor dysfunctions, but you know, it behaved a lot like working in open source
  • 34:37 community and an open source project where there was not as there was not a focus on hierarchy and
  • 34:42 I've been here longer. I know more, whatever. But instead it was a kind of fairly open marketplace
  • 34:47 of these types of discussions. And I felt like that made the product a lot better. And I think that's
  • 34:50 the case for homebrew as well.
  • 34:51 One final question, if you just have a couple of minutes, um, just sort of more on the, the, the European side.
  • 34:58 Um, you mentioned obviously where you are already, there are a handful of, uh, I think reasonably
  • 35:04 moderately well-known open source projects around the kind of Glasgow Edinburgh area.
  • 35:09 Um, what's, so yeah, what's it like in open source in Scotland in that, I don't know if Scotland refers
  • 35:18 to that area in a particular way, but in that, in that, uh, in, in that part of the world, what's it like?
  • 35:23 Well, so in Scotland we would call like the Glasgow Edinburgh area, the central belt because you almost
  • 35:27 like have a belt of almost continuous towns and transport and whatever between the two. But yeah,
  • 35:32 it's funny because, you know, it's such an international world nowadays that, I mean,
  • 35:38 those open source projects, the funny thing is you probably have a much better idea of what projects
  • 35:42 are in Edinburgh, Glasgow than I do. And half the time, you know, I'll be at some conference and chatting
  • 35:47 with someone and I'll have known their work on open source for a while. And then we're like, oh,
  • 35:52 turns out we live like five minutes down the road from each other. And I had no idea because, you know,
  • 35:57 I'm going by, you know, in a funny way, like, you know, GitHub feels, GitHub.com feels more like
  • 36:03 the place I live when I'm doing open source than, than Edinburgh in Scotland. That just happens to be
  • 36:08 the place where my, my body inhabits meat space, you know?
  • 36:10 Okay. Yeah. Um, yeah, I, I must admit we have been to Edinburgh and Glasgow, and I think I prefer
  • 36:18 Glasgow just because it's a bit bigger and a bit more lively, but...
  • 36:21 Oh, well, I'm glad you said that at the end of the conversation because, you know, I don't know if
  • 36:25 we can be friends now.
  • 36:26 Both are very nice, but you know, Edinburgh, I'm going to sound a bit odd here because I don't
  • 36:30 live there, but Edinburgh was like more tourist and Glasgow felt more like, it's also way bigger.
  • 36:34 I didn't realize how much bigger it was.
  • 36:36 Yeah, that's probably fair. I mean, Edinburgh is definitely more of a tourist city, but you know,
  • 36:40 as a, well, I've lived in Edinburgh most of my life. I was raised here and grew up here and
  • 36:45 whatever. So there's, unfortunately I'm bound by my, uh, geography that I can
  • 36:51 never admit that Glasgow is better for essentially anything, except maybe like music.
  • 36:55 Also a huge, and I'm going to use the American term just to make it easier for people to know
  • 36:59 what I'm talking about, but I'm a huge Scotch fan. So, so that, okay, is, is there anyway.
  • 37:05 Single malt whiskey.
  • 37:07 Yeah, pretty much, pretty much. There's actually a very nice bar, I remember, in Edinburgh that
  • 37:12 I took my friends to when we were passing through last year after a, after a, um, a space site trip,
  • 37:19 actually. So, and I can never remember the name of it, but I know where it is.
  • 37:22 So good. Awesome. Well, Mike, um, keep things going because I know a lot of people rely on,
  • 37:31 on the project, uh, and probably a lot of listeners. So yeah. And good luck with, with work brew. And I
  • 37:38 look forward to seeing what these announcements may be that you alluded to. So awesome.
  • 37:43 You will see. Thank you very much. Keeping it all a bit mysterious for now. Thanks Chris. Have a good
  • 37:47 And rather appropriately and excitingly, I can now see that these announcements did result in something.
  • 37:58 There is now a beta self-service tier for work brew. They've also changed the, the logo and the look
  • 38:08 a little bit. There is a free tier, a pro tier and enterprise tier. So things did eventuate into
  • 38:16 months. So sometimes it can pay to wait before you release something. That's going to be my
  • 38:21 justification and excuse. Anyway, news from me. Well, I have a couple of new videos up on YouTube,
  • 38:27 including a roundup of text editors and IDs for Mac OS. Also the first part of my new drumming video
  • 38:35 series. And there's some other things I'm still undergoing a few bits of change. Sort of November
  • 38:42 is going to be where I launch a few new things and things will maybe get more interesting. I don't know
  • 38:46 who says. And I will also be on the road a little bit in November. I'm not doing quite as much as in
  • 38:54 September, but I'll be back at Web Summit. If any of you happen to be there, I always end up meeting a
  • 38:59 lot of people there. And I'll also be at an event in Cambridge and Lincoln of all places in the UK,
  • 39:06 private events. But if you happen to be around in those places and want to have a chat, then do let
  • 39:11 me know as always much more over at kristenchiller.com. I have been Kristen Chiller. Thank you for joining me in
  • 39:18 the Tech Lounge and take care, everybody. So that was it. That was our guest today. Thank you very
  • 39:24 much for joining me in the Tech Lounge. I have been Christian Chiller. If you want to know more about
  • 39:29 Tech Lounge, head on over to kristenchiller.com or please tell your friends about us. It's quiet and
  • 39:36 cozy in here, but the more listeners, the merrier. You can find more at kristenchiller.com/podcast or
  • 39:42 in the show notes or episode notes, wherever you found this podcast. Thank you very much for joining
  • 39:48 me and you're most welcome next time.
  • 40:18 Thank you.