AI Can Do the Work, But It Can't Do the Understanding | Better Stack Podcast Ep. 18

BBetter Stack
Computing/SoftwareManagementConsumer Electronics

Transcript

00:00:00Welcome to the Better Start podcast, where we have conversations about AI, software dev and all kinds of new tech.
00:00:06I'm one of your hosts, Richard, and I'm joined by...
00:00:08James, hello.
00:00:10Andrus, hello.
00:00:11And I'm Vincent, hello.
00:00:12As you mentioned offline, Vincent, you have a lot of keyboards.
00:00:16Do you want to tell us how you got into that?
00:00:18Yes.
00:00:19Okay, so usually when people watch the YouTube thing, they kind of go like,
00:00:23gee, that guy has an unhinged amount of keyboards.
00:00:25It did all start with a pretty sad story, though.
00:00:27So I got some relatively serious RSI issues in this hand.
00:00:30I don't have them anymore, but there was this point in time when you have your normal keyboard,
00:00:35and whenever you hit enter, you have to do this wrist movement to the right.
00:00:39Oh, and that was just painful.
00:00:40It was a really bad habit.
00:00:41You can also have a better habit, either by exercising or by actually lifting your hand before you actually hit that key.
00:00:47But anyway, I had some serious RSI issues, and I kind of went like,
00:00:50okay, I have to invest in maybe a more ergonomic setup, and then maybe doing the keyboard thing would be good.
00:00:55But then I just noticed that so many of these reviews on YouTube are just bad.
00:00:59And part of me gets it because, oh, if you do a positive review,
00:01:02the same provider of keyboards is going to come back and give you another sample because you keep saying nice things.
00:01:07But if you're watching a review, you also want to hear about the negative things.
00:01:09So I kind of went like, you know, I guess it's up to me.
00:01:12Whenever I review these things, I will definitely talk about the pluses,
00:01:16but I also want to have some guy on the internet also talking about the negatives.
00:01:19And that eventually led me to, you know, my first four videos where eventually I landed on this one keyboard that I like.
00:01:25It's the GloV80.
00:01:25It's a very sensible default if you have wrist issues.
00:01:28But then people started noticing, and they started sending me stuff.
00:01:31So, like, most of the keyboards that you see behind me, not all of them, are not paid with my own money.
00:01:36So that's how this thing just got started.
00:01:37Like, eventually you just turn into this YouTuber guy that, like, receives random stuff from strangers on the internet,
00:01:42some of which I'm happy to review.
00:01:44But that's the short story.
00:01:46And eventually, you know, it becomes a bit more of a hobby.
00:01:48So you start exploring all these, like, super fancy switches and et cetera.
00:01:52Are you still doing that occasionally?
00:01:54Like, reviewing keyboards on the channel?
00:01:56Yep, that's my personal one.
00:01:58The, like, at some point you will have had, like, the big fancy showstopper keyboards.
00:02:06Eventually you've had them.
00:02:07So then you go more niche and niche and niche.
00:02:10But it's, like, the thing for me is as long as it's a fun hobby, I'll just keep doing it.
00:02:13And if it's no longer fun, then maybe I'll stop.
00:02:15But until then, like, I do have a nice backdrop for, like, YouTube stuff that I do in general.
00:02:19So that helps the hobby, I guess you could say.
00:02:22Yeah, I'm not that deep into keyboards.
00:02:24Oh, sorry, you go, James.
00:02:25I was going to say, I tried to get into the hobby as well.
00:02:26But it's an expensive one to start to get into.
00:02:30I think you can get in quite good on, like, cheap ones these days.
00:02:33But that's sort of where I ended.
00:02:35And I was like, it's going to cost me a lot of money if I dive deeper into this hobby.
00:02:39That's definitely true.
00:02:40And, like, I hate making a recommendation for a keyboard that you should buy because it's a lot of money.
00:02:45Like, I'd love to warn you about maybe what not to do.
00:02:48But I hate to tell you what you should do because you should figure it out yourself.
00:02:51The one thing I will say, though, on this whole topic, at some point, it's not necessarily so much about having a quote-unquote ergonomic keyboard,
00:02:58like a keyboard with a fancy symmetric shape.
00:03:00At some point, it's also about, like, I just want to have a keyboard that has firmware that I can flash so I can customize it.
00:03:05So I could maybe say that this back, like, caps lock, which is a useless button, that that becomes backspace, let's say.
00:03:11So that's just less distance for your hand.
00:03:13Or that you, I don't know, trigger Whisper or, like, whatever app you like.
00:03:17And that you just really customize the keyboard itself, such that when you switch laptops or, like, different devices, that you carry along good habits with you.
00:03:25And to anyone who's interested in doing things with Vim, like, the one thing I'll say is, like, yeah, you can configure Vim.
00:03:30Imagine being able to also configure the keyboard along with it.
00:03:33There's something very productive about that, let alone it's also more ergonomic, but it's also something very fun about being able to customize your hardware as well.
00:03:41Yeah, I think I agree with you on that part.
00:03:44But, yeah, it's difficult to find the keyboards that you know you can customize, because you can get lots of keyboards out there, but they don't have firmware that you can do that with.
00:03:52But there are software alternatives.
00:03:54So I know there's Karabina Elements, which is quite popular for the Mac, and also Kanata.
00:03:59What's your view on those?
00:04:01I mean, if you only have Mac, I guess you could do it.
00:04:04But I also use Linux.
00:04:05So I need something that lets me do both.
00:04:07And then I kind of say, like, even the Keychron and, like, Nufi keyboards, those come with QMK, which is this firmware under the hood.
00:04:14Both Nufi and Keychron are building their own sort of semi-proprietary thing on top of it.
00:04:20So it's not as open as it could be, but it's still pretty decent.
00:04:23And, like, switching keys around, you can definitely configure all of that.
00:04:26So that's all great.
00:04:27The only downside with their software, typically, I don't know to what extent they're changing that now, but typically, there's this thing known as a home row modification.
00:04:35So you've got to imagine you can tap a key, but you can also keep it pressed down, which is typically what you would do with Shift for capital letters.
00:04:41But why only Shift?
00:04:43You could also say, like, for J, if I tap it, it's just J.
00:04:45But if I keep it pressed down, then it's Shift.
00:04:47And that way, you have access to maybe not just Shift, but Command and Control and Alt without having to move your hand at all.
00:04:53And you can do that for both hands.
00:04:55And, you know, again, sky's the limit.
00:04:56You can do all sorts of fancy things.
00:04:58But the timing of which you keep the key pressed down, that is something you typically cannot configure with the Keychron or NeuFi stuff.
00:05:05Then you actually have to go down.
00:05:06Either use different open source software, there's vial, but then you have to sort of drill down.
00:05:11But, yeah, long story short, this is a hobby of mine.
00:05:13We can talk about this for ages, but that's why I have lots of these keyboards.
00:05:16It's just this hobby that kind of got out of hand because of YouTube, because the moment you start making videos, vendors just come at you.
00:05:22I was going to say, do those vendors just send them to you with no expectations, or do some of them try and add things like, please don't review this badly?
00:05:31I mean, I do.
00:05:31And then you just ignore them.
00:05:33No, well, so the thing that I, like, the one thing that did happen this one time was, you know, I found this thing that was really awkward in this keyboard once.
00:05:41And let's not name a brand here.
00:05:42But one thing that did happen is I mentioned it to them.
00:05:45And, you know, I like all of these things.
00:05:48These two things are just a little bit awkward, so I'm going to mention those.
00:05:50And then you do get this thing of, like, okay, well, we have affiliate links, just so you know, right?
00:05:55You can put your affiliate links and your little description thing at the bottom.
00:05:58But I just have a rule that I never do affiliate links.
00:06:01And having that rule also makes the hobby more of a hobby because then the people that come to you are just also genuinely interested in, like, having the review out there.
00:06:09What I've also had happen to me is there's a couple of these companies that want my feedback while they are designing the keyboard itself.
00:06:16And that's, you know, that does fall a little bit in the murky waters, because obviously, if they're then going to ask a review from me, it's more likely to be positive, so to say.
00:06:25I have accepted those in the past, but only when vendors are trying to do something new and interesting.
00:06:30Because then it's just my own curiosity just takes over at that point.
00:06:33Sure.
00:06:33That makes a lot of sense.
00:06:35Let's actually move into less keyboard.
00:06:38We could jump into the keyboard stuff a bit later.
00:06:40I was going to say that there are a lot of us, most of us here, myself included, like, JavaScript, TypeScript people.
00:06:47I don't know, but Andrus, I think you are.
00:06:50I am.
00:06:51Okay, fine.
00:06:52And so I know Vincent is a huge Python guy.
00:06:54We do have a Python person on the scene.
00:06:56He's unfortunately unable to make the podcast.
00:06:59But, yeah, it'll be interesting.
00:07:01I think it'll be more, like, explanatory stuff to us more than kind of talking to Python people.
00:07:07But, yeah, let's start off by saying what you do and who you are.
00:07:12Sure.
00:07:12So, hi, my name is Vincent.
00:07:13I also do a bit of JavaScript, just to be clear on that front.
00:07:16Okay.
00:07:16But I'm definitely more well known in sort of the Python ecosystem.
00:07:19So, I'm, like, there's different types of ecosystems in Python.
00:07:22You've got, like, the web people.
00:07:23You might have heard of frameworks like Django or Flask or FastAPI.
00:07:27That's what a lot of people do.
00:07:28But then, I think if you go, like, what's the use case of Python these days?
00:07:32A lot of that is just data stuff.
00:07:33So, machine learning things, data frame libraries.
00:07:36And that's also sort of my background.
00:07:37There's a conference called PyData that I helped organize in Amsterdam.
00:07:40So, that's, like, a little bit of background about me.
00:07:42I've also made a couple of, like, scikit-learn plug-ins.
00:07:44That's what a lot of people know me from.
00:07:45I've also worked for a lot of open source companies doing data stuff in the space.
00:07:49So, people might have heard of Spacey and Explosion and Raza and, like, scikit-learn.
00:07:53That's my background.
00:07:54Nowadays, I work for a company called Marimo.
00:07:56We were acquired, like, half a year ago.
00:07:58And one way to explain what we do is we have a new Python notebook that is increasingly popular.
00:08:05You could look at it as, like, the next evolution of Jupyter.
00:08:07That's, like, a way people like to describe it.
00:08:10Yeah, we grow about 5% a week when you look at the download numbers.
00:08:14Like, that's our average right now.
00:08:15So, like, I've seen a project grow, like, 11x over a year, which is, like, a super fun experience.
00:08:21But that's what I do, and that's what I'm most active with.
00:08:23I do a little bit of engineering there, but I'm also on the growth team.
00:08:26So, like, that's sort of the main activity that I do.
00:08:29So, I try to figure out cool, new, fun ways to use this new notebook.
00:08:33And, yeah, while also, like, being part of a small team.
00:08:36I think we're nine people now-ish.
00:08:38Like, we're still relatively small.
00:08:40But that's sort of what I've been doing and what I'm focused on right now.
00:08:43Nice.
00:08:44And I think, I don't know if I'm wrong, but I read somewhere that you're self-taught in data.
00:08:48Is that correct?
00:08:49I mean, I have a background in econometrics and operations research.
00:08:51So, I definitely had, like, an applied math background, and that definitely helps.
00:08:55But, I mean, the courses in programming that they gave me were, like, for programming languages, like, auxmetrics.
00:09:01Which is, like, if you're a super econometrics nerd, that'll be useful, maybe.
00:09:04But, like, nothing like that in the real world.
00:09:06So, eventually, the main switch for me mentally was I saw this thing come out called D3.
00:09:12Like, I just started graduating when D3 came out for the first time.
00:09:15And I saw that, and I was kind of like, oh, man, that's just amazing.
00:09:18Like, it's really cool to do the math on paper.
00:09:20But if you can translate that to these interactive things in the computer, like, oh, I got to learn how to do this.
00:09:26So, I taught myself just enough of that to also be able to build tools for Python people and R people that, you know, a lot of Python people don't learn JavaScript.
00:09:34But I started out with D3.
00:09:36So, I ended up building, like, all these fancy little interactive tools that could work in the web together with Python that other people would never really build.
00:09:42And that actually got me a little bit of a foot in the door in the Python ecosystem.
00:09:46And then I just taught myself a whole lot of Python from there.
00:09:48That's, like, part of the story.
00:09:50Another part of the story was also that when I graduated, I contemplated that, I don't know, maybe this programming thing isn't for me.
00:09:57Because I was kind of an extrovert and not a lot of programmers were extroverted.
00:10:00So, I don't know for sure.
00:10:01But, like, I was wondering.
00:10:03So, I did this big trip through Latin America while backpacking.
00:10:06And I also had, like, some work with me as an independent contractor from the Netherlands doing a little bit of Python work.
00:10:11And while backpacking, I had a couple of these evenings where I kind of felt like, you know, sure, I could go clubbing.
00:10:16But I want to do an evening of recreational programming, actually.
00:10:19That just sounds more fun.
00:10:20And that was, like, a really big sign for me, like, okay, like, something with this programming does feel like that's a hit.
00:10:24So, when I came back to the Netherlands, to, you know, a place where I live, I did know, like, okay, you've got to double down on this.
00:10:31Because if you don't want to, if you don't feel like clubbing in an exotic place and instead you want to do programming, you have to double down on programming and, like, teach yourself all the things.
00:10:38That's, like, a version of the Marvel superhero background origin story, I guess.
00:10:44Nice.
00:10:46I don't know if I'm jumping into someone else's questions, but for your kind of arc into, I don't know, superhero arc, what was the reason for kind of doing, because I know you've got something called Calm Code, which is, like, a place where you teach courses and stuff.
00:11:02What was the reason for that?
00:11:04Right.
00:11:04So, one thing I noticed is, like, eventually the, so, I could teach you how an oven works, right?
00:11:12But it doesn't teach you how to cook.
00:11:14And it just started feeling to me that, like, a lot of these courses were more, like, manuals and a little bit less of, like, yeah, okay, but if you really want to cook the pizza, just, like, make sure you throw dough in the air this way, which has nothing to do with how the machine works, but, like, it is a step that you've got to learn if you want to make, like, great pizza.
00:11:29And there were, like, a few of these moments where looking at both educational material on the internet as well as, like, stuff I did for my former employer, I just kind of fed up with the way that things were taught.
00:11:39Like, a whole, like, sometimes you can just explain something in two minutes and then move on to, like, cooler stuff.
00:11:44So, that led me to just experiment with this thing called Calm Code, where every weekend I would just look at a few tools that I thought could be explained better.
00:11:51And I would just make a course, which is typically, like, five videos of two to three minutes each.
00:11:56And then after half an hour, you will have just gotten a good impression of what, like, a topic in Python could be all about.
00:12:01So, kind of context managers, generators, like, a few of these topics.
00:12:04You don't need an hour to explain that.
00:12:07You just need, like, five good three-minute videos, and then you can start playing with it.
00:12:11And that's just something I've maintained.
00:12:14I started working on that, like, five, six years ago or something.
00:12:17Nowadays, it's a lot less popular because of all these freaking LLMs.
00:12:21But I still get, like, I don't know, I think, like, a million people saw the website in total, some of which, you know, took a bunch of courses.
00:12:27Some of them eventually became paying members.
00:12:29Like, 99% of the courses are free.
00:12:31Just a few of them you got to pay for to help me pay with the server fees.
00:12:34But, I don't know, I still get, like, a few hundred, maybe a thousand people a month that watch the website, and I still keep it up.
00:12:41And people, the funniest thing is more that, like, I sometimes go to meetups in Amsterdam, and there'll be, like, a Brazilian guy that randomly walks up to me and goes, like, you're the Calm Co guy.
00:12:50I'm like, sure, like, hello, person from the other side of the planet.
00:12:53Yeah, that's a hobby project of mine that I started five years ago.
00:12:56So, I still get, like, a lot of, like, cool high-five moments because of it.
00:12:59But it's not something I do super actively anymore.
00:13:02Yeah, like, always make fun side projects.
00:13:04Like, this was, like, one fun side project I did.
00:13:07And in hindsight, even though, you know, it didn't make me a millionaire, which is also just totally fine, it did give me reputation, which I did, which I definitely still benefit from, like, five years later.
00:13:17Easy.
00:13:18I did want to actually ask, how did you end up in Netherlands?
00:13:24I mean, I'm Dutch, so that helps.
00:13:26So, you are, okay.
00:13:28Couldn't tell by your accent.
00:13:28It's just that I've got a good accent.
00:13:32So, I was born in the United States, but my parents are just Dutch.
00:13:38So, like, I did high school here and, like, college and everything.
00:13:41But I did go back for, like, like, junior high school is when I went to the U.S.
00:13:47I did one year in Boston and one year in California.
00:13:50But this was, like, before social media, kind of, when I was there.
00:13:53So, I actually became pen pals with a lot of people and I kept, like, writing letters for, like, years to, like, my friends in the U.S.
00:13:59So, they're just, I always kept interacting to, like, people that I consider to be close in English, which also means you never lose the accent, really.
00:14:07But I think Dutch people, in general, have really good English, like, whenever I go to Amsterdam, everyone speaks fluent English.
00:14:13We, so, the big trick on that one is, at least in my generation, we never, like, we always put, like, Dutch subtitles in, like, English movies, which is not what the French and German did.
00:14:22They would just overdub it.
00:14:23Which, if you do that for, like, a generation, suddenly the entire Dutch population speaks English pretty well.
00:14:28And all of our neighbors don't.
00:14:29So, like, no surprise, lots of U.S. companies set up shop in Amsterdam as opposed to, like, Berlin, as, like, one of the reasons.
00:14:36I'm sure there's many more.
00:14:39But, yeah, no, like, I was partially raised in the U.S. and hence the accent.
00:14:42So, a lot of people confuse, like, a lot of people look at me, like, it took a while for my neighbors to realize that I was actually Dutch, too.
00:14:48Like, it's a, it's a funny, weird thing.
00:14:51But, yeah, I'm more Dutch than American at this point.
00:14:55Cool.
00:14:56So, going back to something you said earlier, just, like, under your breath, just, like, all these frickin' LLMs.
00:15:00I would have thought, as someone who's big into Python and data science, that you'd be a massive fan of LLMs and where AI is going.
00:15:08So, what's your viewpoint?
00:15:09Are you pro or against?
00:15:12Okay, so, there's a lot of people that are blue-pilled and there's a lot of people that are red-pilled.
00:15:16I am purple-pilled, I think.
00:15:17So, I definitely see a lot of reasons to be optimistic, but I also see lots of reasons to be sort of in the red.
00:15:23There's a few things I think are really cool about it, and there's a few things that I really don't.
00:15:27So, if I go to YouTube and let's say, oh, I might want to learn about Hermes.
00:15:31Like, people tell me Hermes, Hermes, Hermes, something Hermes.
00:15:34So, like, I want to learn that.
00:15:35You type in Hermes and you just, you look for a video that's, like, a good, calm explainer of, like, what Hermes might be.
00:15:42And the first 10 videos, could you imagine what the thumbnail is going to look like?
00:15:46Can you imagine what the intro is going to be like for those videos?
00:15:48Are they going to be, like, really nice, boring videos that explain to me how a thing works?
00:15:52Or is it going to be, like, super hybrid and some bro with a weird accent putting his face in the camera more than what's on his screen?
00:15:58And is that the new norm now?
00:16:00That's one thing I don't like about LLMs.
00:16:01There's this hype around it that's a lot less about explaining how it's actually working or here's what I learned.
00:16:07And a lot more of, like, oh, I'm a dude on the internet who wants to sell courses.
00:16:10Something about LLMs has just made that thing grow a lot bigger.
00:16:13And that's the thing I really don't like.
00:16:16Because I like it when things are boring and we can try to understand it and we can just sort of exchange notes.
00:16:21Like, that's, I think, the way you learn something.
00:16:23It's not that we just need to have peers.
00:16:26I don't want to have, like, gurus, if it makes sense.
00:16:29I just want to be in this phase of, like, we're trying to figure this out together.
00:16:34Another thing I also don't necessarily like about it is, like, a thing you could do with an LLM is you could say, like, okay, here's a bit of text.
00:16:41And I want to know if this text is about positive sentiment or not.
00:16:47Like, is this a compliment or not?
00:16:48Like, let's say we have some sort of a classifier for that.
00:16:50And you could use an LLM for it.
00:16:52But this is also, like, a classic ML moment also just still works, right?
00:16:56And we do have this weird moment where people just go, oh, it's a problem and just put the LLM sticker on it and go that way instead of taking a step back and sort of thinking, like, what's the simplest we could do?
00:17:05And surely it's not like boiling the ocean with an LLM just to get a positive negative sentiment out, for God's sakes.
00:17:11So there is also something about it that makes people not want to take a step back and do the simplest thing anymore.
00:17:16They immediately want to double down and dive into the LLM and, like, you still want to think for yourself as well.
00:17:22Like, my favorite hobby is when I have a new problem is I go away from the computer, I have a pen and paper, I go to a park or a bar, and I just sit there like a caveman thinking about the problem with my own mind.
00:17:33And it also feels like less people are doing that.
00:17:35Okay, so these are all the negatives.
00:17:37But then there is, of course, the utility that I also don't want to deny.
00:17:40Like, one thing that is just plain awesome is the fact of, like, oh, I want to make a video game.
00:17:43I've never done Lua before.
00:17:45Can I just use this Love 2D framework just to bootstrap something?
00:17:48And suddenly, like, the entry point for me to maybe learn with a lot less headaches is just there.
00:17:55That's really cool.
00:17:56It does require discipline, though, if you want to learn that way.
00:17:58Because it's really tempting to sort of put a coin in the slot machine, like, make me video game, make no mistakes, and, like, see what happens, right?
00:18:06So, like, there's a temptation there that I'm also not a fan of.
00:18:08But if you do it right, and if you also try to, like, do some things manually now and again and still, like, eat your vegetables, oh, then you can do a whole lot of stuff.
00:18:15You can do something that you couldn't do before.
00:18:16So, and maybe just to give, like, a example, like, so, Marimo, it's, like, a Python notebook, which is very similar to a observable notebook, which I think is closer to home to the JavaScript crowd.
00:18:26But one thing I can really do is I can say, like, oh, I wish I had, like, this weird widget that lets me do a thing, and then I can interact with Python in a different way.
00:18:34Very simple example.
00:18:35There's a couple of, like, 8-BitDo controllers over there.
00:18:39Browsers come with a gamepad API.
00:18:42And a really cool thing is, like, I could hit a button, and then, like, a specific thing happens in Python.
00:18:46Oh, if only there's a simple way to bind the API in the browser with a widget into Python.
00:18:50And there's a spec called AnyWidget.
00:18:52But I don't have to dive into the docs of browsers to just get a prototype working and to see if it's actually a nice way to interact with Python.
00:18:59And it turns out that for some things in Python that you might want to do, if you're doing things with LLMs, you might want to annotate some data to see if the LLM got it right.
00:19:06So, like, there's the input text, and there's a label that the LLM said, and then you can sort of go, yes, no, yes, no, correct, yes, no.
00:19:12And you can now do that in the Marimo notebook with a very ergonomically designed device, a game controller.
00:19:18And, yeah, building that is, like, super easy because of these LLMs.
00:19:22And you still want to check the code, Matt, like, yourself a little bit, right?
00:19:24But just to get, like, the first step going, if you're not a JavaScript hero by any stretch of the meaning, you can still get far pretty easily, and you can also still learn while doing it.
00:19:33So that's a good thing.
00:19:34But, yeah, no, the hype around it is not productive at all.
00:19:38That's the thing I dislike very much about it.
00:19:40But it's also not new.
00:19:41Like, we've had that with the data science and machine learning thing as well.
00:19:43Like, it's a thing of always.
00:19:45It's just that it feels worse this time around as far as the hype is concerned.
00:19:48I don't really know where to put my finger on it.
00:19:51Again, there's tons of good reasons to be very optimistic.
00:19:54The way that we've gotten LLMs to work in Marimo is also, like, super cool.
00:19:56You can do lots of experiments with maps and stuff super quickly.
00:20:00But finding reliable people to listen to, like, in podcasts and stuff turns out to be a challenge just because there's so many people selling courses.
00:20:07And, I mean, you have the same thing, too, right?
00:20:08Like, you can make a video about, like, a non-LLM topic or an LLM topic, and you're probably noticing that, like, making a really good standalone video about a non-LLM topic is harder now just because there's so much demand for those videos.
00:20:19I also seem to find the comments of AI videos tend to be a little more negative and, like, hating AI, but then the video itself will just get more views.
00:20:29And it's just, like, some people clearly are interested.
00:20:32They're just not saying it.
00:20:34And I think, yeah, again, people are sort of just chasing whatever the new thing is in AI all of the time.
00:20:40And it does get into a bit of a cycle that's hard to break from.
00:20:45I'm going to give you the weirdest anecdote that's related to this.
00:20:48If I say, like, 1800s, the dynamite balloon story, would you know what I'm talking about?
00:20:53No.
00:20:54Okay.
00:20:55It's a weird tangent, but we're going to bring it back.
00:20:59So, in the end of the 1800s, like, after the Second World War, like, Napoleon-era-ish, we definitely had science, right?
00:21:08We knew that empiricism would kind of work, but we weren't really good at predicting the weather.
00:21:14But, boy, was there demand for it.
00:21:16Like, oh, man, like, if you could predict the weather, like, oh, that could, like, we could know when a drought was coming, which food security wasn't 100% yet, right?
00:21:23So, like, oh, man, if we could predict the weather, oh, demand for that is super high.
00:21:27Supply of that, zero, because no one really knew how to predict the weather, but something weird happens when demand for thing is super high, some sort of quackery supply is going to show up.
00:21:37Like, that's just a thing that's going to happen.
00:21:38But why predict the weather when you can make people believe that you could cause it?
00:21:43That would be even better.
00:21:45And there was this wide belief that, like, after a battle, it would typically rain.
00:21:49Like, there's notes that Napoleon believed this, and a lot of generals that, you know, went through civil war also believed this.
00:21:56So then there came this guy, his name starts with a G, Grinsworth or something, and he actually convinced the U.S. Congress to fund him, like, a million dollars worth of dynamite and balloons and kites to make it go boom in the sky in order to make it rain, right?
00:22:12This actually happened.
00:22:13Like, in today's money, like, millions of dollars was spent making it go boom in the sky because people wanted it to rain.
00:22:19Now, obviously, after a while, it turned out to be quackery and people started noticing, like, okay, we should probably not do this.
00:22:26And then also, eventually, we got better communication so people could actually share data on weather patterns, and that's where, you know, modern weather predicting came from.
00:22:35But every time that I see just how much demand there is, like, how should we think about this AI thing, it just feels so similar.
00:22:40So, we have a very big demand for knowledge that no one can really provide, so there's just this risk of, like, quackery if you're not careful.
00:22:48And the best way to sort of guard yourself against this is to look for boring people instead.
00:22:53So, people just do really boring research that are mainly just trying to share some data and some insights and aren't necessarily trying to sell you courses or anything like that.
00:23:00That's sort of – that feels like a – if we're going to learn anything from dynamites in the sky, this might be the best thing to do right now.
00:23:08It kind of reminds me how everyone says that we will solve climate change, but for that, we need a lot of AI, a lot of data centers.
00:23:17So, nobody talks about what that is going to do to the climate, but we will solve it at the end.
00:23:23And, well, that's also the South Park underpants gnomes at some point.
00:23:27So, it's, like, step one, thing.
00:23:28Step two, I don't know, but step three, profit.
00:23:31For some weird reason, we're going to figure out how to, like, steal underpants and then become millionaires.
00:23:35I don't know.
00:23:36The other thing that sort of reminds me of that that makes me distrust people is sometimes you'll see someone hyping AI massively, like on Twitter.
00:23:43Then you go on that Twitter, scroll back a bit, and it will either end up at crypto or NFTs.
00:23:47And I'm like, you've just jumped onto the next thing that's getting engagement.
00:23:51And, yeah, it does not feel genuine.
00:23:54There's – but there are, like, there are, like, I'm going to quote, like, boring in a good way people out there that do make interesting notes.
00:24:00So, Simon Willison, I think, is a really good example, and he's fairly well-known.
00:24:04But he's just trying to be a journalist about it, and he will actively apologize when he makes a mistake, which, you know, is what you should be doing.
00:24:11There's also this other podcast that I've been diving into that I do recommend.
00:24:16Corey something, like, he was a video game programmer.
00:24:20We'll add it to the show notes.
00:24:22But he has, like, his attitude is also I'm a very senior C++ programmer.
00:24:25I know nothing about AI, and he also doesn't want to learn AI.
00:24:28But a buddy of his actually is a professor and all that.
00:24:30So then he has, like, regular interviews about, like, a theme.
00:24:33And it's just boring stuff, but good, which is also, I think, maybe a bit of advice.
00:24:38But anyway, I'm sure, like, this is also, like, such a universal thing that everyone is also just noticing.
00:24:44For me, at least, and also with the Marimo channel, it feels obligatory to also make content about how we can integrate with AI stuff.
00:24:51So, you know, we do that.
00:24:53But we also try to just celebrate the things you can do without AI, which is also really cool.
00:24:57So, like, all the interactive stuff and, oh, fun data set.
00:25:00Let's dive into that.
00:25:01So one thing I did this a while ago is, like, download all the boxes of Legos, like, the prices of the box.
00:25:07And I'm telling myself, like, I'm a dad now, so I have to figure out how to invest in Legos.
00:25:11And, like, okay, but then actually do that research.
00:25:13Like, actually make the dashboard of all the boxes of Legos and try to figure out which boxes of Legos are the best price per brick.
00:25:19And, like, silly things like that as well.
00:25:21I don't know what hobby's more expensive, Lego or keyboards.
00:25:25Lego's getting up there these days.
00:25:27The, well, okay, well, so, okay, so fun fact.
00:25:31So there's this rumor online that if you were to buy a Marvel box of Legos, presumably Lego has to pay for the IP.
00:25:39So then less money is available per dollar per euro for the bricks itself.
00:25:45Turns out that's not, so there's not statistically significant evidence.
00:25:49But, like, things like that you can research on your own.
00:25:52So earlier you mentioned, like, what Marimo does, this newer kind of Jupyter Notebooks.
00:25:59And you said the equivalent in the JavaScript world, there isn't really one, but it's Observables, which is a website.
00:26:04Observables is pretty close, I would say.
00:26:07Yeah, it's pretty close, it does a similar thing.
00:26:09But that kind of style of reading and writing code and doing research hasn't really taken off in JavaScript as much as it has in Python.
00:26:18Do you want to speak to that?
00:26:19Do you think you'd know why?
00:26:21I mean, so, okay, most of what JavaScript people are doing, presumably, is make a website.
00:26:27Not 100%, because there's other stuff you can do too, right?
00:26:29But let's say, presumably, most of it's building a website or some sort of online experience to the least.
00:26:34But even then, most of it is building a website.
00:26:37Now, if you're building a website, you probably know what you want.
00:26:39Like, we need a login thing there and, like, a button here.
00:26:42And, like, we need a flow for a user.
00:26:43It has to look good, be good interactivity.
00:26:45But that's about, like, that's, like, the mindset, I think.
00:26:48Then if I think about, like, the use case on Python's side, it's not so much Python here.
00:26:53It's more about, like, oh, I've got this unknown data set.
00:26:55I've got no idea what's in it.
00:26:57And I would like to predict something, like, I don't know, churn or the demand on the grid or, like, whatever thing you've got the data set for.
00:27:04And that means that you need to have some sort of a coding environment that's really good at the interactive exploration thing.
00:27:09And for that, you need some sort of, like, iterative front-end thing where you can just easily make quick changes and see, like, a different chart.
00:27:17But also you need libraries that can actually deal with all that data.
00:27:20And JavaScript has always been, like, a very flexible language.
00:27:23But the data part has always been, eh, there's some things you could do.
00:27:27But once you've got, like, gigabytes of data and we have to do machine learning, like, there's kind of, like, a gap there.
00:27:33Python fills in that gap very well.
00:27:35But you still want to have some sort of an interactive environment to, like, experiment and do things where you have no idea what you're going to do with this data set yet because you haven't looked at it yet.
00:27:44Okay.
00:27:45That's where the notebook really comes in strong.
00:27:46So the IDEs are amazing.
00:27:49But, like, where can I make a chart show up?
00:27:51It's, like, a non-existent thing.
00:27:53And honestly, it's really been all about, like, I've got this data set over here, some sort of an object, a data frame that can allow me to make a quick group buy kinds of edits.
00:28:01And then the ability to just make any chart that I like, that's what a notebook started as.
00:28:05Just a place where I can actually interactively make all these charts.
00:28:09And, again, like, that's also, I think, even with LLMs and, like, people like to predict the future.
00:28:14At least for the time being, I don't see any future in which Python isn't there to help you do the data thing.
00:28:18It's very hard for me to imagine.
00:28:20But that's the hole that Python filled.
00:28:23Backing on Richard's question a bit, I've always wondered, like, for all the low-level languages, why did Python become, like, the go-to language for machine learning?
00:28:35Because why not C++ or Rust or any other of those?
00:28:39It's related to the same thing.
00:28:40Like, okay, you want to make a chart.
00:28:42Are you going to compile your code and then wait until a chart comes out?
00:28:46Or do you want it interactive?
00:28:48So, like, whatever language you're going to have that's going to let you do the interactive thing, it needs to be a dynamic language REPL, right?
00:28:55Okay, so that excludes all the compiled stuff.
00:28:58Now, you can do this trick, which happens a lot in Python.
00:29:01So, Python has great bindings to see.
00:29:03So, all the heavy numeric libraries, there's one data frame library called Polars.
00:29:07It's all written in Rust.
00:29:09And then Python is more like the UI than really the thing that's running on runtime.
00:29:12And then there's NumPy, which is all about matrices and things.
00:29:15And that's all written in BLAST and C and, like, very low-level languages.
00:29:18It's just that there's this Python binding.
00:29:20But the whole point of the Python story there is it's very easy to just write down what you want the data to change into and then play around with it, really.
00:29:28Oh, and maybe I want this chart instead of that one.
00:29:30This has to be all super interactive.
00:29:31And imagine there being a compiler in the middle of that.
00:29:34It's just not going to be a great experience.
00:29:35So, I think this is why we've landed here.
00:29:38So, Python has great ability to make bindings from low-level languages if you really wanted to.
00:29:43But the developer experience is still very much, like, super interactive.
00:29:46Yeah, I was going to say, one of the first languages I actually picked up was Python just for little scripts because it felt so easy to do.
00:29:53It's sort of like anything on my Mac.
00:29:54And as you said, anything with data.
00:29:56You could just write a script and it would do it.
00:29:58And Python didn't seem as strict as the other languages.
00:30:01And it was quite easy once I already knew one language to jump into Python.
00:30:05Yeah, like, I think a fair assessment of Python is that, in the end, it is a language that fits in your head very easily.
00:30:11So, like, if you spend a weekend there, there's, like, a lot of stuff that you could learn that still fits in your head the weekend after.
00:30:17And with Rust, I mean, I appreciate that it's all there.
00:30:20But it's, oh, my, there's a lot of grammar that you've got to, like, really understand before you can write a sentence in Rust, if it makes sense.
00:30:28And there's good reasons for it, but Python is very much a, also the, there's a couple of frameworks and every framework does work in a slightly different way.
00:30:35But the language itself is actually pretty, pretty minimal and, like, super flexible at the same time.
00:30:39Yeah.
00:30:41Also, going back to your point on notebooks, I think that was a thing I did years ago where I was messing around with some NLP language.
00:30:47But we, I did a previous job and we just used notebooks for the whole thing.
00:30:51And so, you could pass it an audio file and it would run the process in the background and it would kind of give you the text from the file or something like that.
00:31:00Yeah.
00:31:01You probably, like, some sort of input thing in one cell and then that would go to the next cell.
00:31:05It would turn that into a waveform and that would turn it into text.
00:31:07And, like, you had to, like, shift, like, shift, enter, enter, enter.
00:31:10You'd go through the entire notebook and then you would have your result at the end.
00:31:12That's what I love.
00:31:13Yeah.
00:31:13The whole thing.
00:31:14So, you can pretty much do anything you want with notebooks.
00:31:17You can, like, download libraries and all that stuff.
00:31:18Like, what is the craziest thing that you've seen people do in a notebook?
00:31:23I can tell you, I mean, a thing I like to do, but, and, like, I'm a bit non-standard, but a thing I really like to do is also really think about what the browser can do for you these days.
00:31:34Because it has, like, GPU rendering tricks, for example, that aren't in Python.
00:31:37So, like, oh, I could do maybe some fancy things where, like, I define something with a system of equations on the Python side because we've got great math libraries.
00:31:43But then have the actual rendering happening on the GPU on the browser side.
00:31:47So, that's the thing you could do.
00:31:48The craziest thing I've ever done, though.
00:31:51Okay.
00:31:52So, if I say differential equation, are you going to say, like, bless you, or, like, do we know what differential equations are?
00:31:58Just want to double check.
00:31:59I'm going to first admit I have no idea.
00:32:01Okay.
00:32:01So, sometimes, and this is a physics thing, but sometimes it's quite hard to describe exactly what something will be, but it's very easy to describe how something might change.
00:32:13It's just a thing in physics.
00:32:14Sometimes the latter is easier to describe mathematically than the former.
00:32:18And that's called the differential equation.
00:32:20Like, if sometimes we know something about the velocity of a thing or the acceleration of a thing, but we would really like to know, we would still like to predict the thing, like, six steps ahead.
00:32:28And, okay, like, how can we maybe deal with that?
00:32:30That's the differential equation.
00:32:31I never really grokked differential equations, because I never really needed them, but I did, like, this one course in college.
00:32:37But then I learned about this one differential equation that's related to video games called Lanchester's Law.
00:32:42So, imagine, Age of Empires, two armies, they bump into each other, and, like, they duke it out totally.
00:32:48And you've got Red Army, you've got Blue Army, like, all sorts of dudes, basically, like, smash it together.
00:32:53Can we predict which army will win and by how much?
00:32:56Like, how many survivors are there of the largest army?
00:33:00Okay.
00:33:00Now, there's an equation here called Lanchester's Law, which is a differential equation, which basically says the amount of army people you lose on your army depends on the size of the other army.
00:33:10Because that's the number of swords pointing at you, basically.
00:33:13So, that's, like, a differential equation you could write down, and then you could try to solve that, and this is called the Lanchester's Equation.
00:33:18And I've always felt like, okay, that's really cute.
00:33:20I just look at the symbols and the math and it doesn't really hit me.
00:33:24Oh, but one thing I can do in JavaScript is I can actually build myself a battle simulator with, like, collision detection and all of those things.
00:33:30And then that can be a widget inside of my Python notebook, and it's just going to run all the simulations, and it's going to, like, log all of that into a data file.
00:33:38And then in hindsight in Python, I can actually see if Lanchester's Law actually holds.
00:33:43Okay, and it does.
00:33:44So, this is the longest story about how Vincent finally understood differential equations.
00:33:48It's by simulating Lanchester's Law.
00:33:50In one of these Python widgets.
00:33:52And, again, a lot of this stuff is happening on the front end because there's, like, pretty good, like, visual ways to sort of do collision, like, to show that collision detection is actually happening, which makes it a really fun interactive experience.
00:34:03But then to do the actual math and the actual charts, then we take a step back into Python again.
00:34:07But this is, I think, the most elaborately weird thing that's non-conventional that I've ever done in the notebook.
00:34:12Like, not a lot of people build battle simulators to understand differential equations on the day-to-day.
00:34:18I mean, that would be a good way to teach differential equations in general in school, you know, I think.
00:34:23I mean, the next step, obviously, is to actually do this with Age of Empires.
00:34:26I think that would be cool, too.
00:34:27But, or StarCraft or whatever the fancy game is that kids play these days.
00:34:32But the one thing I do like most about this notebook is it can be a very personalized experience of, I want to understand a thing.
00:34:39And especially because there's, like, good LLM bindings now.
00:34:42Like, we've got this trick where, you know how LLMs are, like, really good at writing into files, but then the moment you actually have to, it has to debug something, it has to awkwardly run the file, look at the terminal output in order to, like, really understand.
00:34:53There's, like, a lot of looping that happens when that happens.
00:34:56We have a trick where we kind of have a fake file, a scratch pad, that the LLM can actually access.
00:35:02And, yes, the LLM can write into it as they would normally with a file.
00:35:06It's just that that file has a Python context manager that gives you access to all the variables in the notebook.
00:35:12So that also means that Claude can just randomly inspect a variable instead of having to print everything and just really go into what's in memory right now.
00:35:20And, again, like, with things like that, with an LLM and a notebook, you can get super-duper creative and, like, go in all sorts of elaborate directions.
00:35:29But, and, like, it does feel like the sky's the limit.
00:35:32The only thing that I do notice, like, when I'm using an LLM inside of a notebook, I really try to generate, like, one or two cells at a time.
00:35:38Like, I never try to have it generate the entire notebook because, again, I do like to be in the loop.
00:35:43I like to understand what's happening and also to sort of course-correct it, steer it.
00:35:46And sometimes I also want to, like, implement a function myself because then I can check if I actually really understand.
00:35:53But, yeah, there's something about, oh, I actually see what's happening in the notebook.
00:35:56I can make it a really interactive experience.
00:35:58And something about that also makes it just a joy to debug because I often, whenever I'm dealing with, like, a numeric system, like, a recommender engine or something, I've built a few of them, like, back in the day.
00:36:09You just need charts.
00:36:10There's no way around it.
00:36:12And repls are just not going to give you that.
00:36:13You need some sort of a notebook.
00:36:15Yeah.
00:36:15I can't say I can resonate with what you're saying because I've never tried to build a recommendation engine.
00:36:20But I can understand kind of, like, the visual impact having a chart would make to something like this.
00:36:26I mean, it's also, like, how would you debug a recommender system but you're not allowed to use charts?
00:36:30Like, it just becomes kind of harder because, oh, there was a bug over the weekend.
00:36:34Can we pinpoint when the bug actually happened?
00:36:36I mean, I would love to see a chart somewhere along the line there.
00:36:39And maybe you can put some of that in a dashboard.
00:36:41But, again, it's one of those moments where if you don't know ahead of time what chart you're going to need, you need some sort of environment that's just really flexible.
00:36:47So that's where the notebook in Python really shines.
00:36:51So how did you get from debugging recommendation engines to the growth team on Marumo and having, like, this mic and camera set up?
00:37:00Right.
00:37:00I mean, a few weird things happened.
00:37:02So, I mean, I worked at this consultancy in Amsterdam and I did start, like, a pretty popular conference.
00:37:10It's called PyData Amsterdam.
00:37:11It still exists 10 years later.
00:37:12So we did something right there.
00:37:14I wasn't the only one, by the way.
00:37:16Like, we had a group of people, but still.
00:37:18So, okay, I got quite comfortable on stage as well.
00:37:21Like, another thing I did in college, I was a bartender at, like, a comedy bar in the Netherlands, like, one of the more well-known ones.
00:37:29And then in the summer when the theater would close, I would do, like, tour guides in Amsterdam.
00:37:33So I would just steal all the jokes from the comedians and, like, see if I could deliver them to, like, this new batch of people that would show up every two hours on a Tuesday.
00:37:40Yeah, so, okay, you get kind of comfortable being on stage.
00:37:42So not only did I organize events, I would also be, like, a frequent speaker at all these PyDatas.
00:37:46It was pretty easy for me to always get accepted.
00:37:48Also, pro tip, if you want to be good at getting accepted at conferences, be in a review committee for a bit.
00:37:54Because then you know how people are going to judge a talk proposal when it comes in.
00:37:59So, okay, I was pretty comfortable on stage and, like, I would go to all these different events.
00:38:02And eventually I went to this one event called Spacey in Real Life.
00:38:05I don't know if you've heard about Spacey or, like, Explosion, but they, one of the earlier proper NLP packages in Python.
00:38:13And, you know, as I was hanging around there, the founders of Spacey just eventually came up to me.
00:38:16Like, Vincent, we've seen some of your demos during the workshop and all that.
00:38:19And we think you would YouTube well.
00:38:21Okay, that's interesting. I've never done it before, but I also knew nothing about NLP at the moment, but I did want to learn.
00:38:27And the deal was, like, okay, Spacey people, you seem to know a lot about NLP, which I want to learn about.
00:38:32I will gladly make you the videos if you can confirm if everything I'm doing is correct, because then I'll learn about NLP.
00:38:37Like, that was the deal, basically.
00:38:40And when you know it, I had this YouTube channel on their side where I would make videos, and those videos ended up doing very well.
00:38:47So then, a different AI startup called Raza, they do chatbots, they reached out to me and said, like, hey, Vincent, we like your Spacey YouTube videos.
00:38:56And we need someone who can do, like, developer advocates, but for researchers, because they had, like, a pretty big research team.
00:39:02And basically, the story was that everyone who was using Raza didn't understand the algorithms.
00:39:07So they needed someone who both could kind of work on the algorithm, but also could explain it.
00:39:12So I did that for a while.
00:39:13Then I went back to Explosion, the Spacey people.
00:39:16They also needed developer advocates, so I worked there.
00:39:18From there, I worked at this group called Probable.
00:39:22They were, like, the scikit-learn team.
00:39:23They also wanted to have some DevRel person around.
00:39:26And while there, I did a podcast, and I had the founder of Marimo on the podcast, Akshay, who's now my boss.
00:39:33And it turns out that he and I went to the same junior high school.
00:39:36Like, before you do a podcast, you have a little bit of banter, and then we found out we had, like, the same math teacher when, you know, we were 10 to 12 or something like that.
00:39:44So we hit it off, and then eventually they got funding, and I figured, yeah, this notebook is amazing.
00:39:48Like, it's correcting me in all sorts of ways I didn't anticipate.
00:39:50And, like, a bit of a long story, but that's how I got where I'm at.
00:39:53So, yes, I was a consultant way before, but as you do side activities, you do all the side quests, eventually you learn that the main quest can also update if you just do enough side quests.
00:40:03Yeah, I think it's always interesting to hear people's stories, because it's not a common job just making YouTube videos about tech.
00:40:10It's not something that you go to study for, or you don't go to university to let us do that.
00:40:14So it's interesting just hearing people's, like, stories on how they got into it, how they got comfortable on camera, how they, like, learned to script, or I'm not sure of a process if you script, but how they, like, got all the gear and stuff.
00:40:23I never script.
00:40:24You never script?
00:40:25Okay.
00:40:25I don't know how that works.
00:40:27Well, I mean, so, okay, so, like, yes, I make some YouTube videos, but it's not all I do.
00:40:32And, like, one thing, so I did this Calm Code thing a while ago, and also those, I made lots of videos for that, but none of those videos have my face in it.
00:40:41And that was because that made the editing so much easier.
00:40:43Like, if I misspoke, like, I didn't have to align the way that my face looks.
00:40:46I could just take the audio, video, click, and then sort of be super done with it.
00:40:50So the main thing that I care about whenever I make a video about Marimo is that I just have a good story or a good explainer or something that deserves to be explained.
00:40:57And I do sort of sit down and sort of think, like, okay, what should the intro roughly be and what should, like, you know, the experience be like?
00:41:04But most of the time, at least, if I think about, like, what were good moments that I learned, it was a moment when I was in the bar and a buddy of mine would just, you know, would you put your beer on?
00:41:14Was it a coaster?
00:41:14I think it's called in English, right?
00:41:16They would flip the coaster, like, barely any space, but maybe just enough to do, like, a little drawing to just get the concept across.
00:41:22And usually that's enough, and that's actually what people want.
00:41:24Like, you're not going to become a pro at, like, Marimo if you're watching a five-minute video, but maybe I can explain this one concept very well and make you understand, like, okay, if this is going to be relevant, if X, Y, Z, and, like, here's five minutes and not wasting your time, here's a good explainer of it.
00:41:39And, okay, if I want to get that across, then also I should just not overthink it.
00:41:43I should just have a notebook that's, like, good and ready, and the only thing I should do then is just hit record and explain the thing, and then just edit it so there's no oops and ahs in it.
00:41:52And then I'm done.
00:41:53Like, that's, I think, a really good way to think about it.
00:41:57I mean, and to some extent, that's, I mean, that's fair.
00:41:59Like, you could say, like, okay, Vincent, you prepared the notebook and you're reading what's on display there.
00:42:03But I don't want to, like, I also think it's super artificial if you stare into a camera and just read what's on the teleprompter.
00:42:09Like, there are these moments when we're doing, like, an official announcement where it matters also to the larger company that I use the right words and I might use the teleprompter for that.
00:42:18But I think there's something really unpersonal about, like, just reading something that's on display that you, and also I get that there's this, there's a couple of these videos for which it works really well.
00:42:29Like, the three blue, one brown guy.
00:42:30I'm sure he makes these amazing math explainer videos with, like, the animations.
00:42:34And I'm sure he does scripting and, like, that's the kind of type of content that works very well for him.
00:42:38He should keep doing that.
00:42:39That's great.
00:42:40But I'm really keen to just have, like, two videos a week with a good explainer, and by not overthinking it, I think I can actually manage two videos a week on my own that actually get, like, the views are pretty good.
00:42:51So I have no reason to overdo it, if that makes sense.
00:42:55And part, and, like, what some people also tell me is that they actually appreciate the whimsy of it.
00:42:59Like, I'm not trying to get as many views as possible.
00:43:01I'm just trying to explain this one thing.
00:43:02And if that's not relevant to you and you leave in the first 10 seconds, I'm actually totally cool with that.
00:43:07Because I just want this thing to be super cool for people who are keen to listen.
00:43:12Really.
00:43:12But also, we don't really have, like, we're almost at, like, 2 million views now.
00:43:16So we do have this, like, fun little milestone happening pretty soon.
00:43:19And, like, I will gladly look at that and brag about it.
00:43:22Like, sure, number go up, great.
00:43:25But I also don't care.
00:43:26Like, eventually, the only thing I care about is that the YouTube channel contributes to more people giving Remo a spin,
00:43:31and that they are aware of the stuff that we do.
00:43:34And people using Remo is the goal, not more views on YouTube.
00:43:38Like, that's very, very secondary compared to the larger picture.
00:43:44Sure.
00:43:45So in that case, how do you decide on what video to make?
00:43:48Because, like, do you go through Remo and figure out, oh, this bit is quite difficult to make a video in it?
00:43:54Are you scrolling Reddit to see what people are struggling with?
00:43:56Like, how do you decide on what videos to make?
00:43:59It's funny you say it.
00:43:59So this morning, I posted on Reddit, not ask me anything, but tell me anything.
00:44:03My name is Vincent.
00:44:04I make the Remo videos.
00:44:05What should I make videos about?
00:44:06People show up with, like, interesting suggestions.
00:44:08So that's a way.
00:44:10I guess, like, when I started with Remo, we had this idea of, like, okay, like, there's just a couple of these concepts that make Remo different from Jupiter.
00:44:17And Jupiter is a thing that people already know.
00:44:19And Remo is just a little bit different.
00:44:20Okay.
00:44:20So we should explain those differences very well.
00:44:22Because that's possibly a stumbling block or something where people hit their heads.
00:44:25So, okay.
00:44:25Let's make sure that for, like, all these sort of weird little edge cases, we've got, like, at least one video.
00:44:29Such that if someone does a search, they will find that video.
00:44:33Okay, we got that done.
00:44:34Now what?
00:44:35Okay, well, there's these different communities.
00:44:37So there's, like, people that like to use Airflow.
00:44:39That's this one scheduler in Python.
00:44:41There's Prefects, a different scheduler.
00:44:43There's these web frameworks like Flask and Django.
00:44:46Okay, maybe those people have different needs.
00:44:47And we could make some sort of a demo that sort of shows, like, okay, for that particular crowd, ooh, I bet they will like this trick.
00:44:53Or, like, oh, if you have this little script, that'll make Marimo way more useful for you.
00:44:57Django has this interesting ORM.
00:44:59And to actually wire that up nicely, Marimo, you've got to do this one script trick.
00:45:02And once you're there, it's, like, breezy.
00:45:05Okay, that was the second phase.
00:45:07And then eventually, with all that homework done, where I'm now at is a little bit more of, like, does the thing excite me?
00:45:13If so, well, marketing is the exchange of enthusiasm.
00:45:17So if I'm very enthusiastic about something, I've got to make a video because I'm enthusiastic about it.
00:45:21And maybe other people will be, too.
00:45:23And some of that is, like, oh, we have this really cool, like, LLM trick, and we'll sure make a video about that.
00:45:29But a lot of the stuff that I really like is just, oh, this new widget allows me to sort of go about this problem in a different way.
00:45:35For example, the Lanchester's Law thing.
00:45:37That was a really fun video for me to make.
00:45:39And, of course, like, there are some things happening in the world that you've got to make a video for.
00:45:43They're just slightly topical.
00:45:44So, like, the company that acquired us, they are called CoreWeave.
00:45:50They're, like, a very big GPU provider.
00:45:52So, like, OpenAI is a client.
00:45:54Just to give a example, like, they rent GPUs.
00:45:56And they recently had this new benchmark that showed that they were the fastest provider of Kimi K2.6.
00:46:02Okay.
00:46:03Okay.
00:46:03I guess it makes sense to explore that.
00:46:05And, oh, that is really fast.
00:46:06Okay.
00:46:07I'll make, like, one video on, like, how you could wire that to Marimo because it really is a very, very fast LLM.
00:46:12Okay.
00:46:12That makes sense.
00:46:13Sure.
00:46:13But I'm still, like, enthusiastic about it.
00:46:15Like, that's always, at least for now, that's, like, the thing I really try to aim for.
00:46:19I think that's really cool.
00:46:20So, you can just share.
00:46:21And you can't script enthusiasm.
00:46:22That's just not the way it works.
00:46:23You cannot script enthusiasm.
00:46:25Yeah, of course not.
00:46:26I think, yeah, it's cool that you get that across the videos.
00:46:30But you did mention a bit earlier that CoreWeave have acquired Marimo.
00:46:34And so, has that changed anything for you?
00:46:36Are you going to make a CoreWeave YouTube channel?
00:46:38Like, how has that changed your day-to-day?
00:46:40Well, they have a CoreWeave channel.
00:46:42So, the org chart, I mean, people might know.
00:46:44So, there's also this company called Weights and Biases.
00:46:47If you're into machine learning, you may have heard of them.
00:46:49If you haven't, you haven't.
00:46:50But before they bought us, like, I think five months earlier, CoreWeave bought Weights and Biases.
00:46:55So, the org chart is you've got CoreWeave, then Weights and Biases, and then you've got us.
00:47:00And you can also imagine it's kind of like the software leg of the company in a way.
00:47:03It's not the, like, giant server farm.
00:47:08The totally different leg.
00:47:10And the main thing, I'm paraphrasing a little bit here, but, like, a feeling that I do get is that the folks over at CoreWeave are really keen to see us grow.
00:47:18Like, you know, we did, like, a 10x, like, 5% a week.
00:47:21They really like that.
00:47:22And they're also aware of the fact that we seem to be doing something well.
00:47:25So, if anything, they do tell us, like, if you want to collaborate, please let us know.
00:47:29We will gladly do a collaboration on YouTube if need be.
00:47:33That's totally fine.
00:47:34But thus far, there has simply never been an edict or anything like that from the top to the bottom that we have to, like, collaborate or anything.
00:47:41Like, if anything, like, the Slack channel became a whole lot bigger because before we were, like, nine people in a Slack channel.
00:47:46Now it's, like, almost a thousand.
00:47:48So, you do kind of, like, okay, not that thread, not that channel, not this one.
00:47:53You do a little bit of that, but that's about it.
00:47:55Really.
00:47:56Because they just, they see our growth and they really just want us to continue.
00:48:00So, one thing we have done now.
00:48:02So, Google has this thing called Colab.
00:48:04That's, like, Jupyter Notebooks provided by Google with, like, GPUs.
00:48:07This Monday, we launched CoreWeave Marimo Notebooks on Molab.
00:48:11So, we do get, like, a pretty beefy Blackwell GPU for free now if you spin up a notebook there.
00:48:18It's a great experiment because the moment you release a product like that, the whole week afterwards, the only thing you're doing is, like, fraud and abuse prevention.
00:48:26Because, like, a lot of people like to use those GPUs.
00:48:28So, like, our Slack channel has been a lot of fun this week.
00:48:31But that's, like, the first thing, really, that we're doing right now that we would not have done without the acquisition.
00:48:38Because, you know, we just have access to resources now we didn't have before.
00:48:42This might be a tangent what I was going to ask.
00:48:46But recently, obviously, a lot of, there's been a lot of supply chain attacks.
00:48:50And I've seen it's hit the Python world quite a lot as well with PyPy.
00:48:54Do you have any advice on not getting attacked like that?
00:48:57Because I've used PyPy.
00:48:58And honestly, I know a lot more about NPM and, obviously, minimum release age and things like that.
00:49:03How do you set that up in Python?
00:49:04Or is that not something that...
00:49:06There's similar things, yeah.
00:49:07So, there's also, like, the...
00:49:10And, you know, for a lot of things, like, in JavaScript land, you would do NPM something.
00:49:14And in Python nowadays, you would do UV something.
00:49:16It's, like, PIP was, like, the thing people used to use.
00:49:20But then there was this one group of people that was really good at Rust that made, like, a thing that was a lot quicker for Python.
00:49:25So, that's called UV.
00:49:27It's similar things.
00:49:28The best advice, really, is to just keep that surface small.
00:49:32Like, only depend on projects that you really know well and trust.
00:49:35Especially in this age where anyone and their uncle can just Vibe code a Python package.
00:49:39You know, just keep the surface area small.
00:49:42Keep it to the boring packages.
00:49:45And, if possible, boy, it will be nice if people can maybe fund the packages that matter.
00:49:49So, there's a couple of these web frameworks.
00:49:52Like, let's say there's three people that maintain Starlet.
00:49:56Starlet, FastAPI is built on that.
00:49:59And, like, a bunch of other, I think, Marimo, too.
00:50:01We do not want Starlet to fail.
00:50:03Because that would have, like, a huge risk.
00:50:05So, okay.
00:50:05Like, thinking about maybe co-funding that would also be, like, a good thing to consider.
00:50:09But besides that, just saying no a whole lot and keeping the surface area as small as possible is also the best thing you could do, really.
00:50:16So, if someone who's not, oh, sorry.
00:50:18I was going to say, it seems like there's an attack every week these days.
00:50:21So, it's good advice.
00:50:22Everyone should make sure they're up to date on all of that stuff.
00:50:26So, in the previous conversation we had, you might have mentioned that you're working on something on the side for video.
00:50:33Because you introduced us to Elliot, who we've spoken about.
00:50:37What's the relationship there?
00:50:39Right.
00:50:39Okay.
00:50:39So, Elliot has a YouTube channel.
00:50:43It's called Dreams of Code.
00:50:44And I thought it was always, like, a pretty good YouTuber dude.
00:50:48But then I noticed something that actually gained my respect a whole lot more.
00:50:52He didn't show up for a good month and a half.
00:50:54I was kind of wondering, why?
00:50:55Like, usually it's, like, a video a week.
00:50:57And, like, most YouTubers do that.
00:50:58But he was, like, gone for, like, six weeks.
00:51:00And then he came back and he said, like, yeah, I'm actually writing proper rust.
00:51:03And I'm trying to make, like, a good video editor with a little bit of LLM juice to sort of figure out, like, what snippets we can sort of cut out.
00:51:10I gave it a spin.
00:51:11And, you know, I looked at it and I was kind of like, okay, like, all the LLM tools for video editing I absolutely hated so far.
00:51:19And this was the first time where I kind of, like, okay, like, the app is still not in the state where I would, like, use it.
00:51:24But I do finally see that there's, like, a hill that can be climbed and it could actually get to some place that I think is pretty darn good.
00:51:31So that's how I reached out.
00:51:32I was kind of like, oh, I kind of like what you're doing, but here's, like, a list of bugs.
00:51:36And I was, like, one of the first people that actually reported a good list of bugs.
00:51:39And that's how he kind of kept in contact.
00:51:41So he's doing more of a thing in the video editing domain and I'm doing more of a thing in, like, the thumbnail editing domain.
00:51:48So I want to make it as simple as possible to make, like, these YouTube thumbnails.
00:51:52And my demands are, like, pretty simple.
00:51:54But, like, one thing I like is just maybe a photo of me or someone and having there be, like, a white outline that can easily appear.
00:52:00And I can just make a nice little thing like that or just something that makes the background making a whole lot simpler.
00:52:05So I definitely vibe-coded my own thing.
00:52:09And, you know, part of my mind was thinking, like, oh, it might be cool to, like, could I sell that maybe?
00:52:14Like, that's a thought I have in my mind.
00:52:15Part of me doesn't know if it's such a great idea.
00:52:17So there are people sort of reaching out to me and saying, like, oh, what you've made sounds pretty useful.
00:52:21But I got to be fully honest, and that is that I don't know Swift that well.
00:52:25Like, I know it a little bit now because I made this app and I care about it.
00:52:29And, like, I do want to maintain it to some extent.
00:52:30So, you know, you try to figure out, like, what's a good file structure and you do some of those things.
00:52:34But if something was fundamentally broken, I don't like the thought that I am completely dependent on this tool in order to make any change whatsoever.
00:52:41So, the point where I'm at is, for me, it's cool.
00:52:47And some people that I don't mind sharing it with, I could sort of share it with.
00:52:51But I'm just nowhere near deciding, is this a good idea to sell or not?
00:52:56Like, that's kind of a phase where I'm at.
00:52:58So, and I think a lot of people have this sort of interesting thing where it's pretty easy to just vibe-code a tool for yourself.
00:53:03But to actually make it a thing that you're willing to sell, it's, like, such a different quality bar as well, right?
00:53:09And I've not figured that one out, personally.
00:53:12It's really weird because it's a tool I use every day.
00:53:14Like, every time I make a YouTube video, I just always default to this thing because it's so much better than anything I've tried.
00:53:21But I don't know.
00:53:21Like, I think for Elliot, and I'm paraphrasing here, like, he would be able to tell this yourself better than I would.
00:53:27But I think with Elliot, he really does write the code himself, I think.
00:53:30And that also makes it much more, oh, I care about this thing, and I own the thing, and he wants to learn, do more Rust.
00:53:35So, you know, a lot of things come together with that one.
00:53:39It's just I don't, I have a kid as well, and, like, a family and a life.
00:53:42I don't have the time right now to really learn Swift to the extent that I would need to really maintain that app.
00:53:46But it is a thing that I am building and I'm sort of experimenting with.
00:53:50That is true.
00:53:51But, I mean, everyone has this feeling, I think, right now.
00:53:53Like, it's super easy to vibe-code a thing for yourself.
00:53:55It's just that recognizing there's a difference between good to great for, like, an actual piece of software.
00:54:00Like, that, yeah, that does weigh on you if you want to be responsible about it.
00:54:04You know, I have loads of, like, vibe-coded apps for random pieces of workflow.
00:54:09And that, I mean, you maybe could release them as a product, but it is, like, at that point, I've got to make sure it works for everyone and not just on my computer.
00:54:16And also, as you said about ownership, like, all of them were pretty vibe-coded.
00:54:20So, honestly, if they got deleted tomorrow, I would just vibe-code them again and, like, wouldn't care that much about the underlying code as long as I got the output.
00:54:28So, to actually release that as a product would need a lot of work and looking into it and making sure it's actually built well.
00:54:34Well, and I also think the word you used there, care, I think that's key, right?
00:54:38So, there is this one thing I noticed that's actually kind of a cool story.
00:54:43So, I made this little demo in Lua, like, what's the simplest video game you could make, like, a little platform-y thingy.
00:54:49And it's this thing that Brett Victor also said 10 years ago.
00:54:52At some point, I kind of noticed, like, oh, getting the guy to jump on a platform and then he has to jump on the other platform, like, it barely, oh, it didn't make the jump.
00:54:59So, you want to move the platforms closer, maybe change the gravity thing, and there's a couple of things you could tweak.
00:55:04I do not want to have that conversation with Claude, because it'll just be super painful, right?
00:55:08Like, I just don't want to have that conversation.
00:55:10So, the way I solved this was I made a new IDE.
00:55:13It's called Scrub.
00:55:14I announced it Wednesday on a meetup.
00:55:17And the whole point of the IDE is that every integer and float becomes Scrubbable.
00:55:21So, you can click the number and you can scrub it to the left or the right.
00:55:24And that changes the integer, but it also immediately saves the file on disk.
00:55:27And there's this really cool thing in Lua and Love2D that you could do where every image tick, basically,
00:55:33whenever there's a redraw.
00:55:35If there is a new file on disk, it can just reload all the modules.
00:55:38So, oh, I can actually, like, no need for a compiler.
00:55:42I can just live update any variable and see it update live in my video game.
00:55:46And that's a cool demo.
00:55:47But the thing I didn't expect, that because I'm able to, like, actually look at the code and play with it,
00:55:51I started caring about the code a whole lot more.
00:55:54Because I suddenly wanted all the variables to be in a place where I could just very easily scrub things around
00:55:58if I wanted to play with it.
00:56:00And, oh, you could also, like, update an integer in a for loop.
00:56:03So, you can make 10 things appear instead of 2.
00:56:05And suddenly, you're playing with the code base way more than you would with anything else that code generates,
00:56:10well, that clot generates.
00:56:11So, very quickly, I also know it's like, oh my god, like, caring about the code is the name of the game here.
00:56:14Like, if you find a way to care about the code, everything else will basically follow.
00:56:18And that's, like, the main thing I don't like about clot coding sometimes,
00:56:21is you basically put yourself in an ivory tower, and the distance between you and the code is, like, huge, right?
00:56:27And if there's problems, like, I've always been, like, a lowly surf, kind of a peon grunt doing coding for a big company.
00:56:34And I always complain to these upper management types in their suits and their ivory tower.
00:56:38And with Claude, like, you are that guy.
00:56:41And part of me, like, and what I really like about these experiments were, like, oh, can we, like, make you care about the code a bit more?
00:56:47That's always a good thing.
00:56:49And, again, we come back to the notebook.
00:56:50This is also what I like about the notebook.
00:56:52You do care about the code a little bit more because it actually shows you the chart that you need.
00:56:55And it also, if you bring in widgets with sliders and everything, also allows you to play a little bit with some of the numbers and some of the settings.
00:57:01Because it suddenly becomes interactive.
00:57:03It's not like some static file that you've got to stare at all day.
00:57:07So, but there is, like, again, you use the word care.
00:57:09I do think that's going to be the name of the game very quickly.
00:57:12Like, how can you actually get yourself to care about the software?
00:57:15Because that's going to be the poison if we're not careful.
00:57:18Yeah, I think it's obviously because code is technically incredibly cheap now.
00:57:22Like, you can get Claude to write it so quickly.
00:57:24And it's actually adding value to that code.
00:57:27And, like, previously when you wrote a whole app, you'd sat there for hours writing the code yourself.
00:57:32So it had the value of man hours in it.
00:57:34But now it's just, you know, in one prompt you can seemingly get something that works.
00:57:39But you might want to look into that code to actually check that it's good.
00:57:42I do think there's this one statement where Claude can maybe do the work and some of the thinking, but it will never be able to do the understanding.
00:57:48You still want to do some of that yourself, right?
00:57:50And I do want to assign a lot of value on that one.
00:57:53Because that fear of, like, oh, can I sell this if I don't understand the code?
00:57:57I mean, that is really frightening.
00:57:58Especially if you're carrying people's secrets and all of that.
00:58:03Another, like, fun little anecdote here, maybe.
00:58:05So I made this flashcard app for myself because I do want to, like, train my memory.
00:58:08Like, if I'm not, you know, if Claude can do more stuff so I don't have to remember as much anymore,
00:58:13then I still want to have A exercise to make sure my memory doesn't sort of erode.
00:58:16So I made this app called remember.cards, very hard to forget, which is good.
00:58:21But then, of course, you just try to think, like, oh, maybe the LLM can make me flashcards.
00:58:24That would be, like, a thing to use LLMs for.
00:58:26So the flashcards that I'm interested in making are, I want to say thank you in every language.
00:58:31So in Romanian, it's multumesc, which is a really cool word.
00:58:34So the front of the card is, like, how do you say thank you in Romanian?
00:58:37The other way is, like, it reads multumesc.
00:58:40And then, you know, I tell Claude to make all the cards, and it did.
00:58:44And do you want to know what the first card was?
00:58:46How do you say thank you in English?
00:58:48Which is, like, the perfect description of what it's like to learn with Claude.
00:58:51Like, it can generate a lot of the stuff for you.
00:58:54It's, like, pretty impressive.
00:58:55But at the same time, it's so clear it doesn't do any understanding whatsoever.
00:58:58And in the case of the flashcards, one thing I also learned there was Claude should not write any flashcard.
00:59:03I should do that myself manually.
00:59:05Because if I care about learning the thing, maybe the act of writing it down is going to help me remember more than any practice that I might do after, right?
00:59:13And just being in the loop there is going to be way better for my memory than outsourcing all of that to Claude.
00:59:18Like, it's also fun to know things, right?
00:59:20So let's not outsource my mind right away because it's, quote, unquote, easier.
00:59:26Yeah, similar to, like, an experience I've had talking to some of my friends who aren't in the development world is obviously they've started to use ChatGPT and Claude at work.
00:59:33And I've heard some of them before say, like, oh, it got this bit wrong and all of that.
00:59:37But then the next sentence, they'll be like, oh, I use it for everything.
00:59:39I use it for, like, to learn this new stuff.
00:59:41And I was like, remember the thing that you knew a lot about where you noticed ChatGPT was wrong?
00:59:46It's like, you need to remember for the stuff that you don't know anything about, there's also going to be wrong information in there.
00:59:51It's like, remember, it can be wrong.
00:59:54But the second you start learning new things and asking ChatGPT, you sort of, you can't tell if it's wrong.
00:59:59So, yeah, try not to take it as the absolute truth.
01:00:02Yeah, and again, like, it's fun to know things as well.
01:00:06So it's also fine, like, that's the way I kind of deal with it.
01:00:08Like, it's cool that Claude can do everything.
01:00:11It's just that I'm selfish.
01:00:12I don't want it to.
01:00:13And I can defend that publicly.
01:00:16But, yeah, but also everyone should figure out what they want to do with this themselves.
01:00:20Also, again, like, one thing that I do, one thing I have noticed is maybe general advice.
01:00:26And I'm kind of curious if you folks have also experienced this too.
01:00:29Have you also noticed that, okay, if it's true that the LLMs are going to be able to execute all the code for us, right,
01:00:34then probably the main thing that us meatbags can bring to the table is that we need to come up with good ideas for the LLMs to do.
01:00:42Are LLMs conducive to this?
01:00:44Because one thing I've noticed is that if I want to come up with a good idea, I need to be as far away from the computer as possible these days.
01:00:50And, like, hang out with the kid, maybe go to a bar again, like, with pen and paper and, like, try to, like, get the creative juices going.
01:00:56And then, like, while not behind the computer, an idea will just strike me and then I just need to not forget about it.
01:01:02And, again, like, Claude is going to be terrible at that.
01:01:07Right?
01:01:07Yeah, I think there's a popular interview from a guy who owns Take-Two and someone said, oh, because AI can make games now, are you worried that people are just going to make loads of good games?
01:01:17And he said, well, it's always been possible to make games, it's always been easy to make games, but the LLM or the AI won't give you creative new ideas and you kind of have to come up with that yourself.
01:01:27I think that's true, like, that's my experience as well, I would come up with new ideas.
01:01:31So, yeah, so, yeah, so it's bad at coming up with a good idea and it's also bad at caring, which is all the polish you need in order to actually get a game that's worth anything on Steam.
01:01:40So, it's that weird combination, I think, where, like, dear listener, do remember, that stuff matters.
01:01:46It's similar, obviously, the debate around AI filmmaking and things is, the problem with all of these AIs is they've only learned on things we've already done, so it pretty much can't come up with something new.
01:01:58Obviously, humans are pretty inspired by other humans as well, so it's sort of a slight parallel, but, yeah.
01:02:04Yeah, you can't have it make a very unique style, like...
01:02:10You can only own your own unique style, in a way.
01:02:13On that one, actually, because I'm curious if you have a counterexample, I've not been able to find it.
01:02:19Have movies and videos become better now that everything is being streamed?
01:02:23So, one thing I've...
01:02:25Like, I can come up with, like, one series of movies that I deem, like, really, really good, well worth your time, and I gladly took an evening off for that.
01:02:31It's the Knives Out movies.
01:02:33They're detective movies, and they're good.
01:02:35Like, they are genuinely...
01:02:37But I started looking at one, and I was kind of like, why do I feel a sense of genuine relief?
01:02:41Because there should be good movies every week.
01:02:43Like, Planet Earth, Hollywood, like, why is there, like, only one good movie every two years, maybe?
01:02:50And then I started thinking, like, okay, the same maybe holds for...
01:02:52Like, there's a couple of projects that are out there now that feel like a genuine next step in the evolution of the enlightenment of computer code,
01:03:00But, like, we've got LLMs now, and there's not, like, a tenfold increase of amazing software that we can build upon?
01:03:06Like, oh, hang on.
01:03:07Something weird is happening here.
01:03:09Like, that's also a thought I'm sort of trying to deal with.
01:03:12Like, okay, like, there's all this evidence that things have become easier.
01:03:15Why is not everything better?
01:03:17So you're talking about streaming services, like, so Netflix, Disney+, all those things.
01:03:22Are you saying since you can stream things now, it should be easier to make good things?
01:03:28Is that what you're saying?
01:03:29It definitely...
01:03:30So let me...
01:03:31I have to be maybe careful with my words, you're right, on that one.
01:03:34So I'm using Netflix kind of as a metaphor of, like, hey, I've started noticing that there simply isn't as much quality as I would expect.
01:03:40Because you would imagine there's so many people watching Netflix, there's, again, so much demand, that there should also be supply on the other side of it.
01:03:48But it kind of feels like the supply that we get is quantity, not quality.
01:03:53And there's a similar thing happening with LLMs, it feels like.
01:03:56Like, yeah, there's more code being written, but it's not like there's more code that I care about.
01:04:01Like, I still care about code that existed before, like, with really good web frameworks and things I like using and things I like maintaining.
01:04:06But has Airbnb become a better web app now?
01:04:11Has Booking.com become a better web app now?
01:04:13Like, are there examples of code that we have now that we simply could not have had before that really moved the needle?
01:04:20And I like to say, yeah, you're working on a remote.
01:04:21You struck a chord.
01:04:22You struck a chord of a thing that I'm really terrified of.
01:04:27I think I've noticed that a lot of these apps that were stable two years ago are not stable anymore.
01:04:33There's a lot of more bugs coming up, and I think that's because everyone's, like, vibe-coding features on top of it and not double-checking anything.
01:04:41And I feel like we're going to get to a point where even the most stable apps are not going to be stable anymore.
01:04:47I mean, you're probably referring to GitHub, I think, when you're saying that.
01:04:50I think you're wrong.
01:04:50I mean, like, GitHub is the most, like, visible example.
01:04:54But, like, I mean, consumer apps, like, the same you mentioned, Booking.com.
01:04:58Like, I think we're two weeks away from maybe a critical bug that they might introduce.
01:05:03I don't know.
01:05:04I mean, there's another fear you could have.
01:05:08Like, okay, if this is the way people are sort of getting used to programming, right?
01:05:12What if right now there's a whole lot of knowledge eroding, and the knowledge that we need to fix this is being eroded along with it?
01:05:18Like, can we get people out of retirement in time?
01:05:21Like, when we need to, like, and again, it's such a weird thing, but I don't know.
01:05:27Like, there's been just a couple of moments for me, and this is very personal.
01:05:31At Marimo, we definitely use LLMs now and again, but it does feel like almost everyone individually has landed at this place where I don't trust the LLM fully,
01:05:39and I also don't want my skills to fully atrophy.
01:05:43I'm speaking on behalf of colleagues, and I'm not entirely sure if this is 100% accurate,
01:05:46but it does feel like a lot of us really do care about what's going in.
01:05:50So if something is Vibe-coded, we do want this other colleague to actually check by hand,
01:05:54like, because we do care about, you know, Marimo being, like, super stable software and all of that.
01:05:59I don't know to what extent this holds for other projects out there.
01:06:04You know, similar to something you said there is, I always have the same question as well,
01:06:08is, like, a lot of people say, oh, AI, like, does the role of this junior person at this company.
01:06:12It's like, but then who's going to be the senior person in 20 years?
01:06:16It's like, if we've replaced all of the juniors, who goes through the pipeline of actually learning everything like normal juniors went through?
01:06:24Well, I think, so, sure.
01:06:26But, I mean, if I think back about the biggest value items that I brought to the table when I was a junior,
01:06:33none of that was related to the code per se, it was more about, like, hey, dude, you shouldn't do this problem this way.
01:06:38So, like, a example that I have, you know, you can watch some YouTube videos of talks of mine that I did.
01:06:43When I made my first recommender system, it was, like, the Dutch BBC, basically.
01:06:47And the Dutch BBC said, like, we don't care about having more views, we care more about, like, our entire catalog being viewed.
01:06:53So we want to actually have diversity in our recommendations that people would still click.
01:06:57You know, we care about the diversity and people watching.
01:06:59We don't want to do clickbait.
01:07:00You actually have to watch the video after.
01:07:03And there were all these PhDs saying, deep learning, TensorFlow, future, do it.
01:07:09And, you know, like, I was there, and I kind of made fun of them by saying, like,
01:07:13should we maybe build, like, an A-B testing system first before we do any of that stuff?
01:07:16Because if we can't A-B test the recommender system, right, like, okay, then kind of dumb.
01:07:21And I'm paraphrasing the story a little bit here, but the PhD said, okay, fine, we'll check back in two weeks.
01:07:26And again, they came back in, and they kind of said, like, okay, you've made the recommender system?
01:07:29Yes.
01:07:30Okay, we now do the TensorFlow thing.
01:07:32Like, we've got to flow our tensors.
01:07:33And again, I said, nah, what we can also do is take the current recommender system that's already there,
01:07:38and just, there were, like, three slots in the recommenders, like, first item, second item, third item.
01:07:43We can also just shuffle that around to see if there's, like, any clicking bias happening.
01:07:45And it will be good to know before we do any A-B testing.
01:07:48And again, they came back, and then they said, okay, how about now?
01:07:50Like, yeah, we have an A-B test, our A-B testing system.
01:07:52Like, we want to make sure that our A-B testing system isn't biased, so let's do that test.
01:07:56And this went on for, like, a couple of weeks.
01:07:58And then the PhDs came back, like, finally now can we do the thing?
01:08:01And I kind of said, well, sure, but I want to test this thing where we just recommend the next episode of the thing they're watching.
01:08:07And these PhDs have been doing, like, math and stuff and, like, all the TensorFlows,
01:08:11but it just completely eluded them that you could also just recommend the next episode of the show that the person's currently watching.
01:08:16Again, I don't want to suggest that this is the job of the junior, but sometimes it helps to have someone that's junior that sort of points to the senior and kind of goes, like, isn't there, like, a much simpler thing?
01:08:26Because I don't know about this deep learning thing, but maybe that's, like, a better thing to do?
01:08:30So there's also a lot of personality that a junior can bring along just because they're the eager space cadet, if it were,
01:08:35that, like, an older guy like me who has a wife and kid just won't do, right?
01:08:40So that's more the thing I'm afraid of.
01:08:41I actually think that a lot of good ideas come from the fact that there's a junior around who's, like, not used to the way the company is supposed to run
01:08:48and therefore is able to step outside the box a bit.
01:08:52Like, that's more the thing I'm afraid of than, like, do we still have engineers in the future?
01:08:55Like, it definitely, it feels more that sometimes a wheel needs to be reinvented and people are not discovering that.
01:09:02Like, that's the thing I'm personally more of.
01:09:05Because it's also, like, for open source ecosystems, right?
01:09:07Like, you kind of need some of that young blood to also come up with new ideas.
01:09:10So to me, it's not so much about, like, oh, do we still have seniors around?
01:09:13It's more like, okay, what's the source of new ideas going to be?
01:09:15Surely it's not going to be the 50-year-old that has an LLM.
01:09:17Like, it's got to be someone who is able to ask critical questions and wonders if there's maybe a better way.
01:09:25Typically, those are the 20- to 30-year-olds, not the 40- to 50-year-olds.
01:09:30Yeah, I think we have to get to a point where everyone cares a bit less about AI.
01:09:34Right now, there's so much hype and, like, the next skill, the next kind of plug-in is taking precedence.
01:09:39But when things calm down, people can bring some really interesting ideas to the world.
01:09:44I mean, there's so much cool things to make.
01:09:46That's also – it should still be exciting.
01:09:48But I'm worried about the fact that I haven't seen as much cool stuff yet.
01:09:52That's still a worry.
01:09:55But I will say, like, one thing.
01:09:58I'm tooting my own horn here.
01:09:59To me, Marimo is, like, a really cool exception, though, because we do these notebook competitions once in a while.
01:10:03The stuff that comes out of that is just super fun.
01:10:05People get really down and creative with that.
01:10:08So that's – even if they use LLMs, you can just tell that the idea they have in their mind, that's, like, the cool thing.
01:10:13And the LLM just builds it for them.
01:10:15But there's still, like, a good attempt at creativity there, which is always cool to see.
01:10:19Did you want to say something, James?
01:10:21I was going to say, I've seen a lot recently on Twitter of companies starting to realize how much tokens are costing with their individual developers and how much return they're getting back.
01:10:30Because I think there was a few companies that were like, oh, developers use unlimited amounts that you can.
01:10:34And the problem is they'll try to do things, like, 20 different ways with 20 Claude instances.
01:10:39And then you add one feature in the end.
01:10:42And it's cost quite a lot of money.
01:10:44If you just sort of sat down and actually planned it out first, it would have been a lot cheaper for them.
01:10:49So I've seen a fair few companies say they might start cracking down a bit on that.
01:10:53I mean, yeah, there's a bit – I've also heard the story that, I don't know, Claude has now said, like, okay, but if you're an individual,
01:10:59you can still do the, like, $100 a month thing.
01:11:01But if you're a company, then we do the per token thing because enterprise, whatever that means.
01:11:08I'm partially relieved by that because it then forces people to use their mind a little bit more.
01:11:13Like, you probably want to solve it on pen and paper before you put it into the machine kind of a thing.
01:11:18Maybe whiteboard with a colleague.
01:11:20Another thing I read, so a pragmatic engineer, Gergly, he – good takes and excellent podcast, by the way.
01:11:27Also highly recommend that.
01:11:29He had this interesting tweet where he said, like, you know how back in the day if you wanted to do something and you didn't really know if it was a good idea,
01:11:36you would just tap the shoulder of your colleague and you would discuss about whether or not something was a good idea.
01:11:41And as a result, you probably both learned something.
01:11:43Oh, but you're talking to the LLM now.
01:11:45You're probably not tapping your colleague on the shoulder.
01:11:47That means that, like, a lot of good lessons are just not happening right.
01:11:51It's that part, too, right?
01:11:52Like, the – because the LLM is going to be, like, really sycophantic about the whole thing.
01:11:56It's just going to tell you that your ideas are amazing.
01:11:58It's going to change its will the moment you toot your horn.
01:12:02But that sort of critical conversation between two professionals, like, well, there's a lot of stuff that happened there, too.
01:12:08But, yeah, we'll see.
01:12:09And the weirdest thing I've heard so far is that there's people who buy these fancy keyboards and that are now saying, like,
01:12:15maybe I don't need an ergonomic keyboard anymore because I don't do typing anymore, right?
01:12:20So what's your personal setup?
01:12:22Are you, like, Claude Code?
01:12:24Are you a – what's the word?
01:12:25Codex?
01:12:26Are you a cursor?
01:12:27One of the Cs?
01:12:29I'm – so I'm of the – I want to try out different things a whole lot.
01:12:33So I do like – so I don't think there's ever a state-of-the-art.
01:12:39It doesn't really exist.
01:12:40But I do like to think in sort of sensible defaults.
01:12:42There is this tool called Conductor that I really like.
01:12:45It can plug into both Codex and it can plug into Claude.
01:12:51I do want to sort of preface this.
01:12:53Like, I do have a semi-working relationship with these people, so feel free to ignore everything I'm about to say about them as well.
01:12:58But to me, that's a very sensible default.
01:13:00And the main thing that I like about it is I can very easily just have a brain fart, kind of go like, oh, is this possible?
01:13:06Start up a workspace, try it out, and then I can move back to doing other things.
01:13:10I like OpenCode just because it lets me try out all sorts of open source models as well.
01:13:14So that's a thing I also really like to use.
01:13:16And I'm also using Py a whole lot, but it's more because I can do these tricks like – okay, so we can spin up a sandbox on MoLab with a GPU, and then that's like a Python sandbox with a GPU, basically.
01:13:28And I can have my local LLM use that little SketchPads trick to connect to it.
01:13:34But I do want the LLM not to touch any files locally then, please.
01:13:38Like, the whole point of a sandbox is that it can only write there and it can only do stuff there.
01:13:41I don't want to do anything locally.
01:13:43And the really cool thing about Py is that every time that a tool call event happens, you can catch it.
01:13:48And you can say, like, okay, is this an edit command?
01:13:50Okay, block.
01:13:51You can only edit in the file that's in the cloud.
01:13:53Oh, is this a read command?
01:13:54Okay, you're allowed to do that, but only on these two files because those are the two skill files.
01:13:58Like, that flexibility is amazing.
01:14:00So I am finding myself exploring that a whole bunch more.
01:14:06And again, like, all the other stuff that I really do is I do a lot of just this.
01:14:11Like, I'm taking math courses again and taking, like, really hard math puzzles.
01:14:15Not that hard, but, like, they're hard now because I haven't done math in 10 years.
01:14:19So, like, a lot of my currency that I bring to the table for the Mareno people is, like, really cool demos, which means that my currency is also a little bit more in the can I come up with cool stories and that sort of a thing.
01:14:31So a lot of the stuff that I really try to do is just also try not to be behind the computer too much and actually be an interesting person with an interesting life to the outside of it.
01:14:42So, like, one thing I've started doing is I've taken my first lesson with a vocal coach, which, you know, it's kind of this out there thing to do.
01:14:51But if you're doing YouTube, it's actually not that crazy.
01:14:53And then you learn about how the voice works and there's all sorts of fascinating things.
01:14:55And that's making me wonder, like, oh, is there, like, a medical data set about this?
01:14:58Because that might be fun to demo as well.
01:15:00And that only happens because I'm also doing things out there like touching grass in real life.
01:15:05So my main concern is just, can I still remain nice and creative?
01:15:09Because that's where a lot of fun and, like, good things for Mareno also happen.
01:15:13And to do that, I also need to dive into the Mareno code base now and again, but I also need to be able to escape.
01:15:17So that's more the frequency where I'm at.
01:15:21Yeah, I think that's a good place to be.
01:15:22Not kind of too stuck in the computer, but also in touch with the real world.
01:15:27Because I guess you kind of get stuck in, which I do a lot, I kind of get stuck in the tech bubble.
01:15:32And I think, oh, why isn't this neighbor, like, trying to attack TPT or Claude?
01:15:36Like, it's going to make life so much easier, but they're just, like, have no idea.
01:15:40And this is interesting to see the average person, what they know about AI compared to, like, us, I guess.
01:15:46I'm kind of curious about you.
01:15:47Okay, we're going to reverse the rules now.
01:15:48I'm going to ask you just a quick question.
01:15:51So I can definitely imagine, like, for you, you're also maintaining a YouTube channel for a company.
01:15:55And I can imagine for you, like, the views might be, like, definitely a bit of a growth goal.
01:15:59Like, you don't want the views to plummet.
01:16:01But I can then also imagine there's a bit of pressure to sort of be on top of the thing that's hot this week, right?
01:16:07But I can also imagine that it's not always the thing that you're most excited about.
01:16:11Is that, like, a thing that's happening in your mind as you're, like, I don't know if you have meetings about what content to make.
01:16:16I don't know if it's, like, a round-robin thing that you all do, but because you've got, like, multiple people on the YouTube side of things.
01:16:21I don't know who will speak first, but I think if everything you said is true, there are sometimes things that are really popular that, like, I don't know if I really care about it.
01:16:31I think I've, I don't know if James has found it, but with the model releases, like, I used to do videos and then when I stopped, because I don't really care about incremental updates.
01:16:38Yeah, it's a bit, it's a bit all samey at some point, I guess.
01:16:42And so, yeah, I think if there's something that I'm not interested in after a while, I'd probably stop doing it.
01:16:47And I guess there was a point where I would do it, because I know it's popular, but I guess I'm starting to not do that as much.
01:16:54Yeah, and it's also because you, because you, I can also, but part of this probably also, if you're more enthusiastic on the camera, that tends to, like, matter as well, right?
01:17:01Yeah, I was going to say, I find it really hard to be enthusiastic for something I'm not.
01:17:06It's similar, like, the other day, as you said about model releases, I didn't make one when 4.8 came out, but then I did make one when the last Gemini came out, because there was something more than just the benchmarks are better.
01:17:17I think that's a very boring point that we're at with the new model releases now, is like, oh, it does 5% better.
01:17:23And, like, it's also really hard to show now, because AI is very good at coding.
01:17:28Like, before you used to be like, oh, look at this website it made, but they're all incredibly good at that now.
01:17:33Like, before, it started out doing one button or, like, one card on a website, and you were like, wow, this actually looks okay.
01:17:40And now it just, it can do the whole website fully vibe-coded pretty well.
01:17:44So it's quite hard to show complex changes in a video when the model just came out.
01:17:47Like, I sort of do often prefer the way of wait two or three weeks and actually get some real usage and a real code base and see it in there and how it actually plays out.
01:17:59But, yeah, I sort of see the way we cover topics is a lot.
01:18:02Like, we do cover news, and I sort of like that.
01:18:06We stay on top of the trends and try and see what is actually good or what might be a bit too sales pitchy.
01:18:13And then, yeah, sometimes there is, like, a personal project or something that you'll make a video on.
01:18:18So one that I have coming out soon is, like, I switched over to the Zed editor, which, I mean, it's sort of new, but it's not.
01:18:23No, but Zed is cool.
01:18:25I've also sort of switched as well.
01:18:27Zed, and you can definitely make a few videos on Zed.
01:18:29Zed is cool.
01:18:30Oh, yeah, that's sort of how I see how we come up with content.
01:18:33Interesting.
01:18:33One thing I have noticed, at least, but it's also, like, a personal thing, like, I've seen the hype for Pandas and then TensorFlow and then Spark.
01:18:41Like, I've been through all these hype cycles.
01:18:43And typically, it's, like, the syntax is never the interesting thing.
01:18:47The thing that is interesting is if there's a tool that makes you think differently about a problem.
01:18:50But then it's more the thinking that matters than the tool itself.
01:18:54So, okay, like, if this, like, one thing that we have now is we've got GPUs now, right, on this cloud platform thingy that I talked about.
01:19:01Does that mean I can think differently about the code that I write?
01:19:04And one exercise I did do was, like, okay, let's take an algorithm to solve the traveling salesman problem.
01:19:09It's, like, finding the tour in all the cities.
01:19:10Like, it's a computationally super complex thing and there's, like, academic papers about it.
01:19:16Oh, but if there's a GPU, oh, one funny thing you could do, actually, is, like, if all the pairs of cities fit in memory,
01:19:24then you can fit all the pairs in memory and you can just ask the GPU, like, which one of these pairs should I flip?
01:19:30And I can just do all of them in one swoop.
01:19:32Oh, hang on, that's, like, very different than how I would write an algorithm for a CPU.
01:19:36Oh, but I actually, oh, I can actually maybe benchmark this approach to, like, a normal CPU approach.
01:19:41And then, oh, actually, the way that I'm going about this problem is not syntax at all.
01:19:45It's more the concept of how the GPU works.
01:19:47And, oh, that I can actually get super enthusiastic about.
01:19:51But, oh, the syntax itself is, like, super boring.
01:19:54But, like, it does feel like that is where a story might be.
01:19:57And also, when I look at a lot of YouTube, I wish more people would go about it that way.
01:20:01Because the announcement of the number is way less interesting than, like, the way – if you can rethink about a problem because of this tool, then you can sort of come up with a cool story.
01:20:09But, yeah, like, you always got this one guy that sort of has this, like, YouTube thing where his face is, like, super amazed all the time whenever there's a new model out.
01:20:17And then you watch the video, it's just like, oh, number went up.
01:20:19Like, it's such a boring video to watch.
01:20:21But, yeah, okay, not interesting.
01:20:23Yeah, I think it's a great kind of idea to frame a video around a good story instead of around, like, a topic.
01:20:30I think it's quite an interesting thing.
01:20:32I don't necessarily know if it will hit, like, the views and stuff.
01:20:36But it would be a fun one to make because you've come up with a story around a topic that is an interesting story for the thing you're talking about.
01:20:44It's sort of like classic YouTube in the – I think the video that I've made personally that I like the most is probably one of my least viewed videos.
01:20:53Same.
01:20:53I liked it.
01:20:56The thing I have noticed is that sometimes you're so enthusiastic about a topic that you have to be careful that you don't go through it so fast just because of your own enthusiasm.
01:21:04You still got to, like, okay, but maybe a person who's not as into this as I am needs to understand why it's so interesting maybe.
01:21:11Like, that's a step that's perhaps easy to forget about.
01:21:14In general, though, a game I always like to play in my mind, at some point you're going to hit this point where Gemini can just make a summary of every YouTube video.
01:21:23You can kind of already ask it to do that.
01:21:25So there's a couple of these YouTube channels where half the time the videos are useful, the other half they're not.
01:21:30Can I just get the summary before I actually decide to see the video?
01:21:33And then you can just always tell, like, oh, but there's a few of these creators and there's a few of these videos that, oh, I just want to see them.
01:21:39Even if I see the summary, I still want to see it.
01:21:41I don't know exactly what it is, but that's the feeling that I do try to chase.
01:21:44Like, I do try to, even if you read a summary of the video, you would probably still want to watch it.
01:21:50Yeah.
01:21:51Actually, I do want to say that a thing that I've noticed about our channel is, like, if we do anything that is centered on our channel,
01:22:03around video models, people will not be interested in those videos.
01:22:07So I'm curious for, like, Marimo channel, is there, have you noticed that there are certain topics that people just aren't interested in?
01:22:15Like, like different data sets that people are not interested in or, I don't know, topics that don't resonate as well?
01:22:23So I, in general, I have noticed that if you were to go for YouTube shorts, for example, all the widget stuff that we have that's very visual does pretty well.
01:22:31Because, you know, you're watching a thing, and then that makes it very nice for a short.
01:22:35So if you have, like, a really pretty graph, like, things work well there.
01:22:39Besides that, I mean, we do make, I have this one video that's all about the keyboard shortcuts of Marimo.
01:22:44So just watch this video, and we're going to go through all the keyboard shortcuts, and then, you know, you'll be better at doing the keyboard shortcuts.
01:22:49And we do all sorts of monomic exercises to make sure it's in your mind.
01:22:51Well, obviously, only the really, like, people that already know Marimo are going to like that video.
01:22:55If you've never heard about Marimo, why on earth would you watch a video about, like, keyboard shortcuts in Marimo?
01:22:59That's not going to work.
01:23:00So one way to think about that, maybe, is that we do have this sort of hardcore audience that really loves Marimo for what it already is, and like a core group.
01:23:10But there's more people that haven't used Marimo than people that have.
01:23:13So some of the videos are there just to maybe nerd snipe is a word, or lure them in, or, like, show them that it's maybe perhaps relevant, maybe give them a spin.
01:23:21And then there's just different crowds of, like, oh, there's the web development people, they might like the video if we make it really bespoke to them.
01:23:28And then there are the AI people, which are very generic these days.
01:23:31But then if we can show something interesting about, in the case of KimiK 2.6, the thing that I did find interesting about that one is it's, quote, unquote, a worse model when you look at the code quality.
01:23:41But because it's so fast, it might actually be okay.
01:23:43Because it's really good at, like, generating the next cell, and I don't trust the code as much, so I'm going to be way more critical as I look at it.
01:23:49Oh, that's actually a mode of programming that maybe people should try more.
01:23:54Okay, so then people who are interested in AI still get to hear about what it's like to use it with Marimo, which is different than normal IDEs.
01:24:00And, oh, that's actually good.
01:24:01That's also a way to approach it.
01:24:03But again, as with a lot of these things, if I'm, you know, at least a little bit excited, then I just make the video.
01:24:10And I'm at the point right now where every short that we make gets, like, 3,000 views, and every normal video we make gets at least 2,000.
01:24:18Sure, that's not, like, a million, but 2,000 views is still 1,000 people.
01:24:21That's amazing.
01:24:23Like, it's not every day that you, like, communicate something to 1,000 people.
01:24:26And sure, some videos get 10K, which is cool, but 2K for every video is still, like, pretty darn good.
01:24:32Yeah, well, there's also sort of the thing of the quality of your audience can matter quite a lot.
01:24:37Because, obviously, there was the podcast, was it TBPN or whatever it's called, that OpenAI bought?
01:24:42And they actually don't get relatively that many views compared to other podcasts, like the top of Spotify.
01:24:47But the reason OpenAI valued it a lot was because the people that do listen to it are, like, VC investors and stuff, and they wanted to reach them.
01:24:56And I think it's similar for sort of coding things.
01:24:58It's like, we always had a rule when we started that, like, we don't want to explain things to junior developers necessarily.
01:25:04Because, A, I think people get bored of that.
01:25:06If you are a more senior developer and you come in and someone's saying, like, well, this is how you install this package.
01:25:11It's like, everyone knows how to install an NPM package.
01:25:14We don't need to spend 30 seconds or one minute going through this.
01:25:17That's more boilerplate than junior person per se.
01:25:19I suppose, yeah.
01:25:20But just sort of in general, like, rules around that is, like, you don't need to explain everything in the video so that everything is understandable.
01:25:28I think targeting, we sort of have a more, a picture of maybe someone similar to us that has that level of understanding than necessarily explaining every single concept in the video.
01:25:39Still explain, obviously, the core concept that you're showing off.
01:25:42But I think there's a lot of tangent subjects that you can get lost in, and the video will be, like, 20 minutes long, and we sort of strive for shorter.
01:25:50There is this attention span thing.
01:25:52You do got to mine a little bit.
01:25:53So, like, 7 to 10 minutes does it, and then once you go to 20, you're going to see that less and less people are going to watch the whole thing.
01:26:00That's definitely true.
01:26:01There's also, sorry, a drop-off when code is shown on screen.
01:26:05I do notice the second code gets shown, there is a drop-off, but it's like, I don't know how to work around that.
01:26:11Well, so in my case, I could show very little code, but still show the interactive widget thing.
01:26:16So one thing that I do somewhat frequently is I talk about this one academic paper, and then to explain a paper, well, maybe a moving chart does a better job than, like, all the code.
01:26:26And then I can very briefly show, like, the one important bit in the code that makes everything work and explain the why, but then have the rest be super visual and interactive and that sort of a thing.
01:26:35That tends to work pretty well for the Maremo side of things.
01:26:39It's a well-known thing across, like, other tech channels, like, other tech YouTubers have also complained about it.
01:26:43I do think it's good to show some of the code just because I think a meal needs vegetables, if that makes sense.
01:26:48Like, I don't think, like, you can be a tech channel and all you do is reaction videos, but are you still a tech channel at that point?
01:26:56Or are you just, you know, the morning TV show that people watch before they have coffee?
01:27:01I don't know, like, I don't know, but it's, again, like, it comes back to the enthusiasm.
01:27:06I still want to be somewhat happy with the videos that I make, and in order to do that, sometimes I just feel like we have to show code here, so we just do.
01:27:13Yeah, I think that makes sense.
01:27:15I know we've wrapped up over an hour now.
01:27:18I don't know how you think for time, but we can...
01:27:21I'm still happy to, like, hang around, but we should wrap up at some point.
01:27:25One thing I think I am kind of curious about, and a little bit more about the AI thing, because it does feel like that's something a lot of people have questions about.
01:27:34If you were to take a critical look right now, probably you also all experienced some sort of a skill atrophy kind of a moment, right?
01:27:41And because we mentioned caring, do you feel like, is it a skill atrophy thing, or maybe a caring about the code thing?
01:27:51And is that something that you would like to see change or not?
01:27:54Just out of curiosity.
01:27:55I feel like I'm asking this question to more and more people, but I've never really asked it to JavaScript people before, so I'm trying now.
01:28:00It's an interesting one.
01:28:01I kind of think it might be a bit of both, honestly.
01:28:04I know that's quite a boring answer, but I've sort of been going through something recently where I do feel like my skills have atrophied.
01:28:10And, like, I want to get back to just saying, like, don't use AI for a bit and try and study some more of the concepts and maybe give myself a refresher course on things that I even know, like, or did know once, just to make sure that I still know them.
01:28:24And then, as we said, we'd like, AI is so good at JavaScript and TypeScript, so I don't really care about a lot of the code that's generated for, like, my side project apps.
01:28:34So I think it's a bit of both.
01:28:35As I said earlier, sometimes, like, I don't even commit it to GitHub.
01:28:38I'll just, if it gets lost on my file system, I know I can really quickly vibe code it again.
01:28:45So there's definitely a piece of sort of caring about the code and also, yeah, skills as well.
01:28:49Well, what I do here is that you want to care more.
01:28:52There's something that makes you do kind of go, ah, I used to care more about this, and I missed that.
01:28:56Yeah, that's definitely the case.
01:28:57It's like, I go into coding for the fun of going through problems and realizing that I could solve them with code and going through that entire process of, like, debugging a problem and doing it.
01:29:10And sort of AI has taken a bit of that fun away in the way that it can do quite a lot of it.
01:29:15But then I, the flip of the coin is I also think, well, if AI can do a lot of this, maybe I can learn more advanced topics that I wouldn't have been able to get to as quick before.
01:29:24And I think that's the step that I need to take is, like, learning something new.
01:29:28Like Rust, for example, I really want to actually dive in and learn that the proper way.
01:29:32It's kind of interesting because, like, if you think about all the developer interviews for jobs, like, you're going to be presented with a lead code question, and then they're going to ask you, okay, do a first pass just so it works.
01:29:48And now optimize it so, you know, the cyclomatic complexity would be less, and, like, you put so much effort in learning that for the interview, but then you get to the job, and it's like, okay, here's the website, let's just build the website.
01:30:04And the thing that I'm just sometimes, yeah, and I'm thinking about, like, aren't people caring about how optimized the code is that Claude has written?
01:30:13Like, there's, surely there are ways that you can dig into the code and, oh, I could optimize this better.
01:30:19And I know that Amazon cares about how fast the page loads because that will make or break your customer base, like, how many customers you can attract.
01:30:29I haven't worked for Amazon, but, like, surely there are a lot of companies that are just, yeah, the website works, let's just move on.
01:30:36But I feel like I would want to care more about the optimization of the code to, you know, make it the best you can for what you've written.
01:30:46I don't know if that answers the question.
01:30:48Yeah, there's a YouTuber, well, he's not a YouTuber, but he's a guy on People's Podcasts called Casey Muratori, I think.
01:30:54Oh, that's the guy I was mentioning earlier.
01:30:56He's amazing.
01:30:56He's good.
01:30:57Yeah, yeah.
01:30:58He, like, he doesn't use AI, but because he, he loves the craft of coding, he just, like, actually enjoys coding.
01:31:03And I think, for me, like James said, I want to also learn systems language, maybe, I want to kind of learn it from scratch, understand how it works and how to manage memory, all that stuff.
01:31:14But, like, for things I don't really care about, I don't mind just getting AI to vibe code it, just, like, build the thing that's in my head, make it exist, and just get it out in the world.
01:31:24And I think for companies, or just, like, depending on where you work, if you don't care, or if I don't care about the products, like, someone's just working a code job, but they don't really care about code,
01:31:34then, like, I think AI is, like, the best thing ever, because they can just, like, slap something out, get their features done, and move on, like, move on to the thing they really care about, which is, I don't know, it could be making cakes, or going running, or whatever.
01:31:46And so, yeah, it really depends on the person, and, like, what they want to do, and, like, if you do enjoy code, and writing code, AI is probably not the best thing to use, but if you don't, then I think AI can just get your work done really quickly.
01:31:59Yeah, yeah, this is, I mean, okay, interesting.
01:32:02So, in Python land, I hear very similar things, it's just that there's this one thing that the LLMs are really bad at, and that is analyzing a dataset.
01:32:11But that's because, if you consider a dataset analyzed, a human has to do some understanding, that's just a part of it that's not going to go away, and that's the bit where the L, and also there's, like, judgment there, we don't want to make the bad decisions, so, like, someone needs to be involved.
01:32:26My impression is that, what you're describing is much more of a JavaScript experience with LLMs than in Python, but only with regards to stuff you do in notebooks.
01:32:35If you're a Python web developer and you spend a lot of time in PyCharm, then you, I suddenly hear the same story.
01:32:40When you say analyzing, is that, like, going inside the dataset and cleaning the data, like, removing false positives and stuff like that?
01:32:47I mean, that's one aspect of it.
01:32:49Like, you still want to, so, if the LLM says, I've done all the sentiment analysis, these are all positive, these are all negative, and now make a marketing decision based off of it.
01:32:56Part of me would like to think, like, okay, can we measure how often I agree with the LLM, because I don't want to automate a bad decision there.
01:33:02So, that's one aspect of it.
01:33:05There is also this other thing that you could do, and this is the final story, because we do have to probably wrap up, but have you ever heard of the gorilla dataset?
01:33:13Have you heard of the gorilla video?
01:33:14Yeah, the one where the gorilla walks in the video and nobody notices?
01:33:18Yeah, so, the thing is, like, in the beginning of the video, they say, there's a ball being thrown around.
01:33:22Pay attention to the ball, you pay attention to the ball, and then the video stops.
01:33:25And then they sort of say, like, did you see the gorilla walking through?
01:33:29And you kind of go, no, I was following a ball.
01:33:30Was there a gorilla?
01:33:31What?
01:33:32And then you watch the video again, and it turns out there's a guy in a gorilla suit just randomly walking around, and these people are throwing balls at each other.
01:33:38And the thing that's important there is, if you focus your attention on one thing, there's a lot of stuff around the one thing that you can sometimes not notice.
01:33:45And there's a dataset with this idea in mind, where they did this research in Italy.
01:33:50Half the group got the dataset and got asked, like, do your hypothesis tests?
01:33:54So, you got the body mass index, number of steps a day, male or female, and they would do their hypothesis test to check, like, is there a correlation between all these different variables?
01:34:02And the other group got said, like, do whatever.
01:34:04Here's a dataset, find me the thing that's important here.
01:34:07And if you were to make a plot of the steps per day, body mass index, and then gender, you would see a picture of a gorilla that's waving back at you.
01:34:14Now, the question is, which of these two groups was more likely to notice?
01:34:18And it's the group that didn't get the hypotheses to check for, because they were more like, oh, I know what's in here, let's make a plot.
01:34:24And a lot of people that only did the hypothesis stuff, they just went ahead, knee-jerk reaction, calculate the thing, done.
01:34:30Okay.
01:34:31Suppose you give this dataset to an LLM.
01:34:33What's going to happen?
01:34:35Are they going to find the gorilla in the dataset?
01:34:37So far, every time I tried, it did not find the gorilla in the dataset.
01:34:41It would just report on the correlations.
01:34:42You could actually make a screenshot of the chart, and you could ask it, like, hey, is there a gorilla in this dataset?
01:34:48And then it would sort of say, ah, you're mean metaphorically, because there's a correlation between X, Y, and X.
01:34:52Like, that's the thing that I've seen happen a bunch.
01:34:55And this is a phenomenon that's making, that's kept notebooks very relevant, and also kept analysis jobs very relevant, because someone needs to understand what's in the data within the company.
01:35:06And if you do it wrong, you're going to make very bad decisions.
01:35:08Your recommender is going to be out of whack, or, I don't know, you're going to report the wrong VAT numbers to the tax office, or things of that nature.
01:35:16So, the LLMs are still really bad at finding the gorilla in a dataset.
01:35:20Yeah, I can imagine that.
01:35:23And that might be a good place to end on.
01:35:25I didn't expect the conversation to go the way it did, but, yeah, you've got some very good anecdotes, and, yeah, the things you want to plug in.
01:35:33Any shameless plugs that you want to plug about yourself?
01:35:36I mean, check out the column code YouTube if you want to see keyboard reviews or random things that I think is interesting.
01:35:43I'm doing math stuff now.
01:35:45Check out Marimo if you haven't already.
01:35:46Also, if you're a JavaScript person and you want to learn Python, Marimo might be the most fun you'll have.
01:35:51And if not that, for God's sakes, go and touch some grass.
01:35:55Amen.
01:35:55Try to be, like, worry more about being an interesting person in your life than about the numbers of tokens you'll burn.
01:36:01That might be a thing to do.
01:36:04Thanks for listening to this episode of the BetterSat Podcast.
01:36:07Find us wherever you listen to your podcasts.
01:36:09So it's Apple Podcasts, Spotify, anywhere else.
01:36:12And for me, it's goodbye.
01:36:14Goodbye.
01:36:15Goodbye for me.
01:36:16Goodbye for me.

Key Takeaway

AI tools accelerate code execution and rapid prototyping, but sustained software quality and deep system understanding require human judgment, manual exploration, and active involvement.

Highlights

  • The GloV80 keyboard serves as an effective default ergonomic choice to mitigate repetitive strain injury (RSI) caused by wrist side-movements.

  • The open-source Python notebook Marimo grows roughly 5% weekly and allows developers to inspect variable states in memory directly via LLM context managers.

  • Hardware customizability through firmware like QMK allows keys such as Caps Lock or Home Row keys to double as Backspace or modifier keys (Shift, Control, Alt) based on hold duration.

  • LLMs struggle to detect visual or structural data anomalies, such as failing to spot an embedded gorilla pattern in datasets where human manual plotting easily reveals it.

  • Executing heavy numerical and matrix computations through C, Rust, or BLAS bindings allows Python to maintain low-latency interactivity without compilation overhead.

Timeline

Ergonomic Keyboards and Hardware Firmware Customization

  • Repetitive strain injury often stems from sideways wrist movements required on standard keyboard layouts.
  • Custom firmware like QMK allows deep key remapping and home-row modification features.
  • Refusing affiliate links helps maintain independence when evaluating hardware.

Custom hardware configurations address mechanical typing strain by placing modifiers like Shift, Control, or Alt directly under resting fingers via timed key presses. Modern open-source firmwares enable key mappings that persist across operating systems like Linux and macOS without relying on OS-level software hacks. Operating without commercial affiliate incentives ensures product critiques remain objective.

The Mechanics of Data Science Workflows and Reactive Python Notebooks

  • Data science workflows demand highly interactive environments rather than static application code.
  • Marimo functions as a reactive Python notebook experiencing steady weekly growth.
  • Short, focused learning modules convey concepts faster than extensive manual courses.

Unlike standard web development that focuses on deterministic UI design, data analysis requires dynamic data exploration, iterative plotting, and immediate visual feedback. Python bridges low-level high-performance code written in C or Rust with an accessible interactive REPL. Concise educational modules explaining specific mechanics (like generators or context managers) yield better retention than lengthy, textbook-style lectures.

Evaluating LLM Hype Versus Practical Engineering Utility

  • Massive demand for solutions often fuels market quackery when technical understanding lags behind.
  • LLMs lower entry barriers for new frameworks but risk replacing fundamental problem-solving.
  • Simplest solutions often beat complex AI implementations for routine tasks like sentiment classification.

Current AI hype mirrors historical technological crazes where high market demand created room for dubious claims before empirical evidence settled best practices. While large language models streamline initial setup and syntax exploration across unfamiliar languages, over-reliance degrades core critical thinking. Simple classical machine learning models or offline pen-and-paper analysis routinely solve standard problems cheaper and faster than complex LLMs.

Interactive Environments and Technical Explorations in Python

  • Python retains dominance in data analysis due to interactive data frame manipulation and REPL bindings.
  • Browser-based rendering tools combined with Python backends allow complex physical and mathematical simulations.
  • Custom scratchpads and context managers enable LLMs to inspect live memory states during execution.

Compiled low-level languages like Rust or C++ lack the immediate visual feedback loops necessary for rapid data manipulation and dynamic plotting. Integrating browser graphics capabilities with Python computational backends enables interactive models, such as running collision detection for Lanchester's Law differential equations inside a notebook widget. Providing AI agents with structured scratchpads accessing live memory variables eliminates cumbersome print-debugging loops.

Career Progression, Video Production, and Software Craftsmanship

  • Public speaking, community organization, and side projects open non-traditional career paths in technical DevRel.
  • Unscripted technical explainers built around working demos create higher audience engagement than rigid scripts.
  • Enterprise infrastructure acquisitions scale resource access without altering core software development models.

Building open-source tools, hosting community meetups, and creating unscripted, direct visual tutorials establish technical authority more effectively than formal credentials. Delivering concise visual demonstrations allows content creators to publish consistently without heavy teleprompter preparation. Enterprise backing provides raw computing infrastructure—such as high-end GPU clusters—for hosting scalable notebook instances while preserving lightweight core development team structures.

Vibe-Coding, Dependency Surface Area, and Software Maintainability

  • Limiting external package dependencies mitigates supply chain security risks in package registries like PyPI and NPM.
  • Generating code without understanding creates substantial maintenance liability and product risks.
  • Interactive software interfaces encourage developers to engage deeply with underlying code parameters.

Rapid AI code generation makes software cheap to produce, but unverified AI-generated code introduces hidden bugs, security vulnerabilities, and logic flaws. Tools that expose live parameters through scrubbable controls make code manipulation tactile and encourage active code care. Relying solely on AI for ideation produces unoriginal results because models train strictly on existing human artifacts.

The Structural Limits of AI in System Architecture and Data Analysis

  • Uncritical adoption of AI code leads to application instability and skill atrophy among engineering teams.
  • Junior developers bring essential questioning that prevents senior engineers from overcomplicating architecture.
  • LLMs fail at detecting structural contextual anomalies like the gorilla dataset test without explicit human guidance.

Relying on LLMs for end-to-end coding causes developer skills to erode and increases system error rates over time. Early-career developers challenge organizational inertia by proposing simple, direct alternatives to complex over-engineered systems. In data science, LLMs process statistical correlations blindly but remain incapable of noticing macroscopic visual or contextual patterns—such as spatial gorilla graphics embedded in data point plots—highlighting the mandatory requirement for human oversight.

Community Posts

View all posts