00:00:00Welcome to the Better Stack podcast where we have conversations about AI, software, dev, and all
00:00:05kinds of new technology. I'm one of your hosts, Richard and I'm joined by James.
00:00:10Andres. Hi, I'm Bash Bunny. Hello. Yeah. Thanks for joining us, Bash. It's good to have you.
00:00:16Yeah, of course. Thanks for inviting me. I think out of everyone else here, so me,
00:00:22James and Andres, I'm the one who kind of does most terminal stuff. So I think it'd be good for
00:00:28you just to give an intro of kind of what you do and particularly how you ended up using Emacs,
00:00:36because I'm quite curious on that. Oh my gosh. Okay. So I just quit my job not too long ago at
00:00:44Charm, which was a terminal tooling company. I worked there for almost four years, maintaining
00:00:50a lot of the open source tools that we had there. And yeah, I kind of ended up, I feel like in that
00:00:57niche, because my good friend Prime kind of pressured me into learning Neovim at one point.
00:01:05It was like when I first started streaming, I think it was like my second ever live stream and he rated
00:01:13me and then got all of his chatters to tell me to try BIM. And then at that point too, it's like,
00:01:19you're so like easily peer pressured. It's like, I have like, I have like 12 viewers and I was just
00:01:24like, okay, yes. Okay. There's like 50 people here talking to you, okay. And I think that kind of
00:01:29brought me into the terminal landscape a little bit more, kind of taught me like more things that
00:01:35I could do on the command line. And it was one of those things where like I had done some automation
00:01:41stuff, some like scripting at previous jobs. And I felt the power of that a little bit. Like I was
00:01:48doing some like different PowerShell scripting and stuff. And it like really allowed me to
00:01:52do my job a lot faster and with a lot less headache without having to deal with any of
00:01:57the bugs from like the different GUIs that I would be interacting with. So it was kind of something I
00:02:03was familiar with before, but yeah, kind of, kind of jumped back, jump back into it. When I started
00:02:08learning VIM, I realized how powerful it is to be able to like understand how things work and be able
00:02:15to run, run your programs in your terminal, just know some of the basic things that you can do there.
00:02:19And then, yeah, getting more into like customizing a lot of my, my setup and yeah, just learning how
00:02:27to, how to do all of that stuff. And then yeah, like live streaming, that kind of thing. It got me
00:02:33more interested in building out different TUIs and like applications in the terminal. I came across
00:02:39all of Charms Toolings and started building stuff with that, with their stuff. And they reached out
00:02:43and wanted to work together and then yeah, started, started maintaining all that, all their tools and
00:02:50working with the community and seeing some pretty incredible things being built on in terminals.
00:02:55So Prime was responsible for your job or your old job?
00:02:59Uh, that's a stretch. Okay. We can't inflate his ego like that. Okay. We don't, I, I'll, um,
00:03:05I'll thank the chatters. Okay. Chat, chat gets credit. Prime is whatever. It's fine.
00:03:13Are you like now fully integrated with like a dual keyboard and everything?
00:03:17I, okay. I do have a split keyboard, but I never use it. I, I have to, I got to sell it or something.
00:03:24I have a, I got a Dactyl Manuform. So it's like, it's, it's one, it's like a 3D printed,
00:03:29like open source, uh, like the design of it is open source, but there's no like company behind,
00:03:35like that actually builds Dactyl Manuform keyboards. I got it from some guy on Reddit.
00:03:41Yeah. Uh, so I'm, I'm too scared to like remap the keys and stuff. I feel like I'm going to break it
00:03:47somehow. And I like just knowing me cause I just break, I just so good at breaking things
00:03:52and yeah. And so it's, it's kind of been a bit like unusable for me because it's a bit,
00:03:57uh, I want, I need to tweak things and then it's like, I don't know. It's, it's fine. I've tried
00:04:03using it before. I got pretty decent at typing with it, but it's just like, I don't think that
00:04:08it was that, I didn't find it that like revolutionary for me personally, but I also am
00:04:13pretty, I don't know, maybe I have strong wrists. I'm built different potentially. I haven't had any
00:04:19wrist pain yet. That kind of went. Yeah. Yeah. I think split keyboards are a beast. I've got a
00:04:26regular kind of regular mechanical keyboards, but with a split keyboard, I've heard the kind of
00:04:31unlearn keyboards and just like learn a new way of typing. My first like real attempt with it was,
00:04:37um, I was doing okay. Unfortunately prime is once again involved in the story. It was, um,
00:04:43we were doing a 24 hour stream and we did a 12 hour coding portion and then a 12 hour gaming portion.
00:04:50And then the 12 hour coding portion, I was like, Oh, perfect. I'm going to break out my split keyboard.
00:04:56And I had an event for like, I was going to, I think, uh, GitHub universe with, um, like with
00:05:02charm. And we, all the girls had gotten like, get her girls and, uh, the charm girls. We got our,
00:05:08our nails done. And I had like nails, like long nails. Like I got like the extensions. And so like
00:05:14the first time that I'm like, Oh, perfect. I'm going to try getting used to the, this keyboard
00:05:18during a 12 hour coding stream. Well, what could be a better window for that? And then me having these
00:05:23like long fingernails, trying to figure out how to like having to like reposition my hands to be able
00:05:28to type properly. I was like, Oh shit. This was sorry. I'm not supposed to start on this podcast probably.
00:05:32Um, I was like, Oh man, this is a, this is more than the, more of a challenge than I signed up for.
00:05:39But yeah, it's always like the actually transitioning to using them is always the hard
00:05:45part. As we said earlier, like the ramp up to actually getting to the skill level where you're
00:05:49back to what you are on a normal keyboard. I always find that the hurdle that I have to overcome. It's
00:05:54the same with when I've tried near them. It's like I can do so much already with VS code and cursor.
00:05:59It's, it's getting to the point where I'm as productive, but I haven't been able to sink the
00:06:04time into yet. So, uh, how did you find switching over? Like how did, how, how long did that process
00:06:09take for you to feel as productive in sort of the terminal as you were with normal tools?
00:06:14At the time I used VS code with VIM key binds, uh, for, for as long as possible. I wasn't even
00:06:20planning to move to them. I was like, yeah, like I just think the motions are good. Like I just think
00:06:23being able to like navigate your code like this is nice. Uh, and then there came a point where I was
00:06:28like kind of learning more and more about Neovim like different little commands you can run and all
00:06:33that stuff. And then they wouldn't run in VS code. So then I was like, okay, well now I'm reaching the
00:06:38point where like there's other things that I want to do above and beyond just the motions that I now
00:06:44have to do in VIM. So that it kind of, that part kind of propelled me forward. But, uh, yeah, outside
00:06:50of that, I, I, I would have been fine with just like doing the motions in the editor. I think it's,
00:06:56it's a good place to be too. Yeah. Maybe switching to the key binds and VS code is a good trick to
00:07:00sort of dip your toe in the water of getting used to it. It might be a good method next time I try.
00:07:05Also VIM tutor is fun. If you ever do, so if you open up VIM and you do colon tutor with a capital T
00:07:12it'll, it'll open up like a little interactive tutorial thing that teaches you how to,
00:07:16how to like different little shortcuts and everything in VIM. And that it's really fun,
00:07:21just like having a little morning cup of coffee and like doing that, you know, it's like,
00:07:24it's, it's kind of like playing a game. I don't know. Feels gamified.
00:07:29Yeah. I think Priam was responsible for a whole generation of people learning VIM. I've,
00:07:34I've learned VIM, but, um, he was one of the reasons as well. Somebody else at work was using it and,
00:07:38uh, kind of convinced me to try. But, um, if I'm correct, you use Emacs, that's your main driver.
00:07:44I do. Yeah. Uh, so I started using, I moved over to Doom Emacs. So it's a bit different because it's
00:07:51like one of the pre-built ones. It's very similar to using like, like lunar VIM or lazy VIM, um,
00:07:56where it's kind of like, like, uh, pre-built. And so part of my frustration that I was experiencing
00:08:03with NeoVIM is that plugin authors. Okay. Again, I I'm pretty sure I wasn't, I wasn't changing to
00:08:10any major version releases of the plugins. And yet every time I would update my plugins, my whole
00:08:16conference would break. Like they, they were making a bunch of different like API changes,
00:08:21breaking changes, uh, that then required me to go and change a bunch of stuff in my config,
00:08:26which is fine maybe if you're a hobbyist, but also sometimes you just want to like sit down and just
00:08:32like actually do stuff. I'm like, I just got so sick of having to fix my config all the time. Um,
00:08:38so it was that combined with, I have some pretty regular chatters, shout out to Nix who has been
00:08:44the most persistent Emacs user in my community for years. He's been like shilling Emacs since day one.
00:08:52Um, but I kind of was at a point where I was trying to figure out also like a new way to kind of just
00:08:58like manage all of my tasks because with my job at charm, I was jumping around. I had like my hand
00:09:05in so many different pies. I was just jumping around so many different things. And I was just
00:09:09like, how do I keep track of everything? And, uh, I'd heard such good things about org mode.
00:09:14And so it kind of was like this perfect, this perfect combination of like, I need a way to
00:09:22plan things out better. I want to try something new. I've heard great things about org mode.
00:09:27There's a built in agenda. You can schedule your tasks. You can have all of your notes put together
00:09:32with your tasks. You can link files. You can do all this, all this great stuff. So I'm curious to
00:09:37try that. And then also NeoVim is driving me insane. So I tried Doom because it was like,
00:09:43I knew a few people that used Doom and really, really liked it. And it was like the lowest
00:09:50lift coming from them because it's actually like all VIM key binds within Emacs. So it,
00:09:58the editing experience and everything is really good. And a lot of the skills kind of carried
00:10:02over. I actually found it a lot easier to learn than VIM. That said, I'm not like, I'm not doing
00:10:10a custom Emacs config. So I might, I might eat those words when I start trying to write Emacs Lisp.
00:10:15But, um, yeah, I just found like it was very well documented and, uh, easy to find things. Like you
00:10:20basically just do alt X and you can fuzzy find through all of the available commands. And then
00:10:24it shows you like a little preview of the shortcuts for those commands. And so it's kind of one of
00:10:28those things where it's like, you don't have to spend that much time sitting and reading
00:10:32documentation to figure out how to use this thing. It's just like, you can just learn as you go,
00:10:37which is really nice. I had a question about your, uh, YouTube description. You said,
00:10:43talk your mom's C plus plus instead of rust. Are you like a rust hater or what, what is that about?
00:10:50I just love, uh, I love how like the rust community is so they have a deep love for their language,
00:10:59you know? And I just like to poke fun at them because they're so passionate and it gets them
00:11:04so riled up. And I think that, I think that people are too serious on the internet. I just think,
00:11:10I think there, I think there are, there are topics that are important that we should discuss,
00:11:14but I don't think that every topic is super important and we should discuss,
00:11:18like there's just so many things. I think programmers in general just love to like
00:11:23be pedantic and like, like, like nitpick things. And I just love poking fun at that.
00:11:29So yeah, I, I like, I like bullying the rest users in particular. They're my favorite
00:11:36period of the internet where everyone was like, let's rewrite everything can rust. And it felt
00:11:40like everyone wanted you to rewrite any app in rust. Cause it'd be quicker by like, I think there
00:11:44are still some like hardcore people who still believe that. Oh, for sure. Religion.
00:11:49Yeah. I feel like it, I feel like people, I don't know if they started it as a joke or like some,
00:11:56there was like 50, 50. I'm like, some people are saying it jokingly and then some people are saying
00:12:00it like, no, we need to rewrite this in rust because we need it to be safe. We need types.
00:12:04We need to write secure software. And then other people are just like, I just love rust. I'm going
00:12:10to rewrite everything in rust. Yeah. Rust is cool, but I think people are moving on to sick
00:12:13now. So I guess the big thing. It is the hot new thing. It is just move on to something else
00:12:20all the time. We love to do it. Have any of you tried SIG? Not yet. I'm thinking of doing it at
00:12:25some point, but I haven't tried it yet. I gave it a shot. Um, a while ago, I think when it was like
00:12:32very new cause the documentation was not done and that was tough. I think, uh, I do think that if
00:12:40you're somebody who probably likes the more kind of like low level languages where you have like
00:12:44full control of everything, it's probably a really, uh, good language for me at the time. I was just
00:12:50like, I was trying to learn Haskell at the same time and then started trying to learn and then like
00:12:54add it on Zig. And I was just like, why am I doing this? Who, who needs to hurt like this? Like nobody,
00:12:59nobody. Um, I, yeah, I, I've heard really good things about it though. I, I am actually thinking
00:13:05about learning Ross this year. That is kind of my plan. It's on the bingo card. Yeah. Cool. So I can
00:13:12join them finally. I feel like there's this curve where you kind of get the hang of it and then you
00:13:19feel like, you know, everything. And then there's a point where you start questioning everything and,
00:13:25and yeah. When the borrow checker comes in, perhaps. Yeah, exactly. Borrow checker. Yeah. That's,
00:13:32I've heard horror stories. Yeah. So what, what is org mode? I heard you talk about it in the
00:13:37stream and I had no idea what that is in Emacs. Org mode. It's okay. So there's a special kind
00:13:43of like org file that you have in Emacs. Um, it basically it's, it's, you know, it's, it's similar
00:13:49to, um, it's just like a markup language. It's kind of like a way that you can, yeah, like,
00:13:54like structure your notes and stuff like that. But there's a lot of kind of like extra things
00:13:59layered into it. So for example, you can have, it's got a, if you use like the to do, you know,
00:14:05like when you do capital to do and it like tracks it as a task. So org mode has that built in by
00:14:10default. It's got, uh, you can then you can start, you can like time when you started, you can track
00:14:16when you started working on the task, you can schedule it for specific days. You can then see,
00:14:21like, you can basically have a bunch of different, um, org files. So like have one for work,
00:14:26have one for personal, whatever, schedule these things to happen on different days.
00:14:30You can have them recurring weekly. You can have whatever. And, uh, and then also be able to see
00:14:35it in like the org agenda, which will show you basically a calendar view of like every, or like,
00:14:41yeah, a weekly list of all of your tasks just based on these files, which as somebody, I don't like
00:14:47moving data around. Like I'm, I'm literally working on a project right now that is, uh, just to be able
00:14:53to like write blog posts in markdown and have it do everything else for you. You basically just have,
00:15:01like you write it in markdown, you have front matter, which like, which basically like, yeah,
00:15:05like the metadata, the top of markdown file to be able to say, like when you want this thing to be
00:15:09due, and then you can see it in like a calendar view and you can, um, you can have a list, like you
00:15:15have a conflict file with the list of like, what are going to be public, like whatever your public
00:15:19blog posts are supposed to be. And then it'll create an RSS feed and convert all of them to
00:15:24like static HTML pages that you can just put on your site. Um, it's a very basic little project
00:15:30just for funsies, but it was kind of inspired by org. Um, cause it's also one of those things where,
00:15:36um, it can also export to any file format. So like if you have org notes, you can do like org export
00:15:43and it'll, it can export to PDF, HTML, markdown, whatever. So it's kind of one of those things where
00:15:50I, yeah, I was like, Oh, I want to do a blog. And then I was like, Oh, I can just export everything
00:15:54to HTML with, with this. And then I realized I was even too lazy for that. So let me just rewrite the,
00:16:00the wheel here. Yeah, I know it's cool. You're doing it all in Go, like Golang, aren't you?
00:16:05I'm doing it in Go this time. Yeah. Yeah. Yeah. And I think you said you're not like a,
00:16:10a web web server type person. You wouldn't write web servers. Is that true? Yeah. I'm not much of
00:16:15a web developer. I, there's just a lot, I feel like there's just, there's a lot of like moving
00:16:19parts to that. And then I, I get kind of like, I, I'm not as interested in tying all those things
00:16:25together. Does that make sense? You know, I'm like, I, I just like kind of building, I guess like,
00:16:31like we're backend stuff or I just like building out the functionality of like the actual, like just
00:16:38the behavior of the application and then I move on. Yeah. No, it makes sense. I think in my head,
00:16:44like a markdown tool is perfect for TypeScript, JavaScript, but you could do it in Go as well.
00:16:50Oh yeah. Yeah. If you're, especially if you're like rendering markdown and stuff, I never read
00:16:55markdown outside of it. It's like, like I never really read it rendered. I don't render it.
00:16:59I don't really like, yeah. I'm actually the, the total opposite.
00:17:06Oh really? I just want to, I just want to see pretty text formatted in a good design way,
00:17:10you know. What's your favorite? Do you use like Joplin or Obsidian or something? What do you use?
00:17:16Um, I did use Obsidian for a while, but now I just like Notion. Oh nice. Yeah. Notions,
00:17:24Notion's powerful. There's a lot you can do in there. Yeah. Notion's a rabbit hole of,
00:17:29of tricks. There's some people do some crazy stuff on Notion that I'm still not completely
00:17:33there with. I know people got their side hustles on there. Yeah. Yeah. You know, I was going to say
00:17:40my Notion, I, I've switched over from Obsidian as well, mainly cause work use Notion. And then, uh,
00:17:44yeah, my sort of way of doing to do lists is just, I have one big Notion called brain dump where I just
00:17:50dump notes in there throughout the day. And then at the end of the day, like I'll review it and then
00:17:54go through it. So maybe I need to try out, was it orgs? Work mode? Yeah. Yeah. I'd say my biggest,
00:18:03uh, my biggest like pet peeve with it right now is, so there's something called org Rome,
00:18:07which is what makes it actually like usable, accessible remotely. So right. Otherwise it's
00:18:13just local. Um, so I would need org Rome to be able to like see, see any of my tasks, whatever,
00:18:19um, on my phone. So that's my biggest thing is I feel like I do a lot of like brainstorming and
00:18:24stuff on my, like while I'm out, um, or just like a way for my computer. So it's kind of one of those
00:18:31things I started trying to use org mode for, um, like content stuff, content planning. And I just,
00:18:37I just found that it ended up not being a good solution for that. I was using Trello forever.
00:18:41And then I recently switched over to notion because all of my friends were telling me it was the way to
00:18:47go. And I was like, okay, okay. It's been, it's been a year of me pushing back on this. Let me try it at
00:18:52least. And, uh, it's been pretty good. I will say it is really handy to be able to like, especially
00:18:56when you're doing, uh, like thumbnails and like working with graphics of any kind, like it's,
00:19:01it's nice to be able to just embed that directly in the notes. There's just something so nice about
00:19:06having everything in one place. Right. Yeah. That was my problem with the obsidian from Emory is
00:19:10that I think you had to pay to sync the files and I was like, but it's just my own markdown files.
00:19:15I just wanted to use them. Um, but yeah. I like that you do the brain dumps at the end of the day.
00:19:20I find that is like, I think that had to be one of the best things that I adopted.
00:19:26Uh, to like finish the day as like, you know, cause I feel like there can be,
00:19:30especially if you work from home, there can be, it can be really challenging to like create
00:19:33separation between workday and then the rest of the evening. Uh, and I always found just like writing
00:19:41down every single kind of like thought question open, like any, any loose ends, uh, update all my
00:19:48projects, everything just in, in a little file dated that like with the title is just the date.
00:19:54Yeah. It really helps me just the next day. And it's like, what was I doing yesterday?
00:19:59It's like, it helps you disconnect. Cause yeah, you can, as you said, you can write all down
00:20:02and then sort of forget for a bit. It's nice too. Cause then it's like, you can just, like, I,
00:20:07I never bother really titling my, uh, any of my files with anything meaningful. Generally. I just,
00:20:15I'm okay to just leave it as like the date. And then it's like, I just do a global search of
00:20:20four specific words. If I'm looking for a specific project, whatever, I just find it, it's like less,
00:20:25I don't know. I find that somehow easier, which is weird. I started having to like collaborate
00:20:32with someone else, like with the, with like, yeah. Having like a shared folder with somebody else at
00:20:37work at one point. And they were just like, what is this? I was like, Oh, wait, they're, they're,
00:20:43they're not, they're not a developer. They're not used to doing the, like just global searching
00:20:46everything. I was like, Oh, okay. I've got to be less chaotic. Yeah. I think my notion organization
00:20:53would scare some people. It's, it's pretty familiar in that I just sometimes start a new page randomly.
00:20:57And then if I need to go back to it, I'll just search for what I was writing on that page instead
00:21:01of like title or anything like that. Yeah, totally. What are all of your, uh, stacks and languages
00:21:08of choice at the moment? I'm primarily TypeScript at the moment. I sort of lent to web dev later on
00:21:14in my career. I started out in Java for Minecraft and then somehow transitioned from backend to sort
00:21:21of liking the front end and the sort of full stack web dev stuff. That's so good. The pipeline from
00:21:27like video game to programming is, is incredible. I love that so much. It's such a great incentive.
00:21:34Yeah. That's actually how I fell in love with C# because I started coding games in Unity and then
00:21:40it's like, Oh, C# is such a elegant language. I just like the syntax of C#. So are you still
00:21:47into C# or is that's what, that's just what you got in with? That's what I've used primarily for
00:21:52like games, but, um, but yeah, I'm, I'm also a big Python fan. I just, I don't know something about
00:22:00Python. I love it. That's awesome. Yeah. Python's such, it's a very like flexible language. It feels
00:22:06like it's, it's very, it kind of feels like you're writing pseudocode at a point too. It's like, you
00:22:12don't get, you don't kind of have to get like tripped up by the syntax or by like weird behavior,
00:22:18weird like language specific things. Right. It's just sometimes on the editor, it might look weird,
00:22:24like the tab spacing and which tab like, you know, is indented or not. But once you get used to it,
00:22:30it's pretty cool. At least for me. Yeah. I learned with Python was my first language.
00:22:36Oh, I actually wanted to ask that. Like when you started your coding journey, what was your
00:22:40first experience? So that was Python, right? It was Python in university. Yeah. Yeah. So it was,
00:22:49I started with Python. That was my first ever, uh, like exposure. I had never seen code in my life
00:22:55until university CS classes. I will say, I, I'm really glad they started us off with Python.
00:23:03Cause I think if they would have started off as off with like C or something like that. And then
00:23:08it's also the first time that you're being introduced to like formal logic and like
00:23:12even the mathematics and stuff that I was taking were like very different than any other kind of
00:23:17mathematics. I was like, this is, it was a lot of like new ways of thinking. Um, and yeah, I think
00:23:22Python was a good, Python was a good place to start. I think it was, uh, I first learned Python
00:23:28and then it was Java. And then it was, uh, C and C++. Those are the ones we, we've kind of learned
00:23:36in school. You know what I had to learn in university? I had to learn Pascal in university.
00:23:43Oh, sick. I've heard that one. I was like, he's either going to say assembly, Haskell or Pascal.
00:23:48Yeah. A bit of assembly as well, but mainly Pascal. And that was, that was a pain. Anyway.
00:23:57I read the, uh, I did the book, uh, seven languages in seven weeks. That one's a really
00:24:01fun one to just like dip your toes in the water and see all these different, like,
00:24:04like kind of be able to compare the design and like decisions behind a bunch of different languages.
00:24:13Which were the seven ones?
00:24:14Oh God. I got to remember, uh, Haskell was in there. Hold on. Let me, let me open it up.
00:24:19Was Pascal in there?
00:24:21Uh, no, it wasn't. It was, it was Ruby Haskell. Let me like properly pull up the.
00:24:28We can also link that book in the show notes.
00:24:32At the time I did this, we were doing like a live stream book club kind of thing. Uh,
00:24:39and we ended up, the author came on and he was lovely. So it was, uh, it was Ruby. It was IO,
00:24:45prologue Haskell, uh, Scala, Erlang closure and Haskell. It's like very broad range of,
00:24:54um, languages, but it was nice when I, I think what I liked about that book was the fact that
00:24:58it didn't go too into the weeds where it didn't start to like beginner, you know,
00:25:02it like assumed a certain level of, of, um, competency. Like it was kind of one of those
00:25:08things. It was, I think it even prefaced it in the book of like, if there's something that you're
00:25:12unfamiliar with, look it up. I'm not putting it in the book, but you can like, you know,
00:25:17if it's an unfamiliar term, like you can search it. I like that. I like when it, it's always like
00:25:22annoying when you have to kind of work through a bunch of fluff. I feel like.
00:25:26You know, I went back to learn C cause I went, I was always self-taught and then I randomly decided
00:25:32I'd do the CS 50 thing that Harvard do for free. So that's when I jumped back into learning C. I think
00:25:38I jumped straight from Java to JavaScript. I was probably young enough, but I thought they were the
00:25:41same thing. Um, but uh, yeah, I think that was one of the cool things about CS 50 as well as sometimes
00:25:47they were like, yeah, you're just going to go have to look at the docs to try and find the answer here.
00:25:50Like we don't want to tell you because that is a skill you have to know as a developer is how to
00:25:55research. It is a skill you have to know as a developer and it is one of much contention these
00:26:01days it seems. Yeah. AI classic AI. We're on that part of the tool about coding. It's taken over a
00:26:10bit. Have you used any AI brush? I have. Yeah. So I did, um, I've used it in my own workflow,
00:26:18which is like, I'll use it more as a reference for things or like to ask further, like to ask further
00:26:24questions to like basically deepen my understanding of a scope. I'll use it to, you know, be able to
00:26:31navigate an unfamiliar code base a little bit quicker. Like I think there's a lot of,
00:26:35a lot of things that used to take a lot of time that it can shorten that time without
00:26:40taking away from, uh, your understanding of the code base and your ability to problem solve and
00:26:46all of that kind of stuff. So that's typically how I like to use it. Uh, I've also done like
00:26:51the full blown vibe coding of like, there is a stream I did recently in LA that was,
00:26:59we were building, if you're doing game dev for a week in the tower and, uh, it was pure vibe code.
00:27:06It was, we were using cursor and I wasn't footing the bill. So I was like, all right,
00:27:11you want me to, you want, you want pure vibes. Let's see. And that one, I, I didn't even look
00:27:17at the, like, I really didn't even look at the code base. And by the end of the week, I didn't know
00:27:22much about the code base, even though I had added a lot of features and all this stuff. So I think
00:27:28there's a lot of, I think there's a lot of power and like a lot to be said about the fact that
00:27:33you're able to now kind of alleviate some of that mental load. Cause I know that that is something
00:27:38that a lot of developers struggled with, with burnout and everything is like, it can just be
00:27:43like, there's only so many hours a day, every, or even so many hours a week, even cause like we,
00:27:48we try and balance it out as much as we can, but like, there's only so many hours a week that you
00:27:52can like put that kind of mental strain on yourself without it starting to wear on you. So I think it
00:27:58is really nice that it can kind of make that like alleviate that a little bit for developers and
00:28:03make our jobs a little bit easier as knowledge workers. Yeah, I, I, I did feel that I was like,
00:28:10okay, this is like being on the far end of the spectrum of, of hardly reviewing, like hardly
00:28:16reviewing the code, just checking that, okay, the feature looks like it works. Let's go like going
00:28:22purely on just like the, basically what the user, what the end user is seeing. I feel like it was a
00:28:28very interesting experience. I didn't, I didn't find that it would lead to very positive things
00:28:35long-term. Speaking about that, that challenge, I saw the last episode then you, you, did you like
00:28:43fail to launch it or it crashed or what happened afterwards? So I think there was a certain point,
00:28:50like all of us had been up for so many hours and stuff. And I think it was supposed, it was
00:28:54supposed to be one of those things where it was just like, I think it was just supposed to be like
00:28:58easy to ship or it was like, that was part of why I think we were using the, the stack that we had gone
00:29:04with for the, for the game. But yeah, basically we were following, like we like followed the
00:29:10instructions and it wouldn't, it, we just like, we couldn't get it, we couldn't ship it. We couldn't
00:29:16get it to like build on different systems. Like I think we were only able to get the Linux version
00:29:23up and working. I can't quite remember everything, like what happened, but I think it was kind of at
00:29:28the point where we were, we were all just like, I can't look at this anymore. And and yeah,
00:29:35we were trying to get, we were trying to get AI to, to figure out how to launch it. Nothing,
00:29:38nothing was working. And we were just like, we can't do it right now. Mentally done. Cooked.
00:29:44So it's kind of like an anti-commercial for vibe coding, I guess.
00:29:50No, no, no. I think it was like, I genuinely think it was a very, I was very impressed.
00:29:57Cause the, the top completions were, the top completions were great. That was one thing where
00:30:02I was just like, I feel like I want, cause I mean, okay, for what it's worth, I think if I was
00:30:07somebody who probably like didn't enjoy the act of coding and problem solving, like to me, it's just
00:30:11like puzzles and I love puzzles. So to me, it's almost like a little bit of a game. And I like
00:30:16that kind of like the challenge that it, that it brings. So to me to have something that like takes
00:30:20away all of that challenge, I'm like, no, I like that part. Wait, let me keep that. Uh, I feel like
00:30:26for people that, that don't kind of enjoy that as much. I feel like it's, it's incredible being able
00:30:32to, to, you don't have to make, it doesn't have to be hard or it doesn't have to be so hard. And, uh,
00:30:39and you can still get results. And I think that for better or for worse, I have kind of like,
00:30:45I go back and forth between like, yeah, I feel like it's kind of one of those things we won't know,
00:30:49uh, the, the super like long-term impacts of it until we see them. But, uh, for better or for
00:30:55worse, it also means that we're able to like deliver things quick, like more quickly and with
00:31:00less strain on us. So for businesses, for business cases, I think it makes a lot of sense to be using
00:31:06AI. Um, for me, it's more so just like, I just don't think that there can't be that very much like
00:31:12personal, personal growth, personal skill development, like per sorry, personal skill
00:31:18development. If you are relying on it purely, like you're not even touching code, you're just,
00:31:23it's all lives, you know, you're just, you're just instructing it. It's the same way how like,
00:31:28you could be really good at managing and like delegating things to people and that can give you
00:31:32results. And I feel like it's a very similar thing of like, if you do that for long enough and you're
00:31:36not like hands-on in the coding, then like it can, you can start to get a little bit rusty, you know,
00:31:42or a little bit like less familiar with the project because you're not like in it. Yeah. AI is very
00:31:46good at, if you need the outcome, it will give you the outcome, but if you want the journey along the
00:31:51way, it's, it's, it's sort of taken the fun away from that. It's a, I was thinking about this
00:31:56recently because I think the hobbies being less fun for me, like hobby coding, because I know so
00:32:02much of what I was going to hobby code can now just be done in like one prompt. And I think I haven't
00:32:06managed to take away the bit of me that's like, well, just don't use AI. I think my brain's always
00:32:11like, well, you might as well use AI that can do this that easily. Don't you get curious though?
00:32:17I don't know. How do you do this? I think I do. And I said this in a recent video as well. Like,
00:32:22I wish I had AI when I was learning to code for Minecraft. And then I was like, but I probably
00:32:26don't actually, because I don't think I would have learned anything. I would have just got the end
00:32:29result of like the fun thing I wanted to do in Minecraft instead of I now know Java. And I think
00:32:35knowing Java made it way easier for me to learn other languages. Cause once you learn one,
00:32:39they are pretty similar sort of concepts in a lot of them. Um, and I definitely wouldn't have that.
00:32:44Sometimes almost takes the joy out of problem solving because the problems are being solved
00:32:49for you in a way. Are you someone though that like, if a, if a tool already exists,
00:32:54you won't rewrite that thing just to figure out how it works. I think so. Yeah. I think I'll just
00:33:00use the tool. I think that's my biggest problem in the mind. I need to ban myself from AI when I'm
00:33:04doing like a hobby project. Yeah. I think that that's kind of the, that's kind of where I'm at
00:33:11too. I can understand why, like for companies, it's like, you know, speed is so important.
00:33:16So I can understand why companies would incentivize the use of AI and like why you would want to use it
00:33:22in a corporate setting. Like again, for a lot of the reasons that I already said of like, it, it,
00:33:27it also makes it makes your life easier, like less stressful at work. Um, potentially if your
00:33:33management is, is good. Uh, there's also like the flip side of that where management is now like,
00:33:37Oh, perfect. We can do more things with fewer people and now let's put more pressure on you.
00:33:42And also there's no accountability for like what the code that is written with AI. It's like, well,
00:33:48what are you going to blame AI? No, it's now still falls on you. So you have like a larger scope of
00:33:53things you're not responsible for. That's like very hard. That can be very hard to track. But I think
00:33:58in a, in a business setting, it's like, yeah, speed is the priority. You can and should be using
00:34:04whatever tools are at your disposal to, to be able to like get that goal faster. I do think that for
00:34:10hobby projects though, I think you, I think like as a, as a human being, like this is again, my
00:34:15personal, you live your life how you want to live your life, you know? But like, I think that as
00:34:19human beings, and if you genuinely enjoy programming, there needs to be like a balance of, I think if
00:34:25you go ham with AI work time, whatever, but you still need like sometimes where you're like, Hey,
00:34:31let me like do this just for the sake of learning. Let me just get depth here. Let me just like enjoy
00:34:36the process. Let me like do something that is difficult so that my threshold by tolerance for
00:34:42challenge doesn't get nerfed. Yeah, I completely agree. I think if you're working a full-time job
00:34:48and you're, you have to code every day, it does kind of make sense to, you know, but then in your
00:34:54spare time for your hobbies, you can learn a new language or rewrite SQL lite from scratch or
00:35:00something. And that, yeah, do that without AI so you can level yourself up. I think that makes sense.
00:35:05Yeah. Well, cause also I think when you're, as an employee, you're kind of supposed to act in like,
00:35:10act in the best interest of the company. And it's in the best interest of the company that you operate
00:35:16quickly, that things just work, that you're in, that you're pushing these new features, that you're
00:35:19debugging things quickly, all of these things, but that is so like your personal development, I think
00:35:24should, I think that companies should have like some time per week for skill development for their
00:35:32developers, for knowledge workers in general. It's, I don't think it's fair to expect that everyone has
00:35:37the bandwidth to be able to do that outside of work. And yet to like continue to expect performance
00:35:44increases. Yeah. I think that if you are, yeah, if you're at work, you've got to prioritize what's
00:35:50best for the company, which is generally just shipping things faster. And learning is a separate
00:35:56thing. Speaking of shipping things faster, you're actually, this is not a good segue, but I'll try
00:36:01anyway. Your laptop broke. Oh yeah. You've got a framework. Is that correct? Yeah, yeah, yeah. So
00:36:09it's, yeah, speaking of shipping things, me changing my tiling window manager to a new, a new
00:36:15one that's, that's giving me some, some growing learning pains, everything. Yeah, no, it's, it's
00:36:21funny. It's just like a very scuffed, um, so I, Wayland, so I'm using Sway now. I was using i3 for
00:36:28years and it was incredibly stable and everything, but then I got a bunch of flack for it when I
00:36:32posted about it on YouTube. And I was like, you know what? I'm sure these people on the internet know
00:36:38what they're talking about and I think they're right. I should try a new tiling window manager.
00:36:43So I moved to Sway because it was supposed to be like the easiest path forward from i3. And, um,
00:36:49yeah, it it's, so it uses Wayland under the hood and there's a lot. And, um, whereas, uh, i3 was
00:36:58using X server or like X11. And, um, yeah, there's been a lot of changes cause there are a lot of,
00:37:06a lot of applications require X server to run. Um, so even when you're running Wayland, like you have,
00:37:13yeah, I dunno, there's just like a lot of things you have to kind of like start properly in order
00:37:18to be able to like launch all of the applications that you want. And then it's like display mirroring
00:37:23isn't supported by default in Wayland. There's like an external, like literally to be able to like
00:37:28plug in an external monitor and just mirror the screen is not supported by default. So you have
00:37:34like a third, like a third party plugin that you need to install and, and run in order to mirror
00:37:40your display. And that's what kept happening is I think, I think what was happening is I would run
00:37:44that command while I would have an external monitor, um, like plugged in. And then when I would unplug
00:37:50it, it just would go into this crazy, like infinite looping situation. And it was just like mirroring
00:37:57itself on itself and forever. Um, but yeah, it's definitely, it's led to some funny little videos,
00:38:03some funny little moments that I've captured. Yeah. I'm not brave enough to have a main Linux
00:38:09machine. So I use a Mac. I think we all use Macs as well. I think those are the kinds of things that
00:38:14put me off. Okay. But I'm on the far end of the spectrum. I know you're a Nix OS kind of person.
00:38:21I use Nix Darwin on Mac. It's not the same, but it works similarly well enough. But yeah, just,
00:38:28just small things like that kind of put me off, but you do it, you can stream with it. So I guess
00:38:32it's possible. It's just, uh, not there yet. I mean, so far, I it's one of those things too,
00:38:38where it's like, I'm also kind of incentivized to do it. It's good. It allows me to like,
00:38:43talk to more people in the space and understand what, where they're coming from when I try these
00:38:48things, whether I like Sway or not. Like there's a whole set of Sway users that want to talk to me
00:38:53about tiling window managers and I can only understand their perspective if I try it. So I
00:38:58think it's more so too. It's like, because I'm kind of in like the, the, the public space in that way,
00:39:03it's like, and I, I really like connecting with people. That's like a big driver for me for
00:39:07doing everything and anything that I, that I do publicly. Uh, I just, I just really like connecting
00:39:14with other people and hearing their perspective and trying to understand where they're coming from and
00:39:19all of that kind of stuff. So for me, if it, if it, even if it's a little bit painful,
00:39:24if it gives me like an opportunity for better connection with other people, I'm, I'm happy to,
00:39:29to try it out. And uh, yeah, this one's, this one's a bit painful. I, I'm not recommending it yet.
00:39:35I think I've tried Linux as, as my main and always fallen at like compatibility issues and like,
00:39:41I need Final Cut for my job. So I need a Mac most of the time. And then like with gaming and stuff
00:39:46on my PC, I've like dual booted it, but then I just run out of space and end up wanting Windows back.
00:39:52Um, but uh, it's coming. There are a lot of Linux distros out there that are very stable,
00:39:57very user-friendly, even like I was using Pop!OS for a while, which is uh, like supported,
00:40:02it's, you know, backed by a company backed by System76, um, which is nice. Cause then you know,
00:40:07at least there's like some, there's some accountability for support and stuff like that.
00:40:11There's a, yeah, there's a lot out there that's quite stable. And even like the gaming,
00:40:14like Steam runs well on Linux. I think, uh, it just depends on the game cause some anti-cheat it's like
00:40:20it has to be Windows or it just, it doesn't work. Um, and I will say I've also had a challenging time
00:40:29using a Linux machine for video editing. I also don't know if it's like, I've only tried it on my
00:40:34desktop PC, which has an Nvidia graphics card, which is like, you know, kind of notoriously
00:40:39annoying with, with Linux in different ways. Um, so I, I am curious, I'm going to try,
00:40:47uh, I'm going to try and get DaVinci Resolve working on my new framework laptop and I'm
00:40:51going to see if I can get it working. Cause like before it would basically, it would just,
00:40:55it would like, it would launch, but then I don't know, there was a bunch of stuff. Like I think
00:40:59the previewer wasn't working and like there was just a bunch of stuff that didn't quite work.
00:41:02Right. But I, I know what you mean. I, I do think that, um, I do think that Mac can give you,
00:41:08it gives you a very like versatile environment that you can work with. I will say, I think
00:41:14with Linux, it's kind of one of those things where I think it's quite similar to like using
00:41:18the motions in an editor. I feel like there's there it's okay. Yeah, we're back to that. We're
00:41:24circling back. I think it's kind of one of those things where it's like, the more that you want to
00:41:28do with your, uh, with your bash scripts and stuff like that, the more you start to realize like the
00:41:34power of being able to configure your entire machine from your terminal versus like obviously Mac kind
00:41:40of like locks that in a sense. Like it's, you're like limited with how much you can kind of
00:41:44configure in that way. Um, also just in terms of like customization, all of that kind of stuff,
00:41:49like ricing is very fun. I'm, I'm down in the rabbit hole. This is also part of why I it's fun.
00:41:55It causes me pain, but it's worth it for me. I like tweaking my system, but I will say Mac
00:42:01is great if you are a developer and you just want things to just work. It's, it's excellent.
00:42:06I mean, it is pretty similar, like what vs code is to like Emacs and vim. It's like, if you want it
00:42:10to just work, it's you can use the one that does already work and everything's out of the box and
00:42:15ready to go. I will say, uh, yeah, I think like Ubuntu, Ubuntu mint pop OS. I've heard very,
00:42:22very good things about those ones for just like, they, they just, they work out of the box. Um,
00:42:27they're very good, but again, it depends on what your needs are. Cause if you're doing a lot of
00:42:30video editing, I'd have to try, I'd have to try on mix and see if I can get DaVinci resolve. Cause
00:42:35like, again, it's just, I think it's just a, it can be like a graphics, just like a graphics driver
00:42:41problem or something with, uh, with app compatibility. And it's, it's different too.
00:42:46Cause like obviously Apple has like all of their hardware and everything is proprietary. Like it's
00:42:50like, it's completely built to, to all work together all the time. Um, they have just such a,
00:42:58a kind of like, how do I say not quite sandbox environment, but like, you know, like every,
00:43:04everything in their, in their pipeline is so locked in is so made for itself. So it's a bit
00:43:11of a hard one to compare to, but I know actually a lot of developers who have a set up where they,
00:43:17they use a Mac, but then they SSH into a, a Linux desktop or even like a, a hosted like Linux
00:43:27environment for their development. Yeah. I do that a few times. I have
00:43:30Proxmox running on like a server that I have in the house. And then I think a lot of them,
00:43:35most of the servers on there run Ubuntu, um, for RAM home automation stuff. So yeah,
00:43:40I think that is a good way to do it. Yeah. I go into home assistant. Um, I've, I've now,
00:43:45I've actually been quite anti smart homes. I've always found like, I just want a light switch,
00:43:50just give me a light switch. But then I, I learn a bit of home assistant and how you can script like
00:43:54lights to turn on altogether at the same time and like loads of different modes. And then I sort of
00:43:59went down that rabbit hole recently. So it's, it's been quite fun. That's fun. I think the smart home
00:44:04stuff for me is like being able to turn all of my lights off is nice. If they have any kind of like
00:44:09you're like irrigation stuff, I'm like, I'm hopeless with plants. I'll kill them. They're all dead. Um,
00:44:16and then even being able to just check on, uh, if you have like, like home security stuff, you know,
00:44:22being able to like do all that and have like sensors and all that, all that jazz is kind of fun. Yeah.
00:44:27The thing that made me make the jump in the end was I had so many things that had like smart
00:44:30capabilities, but they all had different apps, but I was like, this is way too many apps. It's
00:44:35like, I just want home assistant. Um, and that cleared it all up and made it way easier. Um,
00:44:40because yeah, every one, every single one has to have like its own hub and proprietary app and it's
00:44:44so painful. Oh yeah. I mean, I use some Elgato stuff and I feel the pain. Yeah. Even, I mean,
00:44:50they're all on the same app, but like the app is, it's, it's interesting. They w it's, they're kind
00:44:55of, Elgato is kind of notorious for having like rough software. I have that prompt and I hate the
00:45:01camera prompt to software and most of Elgato software is, it just always breaks on me for
00:45:07some reason. Yeah. I had my lights go out for like a full day. It just wouldn't connect in the app.
00:45:12Like the app could not detect it. And I was like, okay, um, I've done all the things,
00:45:16all the troubleshooting things. And the next day it turned, next day it worked. I was like,
00:45:20okay, I love computers. Yeah. I used to have that with the lights, but they seem to be fine at the
00:45:26moment. They seem to work well. That's awesome. Yeah. That's nice. When they, when they work,
00:45:29they're great. But, um, going back to what you said earlier about the, some of the developers SSH
00:45:34into the Linux machine, I think I've only heard of Dax. I'm sure you know Dax. He's the open code guy.
00:45:40Yeah. He, he does that. He's quite famous for doing that. And the, the problem I see, well,
00:45:45the multiple problems, but what I see is what if your internet goes, how are you supposed to work?
00:45:49Or like, what if you want to use something with the UI? Do you have to, yeah. How does that work?
00:45:54Yeah. I think, I think it's kind of one of those things where it's, if you're doing stuff with the
00:46:00UI either, I think maybe you just don't and, or you have a tail, like if you use something like
00:46:06tail scale and you can still like do remote connection in a, in a, in a different kind of way
00:46:11to be able to probably like test those things. But, uh, yeah, I know I, this is part of why I,
00:46:18I have, I've only done it to like code from the couch. You know, if I like, I'm too lazy,
00:46:23I am like mid changes and I I'm like, I shouldn't push these. Let me just, uh, let me just like
00:46:29SSH into my other machine, like from my laptop. I do think, yeah, you need a reliable internet
00:46:34connection. I think I asked him about that as well. And he was like, yeah, I just always need to be on
00:46:39the internet. But then he's like, who's coding without the internet. I don't know if he actually
00:46:42said that, but I think that's what a lot of developers say. Uh, it's like, who's coding
00:46:45without the internet. If the internet goes down, like the second I'd get stuck on a problem, I'd be
00:46:50screwed anyway. I'd need the docs or AI to help me out. Oh, actually, wait, let me put you on
00:46:55something. Uh, there's something called dev docs. That's really handy if you are ever coding. Well,
00:47:00it's, it's, it's offline enabled. You can, it's, it's developer documentation. It'll have like full,
00:47:06um, yeah, like APIs, everything that you, that you need for like the language that you're,
00:47:11that you're learning. It's really good. Yeah. Dev docs.io. I actually run into the problem
00:47:16when I was trying to do some stuff on a flight and I was like, it doesn't have internet. And I was
00:47:20like, but now I'm stuck on a problem and I don't really have AI cause the local LLM models aren't
00:47:24that good. And then yeah. So I've tried really good things about and then mini max. I don't know.
00:47:32It couldn't help me when I was on, yeah, on the plane. I don't think, I think it's,
00:47:36it depends on the level of problem, I suppose. Yeah. Yeah. Fair enough. I, I, people ask me,
00:47:41it's funny. I, on stream, people just ask me like, I don't know what, I don't know why.
00:47:47I am very much like, I will continuously say guys, I am, I'm just a, I'm just a girl coding. Like I'm
00:47:54not the expert on all of it. They're like, is this the best model to use? And I'm like, I don't know.
00:48:00I'm just using a model, you know? I'm like, uh, and I was like the burden, the burden of influence,
00:48:07I guess. Yeah. The answer to that question changes every week as well. I think that it's a running
00:48:11joke. When you watch Theo's videos, it's like the new best model counter is always in the comments
00:48:16and it's like, but technically it is the new best model. It's just moving so fast. There's just
00:48:20always a new one every week. I think that's healthy though. A lot of times it's very vibe based. Like
00:48:26some people just, you know, preach one model because it works for them or whatever, or,
00:48:32yeah, like this one has a good personality. I like this one. Yeah, exactly. For me, Opus is,
00:48:40is the one that I think that is quite vibe based for me. You can tell me in benchmarks sometimes
00:48:43that Opus is beat by like 5.2, but I don't know, Claude and Opus seem to have something that works
00:48:49well for most of the problems I put it up against. Ever since I tried Haiku, I just really love Haiku,
00:48:57so I'm still using it. I didn't think anyone used that one. I've heard good things about Kimi. Yeah.
00:49:03It's not my main. My main is a GLM 4.7. That's another Chinese model, but that's really good.
00:49:12Works well with open codes. You get it for free, but yeah, I like jumping between models. So GLM is
00:49:19cool. I use Opus occasionally and GPT 5.2, but yeah, I just jump between different models, whatever
00:49:26I feel like at the time. It's hard to keep up sometimes with what the new model of the week is.
00:49:31It's like stick to what, what works for you until it like hits a problem that it can't solve and then
00:49:36see if the next model can. Exactly. Yeah. Yeah. I mean, I think that's a good way to approach most
00:49:42things. I'm like, we don't need to over complicate this. Let's just like, let's just, let's just work
00:49:47with what we got here and then improve it as needed. I think people overthink that even like,
00:49:53I find my, I catch myself doing that on streams as well. Like if I'm coding while I'm on stream,
00:49:59then it's like you, you get people that are like nitpicking your code, like while you're,
00:50:04it's like your first implementation of the thing. And then I'm like, wait, okay.
00:50:07I don't, and then I, like, I start to do it and then I'm like, hold on girl, like just make it bad
00:50:14first, you know, aim for it to be bad and that's okay. And then it'll, it'll, it'll bother you
00:50:20and you'll fix it. I think I get stuck on that problem when I'm like building apps for myself.
00:50:26Sometimes it's like, Oh, but I need to add in like this new feature that does this. And it's like,
00:50:29you know, you're the only one using it. It's like, you need to be a smooth process. You can always just
00:50:34go and fix it when you run into that problem. But for some reason, it's always like thinking about
00:50:38how users are going to use the app that I definitely am never going to release to the public anyway. So
00:50:43it's, yeah, I think sometimes you over engineer things that you don't need to
00:50:46just focus on an MVP, just have an MVP on your mind and just go with it.
00:50:53And let there be pain points. That's a good signal that something needs to change.
00:50:57It's okay for things to be a little bit painful. The thing is it is AI has kind of made it worse
00:51:01for me because I'm sometimes like if I am prompting with AI and vibe coding a bit, I'm like, well,
00:51:05it can add this feature really quickly. So let's just do it. And then I just go down a rabbit hole of
00:51:09trying to add a feature that wasn't needed in the first place. Cause AI is trying to do it now. And
00:51:13yeah, I definitely need to go on like a week ban from AI while I'm trying a new project or something.
00:51:19When you are kind of like learning new skills and or, you know, trying out new projects, whatever.
00:51:26What are your favorite resources right now? Obviously AI probably top of the list. Yeah.
00:51:32Yeah. Assuming AI is at the top of the list. Like even for me, I'd say AI is like at the top of the
00:51:36list for just being able to get information quickly and learn something new very quickly.
00:51:39I'm largely YouTube based. I think I sort of live on YouTube for, for it's how I learned to code with
00:51:46some someone on YouTube making like developer videos for Minecraft and Java. Um, and yeah,
00:51:51I just stick to sort of YouTube and go from there. Have you watched any YouTube videos in the last
00:51:58year that are like specific to learning a new skill or it's like mostly AI? Um, mostly AI. I watch
00:52:03a lot of developer content on there. To be honest, I can't bring up specific examples, but, uh,
00:52:08obviously I watched like a lot of Theo Dax when he posts videos, primogen and just watching other
00:52:13people learn skills. Like sometimes I'm like, Oh, I want to go try that. And then I'll try it myself.
00:52:16Yeah. Um, and yeah, I think I watched YouTube more than anything. So yeah, it's hard to specific
00:52:23count specific videos. Cause to be honest, I think I've watched a bit too much of it, but that's
00:52:27probably why I also do YouTube is cause yeah, I've watched a lot of it. Yeah. I usually go to the
00:52:34documentation page and straight to the, uh, hello world example and just try to replicate that and
00:52:40then go from there. Yeah. I always try and like, I also do, I do something similar. I'm like, okay,
00:52:46show me usage examples. And then I try and then I try to like tweak it, like break it a little bit.
00:52:51And I'm like, why didn't this work? Why did this work? You know? But actually speaking of
00:52:56taking a break from AI the other day, I like turned off like, no, I didn't turn off. I just didn't use
00:53:03the AI model, but I turned on the auto completion again. And I kind of found the joy of, of working
00:53:10with auto completion again. It was like, it wasn't like a popular method for a time, but then AI took
00:53:16over and everyone started vibe coding. I kind of like that when you can code and then it will
00:53:22suggest the next line for you and like, Oh yeah, this makes sense. And then you kind of think on
00:53:26your own, like what's going to be the next line and what, how the code is going to continue in a way.
00:53:32Yeah. I think if I had that built into my editor, I would probably use that the most
00:53:36out of like, I don't, I, I think I, I like being able to implementing it in one of the,
00:53:42Oh, in Emacs? Yeah. Well, I looked at some different, um, there's like some different
00:53:46packages that some people are using for AI completions. But honestly, I feel like at that
00:53:51point, I'd probably just, uh, I'd probably just use an editor that like has all the, all that stuff
00:53:56built in. Cause then you have like the chat option. If you do want to like get a bit more context on
00:54:02on the project or like, you know, bounce ideas where it, where it's context aware.
00:54:06Um, but yeah, I liked the tab completion. I think that was my favorite thing in cursor
00:54:11when I tried it. Um, my, again, the only thing is I'm like, I better,
00:54:17better make sure I don't have like the tab pause, you know, where you write a bit of text and then
00:54:24you're waiting for autocomplete to catch up. I didn't actually know that had a term instead of
00:54:28thinking, you just, you like, you pause and you wait for what it's going to say instead of like
00:54:32thinking what, what you want to do. Um, yeah, that's called the tab pause. But I find that's
00:54:38still better than just vibe coding. Cause then at least you're writing something on your own.
00:54:44Well, at least you're like, you're, you're making changes with a scope in mind. Like you're, you're
00:54:48making changes and you're, you're actually, you've, you've, you're, you know, where you are in the code
00:54:52base or like you're, you're seeing some code in the code base and you, you kind of know like what's
00:54:57going on around that. I think if, yeah, if you're, if you're too far away, it's like, you're basically
00:55:02just a manager for the project, which is a very different level of involvement and awareness of
00:55:11the goings on. And yeah, I, I also agree. I think the tab completion is the, I think that one is
00:55:17great. I was like, I think, I think if we had like AI, AI worked with our LSP to just do like the
00:55:24perfect little, cause sometimes I don't want it to suggest a full, um, solution, but like, I do like
00:55:31when it it'll suggest a name or it'll suggest like a, uh, yeah, like just like better suggestions,
00:55:37like based on the context of the project. And I find sometimes LSPs can either be really slow with
00:55:41that or like not suggest those things. Uh, so I, I, I need better, I need better performance from LSPs.
00:55:48I was going to say, I, I tried to learn language like last year, late last year. And I found AI
00:55:54wasn't really the best way to learn like from scratch. Like if you say, okay, I want to learn
00:55:59X, tell me how to do simple things on it. It wouldn't, it was just trying to do it for you.
00:56:02It wouldn't teach you. So I think if, if I was learning something, I'd usually go to the docs and
00:56:07like aim to go to YouTube as well, just to see someone use it and explain what everything does.
00:56:12But I think docs are a good resource, especially on open source repos. If there are docs,
00:56:16it's quite helpful to go through that. Yeah, I'm a big fan of books. Um, I don't
00:56:21necessarily always read like, especially technical books. Like I don't always necessarily read them
00:56:24front to back. I feel like there's so many times where I've tried to, I try to do that and then I
00:56:29get sidetracked for a bit. And then I like, Oh, I have to start again from the beginning. And it's
00:56:33like this cycle of like never getting past a certain point because it's like inevitably you're
00:56:37going to get, have other priorities because you're an, you're an adult. But what I do like with books
00:56:42is I'll just like jump to certain sections that are relevant to like what I want to learn. So like
00:56:46I'll jump to a specific chapter and I'm just like, okay, this I'm finding most interesting of like in
00:56:50the topics, all the topics covered in this book, let me just read this. There's going to be, it's
00:56:55potentially out of my depth, which is fine because I don't need to fully, I don't need to read it to
00:57:01like fully understand the first time I'm reading it to like get exposure to all of these terms.
00:57:06And here, and like seeing those things in context. And then I can go back and like learn more about
00:57:11those terms and either, either doing so through, um, going back in the book and learning about those
00:57:17things or like asking AI about these very, you know, I feel like AI is very good when you give
00:57:21it a very limited scope in particular, like really, really excels with that. Um, but yeah, I love,
00:57:28I love books for that. I do think that when I learn a new language, it's always going to be,
00:57:32um, using a book. Cause it's just so it gives you such a good, uh, like skeleton for things,
00:57:38you know, like it gives you such a clear path forward, which I think can be like the hardest
00:57:42thing when you're learning something new is like, it's, you don't know what you don't know. You can't
00:57:47like search for something that you don't, that you don't know exists yet. So I find it really good for
00:57:51that kind of stuff. But, uh, yeah, docs are great as well. Do you guys know learn X in Y minutes.com?
00:57:58That's a great little website as well. That one is like, it's learn X and Y minutes. You can do,
00:58:03uh, it'll be like slash whatever language, but you can, you can, they've got like Python,
00:58:09they've got rust and it just is here. I'll show you the Python one. I don't know if there's a chat
00:58:13here. So for the audio listeners, it learn X and Y minutes gives you a summary for all of the syntax
00:58:21and everything for a specific language. So it can be really handy if you're just trying to remember
00:58:25the basics of like how you can do like different like string operations or like, um, how you write
00:58:31like Boolean values, the different types. Um, it just, it just gives you, it's just a whole page of
00:58:37examples, uh, in that language, which can be a really helpful reference, especially if you've
00:58:42already done kind of the basics, you understand like the, you understand the basics of the,
00:58:47of the language and how it, how it does things. Um, but you're just needing to figure out specific
00:58:52syntax. This can be kind of a fun little, it's like a good cheat sheet basically. Yeah, yeah,
00:58:59exactly. Yeah, it's great. They've got like so many languages in there and uh, yeah, it just,
00:59:06it gives you a great little reference. It's a good one. The other resource I used a lot when I was
00:59:14sort of self learning how to develop was honestly just open source projects that did a similar thing.
00:59:19I would just sort of tear them apart. And I remember when I was a kid, I used to just put a
00:59:23console like log statement on every single line because I didn't even know what breakpoints were
00:59:27at that point. I didn't set that up in my IDE and literally just see like stepping through each
00:59:31function and how each one piece together. So yeah, I've always sort of taken open source and torn it
00:59:38apart to see how a certain feature that I wanted to add into my app worked and then try and rebuild it
00:59:43instead of just like copy it from one to the other. It's the same with like MPM packages. Sometimes
00:59:48it's like, I don't want the MPM package. I just want a certain feature from it. So I'm just going
00:59:51to go try and rebuild it instead of relying on another package to do the same thing. Um,
00:59:57I think that's a great way to learn. Yeah. Also, uh, I do something similar with pull requests as
01:00:02well. Like often you can find the specific PR where they input, where they added that feature.
01:00:06And then that's like a small enough scope where you don't necessarily need a huge understanding of the
01:00:11code base always. But even if you, if you do find that you're like reading through the PR and you
01:00:15don't understand it, like that is a case where I'll definitely use AI is like in the context of like
01:00:20learning how some feature works in plain English, uh, in another project so that I can at least
01:00:25understand like the design of it, the logic of it and all of that. And then I can try and implement
01:00:29it in my, on my own. Um, do you think that in the current, uh, landscape, I kind of just did a little,
01:00:36uh, potentially spicy little tweet on, um, on how AI affects open source projects. That's one thing
01:00:44that I noticed when I was, um, maintaining a lot of the charm stuff was that there was a lot more
01:00:49kind of like low effort contributions to the point where like the authors hadn't even tested to see if
01:00:54it was compatible, if the changes were compatible. And it just leads to like such a, it can put such
01:00:58a huge burden on maintainers. It's like causing a real big imbalance in, uh, the, uh, in the open
01:01:04source space in particular, to the point where like a lot of projects are now starting to, um,
01:01:09limit contribution capabilities on their projects. Uh, you say that you still use open source projects
01:01:17to learn because like those code bases, you know, you it's like somebody else who, who like allegedly
01:01:24knows what they're doing most likely does what they're doing, uh, to some degree. Now, if a lot
01:01:31of people are like vibe coding projects and there's a lot more to kind of like filter through, do you
01:01:35still think that it's a really good resource? And if so, like, how do you, um, if, if it's somebody,
01:01:41especially if they're newer to programming, like how do you filter, how do you decide whether it's
01:01:44a good project or not to like learn from? To be honest, a lot of the time I just filter for either
01:01:48developers I know through either that work or a company they work for and then see if they've done
01:01:54an open source project that has something. And I think I just have been more, more trust that they've
01:01:59actually written the code or at least know what it does. Um, so yeah, it's sort of, if it's a project
01:02:03that only has like a few stars, I try and stay away from it because I feel like it hasn't been vetted
01:02:09and maybe in vibe coded. Um, or it's when it's like a big project or as I said, a developer that I
01:02:13trust, I would tend to go for that more than, yeah, I think open source. And as you said, AI is it's,
01:02:21it's a pretty big problem. I think it was the maintainer of co says he gets a lot of AI like
01:02:26cybersecurity, um, issues and half of them are just not even real. I think one of them, like the AI
01:02:32literally just row its own success for its proof of concept. Like at the end of the script, it was
01:02:37like, yeah, it's a success, even though it did absolutely nothing and the guy still submitted it.
01:02:42And yeah, it's, it adds a lot of brain drain for the maintenance of these open source projects that
01:02:48it's time. They don't need to waste looking at AI for requests. Um, but yeah, that's sort of how I
01:02:54try and filter it. If I am trying to learn from open source is just, you just sort of have to
01:02:58trust certain sources now. Yes, yeah. I'd say I do something similar. I also have like kind of a
01:03:06handful of people that I, where I trust their work and I like follow their work. I actually like I've
01:03:14mentioned this before on different social platforms of like, I love like, like my version of like doom
01:03:19scrolling is like, I'll actually just like scroll through the GitHub Explorer page and just like see
01:03:22what people I follow are working on and stuff like that. Because I find it very inspiring. I feel good
01:03:28doing that instead of like doom scrolling social media. But yeah, there's usually like a handful
01:03:33of people that I follow and like I will like actively I'll just like go check their GitHub
01:03:37every once in a while see what they're working on and like see just like PRS that they've been doing
01:03:41like read through some of their changes even if it's not like, I think there's there's a lot we don't
01:03:46we don't give our brains enough credit. There's a lot that we absorb just through like exposure
01:03:51without depth, just exposure. There's a lot that we absorb that like helps us understand things quicker
01:03:58down the line. I think there's a lot that we like that we take in subconsciously that that can be
01:04:04really helpful. So I think just like, yeah, I also really like doing that having specific people to
01:04:08follow and then trying to keep up to an extent with what they're doing. Yeah.
01:04:11You know, I'm very happy I learned to code as a kid and sort of didn't have AI because as I said,
01:04:17it really did help you sort of learn the process and how to get there instead of just having the outcome
01:04:22and I don't think I would know what I know now without that, because I've just used AI to try
01:04:27get to the end result and then I don't know what I'd do if it went wrong. It's it's yeah, it's
01:04:32curious how new people are sort of going to learn it. I don't know how CS is going to change or
01:04:37anything like that. If I don't even know, to be honest, this is whole world discussion how AI is
01:04:42going to change everything, not even coding in terms of learning. It's it's going to be interesting.
01:04:46Yeah, I think it's very similar to like it reminds me of social media in a lot of ways in the sense of
01:04:52like, I think it really shortens the feedback cycle. And I think there's only like, my personal
01:04:59opinion is that there's only so much growth that you can get in in without the challenge. It's like,
01:05:05it's like, you know, you can take it's very similar to even like our physical bodies, right? It's like
01:05:09you can, you can take diet pills and stuff like that. But as soon as you don't have those, it's
01:05:13like, it falls back to your habits. And like, it's only through difficulty and challenge and resistance
01:05:19that you're able to like, build muscle and be like, you know, it's like even even walking is like,
01:05:25that is a very healthy thing. And it puts like some level of strain on the body. It's like, I think you
01:05:30always need some something like that even for your brain. That is like how you keep it healthy and how
01:05:35you how you learn. I don't think like this. There's a reason why like even recall has been notoriously
01:05:43the best way to learn, like the most well researched best way to learn. And it's because
01:05:50it's the most it's kind of the most taxing. It's like it's a lot harder to try and remember things
01:05:54than it is to like read a book. But I do think how we how we assess how we quantify learning,
01:06:02I think is definitely going to change. You mentioned books before. Is there like,
01:06:10one best coding book that you've ever read that you could recommend? If there is one?
01:06:16I think it's I mean, obviously, it's there's going to be I really like books that are like specific
01:06:21to a specific programming language that I'm learning and stuff like it's it's really good to have
01:06:27depth on things when you're spending so much time with it. I think as like a more generalized like
01:06:35programming book, I really liked the pragmatic programmer. That one was really good. I also
01:06:41really like a lot of like Martin Fowler's work. He has a great blog as well. I like to check on his
01:06:48website every once in a while. And he's got some really interesting takes. I just think it's I love
01:06:53hearing different people's perspectives and like how they solve problems and like how they approach
01:06:57different like everyone's workflows can be so different. And I think it just so much has to do
01:07:02with just how your brain works and different, you know, trials and errors in the workplace
01:07:07that we don't often hear about. And I really, really appreciate when people share those kinds
01:07:12of things online. I'm a big fan of just like reading people's blogs just to get a little it's
01:07:17like gives you a little a little preview of their what's going on in their brains, you know, but yeah,
01:07:21Martin Fowler has a great blog has some great books. But I also really liked the pragmatic programmer.
01:07:26Is Martin Fowler the guy who wrote Clean Code? Or is it someone else?
01:07:31No, I think that's Bob Martin, if I'm not mistaken. I could be wrong.
01:07:36I think it is Bob because he's Uncle Bob on Twitter. And he has some interesting takes over there.
01:07:41Yeah, I think the I think the big one that I read from Martin Fowler was refactoring,
01:07:47improving the design of existing code. Yeah, his his blog is really, really nice, like light reading
01:07:54to stay up to date on stuff. Cool.
01:08:00If we were to take topics and just go to stream for a bit. So I just can't imagine having people
01:08:07watch me write code. Like if I was on an interview and one person was watching me write code, I'd
01:08:12go nervous to have 1000s of people watching you almost every day. How do you do it?
01:08:16So I get to set the tone in the community of what how people are coming in, like, sure,
01:08:22social media is a public space. But also your channels on social media is not this is not just
01:08:28like like a bathroom wall. This is like, you don't get to just say whatever you want here. Like there
01:08:33is a there are like etiquette, there are like standards for the etiquette for like, how you're
01:08:39going to talk to others how you're going to treat each other. And to me, your skill level as a
01:08:44programmer does not change how welcomed you are in my community. So when it comes to like any kind of
01:08:50shaming any kind of like ego of like, Oh, I've been doing this for x number of years. So I'm better.
01:08:55Like it just none of that, like all of that gets left at the door. Like none of none of that is
01:09:00allowed. A big part of that is because like, I know, like, I had in all of my my CS classes,
01:09:10I've been a lecture hall of 300 people and there were one to three women. I'm very used to like,
01:09:15I know what it's like to kind of be on like on the outskirts of things a little bit. And how much
01:09:22pressure can build in that isolation. And I really want my community online to be a space where
01:09:30people are excited to code. And they're they get a break from that self imposed pressure.
01:09:37I think it's very easy. It's a hard thing to do coding, it can be very difficult. And sometimes
01:09:42your brain doesn't work. And it can be incredibly frustrating. And you still have to find a way to
01:09:46overcome that. And so I think the biggest value that I try to bring is that, hey, I'm just doing
01:09:53my own thing. Call it good call it bad call it whatever you want. That doesn't change what I'm
01:09:58doing that I'm just doing me. And I think that that messaging and me not being hard on myself in front
01:10:07of other people as well of like, I try not I try to catch myself of like, if I'm having an off day,
01:10:12and things are hard, and like, I feel like I'm moving slow. I try not to say that because
01:10:17I also know that like, for there are some people watching that are like, oh, yeah, she's coding
01:10:23slow. They're gonna like that are thinking that they're not allowed to say that. Well,
01:10:26they're Yeah, you know, not to say that you have compliments on me. No, I'm just gonna,
01:10:29you can only tell them that code is beautiful. There are going to be some people that are thinking
01:10:35that there are going to be some people that are thinking I hope that I can code like this one day.
01:10:38And it's not up for it's, it's not right for me to get to be the person to set that bar. It's not
01:10:44for anyone else to set that bar. I just want it to be a comfortable space where like, hey,
01:10:49we just like to code. Let's just hang out. Let's code. I am willing to be the one the the
01:10:57the the sacrifice a little bit. I will sacrifice my whole ego to make this a comfortable space for
01:11:05everyone. I don't I really don't care if you think my code is bad. I've noticed that I have learned
01:11:11my my growth learning curve has been like exponential since I started streaming. Because
01:11:16people will give me feedback on things. And what I've found is like generally the people that are
01:11:23giving that negativity. They're not necessarily the people I want to learn from, like the people that I
01:11:29the people that are really, really good at what they do are generally not the ones that are tearing
01:11:34other people down. They're the ones who are like, they love they have a genuine like love for what
01:11:39they're doing. And that means they want other people to experience that they want to like uplift
01:11:44others. They're excited for other people to learn new things. And I've found that there are a lot of
01:11:49people in my community that have that mindset. And I've I feel very lucky to just be somebody who gets
01:11:55to like, bring people like that together and and create a safe space for that. So to me, it's worth
01:12:02the sacrifice of me having any kind of label on how I feel about my programming. I'm just programming.
01:12:09And I get I get the opportunity to learn from all of these people. And I get the opportunity to
01:12:16potentially inspire or motivate other people. And I don't and I just kind of try to separate any kind
01:12:25of any kind of ties to, you know, my, my performance. And of course, it's easier to do on some days and
01:12:32harder to do on other days. But I think at the end of the day, what I try to do to if I am having one
01:12:38of those days of like, a little bit of insecurity, I'll just be like, you know what, I feel like I'm
01:12:43not, I'm not feeling as confident with this stuff today. That's okay to just feel like that. And that
01:12:49doesn't mean I need to change anything about what I'm doing or how I'm showing up. But maybe that
01:12:55means that like, what, you know, what are some solutions? Like, what can give me more confidence?
01:12:59Like, maybe that means that I start a new learning path. Maybe that means that, like, I need to shift
01:13:05my perspective a bit or whatever. But yeah, ultimately, it's like, I just want to create a
01:13:11really like welcoming and warm community for people of all levels. And I just I have no room or patience
01:13:18for people who who want to be very like want to be put others down. I just don't think it's like why
01:13:26you just you're just mad. So you problem. Whether I'm here or not, you're just mad.
01:13:33Oh, pardon. I think you broke up for me for a sec. Any hot takes? Oh,
01:13:40I mean, I think I think the hottest take that I have is just the one on AI. I just think like a
01:13:47lot of that's that's the one that people have been like pushing back on me the most I think right now,
01:13:52maybe just because it's such a big topic on tech Twitter or something, where there's a lot of people
01:13:57that are saying like, you should only be using a like you should always be using exclusively,
01:14:01which I think whoever's, you know, good marketing, but I just I think that challenge is really
01:14:08important. And I think it's important to not, I think it's important to keep that threshold up of
01:14:14like, you need Yeah, you need to have a certain tolerance for for challenge and difficulty. And
01:14:20you won't be able to do that if you're always taking the easy route. If there is a shortcut.
01:14:25That's fine. But make sure that you're taking them wisely and not that it's not coming at the expense
01:14:33of like more longer term impacts. That's what I think that's the hottest take I can do. Because
01:14:38I'm Yeah, I'm gonna say that's not really a hot take. Like a lot of people think like that. I think
01:14:44Yeah, okay. I just I'm not really somebody like I don't really die on any hills. You know what I
01:14:49mean? Like, I don't I'm just kind of like, I'm very, I'm very open minded to change. So I'm just
01:14:56kind of like, I don't, I don't think I really have that much of hot takes. Because I'm also I also
01:15:01don't think that negatively about things in general. So I'm kind of just like, I just if somebody is off
01:15:08doing something I don't kind of agree with, I'm just kind of like, okay, well, you you do that,
01:15:11I'm gonna do what I'm doing. And it doesn't that's like the extent of the thought in my mind and then
01:15:16it's gone. So yeah, I don't know hot take. Maybe maybe that's a healthy mindset. It's not
01:15:23having hot takes. That's the whole take. Yeah. Okay, maybe it's more advice than a hot take,
01:15:30but we'll see. Um, I would say, be careful. Beware of people who are all knowing.
01:15:39Anyone who says who has these like very, very strong opinions online,
01:15:43and is like, I'm right. And they they're always they always seem to be on the right. Like,
01:15:49you know, in the right. Just take everything with a grain of salt.
01:15:53Yeah, no, it is like the classic, the smartest person is the person who knows what they don't
01:15:59know. It's like it's a lot more respectful to ask questions instead of assuming you're correct on
01:16:03everything. Yeah, well, I also just see I see a lot online of people, they just like they speak with
01:16:10enough confidence enough to like the right the right tone, the right conviction. And for whatever
01:16:16it is in programming in particular, I feel like we're like particularly susceptible to it. Where
01:16:22people just believe that that is that must, they must be right with that kind of confidence and,
01:16:27and everything. So just, you know, take things with a take things with a grain of salt, have your own
01:16:32form your own opinions. No, the same tech Twitter can be a wild place of arguments in there. It's
01:16:38always quite fun to watch the the debates go on. And how many people sort of jump in sometimes.
01:16:43Like the Michael Jackson popcorn meme? Yeah, you just sort of watch the sidelines.
01:16:50Cool. All right. I think this is a good point to kind of wrap up. Where can people find you best?
01:16:58Oh, okay. Now's now's my moment. Um, I do have a website bashbunny.dev. And that has links to all
01:17:05of my socials. But I will be very active this year on YouTube, Twitch. x.com is pseudo bunny,
01:17:16everything else is under bash bunny. And I'll also be probably posting more on Instagram and all that
01:17:22jazz as well. But I generally I think YouTube is YouTube and Twitch are my favorite, favorite
01:17:28platforms. I think that's where you get the best community. In that case, thank you everyone for
01:17:34listening to this episode of the better podcast. Find us wherever you listen to your podcasts.
01:17:40So Apple, Spotify, wherever we're all on there. And that is it. So that would be a goodbye from me.
01:17:47Goodbye from me. Goodbye from me. Goodbye. Thanks for having me.