Logo

Software Developers Journey Podcast

#225 Max Howell from chemistry to homebrew and tea

Transcript

⚠ The following transcript was automatically generated.
❤ Help us out, Submit a pull-request to correct potential mistakes

Max Howell 0:00
And there's all sorts of other benefits to you put in this patch of street on chain, like the decentralized aspect, the immutable aspect and the security aspects as well, that make it like just a really good use of blockchain. Actually, there's so many bad uses of blockchain that we've seen over the last two, three years, right. It's basically just people on the money ground. And I get why web three has bad rap, because there's been a lot of scams. So whenever there's money, there's scam. So I've actually like come to the conclusion that if scammers have discovered something new for scamming people, you should probably study what they've done because there's some interesting tech there that maybe you can turn into something real. That doesn't scam people, because scammers are pretty smart. All the time. They're coming up with ingenious new solutions just to be fraudulent. Sadly, it's an awful waste of their talents. But you know, it's just human nature.

Tim Bourguignon 0:59
Hello, and welcome to developer's journey, the podcast bringing you the making of stories of successful software developers to help you on your upcoming journey. I'm your host team building here on this episode 225. I receive Max Harwell. Max is the author of homebrew and the CEO of T dot XYZ brew was one of the largest open source projects of all time with 10s of millions of users to this day, but for his contribution to the world of development, Max was compensated. And I kept this in the bio because a lot of it was a blanket from Google and an iPad from square. So he set out to make a new better package manager than brew that utilizes web three technology to bring value back to open source developers. Max, a warm welcome to dev journey.

Max Howell 1:51
Alright, great to me.

Tim Bourguignon 1:53
But before we come to your story, I want to thank the terrific listeners who support the show every month, you are keeping the dev journey lights up. If you would like to join this fine crew and help me spend more time on finding phenomenal guests, then editing audio tracks, please go to our website, Dev journey dot info and click on the Support me on Patreon button. Even the smallest contributions are giant steps toward a sustainable dev journey. journey. Thank you. And now back to today's guest, the SU Max, as I told you that, as you knew, but the show exists to help the listeners understand what your story look like and imagine how to shape their own future. So as usual on the show, let's go back to your beginnings. Where would you place the start of your journey?

Max Howell 2:44
Well, I think you know, I have to say so when I was six, my dad pulled out in Bryn we had these computers that was sponsored or made by the BBC. And they produced a computer called the BBC Micro and everyone had one. Every school had fleets of them. So my dad bought one and he started teaching me how to program and my dad was a bit of a tinkerer himself, he was always into electronics. And programming was a natural thing for him to learn. He never did it as a career. It was just a hobby for him. And so he taught me how to do it. And I kept it up as a hobby. I never really considered it for a career actually. Did he?

Tim Bourguignon 3:41
know that's not the right question. What What attracted you to this to this computer is so early,

Max Howell 3:45
it was fun. One of the things about the BBC Micro that was neat was that it dumped you straight at command prompt. And the prompt wasn't bash or any other kind of, you know, typical Unix shell it was a programming language, BBC BASIC. I think there was other computers that did this at the time, but I'd never used any of those and don't know much about them. So you could immediately start writing code and like the common thing that people would do when walking around school was right quick program that was 10 because the basic a lot of the basic, a lot of the programming languages at the time numbered the lines. So you'd write 10 first lines 10 Presumably people did it intensely. You could write numbers in between without having to reorder all the lines in your program. It was right hassle consider everything had to be numbered. So you 10 print hello 20 Go to 10 because go to obviously was a very well used keyword for basic programmers at the time. And so would fill the screen with just the Forever obviously. So I started off doing that kind of stuff and it was fun. It was fun making the computer do things I was always the kind of guy who enjoyed building stuff like I had Lego is the law, or Lego as we call them in the UK pluralizing things is sort of American trade, live in America now. So I picked up some of them. I like puzzles and, and like jigsaw and wooden puzzles and puzzle books. So it was just a more new way to do that kind of stuff. And what I liked about it was how quickly you got results. And this was something that I always liked about programming, and which is what kept me coming back to it. Even though I was exploring other things, I was kind of raised to think that there was certain career choices that were better than others. And as a result, programming was never one of those options. And I didn't even like subconsciously consider it as a career. So but I kept coming back to it. Because it was so much fun to get these fast cycles of reward type something in computer would immediately tell you whether or not it was right or wrong. You'd have to decode the cryptic error messages in order to figure out what was wrong. And this was like before the internet. So I had a manual, that was the BBC BASIC programmers manual. You know, I think like programmers from my era have an advantage in that way that we were forced to do it the hard way we didn't, we didn't have Stack Overflow. And I didn't have Stack Overflow until I was two years into my professional career, because that's when it came out. Soon before that, you know, I was doing open source work and professional work and like all you had was whatever the computer came with in terms of manual, or whatever you could find on the internet, like, you know, forums for programming used to be a bismal. There's an XKCD comic where it's someone asked a question on some obscure forum. And then the next answer is, it's okay, I figured it out. And that was the bane of everybody's existence before Stack Overflow, you'd find the exact question you had. But no answer. Just someone who figured it out without you. Like it was reassuring to a certain extent, because you then knew it was possible to solve the problem that you weren't like just being your hands against your head and not going to find a solution, which was always a concern to Full Stack Overflow. Nowadays, it's very rare that you find a problem that you you're you're not going to find out if it's possible or not, like within by half an hour to an hour of searching. The airline. Things are different, especially as a child learning BBC BASIC.

Tim Bourguignon 7:43
I believe that that's something that really amazes me, it was the same with the xdx line, it was the same with with all those computers back then with the Atari as well, there was a programming manual with it. So one of the things you did was program and I wonder how how the the I want to say the world, maybe maybe the word is too large, but the word was like look like if the iPad came with a programming interface, and people could program right away with it that that would look their friends hope isn't that something to ponder,

Max Howell 8:13
but I think it's, honestly, the computers don't come built for programming anymore. And it's probably it has an impact on people and like their career choices. And if programming is something that they were even discovered, or then just like go into because programming is cool. Now, it didn't used to be cool to have to really want to do it. Because if you if you went, if you went to a party and told people, you were a programmer, they would stop talking to you and someone else

Tim Bourguignon 8:49
got coming back to you or to Stack Overflow and rebounding on this, I worked for a consulting company, which had quite a large number of older gentlemen, there were all called architects, but they were just old. And you could you could see who started coding when, by their reflects on when they faced a problem where we did go, the younger ones, we'd go to Stack Overflow, the older one who would go to the reference documentation and have the reference documentation on their machine and don't have didn't even have to put up any, any any website, just just go there. You could really pinpoint when they started coding by just this behavior,

Tim Bourguignon 9:25
which was fun. That makes more sense. And that, you know, everyone builds their own systems that work. And then you use those and that's the only way you can be efficient. It's why programmers hate it when they're forced to use tooling they don't like because they've been good and efficient with the stuff they've learned. And if you're making them use something else, and they're just gonna, like have a hissy fit about it and probably not be as effective by by any means. Although you know, it's good for everyone to have to leave your comfort zone once in a while. I think also like, that story is interesting because it That must have had an impact on how good documentation is nowadays. Because you don't need a manual that will tell you everything you need to know. You can just rely on StackOverflow and the other, you know, Reddit to a certain extent and whatever else you can find out there and it is vast and full of information. Because I remember the first C++ compiler, I got Symantec, C++ for Windows, it came with a set of manuals that it must have been like a metre and a half of manuals. And, you know, as a 13, or maybe 11, or 12 year old who got these first birthday from his dad, it was a great present. And the amount of manuals just made it seem like it was a more proper thing. You know, I wasn't intimidated by it. And they were all yellow. I remember them like they weighed a minute, what do you don't even get like box software anymore, let alone pay for manuals.

Tim Bourguignon 11:47
But it does wonder to us who to hold the door if your office opened when you're when you're lifting earrings.

Max Howell 11:53
Yeah, we certainly got used to that.

Tim Bourguignon 11:57
You mentioned something in passing. He said, Well, I couldn't imagine this would be a career. You had proper careers in mind. What were you aiming for back then

Max Howell 12:05
I go into my secondary school, which was an interview school by saying that my external things, obviously it was exams that I wanted to be a judge. And I didn't really you know, it was an impressive sounding job. And I was brought up to think that you had to have an impressive sounding job. So I went through thinking I was gonna do all the stuff, you know, lawyering, and doctoring, and all that stuff. In the end, I settled on science. And I did a degree in chemistry, I got a master's in chemistry. And I thought, I wanted that. But I did a year in it after my degree, and I hated it. I like the first month, first month, I was learning to use this interesting piece of equipment, I was making excellent science, doing good graphs, writing papers, you know, small ones, the internal use, I thought was fun. And then month two, I started to realize that if I kept at this job, I'd be using this one machine for like, the next 1015 years of my life. And I'd be very good at it. And, you know, there's just the realization that I was working in a very small sector of science. And that was, that was the option that was that was all I could do. I couldn't see a way around that. And I fell into quiet depression, basically stopped going to work and brinly can't really fire you easily. So I didn't get fired, and eventually just quit. And went home to live with my parents again. And I just didn't know what I was gonna do with myself. But during my depress funk, while I was not really working at this job, I discovered Linux and Open Source. And this was because I was going through my head trying to figure out what to do with myself. And I realized that I liked programming. And, you know, my dissertation at my, in my chemistry degree was programmatic or the programmatic chemistry, I use Mathematica to simulate the quantum mechanical properties of helium. And my dissertation was like, really well received. And I really enjoyed the programming part of it. So like, it's just there was a mental block in my head that I had to like, really backed up against the idea of heating my career for the rest of my life, to consider programming. This is partly because I remember as school I'm into a careers fair, high school, secondary school, and I didn't know what British or American isn't. I went up to the two programmers there, because I knew I liked it. So I want to talk to them. And they came across to me as like the geekiest people I'd ever met. And that that put back the idea of me being a programmer and play another few years just by itself, but I was impressed with how much they loved talking about their work. And that stuck with me. So yeah, So I got involved in open source A, I made this little app called file light. And maybe even still exists, I'd known it's open source that someone weren't taking up the reins, I didn't hand them over manually or anything. And it was just to examine your disk space using a daisy type projection, I think they're called where it shows. It's like segmented pie charts. Like at the time, this was an incredibly important tool for me to have because it was 2003. And diskspace was incredibly expensive. And so I was continuously butting up against the edges of what I had. And having to use, I love the command line, I'd learned to love my mind and use d u, to figure out my disk usage. But it just wasn't as good as some recursive pie chart. And I'd use something similar to it in years past. So I wanted one for Linux. So I wrote it as is, has become the thing for me, I agonized for months over what to call it. So file wide, I thought was very clever, because I could do an icon that had like fire light, like fire kind of stuff on it. And it's like a light shining a lawyer onto your file system, I still think is pretty good, actually. But I spent months making this damn thing. And I remember like how thrilled I was when I got like certain aspects of it working there was just like, segments. And that, you know, that thrill this, I'm really experienced doing anything else. So I know as a programmer in my teens and childhood, like, made a lot of games. And I remember when I was 13, I think there was me and three other guys. And every lunch, we go straight to the library to program. And we were basically competing to like, make the coolest stuff. I mean, this other guy wanted to make games and I managed to make like the first game, I figured out scanning the manual, how to take key inputs without pausing the whole program. Because that was the thing that was bugging us was we couldn't figure out how to have stuff animating with key input. Because all the stuff we could find to take key input, pause the program, like indefinitely until there was a key press, I finally figured out how to do it before I made the first game and also Oh my god. And we it was like meet your I meet your game like amaze, you had a spaceship. And there was there wasn't materials and the walls were made of stone. And like you we coded all these mazes, and it was great. And the next thing we needed to be able to do was to figure out how to scroll the screen. Like this one, I just couldn't figure it out. And I came in one day and my friend had figured it out. And he was just so thrilled with himself. And he showed me how he did it. And like we were sharing all this information about how we figured things out. And like it was great. And then after that year, I just we stopped doing it and program case, something I just did by myself. Like there was a few other people who were doing with some other people who love programming their calculators blowing have a programmable calculator, but I have my computer at home. And you know, I try to make games of very once I go into C++, like my productivity plummeted for like 10 years. So I think that was the thing I C++ is so intensely complicated. I got good at it in the end because of open source, right? And that was on Linux was doing KDE. It's called that use this toolkit called cutie cutie, which was eventually bought by Nokia and then sold against someone else, I think and it still basically exists. But if no one wants to use C++ for making apps anymore released like games, sure, and maybe other programming languages, you know, no one wants to use C++. It's just, it's just this vital piece of infrastructure now that you can't get past the fact that every layer, you go down eventually you get to C plus plus

Tim Bourguignon 19:12
N Even though the last versions of C++ really are nothing like what we experienced before. I remember studying C++ in college and then working in C and then C++ for more like, and that was a nightmare. And when I looked at C++ something like five years ago, I just couldn't recognize it. It was an entirely different Yeah. dotnet or Java verbage. managed. It was different.

Max Howell 19:37
It definitely they definitely. They always were super keen to add features to C++ committee. They never stopped. Language came up with something cool. They're like we have to figure out how to cram this in as well. So you know, I don't think there's a C++ compiler that exists today. Even that can do all of the standard because is like, at least in a way that's reliable Oh, my God, I just remember the templating errors that used to get, like three pages of error message. So it's no one that everyone has switched away. Or at least maybe it's just like people stopped learning it. You know, when JavaScript and Ruby and PHP and Python became like viable, like doing real work, new programmers would go c plus, plus No fucking way. Nightmare. Even just trying to build a program was a nightmare while you write Ruby program, you just type ruby in the file name, and it ramps, well, you want

Tim Bourguignon 20:42
to install there, your father offered you a book about a C++ compiler. And for me, it was one of my uncle's. And he gave me that book. And I started studying I, I couldn't program a little bit on my calculator in basic. And so I started studying GRC. And at some point, I say, Okay, now now I studied enough, let's go, I could write a program. I just didn't figure out how to make it. Work didn't talk about this. And so it was just dumbfounded.

Max Howell 21:16
Manuals used to be more thorough, but like also, programmers always have a blind spot, like some vital part of making that thing work.

Tim Bourguignon 21:25
It was probably so obvious for the author that it was just mentioned in passing, and wasn't to me. And so it didn't occur to my to

Max Howell 21:36
steal this thing the other day, that was a key thing for Stardew Valley, which I've recently been replaying. And it has a console and everything in the documentation. So I open the console and type this. But I couldn't find anywhere that taught me how to open the console. It's just so typical of developers in general, like, yeah, as you say, it's like so obvious to them, they forget that you have to tell people, you have to I personally always come at things from the perspective of trying to not have any holes like that. And then encouraging people to tell me, if they don't like with open source. I think a lot of the time people don't report bugs like that, because they think they're going to be sheltered. Or someone someone's going to ignore them or you know, or it's not worth their time, or it's too obvious. So I always put a bit of Doc's in my in my documentation, say, Hey, by the way, are not perfect, please, please tell me if there's something missing. Pull Requests are welcome. And then I try to be as welcoming as possible, which is not always true. Because sometimes I just got too much going on, I lose it. But I've always tried to be a nice guy.

Tim Bourguignon 22:47
At least that's the story. We all have life happening around open source, right? It's, it's just this little thing we do on the side and doesn't bring any money. And sometimes you just get angry about it, and you get shouted out. And you still should be smiling and continue doing it. And we do. But still, we'll have to talk about tea at some point, because I wonder how that could change things. But before that, maybe we should talk about drew a little bit where idea about brew came from and how did you start working on it? How did that become your life for a while?

Max Howell 23:21
Yeah, suddenly became my life for a while. So well. To continue the previous story, I was home after creating a chemistry career. And then working on open source and I found this music player was well I would say always for the age of 11, I didn't like any music and then suddenly I loved all of it. And then so like when I got into apps and programming, I wanted to do music apps, I found this Linux one called Amarok that they just been released version point six something really. And the maintainer Marquis was asking for people to join the project. So I turned up in the IRC channel when I joined and then just after although he will tell you it was just before and I'm sure I'm right and he's wrong. But who knows this other guy called muesli turned up. And so we became known as the three M's and we created this it was a pretty good product like still exists I don't know anything about it anymore. But at the time it was doing innovative things with music and how to experience music as a user I dedicated my life to it for a year and a half until my parents kicked me out of the house telling me to get a job. unfortunately lost them London startup approached me because they needed someone to work in cute which was the toolkit that we use to write Amarok well ke used and I was in the UK and it was you know they liked what we've done. So I managed to get myself a career in programming without the requisite education or experience that you people you know, you usually have. And so I worked there for like three years. And it was while I was there, like I came up with the idea for homebrew because I worked for the client team. So we had six apps, Linux, Mac, Windows, Android, iPhone and Blackberry app for a very brief time while there was a BlackBerry App Store. And that we worked on Mac, because it was the unifying platform for all these things also, because like Mac was becoming cool. That was when Mac was becoming the platform for developers at the company, about half the developers use Mac and half use Linux or Windows, that it was growing up, I switched views before that, and fell in love. I found a Linux like system that was Unix underneath that. Also, people actually cared about the user experience in the GUI, rather than it being like a mess, which is what Linux was, I'm not sure how it is nowadays, I only use it on the server pretty much nowadays. So we're on Mac, and like the package managers for Mac, like were lacking my Mac ports was the main one. And it was fine. In many ways, it was very similar to a Linux package manager, but what I believe was a package manager that was hackable that as a developer trying to make things with an awful lot of different bits of open source software, I could program it in a certain way so that it would do what I needed, install the right things, and be cross platform essentially. So brew didn't really end up being any of those things, notably, but that was the genesis for what I started to do. And I started it because I'm the kind of person who tends to try and write my own tools. Frankly, if something isn't what I need it to be, I spend the time where I tend to just think about it incessantly until I come across like some idea that's interesting. And then I'm like, oh, I need that. Then I started building it. But I was also challenged by friend. Like, we go to the pub quite regularly. It was brilliant, after all in London, after work, and I complain about like the state of the tooling we were using, and like in the end, he'd like challenged me to just do something about it. And so I did, basically, I really kind of wonder if I would have started if he suddenly like, possibly like it at the time. And really started anything that's vast scale before, it was somewhat intimidating. But I knew I could do a good job. And frankly, I did. So after a few months of building it, I quit last time to work on it. This is because having open sourced it and managed to get a bit of attention around a little bit of marketing you kind of have to do to get in front of the right. Dave influences. This was 2009. So very different category of DEV influencer time, like Twitter was only two years old, but mostly get some attention. And it was getting like so much attention. But it was on Hacker News, like seven times in a row. And the amount of contributions coming in was quite staggering. And like it was occupying all my time, but I was loving it. I felt like it was the thing that I was building that was the most impactful, but I could be doing right then. So I quit to work on it full time and only had about six months of money saved up and thought I'd probably figure something out. And then I remember like, the day before I was about to go overdraft on my bank account, like going into the bank and asking them what would happen when I went overdraft? Oh, you'll be fine. We'll just charge you interest. But you don't have to worry, you know, we're not going to take you to jail or something. Right. Okay, great. So there I am. I just found myself contract gig through a friend and I worked at TweetDeck actually made that Android app and redid that iPhone app, which was great. I really enjoyed those jobs. But it was taking me away from homebrew, I can do as much time and basically I was doing two jobs worth social life love life, like suffered greatly during this period. But you know, honestly, this is how my career has been like since there's periods where I'm working on open source full time because I got something that I'm really interested in doing and like it's making the more difference and I'm passionate about building infrastructure that everybody uses and needs brings me a lot of satisfaction when running out of money and funding some stuff or contract or for a year or two Apple showed me that I'm not really one for corporate work, that's for sure. Well, that's that's how I tend to T recently last year is getting fed up really, with not being able to work on open source even though some of the open source I built is foundational and used by millions and used by many many like very profitable companies. The other big open source project I made was this promise kit library for iPhone. And it was at its peak use about 100,000 apps. And it just seemed ridiculous to me that I was begging for sponsorship. And there was that interest in bounties. So I quit brew in like 2015 2016. remember which year exactly, I certainly been less involved for a number of years, but I've been on it for like years like pretenders 1000s of hours into it. And I did feel that it was basically done and they didn't need me anymore. Like I passed the reins to various different people, and they were doing a great job. And I remember the day I handed it to the community or took it off my username, it was mscl slash homebrew for years. And I love that, you know, like, nothing like stroking your ego to have the biggest project on GitHub slap bang on your username. So, you know, we're not afraid to say I'd like to. So I remember the day I gave it up, I had the page open on GitHub, and it was like transfer this repository to the Homebrew organization. And I can push it. I spent like 12 hours looking at the button. In the end as a co worker at the time I was teaching iPhone development at boot camp in Chicago, which is great. I love that it was also good because I could do it half the time. So I did 20 hours a week. So when the other 20 hours a week working on open source. Sad that lasts longer. But the truth of it is a lot of big cancer. And this one was a good one. But it's expensive. And that it was a period where there was a lot of them. So this one didn't do so well in the end. And I asked my coworker I was like should I do it? He was like Max, honestly. But no. It was after that I did it because I realized that the reason I was not doing it was egotistical and selfish. And I the community. It belonged to the community. At that point, the project, it wasn't mine anymore. And you know, as soon as you open source something, it's not really yours. And I think a lot of open source, people need to realize that if they don't, I think the ones that are the most passionate about it know that that's why there's been a move over the years to have less software be GPL and you know, be MIT or BSD license like the GPL takes freedoms away. And the true spirit of open sources you're giving to humanity you're giving to everybody. And you shouldn't be like imposing something like yeah, surely it's to stop companies from exploiting the code. And I was just complaining that there was a bunch of companies exploiting my code and not giving back to me. But I'd much rather those companies were using my software and getting something out of it and maybe making a difference in the world with something they're doing that not okay. Forget where we started.

Tim Bourguignon 33:03
Oh, that's that's a nice story. And definitely not an easy one. I, I see two sides to this to this and feeling linked to your code or to to what you're producing this the one obviously the the ego part and say, Well, I initiated this, which talked about, but there's also the part where you feel responsible for continuing the support. And and this is also something you have to sever at some point and say, Well, okay, I don't feel the sole responsible person for that anymore. And he's going to pick it up or not. And I'll be okay with that. And this is hard as well, isn't it?

Max Howell 33:35
Yeah, see, I can't give up on open source projects until I found someone to take it on. Although I did say that fall, I just left it. But you know, so I guess isn't true. It depends. Like, I still maintain promise care, which is like the way open source projects I still maintain. And that's because it's still used. My maintenance ain't great. And would be great if every one of those 100,000 apps gave me $1 A year I gotta say.

Tim Bourguignon 34:10
That's how little it takes. And it would actually make a huge difference is that the idea behind a tedious XYZ is to challenge this and come up to a solution to that.

Max Howell 34:21
Yeah, well, exactly. You know, I have many times tried to come up with solutions for least my personal open source funding issues and I have not been successful where other people have in terms of like making a Patreon it personally marketing themselves probably would have been different if I'm still actively working on homebrew. But, you know, because I didn't do that until years after homebrew and frankly, when I left the project, like, still wasn't a huge amount of sponsorship or bounties and things. But the truth is like in general, you have to be very lucky, I think to be able to make a living let alone like make the kind of salary that You wouldn't work get working for like a big tech company with the charity of fellow developers like you talk to any developer and they feel bad that they don't give back to open source, but it's not really their responsibility in my mind to, it's the companies they work for who should be. But I have sympathy for those companies as 10s of 1000s of open source projects. Like I think Nick's 70,000 packages, homebrew is like, I think 20 to 30, at this point, Debian sites, similar 20 30,000 packages. And that's not even including like all the ones in node, and stuff like that. So if you're like Microsoft, how on earth do you figure out how to pay all those people, even if it's only $1 Each per year, it's impossible. So you need some level of automation. That's the truth. So like T is doing that. So I came to T last year, and this is cause I needed something new, needed a light, I was fed up with the cycles, open source, and then company open sourcing company, I want to work on open source. And I never stop thinking about what I would add to homebrew, what we could do, how we can be better. What features is lacking life, that's the state of the project, maybe I wouldn't be implemented. And maybe not. Honestly, like, there is a problem when there's products get to a certain age and maturity, you can't add new things. After a certain level. Too many people depend on how it works. And they're not interested in the new shit. And the maintainers aren't necessarily interested in the new shit. But I think part of the reason I broke I left the project is because like what the last big one last big features were added or improved. The other maintainers were annoyed at me rather than excited about it, because it broke some stuff, like adding features break stuff. And so you know, I wasn't I wasn't the person for the project anymore in that respect. But you know, I never stopped thinking about new things. But I didn't want to do another typically I don't do things twice. But when I started looking into like the web three label last year, because I didn't know the term web three until last year. And that made it sound very interesting. Like what how can they possibly justify incrementing? A whole web? What what is this new technology that they're saying that they're going to change out the whole internet works. So I started looking into it. And I realized that there was some interesting shit going on there. And that was one evening, while I was trying to figure out something to do. Like, you know, Paul, the reason I was trying to figure out something to do is because me and my girlfriend got pregnant we intended to it was planned, but we planned it to happen over a period of like 12 months or so. And it happened like a couple of weeks after we intended decided to start. And so like my entire plan for like what the next year was going to be with somebody like destroyed, I needed, I needed something solid to provide for my family. Basically, I woke up the day or two, she told me and I was like in a mild panic. So so stay up late smoking weed, and going through all my old ideas. Simultaneously, while doing this research for what web three was, like I just had this like golden moment of inspiration while looking at NF T's and stuff like that. I think NF T's are mostly kind of silly. I'm sure that some of the new friends I've made in the web three era, they're gonna like hate me for saying that. But it's just like just people selling baseball cards essentially. But essentially, an NFT is just an immutable data point, right? It doesn't have to have a JPEG associated with it. And in fact, like, if you look into this stuff, the actual image isn't actually stored on blockchain. Anyway, like, it'd be way too expensive to do that. It's just a hash, and the hashes of the image. And so if you search for the hash, you'll find the image and there's decentralized stockpile storage that will give you that image if you enter the hash, but a lot of them don't even use decentralized file storage. Anyway, that's beside the point. But what I found interesting was I was playing around with the NF T's. And when I sold one, open C told me how they were giving 10% to the original creator. And that was via a digital contract. And so I was like, whoa. So with these digital contracts, you can basically like automate certain kinds of value transfer. And then I was like, well, there's 10s of 1000s of packages in open source, I have this slight moment of inspiration for like seeing the dependency tree be something where token is automatically transferred, if you can get some value injected into the top. So like, if you inject some value into React, then all the dependencies of React all the way down to Lipsy or through the node dependency tree through to node OpenSSL. Everything will get a percentage of that value. And it's automatic. So there's companies that don't know how to sponsor totally have no excuse. And like, random developers who like want to sponsor 10 bucks or whatever, well, so at that point, I wasn't thinking about, like how the value goes, it gets it and just that if we could figure out a way to get some value in, we could effectively compensate the entire open source ecosystem. And so then that they'd be, you know, I was like, why, okay, like, so you've got this great idea for, like, How bad could happen, but How on earth am I going to get everyone to do it. And that's when I started thinking about Blue too. Because I'm a product guy, the end of the day, I like making products. I also did design school, and almost did that, for my degree and night, it would have been a totally different story today, if I'd done design, because I probably would have stuck with it. And I know that you can't just have like, a protocol that's like, here, like you put some money in, it will pay people, no one's gonna be interested, no one's gonna want to use that you need a product to go with it a compelling product that then is like the stepping stone for people to start using it. So then the idea of using a blockchain as a package database came to me and then you could have a package manager that uses that. And then there's all sorts of other benefits. You put in this package registry on chain, like the decentralized aspect, the immutable aspect and the security aspects as well, that make it like just a really good use of blockchain. Actually, there's so many bad uses of blockchain that we've seen over the last two, three years, right. It's basically just people on a money grab. And I get why web three has bad rap, because there's been a lot of scams. So whenever there's money, there's scam. So I've actually like come to the conclusion that if scammers have discovered something new for scamming people, you should probably study what they've done, because there's some interesting tech there that maybe you can turn into something real, that doesn't scam people, because scammers are pretty smart. All the time. They're coming up with ingenious new solutions just to be fraudulent. Sadly, it's an awful waste of their talents. But you know, it's human nature. So yeah, it's a good use of blockchain, an immutable package registry and the way we're building it, like it's gonna be liquefied and like with good API's on top of it, like I want all packaged solutions, to be using this as the one authoritative package database, essentially, the package maintainers will create NF T's in our blockchain that represent package releases. So it'd be like their package, the project name of some kind, that's a unique identifier, and the version that is, and then the dependency information, which of course, is very important, so that there'll be an FFT, and we use those NF T's as like a guide to distribute the token. And we've come up with what I think is like a fairly amazing system idea for how the remuneration will work. So that it's not like people think when I tell them about T, that we're going to change how open source works, right. So you'll start, you'll have to stop paying for packages, like you're in when you do like T install Node, it's going to like charge you a micro payment of like point 01 cents or something like no, like, you can't change how open source works, that would be nuts, like T wouldn't work, nobody would use it. Like they'd say they want to use it because every developer feels bad about using all this open source for free, but they wouldn't.

Max Howell 43:25
So you can't We can't change it. So we we got this indirect payments model, the original idea was like, people could sponsor the top and it would filter down to the entire open source ecosystem so that everybody would be remunerated and not just the fancy cool packages at the top that people hear about know about. But what we're doing, we got a white paper out, you can go and read it, because you can't be a web three project without white paper. But also like having read a lot of white papers, I started to realize why it does help you to really define what you're doing clearly upfront, and blockchain is complicated is it's one of the more complicated things that you can do, really on the web nowadays. So getting it right, quite important. But so we have this staking system. So it's like banks, like interest rates from banks. So you put some money in the bank, and they reward you for storing your money with them by giving you like a small percentage, nowadays, more than ever, admittedly, but they give you some money. And that's by saying, Hey, thanks for using us as bank. So we tell you give us your token, your T token. So you buy some new and you stake into the system, and you stake it against open source packages. And we're going to incentivize you staking against ones that are less popular, but I'll get to that later. So you stake it against them. And then we give you an interest effectively, like periodically probably every 24 or 48 hours. And we give you half of that interest and we give the other half to the patches you've staked against and then a percentage of that filter through to all the dependencies. So this indirect remuneration model essentially using what is truly possible with web three like banks can do this with interest rates because they have trillions of dollars. But you can't, you can't do that as a start up. But you can do it with free because it's programmable money. And the token isn't really money, right, so you can distribute it as you'd like. So it's the basis of it. We call the staking steeping because I still like to have cool names in my products, we're incentivizing you to stick against packages that are less popular. So it won't just be all stacked against like the most popular thing of the day, you get a bigger reward if you find a package that's less popular to stick against. And so we're going to have like, we enter as we define them as tasters, effectively tea tasters, they will be out there just looking for new stuff to state so they can get the higher reward. And also, because we're doing it with Blockchain, and we're doing it with a proof of stake system, we can do what's called slashing, slashing is where you take away people's token. So it's obviously a punishment. And we'll be doing this for security issues. So you can put your packages into the T ecosystem and get rewards. And we want these rewards to be tangible, right? I want people to quit Facebook, because there'll be making just as much money maintaining a core piece of open source they've come up with, I want these talented developers from these big Fang companies to stop spending all their time on stupid algorithms that figure out how to make people's like content, or prioritize ads, and use that talent for the benefit of humanity. Why open source is a tangible benefit to humanity is increased are the general like goodness in the world. The internet is like an amazing invention and the open source powers. And so these people should be working full time to make the world a better place. I often say that, you know, I wonder what I would have done if I'd been able to work on open source full time for the last 15 years. Because I'd say I'd been able to work on it full time, maybe 20% of the time. And in that 20% the time and most of my homebrew and promise kit, and a few other things. I made this thing called Swift, which was very popular for time. And there was a few other projects that I just stopped because I didn't have the time and they were good. Like I invented JSX, like six years before Facebook was project called bull script from my GitHub, ball script.bs extension. But I had the idea of embedding HTML in JavaScript and being able to create apps that way, and it never went anywhere because I never talked about it. No one rediscovered it. And I stopped working on it. Because the project I was working on with a friend, we were trying to make a startup we couldn't get funding. So anything I've learned about VCs over the years is that they don't invest in anything that looks particularly innovative. They only invest in stuff that is obviously going to work.

Tim Bourguignon 47:46
What least surely enough, it's been a wild ride. And a very interesting one. Yeah, thank you very much. And we're already over time, but I just couldn't stop you. That was I wrote this, this tea, this tip here is really going to get a take up and become something that's usually a place where I ask for advice. And I think I have one in mind, what would be the thing that people shouldn't hear to convince them to invest in open source now to your, as you said, quit their job as a developer and invest in in for their career in open source? Where invest as Te users, what is the one the one advice they should hear?

Max Howell 48:27
Well, you gotta wait for T, frankly, there's projects out there that are trying to do tangible things for open source, like gitcoin is a fairly famous web three, one, they have an awful lot of money that they're giving away for open source projects. But you know, it's still sponsorship and bounties at the end of the day. And I don't believe that that's effective enough. Long for Jay was great incident from December where I won't go into detail because we're running out of time. But you know, it was a classic example of Braska project, as we call them were like, they've worked on these things. And nobody knows as part of that. Yeah, exactly. So you need to honestly, I said it many times, but I wouldn't be building TFT already existed because I'm building t so that I don't need to build it and can work on open source in the future and make a living out of it is incredibly rewarding is well worth doing. If you can make it work. It isn't easy. What's the ETA for it? So I'm actively working on the package management part. And we haven't talked about that much. But it does involve all the ideas of Hudson's brew about what a package manager could be. And I see it's much quite quite complimentary to homebrew actually, I think people still gonna use homebrew to a good extent T is far more developer focused dev team focus dev shop focused open source focused them so it's gonna be a it's gonna be I'm really excited about actually it's got a few features, I think are just going to blow people's minds. I hope it hope it does. I'm hoping what we're still planning September at this point. Okay, I just had a meeting today with my team and And then we're thinking September. So currently we've got the white paper out there, it's open source, you can contribute to it. And we build a new versions that stamp a new semantic version on it. And you've contributed to the T white paper. Congratulations, built from markdown into PDF using latex. And our website is open source as well, because I generally I just want everything to be open source company. So you can go there and check it out. T XYZ is our website. I'm hiring, I want devs devs, who are passionate about open source who want to work on packaging type stuff, the things we're working on a very user focused from the mindset of like, we're helping the people who build the internet, essentially. So please reply, and let me know why you want to work with T and like, what sort of stuff you've done before.

Tim Bourguignon 50:44
You heard it. Awesome, Max. Thank you very, very much. It's been a very wild ride, but I loved it. Thank you very much.

Max Howell 50:51
So it's a pleasure.

Tim Bourguignon 50:53
Working people find your line T XYZ we heard Yeah.

Max Howell 50:57
XYZ to XYZ is my one. My Twitter's twitter.com/mcl Don't tweet as much as they used to don't find Twitter as fun as it used to be like, the reply guys ruined it for me, honestly. And we have discord and telegram and stuff, so discord for dev chat. And I congratulate GitHub and open a discussion on things if you want to about dev stuff too.

Tim Bourguignon 51:18
Awesome. And you want to plug in for quality. That's it. Awesome, Max. Thank you again. And this has been another episode of Devil's journey, and we see each other next week. Cheers. Thanks a lot for tuning in. I hope you have enjoyed this week's episode. If you liked the show, please share rate and review. It helps more listeners discover the stories. You can find the links to all the platforms to show appears on on our website, Dev journey dot info, slash subscribe. Creating the show every week takes a lot of time, energy, and of course money. Would you please help me continue bringing out those inspiring stories every week by pledging a small monthly donation, you'll find our patreon link at Dev journey dot info slash donate. And finally don't hesitate to reach out and tell me how this week store is shaping your future. You can find me on Twitter at @timothep ti m o t h e p or email info at Deaf journey dot info. Talk to you soon.