AI, Terminal Tools & Building a Supportive Developer Community | Better Stack Podcast Ep. 10

English
BBetter Stack
Computing/SoftwareAdult EducationConsumer ElectronicsInternet Technology

Transcript

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.

Key Takeaway

The episode explores the intersection of terminal-based productivity, the double-edged sword of AI in software development, and the vital importance of fostering inclusive communities that value the process of learning over the speed of execution.

Highlights

Bash Bunny's journey from a beginner using PowerShell to a terminal power user influenced by the Twitch community.

The transition from Neovim to Doom Emacs, driven by the need for stable configuration and the productivity benefits of Org mode.

A critical discussion on 'vibe coding' with AI, highlighting how it speeds up business delivery but potentially nerfs personal skill development.

The challenges of maintaining open source projects in an era of low-effort, AI-generated contributions and pull requests.

Bash Bunny's philosophy on building a supportive, ego-free developer community that prioritizes learning over performance-shaming.

Practical advice for self-taught developers, including the use of books, DevDocs, and 'Learn X in Y minutes' for structured learning.

Timeline

Introduction and Terminal Origins

The hosts welcome Bash Bunny, a former maintainer at Charm, to discuss her specialized focus on terminal tooling and command-line interfaces. She explains how her friend Prime and a live-streaming audience peer-pressured her into learning Neovim, which served as her gateway into the terminal landscape. This transition allowed her to automate tasks more effectively and avoid the bugs often associated with graphical user interfaces (GUIs). Bash highlights the power of understanding how programs run at a low level within the terminal environment. This section sets the stage for her career path from a streamer to a professional open-source tool maintainer.

Hardware and the Learning Curve of Vim

The conversation shifts to ergonomic hardware, specifically Bash Bunny's experience with a Dactyl Manuform split keyboard. She admits the difficulty of transitioning to specialized hardware, noting a humorous story about trying to code for 12 hours with long fingernails on a new split layout. The speakers discuss the steep learning curve of Vim and Neovim, comparing the productivity dip to the eventual speed gains. Bash recommends using Vim keybindings in VS Code as a 'toe-in-the-water' approach for beginners. She also mentions 'Vim Tutor' as a gamified way to learn essential shortcuts while enjoying a morning coffee.

The Switch to Emacs and Org Mode

Bash Bunny explains why she migrated from Neovim to Doom Emacs, citing frustration with breaking changes in Neovim plugins that required constant config maintenance. She found Doom Emacs easier to learn because it retains Vim keybindings while providing a more stable, well-documented environment. A major draw was 'Org mode,' a powerful system for note-taking, task scheduling, and project management. She uses Org mode's agenda feature to track her diverse responsibilities across different projects. This section illustrates how a developer's choice of tools is often driven by the need for organizational 'flow' rather than just coding speed.

Programming Languages and Poking Fun at Rust

The guests discuss their favorite programming languages, including a playful critique of the Rust community's intense passion for rewriting everything in Rust. Bash Bunny admits she enjoys 'bullying' Rust users because their dedication makes them easy to rile up, though she plans to learn the language herself this year. The group also discusses Zig as the 'hot new thing' and the challenges of learning low-level languages with incomplete documentation. Bash shares her university background with Python and Java, emphasizing that starting with Python helped her grasp formal logic without being overwhelmed by syntax. This segment highlights the cultural tribalism within different programming language communities.

Building Projects and Productivity Workflows

Bash Bunny describes her current project: a Go-based tool for converting Markdown files with metadata into static HTML blog posts and RSS feeds. The hosts compare this to other productivity tools like Notion, Obsidian, and Trello, discussing the merits of local versus cloud-based storage. A significant part of the discussion focuses on the 'brain dump' method for ending the workday. Bash and the hosts agree that writing down all loose ends at night helps create a mental separation between work and personal life. They emphasize that searching for content via global search is often more efficient than maintaining a rigid folder hierarchy.

The Impact of AI on Coding and Learning

The discussion dives deep into the role of AI in modern software development, introducing the concept of 'vibe coding' where developers rely heavily on tools like Cursor. While AI is excellent for business cases that prioritize speed, Bash Bunny warns that it can 'nerf' a developer's tolerance for challenge and hinder personal growth. She recounts a 'failed launch' during a game dev week where AI couldn't solve a build issue because the developers didn't truly understand the underlying codebase. The group concludes that while AI provides the outcome, it often strips away the joy of the problem-solving journey. They advocate for a balance where AI is used for work efficiency but avoided during hobby projects to maintain skill depth.

Linux, Customization, and Machine Configuration

Bash Bunny talks about her recent switch to a Framework laptop and the move from i3 to the Sway window manager on Wayland. She describes the 'painful' process of configuring display mirroring and dealing with application compatibility, which contrasts with the 'just works' experience of a Mac. Despite the friction, she enjoys the ability to configure her entire machine through terminal scripts and the community connection it fosters. The hosts discuss the niche workflow of SSHing into Linux desktops from a Mac to get the best of both worlds. They also touch on the rabbit hole of smart home automation using Home Assistant and the frustration of proprietary apps.

Educational Resources and Open Source Integrity

The conversation moves to favorite learning resources, including DevDocs.io, technical books like 'The Pragmatic Programmer,' and 'Learn X in Y minutes.' Bash Bunny expresses concern over the rise of low-effort, AI-generated contributions in open source, which places a heavy burden on maintainers who must filter through 'vibe-coded' pull requests. She advises new developers to follow specific trusted authors on GitHub rather than just looking at star counts to find high-quality code. The group discusses how the smartest developers are usually those who ask the most questions and admit what they don't know. This section emphasizes the importance of reading existing codebases as a form of subconscious learning.

Building a Healthy Developer Community

In the final segment, Bash Bunny shares her philosophy on live-streaming and community management, stressing the need for safe spaces where beginners feel welcome. She intentionally avoids acting as an 'all-knowing' expert, preferring to show the struggles and frustrations of coding to humanize the process. By sacrificing her ego and being open about her mistakes, she encourages others to pursue coding without the fear of being shamed for their skill level. She warns against 'tech Twitter' personalities who speak with unearned conviction and encourages listeners to form their own opinions. The episode concludes with Bash Bunny sharing where to find her content on YouTube, Twitch, and her personal website.

Community Posts

View all posts