Jonathan_Hall:
Hey everybody, welcome to another exciting episode of Adventures in DevOps. I'm your host for the day, Jonathan Hall, and here in the virtual studio is my cohost, Will Button.
Will_Button:
Hello everyone.
Jonathan_Hall:
and we're excited to have on the show today Mr. Max Howell. Hi, Max.
Max_Howell:
Hey, great to be here.
Jonathan_Hall:
Glad to have you on the show. We're a little bit starstruck here. We discovered that you invented homebrew, and I think we're gonna talk about that. So that's kinda cool. But before we dive into that topic, tell us a little bit about who you are, what you do. Yeah, let's stop with that.
Max_Howell:
Sure. So I got into programming as a hobby. My dad taught me when I was like six. And so I've been doing it a while but I never thought I'd... do it as a career. I was always into computers but I know someone convinced me it wasn't like a real job or something like that so I did a chemistry degree and I got into software because I hated working in the chemistry industry. Turns out it's boring. I kind of knew that
Will_Button:
I'm going
Max_Howell:
but
Will_Button:
to go wash.
Max_Howell:
it took me to actually work in it before I sort of got depressed and... Installed Linux and discovered open source and started getting into the open source ecosystem and that eventually got me work in the actual industry. Then my most famous contribution obviously is Homebrew, that was like 2009 or so. Since then I've done a lot of open source, worked at various startups, I worked at Apple for a year. 14 months ago I started a new company called Tea, which is an attempt to do a successor to homebrew.
Jonathan_Hall:
I'm curious, you said you were at Apple for a year. That sounds
Max_Howell:
Mm.
Jonathan_Hall:
pretty short. Like a lot of people would
Max_Howell:
Yeah.
Jonathan_Hall:
dream to work there and they would want their whole career
Will_Button:
Yeah
Jonathan_Hall:
there. Well, why just a year? If you're willing to share.
Max_Howell:
Yeah well it's a good set of stories so it was I think yeah it was 2015 and I had since about 2009 2008 I've been working a lot with iPhone apps so homebrew was 2009 and the ascent of Homebrew coincided quite a bit with the ascent of the iPhone app store and so I was torn between both of them. whatever, I was an Apple fanboy for sure, in every possible way. Like I built a package manager for Mac and I was working on iPhone apps a lot. And so in about, yeah, 2015, I was living in Chicago and I was working at an iPhone app bootcamp, which morally I felt somewhat dubious about, but I loved it, I really enjoyed it. It was really good fun teaching these students. Unfortunately, the bootcamp didn't do so well And so I was suddenly left without like a regular job. And I loved that bootcamp as well because I only worked 50% time. So the other 50% of the time, I worked on Homebrew and other open source projects. And so I felt like I was living the dream, like getting to like do a job that I pretty much liked that didn't require huge amounts of mental energy. Sorry teachers in the audience.
Will_Button:
Hahahaha
Max_Howell:
And... And then the other 50% of the time I was working on what I was really passionate about, which was what I, you know, I love open source. It's really something that's always resonated well with me, like the idea of being part of these huge projects that you can have such an active part in. People from all over the world are involved and like because it's free, people only use it if they like it. There's no marketing engine that's trying to persuade people to use something that even though it's going to turn out to be rubbish, capitalism produces. So yeah, I lost that job because it closed. So I was stuck. So my wife at the time said, why don't you reply to Google? Because they've been sending me recruitment emails since homebrew became popular. and every time I turned it down because I don't really like working for big companies. So anyway I wrote back and I was like okay I'll come for the interview and they were like wow okay and they rushed me through I didn't get the phone interview they just flew me out and like before I flew out I said to the recruiter look I don't have computer science you know that right you're not going to ask me all those computer sciencey interview questions and the recruiter was like no no we understand you're not you're not that kind of developer we got we got something in mine for you. So I assumed that, you know, I'd go there and I'd work on home brew or I'd make a package manager for Google or maybe they'd have me doing like iOS apps because I was pretty good at those as well. So I got there and like the first interview was inverting a binary tree
Will_Button:
Hahaha.
Max_Howell:
and I was like, what? I gave it a good attempt because I have a basic understanding.
Jonathan_Hall:
Mm-hmm.
Max_Howell:
I do have some computer science knowledge now because you do programming, you end up having to do some algorithms here and there, but most
Jonathan_Hall:
Mm-hmm.
Max_Howell:
of the time, let's face it, we just Google for the answers because it's solved,
Jonathan_Hall:
Exactly.
Max_Howell:
solved stuff, and so I wasn't out. So anyway, it wasn't a good day. Couple of weeks later they phoned me up and they were like, yeah, sorry, you didn't get the job. So I went straight to Twitter and I typed, 90% of our engineers use the software you wrote in brackets, homebrew, but you can't invert a binary tree on the whiteboard, so F off.
Will_Button:
Yeah.
Max_Howell:
And at the time I had like 600 followers, like if that on Twitter,
Jonathan_Hall:
Hmm.
Max_Howell:
nobody gave a crap who I was. But then Hacker News found that tweet
Jonathan_Hall:
Oh
Max_Howell:
and after a couple of weeks I had 10,000 followers but well it went super super viral. The tweet has an impression count of like 10 million or something at this point. It still exists. People still reply to it as though it happened yesterday. I feel really bad about it honestly because I wasn't trying to shame Google. It was just like I was a little like... I didn't think I got the job, you know, because I failed all these interviews. But I still felt that it was kind of stupid because surely there was something I could do there. You know, like, why does it matter if I can't do this set of tasks? Because I've proved I can do something that is important and useful. But yeah, so the result was I got over 300 recruitment emails from good companies. And I was spoiled for choice, but Apple were one of those companies and obviously I was a huge fanboy So I went to the interview there and they gave me an easy set of interviews because they probably didn't want
Will_Button:
Yeah.
Max_Howell:
that Didn't want the same treatment and they offered me a job and the job was to build the Swift package manager. So Swift was a relatively new language which I was enjoying and it seemed like a really great opportunity but I got there and I discovered they wanted to open source Swift in three months so I had three months to build the entire thing and well as a result it wasn't as good as it should have been but the main reason
Jonathan_Hall:
Mm-hmm.
Max_Howell:
that I was only there a year is because I just found it really difficult It's the truth. I'm not a corporate person. I'm an entrepreneur, I'm a startup guy working like, and I got there, like during the interviews, everyone was like, oh, we love homebrew. You know, you're gonna be able to work how you wanna work and we're gonna give you free rein. And as soon as I got there, I was like, no, you can't do anything you want.
Will_Button:
Hahaha
Max_Howell:
And... Everything you design has to go through a gauntlet of meetings where people just sit there and pick it apart and
Jonathan_Hall:
Mm-hmm.
Max_Howell:
you can't try, you can't iterate, like my development style is very iterative I come up with an idea, I program it, I try it out, and if it sucks I throw it away Like, I just did work there, they couldn't understand how you could do things that way They were like, so you're not gonna design everything up front? like well no
Jonathan_Hall:
Hehehehehe
Max_Howell:
is that how you usually do things at apple that was quite a shock but yeah
Jonathan_Hall:
Yeah.
Max_Howell:
that is how they do things
Jonathan_Hall:
Okay.
Will_Button:
That's interesting
Jonathan_Hall:
Yeah.
Will_Button:
because a lot of the startup space is just build something you think is going to work, throw it out there, and then wait and see if your assumptions match up with the reality and try to fail as fast as possible.
Max_Howell:
Yeah, yeah exactly. It was foolish of me to think that
Will_Button:
Hahaha!
Max_Howell:
it was a good idea really. So you know I was nine months in and like I was depressed. I get depressed if I don't enjoy the work. Like it's work's very important to me. And uh... I started like, honestly, I was barely doing anything there. I was, I wasn't turning up. I
Will_Button:
Hahaha
Max_Howell:
was waiting to see how long I could get away with like not working in California. And honestly,
Jonathan_Hall:
Hehehe
Will_Button:
Hahaha
Max_Howell:
honestly, it could have been a long time, I think. Um, but I was depressed. So I went to see like the head of HR for the entire software engineering department. And she was like, so Max, what's going on?
Jonathan_Hall:
Hehehe
Will_Button:
Hahaha!
Max_Howell:
I was like, well, this just isn't working out for me and I don't know what to do about it. And she was like, well, we don't want to terminate you. I was like, well, you probably do. Ha
Jonathan_Hall:
Ha ha ha
Max_Howell:
ha ha.
Will_Button:
If you knew everything.
Max_Howell:
And she was like, no, no, we don't. So we tried like something else and then I went back to see her and I was like, I'll just quit. And that was probably stupid because I got like how much severance I might have got, you know,
Will_Button:
Yeah.
Max_Howell:
but I'm not, I'm not, I'm not that
Jonathan_Hall:
You know,
Max_Howell:
kind of person.
Jonathan_Hall:
I did the same thing. Google reached out to me a few years ago, and I was like, I don't want to work at Google, but what the heck? So I flew out there,
Max_Howell:
Okay.
Jonathan_Hall:
and they didn't fast track me, but I did fly out there. And then they called me back, sorry you didn't get the job, because I don't know what the thing was. It was an SRE role and something that I didn't do right. Then I took a job at Booking.com, which is not as big as Apple or Google, but it's a big company. They had a
Max_Howell:
Mm.
Jonathan_Hall:
thousand engineers at the time. I lasted a year also. I got depressed. I didn't like it,
Max_Howell:
We're the
Jonathan_Hall:
I
Max_Howell:
same.
Jonathan_Hall:
laughed.
Max_Howell:
Yeah, like, just felt like I didn't have any... It was apparent to me that at Apple you had to be there 10 years before anyone listened to you.
Jonathan_Hall:
Mm.
Max_Howell:
You got there and it doesn't matter what you had before, now you're like an Apple person. And it's reset down to zero. And I've never been anywhere for four years.
Jonathan_Hall:
Right, right. Ha ha ha.
Will_Button:
Yeah
Max_Howell:
So I didn't see how I could do it. Anyway, it's like, yeah, you've got no impact when you work at these big places.
Jonathan_Hall:
Yeah. So let's talk about tea a little bit. I'm curious to hear what this is. Why do we need something better than Homebrew? I'm not, by the way, I'm not a Mac user. I know what Homebrew is. I've used it a few times. I've used a Mac occasionally, but I'm mostly a Linux guy. So we'll assume that not everybody in the audience is an avid Homebrew user either. Tell us why we need something better.
Max_Howell:
Yeah, so, you know, you can actually use homebrew on Linux now, but that wasn't me.
Jonathan_Hall:
Okay.
Max_Howell:
I wouldn't necessarily say that's what you should do.
Jonathan_Hall:
Ha ha.
Max_Howell:
Anyway, so, like, homebrew 2009, I built it because we used Mac. at the company I was at and we were building all these different apps and Mac was like the unified platform. We could run a Linux VM and a Windows VM and all the open source was available and the tooling was good. But the package management solutions for Mac were not good enough for me. I used to complain about it a lot at the pub, hence the name, because we talk about it at the pub and I look for a name and my coworker was like, And like,
Jonathan_Hall:
Hehehehe
Max_Howell:
we forget that in 2009, I think, there was a real beer culture in Web 2 at that time. I remember GitHub would have blog posts, like, where they'd boast about how they had a tap installed at the office so you could
Will_Button:
Right?
Max_Howell:
dispense
Will_Button:
Yeah.
Max_Howell:
pints. So like, now it, you know, it's not the same at all, and for good reason.
Will_Button:
It's good.
Jonathan_Hall:
Hehehehehe
Max_Howell:
This is part of the reason why it's called tea, incidentally. It's like riffing off the brew theme, because you brew tea, but also it's a more mature option that we've learned from our mistakes.
Will_Button:
more
Max_Howell:
But
Will_Button:
sophisticated.
Max_Howell:
home brew. Yeah, yeah. Homebrew became very popular really quite quickly. Within a few years, it was millions of users and anyone who was doing anything with Mac was using it. That's partly because I coded all this virality into it. Like GitHub was new, people didn't know how to use it and like I sort of discovered some of the things that happen nowadays. And it's because like Ruby on Rails is becoming super popular and Ruby on Rails was like Mac people and Mac was becoming a platform for developers. point like I remember two years before that I had a Mac and everyone I worked with was like why have you got a Mac? You a fanboy
Jonathan_Hall:
Ha ha ha ha.
Max_Howell:
and then
Will_Button:
Hahaha!
Max_Howell:
like 2009 half of them had bought Mac and nowadays if you go to a startup like if you see someone with a Linux computer, it's pretty unusual. And I have a lot of respect for it. I started with Linux. Um, but yeah, so what, what's wrong with brew? Well, it's pretty good, but it's still pretty basic. Like in the years since I stopped working on it, which is about 2016, honestly, I was just burned out. Um, I, I've kept notes about all the things that something like a package manager could do, but doesn't. It seems bizarre to me that there's so much potential at that layer. Like for developers, you like define how they work. And for people who do DevOps or SysOps, again, it's like an essential part of that toolbox. And yeah, all it does is like install stuff and update stuff. And usually the interface is terrible because it's an afterthought. Like package managers are not sexy. They really aren't. I would rather have created Instagram than Homebrew, but you know.
Will_Button:
Yeah. Right.
Jonathan_Hall:
Hehehehehehe
Max_Howell:
But. It was a natural fit for all the skills I developed doing open source and like the things I care about. I love trying new stuff out, right? So package manager is like kind of a lot of fun for me to work on because you're always discovering the newest stuff and making it work and then figuring out how it integrates with everything. So, you know, T is we call it the next generation package manager, which maybe will stop at some point. I'm not convinced that's our tagline yet, but it's also a cross platform. package manager. So by default we work on Linux and Mac and neither is favorite. I'm working on the Windows version. I wanted to work on Windows. Especially nowadays, you should be able to flip between platforms. And if you've got a dev shop or a dev team, like you shouldn't say to any of them, you shouldn't force them to use Mac or Linux or Windows. They should use whatever they want to. And more and more software is cross platform. Like use VS code, say, like you can use that on any of the platforms. So it shouldn't something like your package manager as a developer at least, also be cross platform. So then as a team, you just lay out the instructions for T and everyone just types the same commands in. So Windows soon, hopefully, like I am still, like we released. T the package manager in November so winter month three and up three four It feels like a lot longer because all I've done since is like 80 to 100 hour weeks working on the thing. Like
Will_Button:
Hahaha
Max_Howell:
it's really, really coming along. I'm super pleased with it. I think we released it a little early honestly, but timing wise was good. It's a start up this time, right? I can't just do what I want. We have financial and business decisions on the line as well. But it's great. And as it... stands now, it's kind of magical in how it works. Like the default mode, you never install anything. You just type the commands and if you haven't got it, it fetches it and then it runs the command. So, you know, maybe that's not for DevOps, SysOps people, though we have a surprising number of DevOps, SysOps people who love it, but it's an optional thing. So by default, we suggest you do that. Now for developers, it's great. Like if you're a developer, you're not worried so much about the security consequences of like typing some random command and it might
Will_Button:
Thanks.
Max_Howell:
do something you weren't expecting in, but you know, we're probably gonna make an opt-in thing for that. So it checks with you first for some of the packages at least, like some of them are obvious. you know if you want git like you want git it's it's what you wanted but if you've never heard of the tool before and it's obscure so you know that's new we're still working out things like it's pre version one there's lots of potential for how we're gonna work around with it but in general I came at it with the idea that package manager can do so much more and nobody likes package managers they get in the way so let's try and remove all the friction and let's try and increase the amount of possibility So over time we'll add things like automatic completion, integrations between tools. Like these are things that nobody's really tried very much before. If you install package foo and package bar and they can do something together, we should automatically enable that. Shouldn't and like you know show you what you can do with it. So we got lots of cool ideas for what we can do there but version 1 will probably be like just focusing on what we've got right now. for making more possible. So you can type anything in, you get it. If you enable it with scripts, it will install everything the script uses as it runs the script. So you can just share scripts with people and not like worry about, you know, they don't have to worry about how they're gonna get the things that it needs. Like the idea of like having to figure out your dependencies before you utilize things. With tea, it's not a thing. I'm hoping this will increase the amount of like interesting scripts that exist. in the world honestly. A lot of the time people write these scripts and the only thing you can rely on is like there'll be bash and like POSIX tools and like you know scripts as a result are well clunky like let's face it writing a bash script is quite advanced really like so many gotchas it wouldn't be better if you could just rely on the fact that Ruby exists because T will automatically install it if they haven't got it or you know in that bash script you can start using other tools I love charm I don't know if you've heard of charm but they released this tool called gum and it's to make glamorous bash scripts
Jonathan_Hall:
Ha ha ha
Max_Howell:
and
Jonathan_Hall:
ha.
Max_Howell:
you if you use confirmation. like boxes pop up and like takes inputs. You can have a list and have them select from things. And it's all like just a command line tool. So it's fabulous for writing shell scripts with, but they have to have gum installed, right?
Will_Button:
Right.
Max_Howell:
So with T, it's easy to install things like our installation one-liner, you know, we've got one of those. And I actually think I invented this idea. Like I never saw it before. I did it with Homebrew and I just thought of it one day. I don't think anyone had done that, but anyway, you know, the humble brag. So
Jonathan_Hall:
Hehehehehehe
Max_Howell:
the install one-liner we have for T, it either installs T or if you type a package after it, it doesn't install T, it just installs the package in a temporary location. So you can write a script where it calls the T one-liner with curl for the packages you need in the script. And then when the script's done, just delete everything. So yeah, I really want it to be like this useful piece of utility software for everybody. Everyone who uses computers. compliment planned for this year. Part of the reason for that is over the years, I had emails from people who really hate the terminal. Like architects and scientists of various kinds, mathematicians, musicians, et cetera, et cetera. Any kind of profession really. Because tools like homebrew and tea, they provide things that you just can't get otherwise. There's no installer for half these things. And nowadays there's a website for just about everything, but if you want to tolerate all the crappy ads, and then it's not as flexible, it's not as powerful. So we've got this gooey thing coming along and it's gonna do more than just have packages in it. And then, well, the final and the most important thing in many ways, and certainly the reason we managed to raise as much money as we did is our crypto component.
Jonathan_Hall:
Hmm.
Max_Howell:
And coming at this from someone who worked in open source for years and always had to find like either that 50% time job or find a well paying job, save up six to nine months of money, then quit so I could go back to working on open source, which is what I wanted to do. And like, you know, it's a story as old as time, but everyone knows that open source is unfunded and not really maintainable. And we don't really understand how it exists at all.
Jonathan_Hall:
Hehehehehehe
Will_Button:
Right?
Max_Howell:
How is
Will_Button:
Yeah.
Max_Howell:
it that there is so much of it and it is so well maintained. And the truth is, you meet people like me and we're like, well, I do two full-time jobs. or
Jonathan_Hall:
Huh.
Max_Howell:
I rotate between jobs. And then, you know, just, what, two days ago it was the CoreJS guy saying that he's gonna have to quit maintaining CoreJS. CoreJS has had 9 billion downloads over all time. It is part of every single node-based website or node app that exists. And he's been maintaining it for nothing. absolutely nothing for years and years and years goes fed up with it. He's quitting. Like this is a fundamental piece of the internet. Who's going to maintain it? And, um, yeah, so one of the things I I had this moment of epiphany like 14, 15 months ago while trying to figure out what I wanted to do next with myself and I had this, I was interested in web3 to a certain extent but like most people thought that crypto is mostly scams, that's because crypto is mostly scams in my opinion,
Will_Button:
Hahaha!
Max_Howell:
it really is. So I don't blame anyone for like being dubious about it but I think we have a genuine utility use case because I realized that a package manager knows all open source, connections, it knows all the dependencies, it knows what bits need what parts and what parts are important. And so using this knowledge, we can take a cryptocurrency, a token, we'll have a T token, and distribute it to the graph correctly, all the parts that matter. So the core JS guy gets no money because even though it's got 9 billion downloads, nobody knows it exists, is the thing. It's right at the bottom there. It's one of these projects where it's just become so essential that it can't be unmaintained, but nobody knows about it. People know about React. about svelte, people know
Will_Button:
Right.
Max_Howell:
about rust. And these are the projects that don't need money because they, well, still they could use some, you know, like Home Brewers, I think they got a hundred grand in the bank is what the maintainer was telling me the other day. But that isn't enough to pay for anyone's salary, you know?
Will_Button:
No.
Max_Howell:
It's
Jonathan_Hall:
Mm-mm.
Max_Howell:
not enough. It pays for infrastructure, it pays for events.
Will_Button:
Great.
Max_Howell:
They need millions of dollars a year to pay for people to work on it full time. And most of these projects need like, you know, at least a couple of hundred grand. So, yeah, we're building out a token, we're building the package manager on top of it. I'm hoping what we build is essentially an immutable decentralized database that represents the open source graph, that represents all open source, so I have extra utility. smart people working on the design for how this token is going to flow, who's gonna get it, you know, like how do we rank projects, how do we make sure that people don't invent fake projects to try and skim off some of the token, and how as a user who consumes open source, how do you put money into that system so that it goes to the bits that you care about and you get something out of it like feeling good. I think a lot of people would. donate just because they feel good about it. Like you talk to most people and they feel bad. They don't donate to open source. But the truth is like, how do you donate to open source now, right?
Jonathan_Hall:
Right.
Max_Howell:
You pick a couple of projects and maybe throw them 50 bucks a year. Well, that's just two projects. There's 10 million open source packages. So you need something like T to automate that. You need to say, okay, I care about these projects, but I want all their dependencies to get some money as well. And then there's 10,000 dependencies. right? So you got to split that money like real fine. And so I don't see how you could
Will_Button:
Thanks for
Max_Howell:
do
Will_Button:
watching!
Max_Howell:
this without smart contracts, without crypto, and without a package manager, frankly, that understands that graph. So yeah, with that, that's the coup de grace of it. We're working on that this year in simultaneously with the other parts.
Jonathan_Hall:
So in principle, it sounds like I could maybe make either a one-time donation through T. I could say, here's the 100 bucks I want to donate this year. Send it to whoever I used,
Max_Howell:
Mm-hmm.
Jonathan_Hall:
proportionately or whatever. Or would you also offer maybe like, if I wanted to do like 20 bucks a month, just on an ongoing basis, or is this still all up in the air being discussed? So, I'm not sure if I'm going to be able to do that. I'm not sure if I'm going to be able to do that.
Max_Howell:
Um, so we're pretty sure we're, we've settled on a staking system, which, uh, you know, the U S is considering banning. So that'd be great. But
Jonathan_Hall:
Hehehehe
Max_Howell:
open source is global.
Will_Button:
Yeah.
Max_Howell:
So we're not really fussed. Like the amount of interest we have from India is like off the charts. Can't believe it. But they're an up and coming space who have super interests in open source. And you've got all these people that want to try and make a living out of it. So if the US bans it, it's fine. We've got the rest of the world. But... So you as a user will stake. So you put a hundred bucks a year in say, you could just put a hundred bucks in forever. Cause with crypto, you can generate new money out of thin air. And so you stake,
Will_Button:
Thanks for watching!
Max_Howell:
we generate thin money every epoch. So that's probably every 24, 48 hours. And it's a percentage of what you staked. And then we give you half as thanks for staking. So you make some money too. And then we give the other half to the dependencies you stake against. their dependencies all the way down. In this system I'm actually a little worried that Glibc will be billionaires but you
Jonathan_Hall:
Mm-hmm.
Max_Howell:
know maybe they should be.
Will_Button:
Yeah, right? Right?
Jonathan_Hall:
Hehehe
Max_Howell:
So yeah you could keep putting more in because the more you put in the more state rewards you're going to get as well. Or you could just put in a one time amount. The way I see it working honestly is like companies like Microsoft will put in five million a year or 50 million or what do they consider the value of all the open source that they use? And the community will say, look Microsoft, you got the money, you're not putting enough in. And... that here is a way now for you to genuinely contribute to all the open source that you've made a lot of money on top of, and Google and Facebook and all these ones. So as a user, you don't need to feel like you have to put that much in. You should put something if. you feel bad in general, or you want to participate, because there's gonna be more to it than just the distribution of rewards. We're talking about creating smart contracts that give every project a DAO, a decentralized autonomous organization. So they'll be voting associated with that. So you as a person can buy some token and then participate in the governance of all these different projects. But they'll be up to the projects. We're not gonna participate. going to give them some template ideas for what they can do but you know we understand our part and I'll go and emphasize IT doesn't take a percentage of any of this shit right we're not going to take like 1% of every transaction or something like that like yeah it was we set up a Swiss organization
Will_Button:
Thanks for watching!
Max_Howell:
because you know it's the safest place to do this sort of thing and we will build the protocol and then we gift it to the Swiss organization of for a bit and then eventually just pass that completely over to the open source ecosystem. We've got to manage it for a bit. So, you know, we're building this protocol. We expect to make some money out of selling the initial part of the token, you know, but we're going to put that money into developing all of it and then the product and then this is a gift to the open source community.
Jonathan_Hall:
Very cool.
Will_Button:
I think that's really cool, like the donation aspect of it, because, you know, if we're honest, like a lot of these really, really successful mega companies today. are only successful because of their ability to leverage open source software. And so setting
Max_Howell:
Mm-hmm.
Will_Button:
it up like this, like you mentioned, you know, someone like Microsoft can set aside money and give it to the, the platforms or the, the projects that they're using. And so it's a way for them to give back, but it's also a way for us as consumers of Microsoft products to see like, okay, you said you support open source. And so now this is on a decentralized public, blockchain so we can see that you in fact actually do contribute and support the projects that have made you successful.
Max_Howell:
Mm-hmm. I really think that's gonna happen. If Microsoft don't choose to do it themselves, Microsoft's just an example, obviously, I think the community will give them a hard time. And
Will_Button:
Yeah.
Max_Howell:
the open source projects themselves, severely incentivize to get their users to put this pressure on these companies. Sponsorship as it stands, it doesn't really work. I would love if it did, like GitHub sponsors, or even like Gitcoin for example, which is a crypto version of that. And they have been able to donate a lot of money, because a lot of the time with these cryptocurrencies, the value just goes crazy and it doesn't necessarily represent what it should be doing. But it's still, with sponsorship and bounties and that, it's not the way these things need to be funded. Our system is, yeah, this is kind of like a sponsorship, where all of it has to go, like the whole graph, not just like these favorites. And bounties I've always had a problem with because it's kind of like giving an agenda to the open source project. Like I feel the same about companies hiring open source developers. Like open source needs to represent its users, not specific
Jonathan_Hall:
Mm-hmm.
Max_Howell:
users.
Jonathan_Hall:
Mm-hmm.
Will_Button:
Right, yeah.
Max_Howell:
And...
Jonathan_Hall:
I think there's an interesting situation that in the olden days before open source or before certain packages became open source, companies wouldn't bat an eye paying $10,000 or $100,000 or whatever for an Oracle license or whatever.
Max_Howell:
Mm.
Jonathan_Hall:
But now that you have Postgres for free or MySQL or SQLite or whatever, like, oh my gosh, it's free. And even if those companies would have been happy to pay five, six, seven figures for a license for something before. They don't have to. And now, if they want to, maybe they, let's say someone switches from Oracle to Postgres, there's not an obvious way to put that money to use them. You could call up Postgres. I'm sure you could make a $100,000 donation or something, but who does that go to? Does it go into the people who are hacking on Postgres? Not necessarily.
Max_Howell:
Yeah, you know, like the good thing about blockchain is it is transparent. You can see who's getting that was as long as you can identify who owns the wallet. But in our system, it's necessary that you make it clear who owns those wallets. Otherwise, who's going to put the money in?
Jonathan_Hall:
I wonder if you've thought about how to reward, like let's use the Postgres example again. You know, it's an open source project. So, you know, in principle, anybody can submit a pull request, I suppose. I don't know what their exact procedure is, but you know, if you discover a bug in Postgres or you build some great new feature, you could contribute that. And maybe you're not a regular contributor. You don't work for any company that's working on Postgres. How can, is it feasible? to have rewards go back to those individual contributors on open source projects. And
Max_Howell:
Yeah.
Jonathan_Hall:
I don't imagine T solves that problem, but I imagine you've thought of this before.
Max_Howell:
Oh yeah, like, you know, I have been thinking about it a lot for the last 14 months or so. So yeah, like what we hope will happen is each project has a wallet and that project, that wallet should belong to a DAB. So you make a smart contract that represents your project and so then you choose how that DAB is going to operate and one of the things you could do with that is make it so a certain percentage of the token rewards you're getting is allocated for people who submit pull requests. And then when the pull request happens, we could have a bot on GitHub that asks for their wallet and then like just automatically causes the money to funnel. Like we could incentivize an awful lot of good work from outside contributors. You know, it could be for bug fixes, security reports, even translations and things like that, like design work. You know? And like we're building a few sort of features like that on top. For instance, we're gonna have a slashing model for security issues. We want open source product, you know, if you're earning some money off T, off the T protocol, then you are saying that you care about your open source and you care that it doesn't have security exploits in it. So if you as a black hat or turned white hat in our system find an exploit, you can report it to the TDAO. TDAO verifies it. the exploit, we slash that project. So it means that they lose some of their stake and we give that stake to the reporter of the exploit and then we give the project the exploit so they can fix it.
Will_Button:
Oh
Max_Howell:
And
Will_Button:
wow.
Max_Howell:
I want to do the same for semantic versioning as well.
Will_Button:
Yeah
Jonathan_Hall:
Thanks.
Max_Howell:
If you break semantic versioning, you're getting slashed.
Will_Button:
right? 100%
Jonathan_Hall:
Hehehe
Will_Button:
slash right off the top.
Max_Howell:
Hehehehe
Jonathan_Hall:
Another question. Supposedly there's a project you're using that just has thousands of dependencies, because it has thousands of features, right? But most users use two of those features.
Max_Howell:
Mm-hmm.
Jonathan_Hall:
Do you make any effort to reward the ones that are actually used? I'm actually thinking, I have an open source library I wrote. that I know has been incorporated into a larger package that I'll bet there's two people in the world who actually use my library in that package. And it wouldn't be fair, as much as I would like it, to get rewarded for every user of that larger system for the
Max_Howell:
Yeah.
Jonathan_Hall:
two users who actually use my feature.
Max_Howell:
Yeah, so obviously how the token will be distributed is gonna be incredibly important. We don't
Jonathan_Hall:
Mm-hmm.
Max_Howell:
wanna incentivize bad open source because people are, you know, money changes everything. and I really, really don't want to change how open source works. I think it would be very naive for me to think that I cannot, uh, that nothing will change. I'm hoping that mostly it's going to be good things, like incentivizing people to like replace open SSL, for example, with a Rust version that is API compatible. Cause open SSL is going to get a lot of token. It's a very, very widely used library. I want someone to come along and make a secure version that doesn't have a new exploit every two months. But, you know, make it API compatible. Then you can go to other projects and say, switch out your openness to sell dependency for mine. It's a capitalist model. Like we're encouraging people to find niches and build useful things. So with your example, like, will we distribute equally? Almost certainly not. Like our system will have an oracle that sits on top. That's figuring out the relative weight that each project deserves. So if you've made something that is part of some massive project, but it's not that well used by that project We'll figure that out by looking at how other projects are depending on you as well How popular are you? Are those projects that are popular, popular themselves? I mean and so you won't get as much as some of the other parts is truth and In a way, it might get to the point where we penalize projects for too many dependencies as well. I don't think this is something we do with version 1 of the protocol. We're trying to release it minimally so that we can see how what we've come up with works and then start building on top of that to figure out the details for things that could be improved or didn't work quite right initially. This is going to be a years long project for sure. So I can imagine penalizing projects with too many dependencies because it's a code smell, right? If you've got too many dependencies, then you haven't made good choices. And maybe we don't need to penalize that though, because the users penalize that. Like, you know, monolithic open source packages typically get replaced over time. Someone gets frustrated like I did
Jonathan_Hall:
Yeah.
Max_Howell:
with Homebrew. I got frustrated at Mac ports. And so they make the new one. And if the new one is better, The open source community see that or the the development community see that and they choose it so we might not need to do anything
Jonathan_Hall:
Yeah, I mean, I can see a situation where if you start penalizing too many dependencies, then you're essentially incentivizing people to write their own open SSL version,
Max_Howell:
Haha.
Jonathan_Hall:
which is going to definitely be full of bugs.
Max_Howell:
Yep, well, it's true. We don't want to incentivize people to have zero dependencies. So you as a project don't get more or less based on having dependencies in our current model. So if you have zero, you won't get more. You won't take that percentage that we were gonna give to your dependencies and get it yourself. And it's very interesting. Some of the most interesting things that I've found while working through all this with my protocol team is how much game theory there is and how if you give people an opportunity to figure out how to steal money from the system, they'll do it.
Jonathan_Hall:
Mm-hmm. Mm-hmm.
Max_Howell:
And it means that you have to really think it through and try to make it as robust and sensible as possible. That's very interesting.
Jonathan_Hall:
Definitely is interesting, yes.
Will_Button:
So have you decided on which blockchain you're using for this?
Max_Howell:
No, no, it's a very common question. We're almost at it. My chief protocol officer. I'm leaving the decision to him. He's much, much more experienced in this area than me. I'll just rubber stamp his final decision after sanity checking it a couple of times. But he's heavily leaning towards some kind of ZK and it makes sense in the respect that allows us to use one of the existing networks. We don't wanna write our own necessarily. At first I was like, yeah, why not? We'll just fork one and make it our own, whatever. But he's like Adamant that you just don't. not anymore. Like
Will_Button:
Yeah.
Max_Howell:
there's the existing ones that they have security because they have enough usage. They have enough people either staking or mining those blocks. And you make your own one, it's too much risk. So you pay for the security is how he says it. So
Will_Button:
Yeah.
Max_Howell:
we won't as a result, the token will have a little less value and like the system will have a little less value, but you're paying for them to have already achieved that security. So yeah, it would be layer two, layer three, something or other with some Oracle component, making ZKs and it'll be EVM compatible for sure. Like we want people to write digital contracts on the system. Like it's one of the beautiful things about it is that people can invent entirely new kinds of thing in the finance sector on top of what we built. Like people have been postulating about the idea of like writing loans. So someone's made an open source project say well I'll loan you 150 grand so you can build this this year but I get all the stake rewards or something like that you know.
Will_Button:
Yeah, I feel obligated at this point to plug as an employee of Polygon and shoot them up there because we do have our
Max_Howell:
Haha
Will_Button:
ZKEVM product launching on March 16th, I think. So just shortly after this podcast actually gets released, our ZKEVM is going live on Mainnet.
Max_Howell:
Okay, well I'll point it, I'll put my CPO at it. Certainly Polygon, like, you know, we've considered it many times because it is a big deal right now.
Will_Button:
Yeah.
Max_Howell:
Like, you guys have really managed to make a very big success out of the idea of what a layer 2 is, so good job.
Will_Button:
Thanks.
Jonathan_Hall:
What else should we know about tea or how we covered all the highlights?
Max_Howell:
Um it's uh you know it's out so please go check it out um we've trended
Jonathan_Hall:
the website.
Max_Howell:
a few times on github it's uh at github it's slash t xyz or our website is t dot xyz so you can just go there and go through to it
Jonathan_Hall:
Nice. Looks
Max_Howell:
so
Jonathan_Hall:
like
Max_Howell:
definitely
Jonathan_Hall:
you're approaching
Max_Howell:
go and check
Jonathan_Hall:
6,000
Max_Howell:
it out
Jonathan_Hall:
stars on GitHub, so it's got some attention. That's cool.
Max_Howell:
Yep, need a bit more, you gotta be above 10,000 before a lot of people take you seriously.
Jonathan_Hall:
Yeah.
Max_Howell:
Like when I released Homebrew, there wasn't stars or even pull requests.
Jonathan_Hall:
Ha ha ha
Max_Howell:
The only way people
Will_Button:
Hahaha!
Max_Howell:
could like... So, yeah. But Homebrew was huge in its time. Like it was the biggest project on GitHub for years. And I had it on my username, mxcl slash homebrew. So whenever I go to like the GitHub... repo shortlist or whatever, my name right at the top. I was pretty chuffed about it for sure.
Will_Button:
Oh yeah.
Max_Howell:
In the end though we took it off my name. I transferred it to the homebrew organization because GitHub didn't even have organizations when we started all this. It's amazing to think it's been more than 10 years of GitHub. Before that, how did we even do things?
Jonathan_Hall:
Yeah. I still remember subversion and thinking that was pretty cool and shiny.
Max_Howell:
Yeah, yeah, CVS was awful. Oh my
Jonathan_Hall:
Yeah.
Max_Howell:
god. So Subversion was really great for a time. Well then Git came along and confused everyone. I don't get how Git became so popular, but I'm glad it did.
Jonathan_Hall:
Yeah. That is
Max_Howell:
You
Jonathan_Hall:
a bit
Max_Howell:
certainly...
Jonathan_Hall:
of a mystery, isn't it? Because it's not the most intuitive thing at all.
Max_Howell:
It probably was GitHub, because they saw how you could use the decentralized aspect of Git in a way that you couldn't with the others. So I don't know if Linus has ever thanked them. Chris Rainsriff
Jonathan_Hall:
Hehehehehehehehe
Will_Button:
Right.
Max_Howell:
and Tom What's-his-face. Tom What's-his-face, there we go. Yeah, but I transferred homebrew off of my name one... Christmas and it took me all day to push the button because I was like I like having it on my name.
Will_Button:
Right?
Jonathan_Hall:
Yeah, right.
Will_Button:
Right?
Jonathan_Hall:
All
Will_Button:
But
Jonathan_Hall:
right.
Will_Button:
now one
Jonathan_Hall:
Do
Will_Button:
of the
Jonathan_Hall:
you
Will_Button:
things that... Go ahead, Jonathan.
Jonathan_Hall:
still, are you, I was gonna ask, are you still involved at all with homebrew or that's completely in your
Max_Howell:
Nah.
Jonathan_Hall:
past now?
Max_Howell:
I was still on the government's committee for years, although I didn't really do anything. Like I occasionally like tune in and out. But the truth is like... a really fabulous community turned up over the first few years. A really dedicated people who were very excited about the project and like very dedicated to the work that was required. So when I did step down, it was easy. I'd already like passed a lot of the duties over. That was at one point about a year before I stopped working on it, but I just realized that it was done like what I wanted it to be. It was. And, you know, I was ready to move on to other things. I don't think I could have. done what I'm doing with Tea with Brew, honestly. Like these projects become so big, you can't change things. And
Jonathan_Hall:
Mm-hmm.
Will_Button:
Right.
Jonathan_Hall:
Mm-hmm.
Max_Howell:
even if like the entire government's committee now decided they wanted to copy everything we're doing, including the crypto component, I don't think they'd be able to do it, honestly.
Jonathan_Hall:
Mm-hmm.
Max_Howell:
It's
Jonathan_Hall:
Mm-hmm.
Max_Howell:
just too big a machine. Just for the same reason I couldn't work at Apple, right? It's like, once it gets to a certain point, there's too much bureaucracy, there's too much process. Like I am basically a benevolent dictator on all my open source projects. mostly benevolent
Will_Button:
Yeah!
Max_Howell:
and it's really the only way I can work and like with my current team I just I hack all day and make stuff and then sometimes I ask for an opinion on ideas I've got but usually I just write it and throw it at them and wait to see if they complain or not
Jonathan_Hall:
Hmm hmm
Max_Howell:
and
Jonathan_Hall:
hmm hmm.
Max_Howell:
then it's part of it Tee's very exciting project to watch right now because I'm releasing like four or five releases a week it's continuously getting worked on it like if you go and participate on the github you'll see that it's how open source should be, I reply to tickets almost instantly if possible, always listening to what people say and taking their opinions into account and telling them if I disagree or agree. We've incorporated tons of the community's ideas. This is the cool time to be a part of the project. As soon as I stamp version one it won't be as good. Because then it's like, yeah, I think this is pretty much mostly what it's meant to be.
Will_Button:
Yeah, you definitely
Jonathan_Hall:
Very
Will_Button:
start
Jonathan_Hall:
cool.
Will_Button:
moving a lot slower after that and more methodically.
Max_Howell:
Yeah, like, you know, like Nix is an incredibly popular package manager right now. And I didn't actually realize how many of the features we've got, they've got. Partly because you try and figure out how to use Nix if you ever used it. Yeah,
Jonathan_Hall:
Mm-mm.
Will_Button:
Mm-hmm.
Max_Howell:
it's not the most intuitive thing, but it's just such a big project now that, you know, they're way down by like, the mammothness of it. So we're just faster moving basically. I understand the Nix is pretty great but T is better, sorry.
Jonathan_Hall:
Hahaha.
Will_Button:
Sorry, not sorry.
Max_Howell:
Hmm.
Will_Button:
One of the things that you mentioned before we started recording was you talked about how much money you made on open source, which I think is like a double-sided thing because there's this, it seems like there's a lot of desire in the community for people to contribute to open source. And I think... There may also be some misconceptions about whether or not that's actually a career model, but using this model with T and the staking and passing the rewards down, it actually does open up the possibilities where you can actually make a financially rewarding career possibly as an open source contributor, which is something I don't think anyone has ever said before.
Max_Howell:
Yeah, I really hope that becomes possible. That's obviously what we believe. but you never know, right? But I want people to be able to quit their fan jobs. I want Facebook staff to be able to go, I don't need to work at Facebook anymore. I got this open source project I've been maintaining and it pays almost as well as I'm earning here at Facebook. I want it to be so that, you know, you have to maintain a few projects, I reckon, to be able to make a Facebook salary. But that's
Will_Button:
Right.
Max_Howell:
how it should be, right? Like I never would have worked for anyone else. if I hadn't had to, I wanted to work on open source. And most of the people who are people who've made significant open source would much rather just be working on their open source projects than all these other things. But I've said on other podcasts that I wonder what I would have built if I'd been able to work on open source full time for the last 15 years. In my part time to do if I'd been able to work on it all the time. And so it does feel like in a way we're stifling the software industry by not making it possible for these people who, you know, the CoreJS guy shouldn't have to quit working on CoreJS. It's ludicrous, part of his problem is his Russian, right? So all this sponsorship sources dried up due to recent events. And
Will_Button:
Right.
Max_Howell:
well, I don't think that's also helping him from other political reasons.
Will_Button:
Yeah, for sure.
Jonathan_Hall:
Recently, I don't know if either of you have heard of him or the story, but if I say it right, Filippo Valsorda recently had a blog post that got a lot of attention. He was a member of the Google Go team and he just quit his job to do full-time open source. So he's doing the corporate sponsorship model. I think he has six sponsorships for some of the packages that he runs. But it is nice to see the rare but nice success story when somebody does open source well.
Max_Howell:
Yeah, yeah, that is great. It has become more possible, certainly. Like when I made Homebrew, there was nothing like that. Like you could apply to the Free Software Foundation, I hope they give you a bit sponsorship as an idea, it wasn't generally there. And I remember like after it became popular for a few years some VC phoned me up and was like do you think we can make a company out of this? And I didn't even think at the time it was possible but mostly I just felt that the ship had sailed. It was already like an open source project that had loads of people working on it and I didn't see how you could make it into a company. I was an idiot I shouldn't have figured it out.
Jonathan_Hall:
Well, but
Will_Button:
Yeah.
Jonathan_Hall:
we've seen a lot of open source projects try that and not do a very good job. And the one that
Max_Howell:
Hmm.
Jonathan_Hall:
comes to my mind right now is Docker.
Max_Howell:
Hmm.
Jonathan_Hall:
They haven't maybe done a terrible, they haven't completely failed at making money at it, but it's been messy,
Max_Howell:
Hmm.
Jonathan_Hall:
at least.
Max_Howell:
Yeah, well, hopefully with T they could get enough token that it would
Jonathan_Hall:
Right.
Max_Howell:
work for them because it's a great example of something that was very important for the software industry, Docker.
Jonathan_Hall:
Oh, definitely.
Max_Howell:
It's made so much easier and it's made a lot of things more robust. But they have struggled with the revenue model, which seems a bit odd. I would have just done my hosting solution.
Jonathan_Hall:
Yeah.
Will_Button:
I think at the same time a lot of the Linux OSes have struggled as well, like Red Hat,
Jonathan_Hall:
Oh yeah.
Will_Button:
you know, is available for free, but their financial model is through the rail enterprise if you wanted the extended support model.
Jonathan_Hall:
I'm pretty sure that's how Ubuntu makes their money too.
Will_Button:
Yeah.
Max_Howell:
Yep, I'm not sure how exactly we'd help Linux distributions in the current model actually, because it's not a package,
Jonathan_Hall:
Mm-hmm.
Max_Howell:
right?
Will_Button:
Yeah, true, true, true. You're already beyond that step by the time you're installing T.
Max_Howell:
Mm-hmm, like T probably wouldn't get much token, is the truth of it, although we would encourage people not to stake against us. But you know, it's the kind of thing that is the wrong segment of the graph, and like Linux, the distribution itself isn't even on there. But potentially with V2, we could take into account those kinds of things. As it stands, we're still trying to figure out if a build dependency is something that should be considered as important as a runtime dependency. I think
Jonathan_Hall:
Hmm.
Max_Howell:
the answer is actually the build time dependencies are more important and we're sort of coming around to that. But fundamentally, we're trying to use a sort of page rank system
Jonathan_Hall:
Mm-hmm.
Max_Howell:
for ranking, or at least using that as a base for figuring out the relative value. But the fact of the matter is if you're a and a lot of things depend on you, that's a pretty clear indication that you're important. And
Jonathan_Hall:
Mm-hmm.
Max_Howell:
it also means that it would be difficult to scam our network. You could put a fake open source package in there, and then you could put a dozen other ones that depend on it. But if nothing is actually using or staking against anything at the top, and all the dependencies are just linked back to yourself, you do use different wallets, right? Like
Jonathan_Hall:
Mm-hmm.
Max_Howell:
people did this with NFTs, they buy their own NFT. to like
Will_Button:
Right?
Max_Howell:
make it look more expensive because you know it's just a wallet there isn't actually any identity in it with that but we'll have some identity because it will link back to the project you have to cryptographically sign something on in the repo on the releases there are links to the wallet in order to like prove that you own that we haven't figured out all the details for that yet but we'll have more identity than a lot of these other kinds of financial systems that have been built.
Will_Button:
right
Jonathan_Hall:
Very
Will_Button:
on.
Jonathan_Hall:
interesting.
Will_Button:
This
Jonathan_Hall:
I'm not,
Will_Button:
is exciting.
Jonathan_Hall:
so I'm the crypto skeptic among us, but I like this application of it. So like he said, a
Max_Howell:
Yeah.
Jonathan_Hall:
lot of this crypto is scams. This
Max_Howell:
Mm-hmm.
Jonathan_Hall:
falls on a different category.
Will_Button:
Actually, we prefer the term unstructured asset transfer.
Jonathan_Hall:
Hahaha!
Max_Howell:
Heheheheheheh
Will_Button:
No, I think
Max_Howell:
Yeah,
Will_Button:
one
Max_Howell:
like
Will_Button:
of the
Max_Howell:
it's...
Will_Button:
other one of the cool things that it does is it points out the utility of crypto. It's actually like a real world
Max_Howell:
Mm-hmm.
Will_Button:
application for crypto versus a cartoon picture of a monkey, which is most people's association with crypto.
Max_Howell:
Yeah, NFTs didn't do any good for the rep for sure.
Will_Button:
Hahaha
Max_Howell:
Yeah, like I do feel that we're a utility use case for crypto that most people are, oh yeah, I can, I understand that one. I get that one. So I really hope it's going to help the whole industry really. Because I think there is a lot of value that crypto can offer software and the people of the world. It's just unfortunate that money always brings out the, the worst people first, seemingly.
Will_Button:
Right.
Max_Howell:
I think it's probably the history of monetary systems in the reason crypto has taken so long to like catch on still that people say that you know it's more than 10 years old why is it still like almost there but not there like most technology within 10 years has proved itself money's difficult I think it's the truth and you need projects like ours that people can say oh yeah I get that I understand
Will_Button:
Right.
Max_Howell:
that why why that's necessary why that's useful why that's better than what we've got already and then hopefully that will 2 type effect. Web 2 was dynamic content and HTML and JavaScript really started to prove that they could change how the web worked and then there was an explosion of use as we all know. I think that Web 3 can have a similar moment. You just need a few proper examples and I'm hoping that T will be one.
Will_Button:
Yeah, because once you see like that real world application, it gives your mind something to associate with and then build relationships to other areas and it kind of serves as a launch point. But until you have that, it's purely imaginative and you only have those people who have deep levels of imagination that can see the utility of it.
Max_Howell:
Yeah, yeah, that's really how it works. Happens in every industry, the ones I'm not familiar with. I need someone to turn up and show me. Oh, yeah, yeah, that makes sense now. I get it, I didn't see that before.
Jonathan_Hall:
Well, Max, if people are interested in following, of course, they can go to t.xyz. They can check the GitHub project. They can star it, get those stars up above 10K. If they're interested in following you, are you on social media that we can share?
Max_Howell:
Yeah, I'm on Twitter as MXCL. I'm MXCL everywhere I can be. Not Gmail, because you can't have a four letter username on Gmail. And
Jonathan_Hall:
Uh huh.
Max_Howell:
I say that every time I can to try and get someone at Google to give me it anyway.
Will_Button:
Hahaha
Max_Howell:
Please give
Jonathan_Hall:
Ha
Max_Howell:
me mxcl
Jonathan_Hall:
ha ha ha ha
Max_Howell:
at gmail.com.
Jonathan_Hall:
ha
Max_Howell:
I won't tweet nasty things about you again.
Will_Button:
Right?
Jonathan_Hall:
Ha ha ha ha!
Max_Howell:
I actually, when I interviewed, I put that as one of the conditions for joining. I
Will_Button:
Hahaha
Max_Howell:
was like, give me mxrgmail.com as well. So yeah, that would have been nice. So yeah, mxr on Twitter, mxr on GitHub. Yeah, go check out tklee, txyz slash cli on github.com. Txyz is the website. Yeah, what I'd like most right now is for people to use the package management. Tell me what they think and tell me if they think it's cool, if they think it's useful, what they want. I'll build it if it makes sense, if it fits with our vision.
Jonathan_Hall:
You heard it straight from the man.
Will_Button:
Yeah.
Jonathan_Hall:
If you want it, he'll build it, if it makes sense. So let him know what you want. Shall we move on to PIX?
Will_Button:
Let's move on to pics.
Jonathan_Hall:
You wanna go first, Will?
Will_Button:
I do, although I'm worried that I'm going to steal the thunder here because the pick I have this week might just be the coupe de gras, the pick to end all picks.
Jonathan_Hall:
Are
Will_Button:
So
Jonathan_Hall:
you picking my YouTube channel?
Will_Button:
no, almost.
Jonathan_Hall:
Oh.
Will_Button:
I was debating between that or this because I don't watch many movies, but I did sit down and watch this one the other day. And surprisingly, it hadn't been on my radar before. The movie is Ginger Dead Man versus Evil Bong. So this lady, Sarah Lee, forces a man to live his life in the body of a gingerbread man. And he comes out to try to kill her. But the only way she can defend herself is by teaming up with Larnell and his magical talking bond, Bong. So,
Max_Howell:
No.
Will_Button:
if you haven't seen that movie, I'm just actually a little bit shocked. I'm, I'm sure it was on the Oscars. I just missed that presentation at the Oscars. So the movie pick of the week, Ginger Dead Man versus Evil Bong.
Jonathan_Hall:
Wow.
Max_Howell:
I'm gonna go to...
Will_Button:
Pffft
Jonathan_Hall:
Yeah, I can't believe I haven't even heard of it.
Will_Button:
I know, right?
Jonathan_Hall:
How many tomatoes does it get on Rotten Tomatoes?
Will_Button:
I'm not sure about Rotten Tomatoes. It has an IMDB rating of 3.6. I'm assuming that's like 3.6 out of probably four total possible stars, because it's got to be most of those stars.
Jonathan_Hall:
Yeah. I'm pulling on rotten tomatoes but it's slow. I don't know, maybe they're just outside town. We'll see.
Will_Button:
It's probably just a lot of traffic because I mentioned the movie and they're getting slammed
Max_Howell:
Hahaha.
Will_Button:
right now.
Jonathan_Hall:
Yeah, yeah. So, 20% audience score, and no, the tomato meter has no reviews. So I think that's like professional reviewers. So apparently it's flown so far below the radar that even the professional reviewers aren't reviewing it.
Will_Button:
or their
Jonathan_Hall:
It's
Will_Button:
tomato
Jonathan_Hall:
just that
Will_Button:
meter's
Jonathan_Hall:
good.
Will_Button:
broken. Could be
Jonathan_Hall:
That
Will_Button:
that.
Jonathan_Hall:
could be, could be. Wow, the cover
Max_Howell:
How did you discover
Jonathan_Hall:
is.
Max_Howell:
this?
Will_Button:
I think on Reddit.
Max_Howell:
Hehehe
Jonathan_Hall:
I always knew I should avoid Reddit. Now it's been
Will_Button:
Hahaha!
Jonathan_Hall:
proven. Ha ha ha.
Max_Howell:
But it's got a bit of everything.
Will_Button:
Right?
Jonathan_Hall:
All right, I'll go next. So my pick for the week is a book that I just reviewed. I just reviewed a bunch of books about learning the Go programming language. I've been a Go programmer for eight years, but people keep asking me, what books should I read if I wanna learn Go? So I decided I'm just gonna go read a bunch of books. Picked all the newest ones I could find because Go changes frequently. And I found a sort of diamond in the rough or a surprise cool book. The review just came out yesterday as we're recording this. It was yesterday, Valentine's Day. And it's a self-published book, which is why I didn't find it originally. But it's called For the Love of Go by John Arundel. So that's my pick. It's really targeted for brand new programmers. So if you're already know TypeScript or Java or something, this probably isn't the book for you. But if you're new to programming, this is a great book. For the Love of Go, it's an ebook only. buy it from the website and get the PDF or the Kindle format or whatever. If you already know a programming language, of course, there are other books that I will recommend. I'm finalizing my best book for 2023 to Learn Go review right now. It'll be live in the next few days. I'll probably pick that next week on the show, so I'll have a link to that. But for now, I'm picking John Arundel's book, For the Love of Go.
Will_Button:
Right on.
Max_Howell:
I'll go. So I discovered this this morning, a little app that you can only get via test flight. So this is, I don't know how successful everyone will be in seeing this, I'll have to share the tweet with you so that people can actually click it. But it's called GPT Friends and it's using the GPT APIs, but they've done some training on people so you can type any person in, living or dead, and it creates a chat with that person. So you can ask questions of Steve Jobs or
Jonathan_Hall:
That
Max_Howell:
even
Jonathan_Hall:
means
Max_Howell:
yourself.
Jonathan_Hall:
I don't have to come back to the podcast anymore because she's GPT friends to replace me.
Will_Button:
Right?
Max_Howell:
It's, it's, so far I found it a little mixed. Like I said, sometimes it just feels like, you know, talking to a generic GPT chat.
Jonathan_Hall:
Okay.
Max_Howell:
Interestingly, I talked to myself for
Jonathan_Hall:
Okay.
Max_Howell:
a bit because anyone it can, you know, is trained on, essentially. It can try to behave like that person. So the more famous, the more data it will have. I am middling famous, I'd say. Like I don't have a Wikipedia page, but you type my name in and stuff comes up. It didn't really seem like me, but it did seem like Steve Jobs.
Will_Button:
Right on, that's so cool.
Max_Howell:
Hehehe
Jonathan_Hall:
Cool beans. Well, I think that's a wrap. It's been a really fascinating conversation. Thanks for coming on, Max. I really enjoyed it. I feel like I learned quite a bit and it was just a fun conversation.
Will_Button:
Yeah, this was great and I'm looking forward to not only trying out T but seeing what happens to it as you guys get closer to the 1.0 release.
Max_Howell:
Thank you.
Will_Button:
Cool, see you everyone.