tea.xyz
Listen Now
About This Episode
In this episode of DevNTell, Narb welcomes Max Howell, the renowned creator of Homebrew, to discuss his latest venture, tea.xyz. Max delves into his history with open source, starting with his initial contributions to Homebrew 13 years ago and his time working on projects like the Amarok music player for Linux and various projects at Apple. He explores the challenges of funding open-source development and how tea.xyz aims to address this using Web3 technology. Max outlines the vision for tea.xyz as a decentralized, blockchain-based package registry that fairly remunerates open-source creators through a staking mechanism called 'steeping'. He emphasizes the importance of community governance and the goal of making open-source development sustainable and less dependent on corporate interests.
Key Takeaways
Max Howell has a long history in open source, most notably as the creator of Homebrew.
tea.xyz is a new venture that aims to revolutionize open-source funding using Web3.
A major challenge in open source is sustainable remuneration for developers, which tea.xyz seeks to solve through its decentralized package registry.
tea.xyz uses a staking mechanism called 'steeping' to distribute rewards throughout the open-source graph.
The project focuses on decentralization and community governance to prevent the 'Nebraska problem' where critical infrastructure depends on unrewarded individuals.
tea.xyz is cross-platform and 100% developer-focused, aiming to complement existing tools like Homebrew and Gitcoin.
Featured Guest
Max Howell
Co-Founder @ Tea Protocol
Timestamps(click to jump)
Episode Transcript
Read full transcriptHide transcript
PM, JG everybody. Welcome to what's going to be another great DevNTell. So if you didn't know, DevNTell is a 30-minute window for members of the DAO to showcase something they are passionate about or have been working on. This could be an awesome project you've been working on, demonstrating unit testing best practices, automation goodies, smart contracts, how to structure a project, etc. Basically, if you've got a passion for something, this is your opportunity to share it with the community.
And today I am happy to introduce Max, who is the creator, famously the creator of Homebrew, who is here to show us his new venture called tea.xyz. Go ahead, Max, take it away.
Thanks. Hey everyone. So yeah, it was 13 years ago yesterday, actually, that I made the first commit to Homebrew. That's what GitHub says anyway. I'm pretty sure that was like me squashing a few commits into the, you know, I have a tendency to do this, honestly, I get a bit ridiculous...
...about how the Git history goes, especially initially, anyway. Although I did continue that with Homebrew for a while, I have to say. We had a strong policy that we wouldn't do any merge commits. And honestly, at this point, I think that was us being somewhat ridiculous about it. But that came because I learned to use Git over the previous like 18 months before I started working on Homebrew.
And merge commits were the only way anyone knew how to use it. And when you looked at the commit history, it was impossible to read anything. Like this was early days of Git, so nobody knew how to use it. People who learn Git nowadays think it's like really difficult to learn, and try and imagine learning how to use it when there wasn't even Stack Overflow answers telling you what the hell you're meant to be doing. And there was numerous different ways to use it. Nowadays, we generally standardized on a few different flows, and everyone learns those, and I think most people don't even realize the enormous amount of interesting things you can do with Git in that respect.
Anyway, so yeah, 13 years ago Homebrew, and obviously became like a much bigger success than I even imagined it could be. When I was building it, I knew that I was kind of onto a few things that I felt were going to work. I had a history of open source already at that point. Before that, most famously, I worked on this music player for Linux that I think still exists, although I'm not really familiar with it, now I'm like more of a Mac person. It was called Amarok. And I worked with a few other guys on that, and we were globally separated. We had people in Australia and America and all over Europe. And it was great fun, and that really got me into working on open source.
So I'd always, whenever I worked in anything, just naturally gravitated towards releasing open source. Every company I've worked at, I've always tried to get something open-sourced. And like, the unique and interesting exception there is when I worked at Apple. They have a very strict policy about what you're allowed to open source, so it has to go through their lawyers, obviously. And you can't work on any open source that is not released under Apple's banner. So while I was there, I had to actually stop working on any open-source software and delegate what projects I had still that I maintain personally to other people. Yeah, that's an interesting thing really.
Oh yeah, so I worked on Homebrew like full-time for a while. I quit what I was working on otherwise and, you know, just lived off savings. And over the years, I just rotated basically between jobs, contracting, and quitting in order to work on open source full-time. So, you know, in that period, it became important to me to try and figure out how open source could be funded, because I'm not unique. There's many people who are super passionate about open source. Like online, I have a reputation that is strange to me because I've literally dedicated thousands of hours of my life to unpaid free software. And like, people seem to think otherwise of me and, certainly starting tea has not helped. It's interesting to see the kind of comments I'm getting from people who work on Homebrew still. But I'm sure that all of us who are working in Web3 now are kind of familiar with that.
But anyway, this is about tea, so let me fast forward a little bit. About nine months ago, I was once again trying to figure out how I could work on open source full-time. When I do work on open source full-time, I come up with interesting things, and some of them are very successful and some of them are like nobody's ever heard of them. This is, you know, it's difficult to market open source. Like I basically invented JSX like eight or nine years ago, but no one ever saw it. Mine was built with Ruby, and it was like a pre-compiler and you could write JavaScript in with your HTML, and yeah, it was quite good. I was working with a friend on a music startup actually at the time, and that's what I built it for, so that I could do the website of that. So but nobody's ever heard of it, still on my GitHub actually. I called it Bullscript, because I thought that was funny. I certainly always find fun coming up with names I think are somewhat amusing.
So yeah, like a couple of years ago I tried a Patreon, like just couldn't get enough people to donate for me to be able to work on open source full-time. And Tidelift do actually give me some money still for one of my libraries, PromiseKit, that's a library for iPhone which gives you good promises. It's probably the best promises library for iPhone dev, but nowadays you don't need it so much. Although they still will give me a little bit, and I have a bit of sponsorship here and there, but it's just, you know, it's never been as far as I could tell possible to really get sponsorship correctly and I don't like bounties, it's not for me.
So I was thinking about this again, and I hadn't worked on Homebrew for like I don't know six or seven years at this point. I, you know, in a way it was a rage quit, I just couldn't handle it anymore, working on Homebrew like a lot of hours and having a full-time job. And I find it difficult to do two things well. I have to dedicate myself. So I was like okay, like the community at that point had really emerged, there was a lot of people working on it with me and I felt that, you know, the tool was mostly done, so I was like okay, I can move on. And I was into iPhone dev quite heavily at that point, joined to it early fortunately. And that was, I thought it was an exciting area for me to explore as a career. But in the years since, I kept notes about what I'd do for like a sort of Brew 2. I'm a bit of an obsessive notes taker, so I had pages and pages of ideas.
But I'd never really considered doing another brew because I'd done it before. I'm not usually interested in doing something again just because I could do it better. I like new things. And also, it just seemed like a mature product, I didn't see the niche, what was going to make it into something that was super different and great and worthy. I don't believe in like having making something that's slightly better just for the sake of it, then you just end up with like four or five different choices for devs and other users when really they should only have like a couple of good ones and you're not helping anything. But I have a friend and he's my co-founder at tea, Timothy Lewis. I met him about a decade ago in Chicago. And we've worked on a few things here and there over the years.
And he got into crypto where I did not, because I was interested in iPhone and mobile and for me that seemed much more interesting even when crypto was nascent, which you know with hindsight, everyone who's like me and has missed that wave is regretful of, but you know I just kept missing it essentially. And he kept like every year or so contacting me and saying hey you should check out this and you should check out that and I'd like go and have a little look, but I didn't see how it was that interesting to me.
Because money was never really the most interesting part of work. I need money, everybody needs some, so I needed to obtain enough so that I could live, but I wasn't particularly interested in obtaining a lot apart from like the ultimate ideal for me is to have enough money that I can work on whatever I want without having to worry about it anymore. But like last year he was like okay we're calling it Web3 now, you should check this out. And he sent me a few links and I checked them out. And while I was like looking into this, I started to have the idea for what is tea, how I could build Brew 2 and we could add this like really interesting extra part where we can remunerate open-source software.
I saw how digital contracts aren't just money, that you're automating like entire categories of how that money or that value is transferred and how it is governed. And so it started to like occur to me that maybe there was something really interesting that we could do there. Like tools like Homebrew, package managers in general, they're completely unsexy. They're an essential tool that everybody needs. Everyone needs some way to get all that stuff they have installed and ready so they can get on with dev.
And then like when it works and when it works well, this is like one of the reasons I think Homebrew was so successful, is I dedicated so much of my time to making sure that it just worked, just worked well. When it didn't just work, it gave you good error messages that helped you to find out what the solution might be, it directed you to good resources that would help you, and we just like always were optimizing for like making sure that it got out of your way so that you could get on with what you wanted to do, which was the work, you know, the app you're building.
Essentially that's why I started Homebrew in the first place, I was frustrated with the other tools there. My co-founder will say if you want Max to do something, make sure it's frustrating to him. And it's essentially true, like whenever anything is difficult and I'm wanting to use that thing still for something, I usually end up building the tool that I need and then open-sourcing it. And like the vast majority of the open source I've ever built is that. I just I want to get to the result. Sometimes getting to the result ends up with something that I'm more interested in, and that was Homebrew. So yeah, he got me into it and I saw that we could build something different. And the package manager is uniquely placed because it sits under basically all open source. Like not all of it all of it of course, well at least on Mac. But we're making tea cross-platform and that was one of the things that I always wanted Homebrew to be to be honest. Homebrew is kind of cross-platform now just because from the start we built it to be somewhat agnostic.
Like we started with Mac. And when you're building open source like you can't really do everything, and that's one of the reasons that I wanted tea to be funded this time, because it meant that I could hire people and thus we can really like tackle all the parts that are necessary. Over the last 10 years open source has become more and more corporate, which I don't like. I don't like that Microsoft and Facebook and Google like in a sense have become like controlling parties in open source. Like open source was always like in a way it was kind of hippie-ish. I remember talking to a girlfriend's dad about how I worked on open source at one point, and the guy was like, 'So it's like hippies then, isn't it?' I was like, 'Umm no, I don't like that, I don't want to call it something that is hippie-ish.' But in reality, that was how it started.
It was about communities of passionate developers coming together to build the tools they needed in order to achieve like often humanitarian goals. Like the Internet is probably the most significant invention of humankind, and it has done the most good. And open source was, you know, the base of that. That's how it came to be something that did good. It wasn't like these massive corporations controlling it. And that's how it's become, like it wasn't like that even 10 years ago. Well, one of the things that certainly we want tea to do is make it so that open source can go back to being about the people who are passionate about that little niche that they understand and that they're good at and that they need to build so that they can work on that, work on that full-time, have a good salary out of it and not be like have open source drift away from being driven by corporate agenda. I think you know like a lot of these companies like Microsoft, Google and Facebook they are doing a reasonable job of making it so open source is still kind of open source, but at the end of the day you don't know that and you can't see it and you can't tell, and even though their money has made it so that open source is more stable, the parts they're maintaining at least, it needs to be taken back to the community.
And like Web3 has made me see that we drifted away from that, that Web2 has turned the internet into this corporate controlled centralized nightmare really and that we can't maintain that. So we're super determined with tea to succeed in decentralizing open source again. And our graph as we call it, which is the protocol, and we open-sourced our white paper yesterday, so it's super new that you can read about how we intend to build out the protocol portion of what is tea. But it's effectively like a blockchain-based package registry. And package registries since you know open source existed and since like the idea of a package manager emerged, have been like these typically centralized places where you might have it behind a CDN of some kind, but it's there's people that you know like Homebrew, 95% of the work is maintaining those package descriptions and it's essentially just duplicated labor, which is ridiculous by itself.
Also it's just like this centralized place where you've got security issues associated with it and potential you know results of censorship and also like you know left-pad incidents where people like you know freak out. Like that guy had numerous reasons for yanking left-pad like when was it 2016 or whatever. And when he did it, like the internet basically couldn't build any JavaScript for three days. And so it really brought attention to the fact that these systems are centralized and as much as I respect the guy's right to take away what he'd created, you can't. Open source is not about individuals. Open source is this enormous collection of people coming together to build things together, and you do not have the right to stop the internet from working. So with tea, our decentralized blockchain-based package registry, once you put something in there, you can't take it out. And we'll make it rewarding for you because our staking mechanism we're using, that we're calling steeping because I love to add a little bit of terminology in there that's related to the overall theme of the product...
...I'm not going as far this time as I did with Homebrew. I think I didn't know where the line was quite then, but where it makes sense, where there's things that are unique, I'm using words that are unique. And that just you know the metaphor is good and so people will have an understanding what it means, but well. But those stake rewards will flow through the entire open-source graph. And this was like one of the things that I felt is wrong with sponsorship and bounties. Like I see tools like Gitcoin and we're actually like we've talked with Kevin from Gitcoin already about how we're going to work together. See those as being complementary to what we're doing. There's still room for bounties, for sure, and people who have some money and need a feature should be able to post a bounty or need something fixed. But I feel that bounties and sponsorship both, a), only reward favorites, things that people know about. Like log4j in December was a great example about how open source is tens of thousands of packages but people don't know about 90% of those packages.
90% of this open source is we call it the Nebraska problem because of the famous XKCD comic called Dependency, where there's this tower of bricks that represent, he says, digital modern infra- modern digital infrastructure. And then right near the bottom there's this little one on the right-hand side, I'm sure everyone's seen the comic but I'll go into it anyway, that's holding up the whole stack and it's like you know a tiny little pillar so it's not very secure- safe, it's not very stable. And there's an arrow to it that points it and says that someone from Nebraska has been maintaining this thanklessly since 2003. But you know we use this a lot when we're talking about tea because the Internet is held up by a lot of these fragile little pillars by people who are not able to maintain those things they built properly because they never had a mechanism in place that allowed them to do that. And they still go in there every now and again and fix things because they feel responsible. I know that very well. I know that feeling of responsibility where even though someone's come onto your GitHub and opened a ticket and they're rude and they're pissed off at you because something's broken and they don't appreciate the fact that you don't get paid to maintain this thing, I still feel responsible to that person because they chose the thing I built, they chose to use it. And I appreciate that honestly, I appreciate that validation that something I made was useful to some people more than just myself.
But without pay it's very easy to become angry. And Mike McQuaid is the guy that I handed Homebrew to when I quit. He, I've known him for years, I knew him back from when I worked on Linux on KDE which is this desktop environment. He was part of that too. He's awesome guy from Scotland and he does great talks, you should definitely check out some of his stuff. But I feel that he is a bit ruder than I am about people having expectations of your open source, and that's like one of the ways we differ. He is like, you know, you're using a free tool maintained by unpaid volunteers and you can have no expectations, and he like blocks people on GitHub so that you can't, you know, report bugs or even like participate in the community. And like I totally get where he's coming from because anyone who's maintained an open-source project knows that frustration where people have expectations of you even though you're not paid. So yeah, fundamentally like I think we need everyone understands that it's a problem. Like how on earth we've got this far. The Internet's an amazing thing and 80 to 90 percent of it is free software that no one really got paid for making. So I use that as an example as well, like how much further ahead do you think we'd be if the people who made this stuff were rewarded for making useful things? I reckon like at least twice as far ahead.
Sorry to interrupt Max. Yeah, I was just going to say we're about 9-10 minutes till time, so just a time check, but yes, I think you were prompting for questions here.
I could continue talking with a prompt, for sure.
Well, let's see. Does anybody in the crowd have any questions for Max? His story is very inspiring and I have been pretty much glued to my screen listening to him uninterrupted. So please, if you do have any questions, this is the time to ask.
I'll while we're waiting for a question or something. So yeah we released our white paper yesterday, product about two, three months of hard work. Me, Timothy my co-founder and Thomas Burrell who is very experienced blockchain product person who's not an engineer per se but is like extremely well-versed in all facets of how blockchain works and managing team of devs who work on it. So that was released yesterday, it's open source. We realized that you know we just want everything we're doing to be open source, so there's the repo on our GitHub, you can just Google TXYZ and it'll come up with all our stuff.
And it's written in Markdown with LaTeX and we use Pandoc to build it. It's great, I'm really happy with like our build pipeline for our white paper and I'm versioning it semantically so the PDF that's generated has a little version in the corner. Yeah it's great. I've been working on the package manager itself for probably seven or eight months at this point and it's really coming together. I hope to have it released yesterday to go along with the white paper especially because it was an anniversary of Homebrew's commit yesterday, but it just isn't ready. It's the truth.
Like I didn't open source Homebrew immediately. I never open source anything immediately. I know how important it is for that README to be solid. Like you got to have a great README that when people do visit, because like getting attention for open source is difficult, they're like oh I see why I want this, I see why I need this and I see how I'm going to use this. So I've been working a lot on the README, but the tool itself is pretty much done. I'm just like a little nervous about a few of the design choices, so I'm holding off. But it's a great tool, honestly I'm not even sure if we're going to call it a package manager. Like one of the realizations I had after I stopped working on Homebrew is that a package manager is way can be way more than just something that helps you to install a few things here and there and maintain them, keep them updated, make sure you have easy access to configuration things like that.
It's this fundamental like tool that sits underneath all other things that a developer needs. And with this tea is developer focused, like 100% developer focused. Homebrew was initially 100% developer focused but the user base gradually expanded to include just about everybody because some of the stuff that a package manager provides, there's just no other way to really get that stuff. Like scientists, engineers, architects, musicians, game developers, like there's so many different kinds of profession that need some of these tools and there's no good way otherwise. Like you can't download a dot app for some of these things that architects, engineers and scientists need. They're command-line tools, they're things that get used by like anyone.
So it became a general package manager for everybody, but tea is 100% focused on developers and will be forever. We want it to be a great developer tool and everyone else can use Homebrew, you know, like I don't want to replace Homebrew, which I think a lot of the Homebrew core were worried about. And a lot of the people who've been negative about tea on the internet I think they see it as I'm like this bitter person who's trying to replace my tool because it ran away from me or something. It's not true and hopefully people will start to see that once we've released we're calling it teacli, but package manager essentially. And I'm hoping that's two weeks to a month, we'll see, you know. Like id Software and some other like game devs company they say we'll release it when it's ready, and that's certainly how I feel about these things.
Yeah, yeah, 100%. Seeing as we only have a few minutes left, I guess, what was your inspiration to kind of join the DAO and present today? Is there something you're looking to have people in the DAO kind of help out with developing the product or is it ready for use for some of the projects in the DAO?
Oh yeah, cool, like excellent question. So yeah I joined the DAO sometime last year when I was just looking into Web3 in general and I was like oh this is cool I've to check this out. And like you know easy NFT purchase. So that was before we announced and came in, but as soon as we announced I came in here and I was like hey so I'd love to work with anyone here. And also we are hiring, like I have a number of positions available. The package manager itself because we're going to be cross-platform, I need people who will help me maintain it on Linux and Windows. I also need people who can generally just like contribute to that stuff. I need generalists in general, like we have backend parts, we have frontend parts. Also like surprisingly I actually need a couple of React devs for a secret part of the project that we will be building over the next 9 to 12 months. My co-founder thinks that this secret project could like be a very, very significant thing and I'm tempted to agree. Building on what I've been saying about how package manager can be so much more than like this unsexy package manager type terminology because of where we sit.
And also based on the fact that we got this really like impressive remuneration component. Like we intend to be significant and to change how open source is funded. That's all we're going to change, I must emphasize that we're not changing anything else, no nothing about what tea is will change how you use a package manager and tools like that. You're not going to have to pay to install packages or anything like that. Like read our white paper, our funding model is indirect based on staking rewards, so people who want to participate in the governance and that's the thing like we're going to like try and DAO-ify most open-source projects in effect and have the open-source community come together so that they can govern the ecosystem on top of what we're building. I'm super excited about that. But yeah, so we're hiring and like as soon as I open source the package manager part like I'll be in all these channels like waiting for feedback and working with people on that. But for now like go and check out white paper and you know open a pull request. It's version 1, but you could be in version 1.1.
Awesome stuff man, yeah. Super super exciting to see where where this goes, I'll definitely be using this as as time goes on and it matures. Unfortunately we are at time and I believe there's another...
Just one more thing, yeah. Just one more thing. Another thing that people here must do, in my opinion, go to TXYZ and authenticate with tea. It'll connect with your GitHub. There will be rewards, so you know don't do that.
I already did that yesterday, FYI. I got ahead of the game. But yes, please everybody, if you have some time over the weekend, there's nothing better to do than check out tea.xyz, read that white paper and get involved. And in terms of the hiring, if people are interested do people email that alias that's on the site or is there a formal application board or something?
Yeah it's hello@tea.xyz. I deliberately haven't like specified any specific job requirements and stuff because like generally I'm just going to hire people that fit. Strong open-source background is like obviously very impressive to me, but you know I'm just looking for self-driven smart people who get things done. Like execution is basically everything for me. Obviously I'm famous for failing my Google interview so computer science is not that important to me.
Awesome, awesome. Great stuff. Thank you so much for for taking the time to come on DevNTell Max. Really appreciate it and the entire community I believe is also very appreciative as well. Everyone's intently and quietly listening to you speak. So that's awesome. So I will be dropping a link for POAPs for the attendees in the Developer's Voice text. Max I'll forward you a special POAP for being a speaker. And I just want to wish everybody a happy Friday, happy weekend and we will see you back here for DevNTell next week. Until next one gang. Cheers.
Listen On
Resources & Links
Share This Episode
Share on XWatch Episodes Live!
Subscribe to our event calendar and never miss a live episode.
View Event Calendar