My Accomplishment as a Programmer Is Learning to Copy and Paste

Streamed

The parallel between vibecoding a fix for my choppy audio and cheating at video games. A quick merge for markdown toggler on mobile. Hugoโ€™s full-stack GitHub avatars PR. More inviter feedback and invitee comment notifications for the new โ€˜mentorshipโ€™ practice. Submitting stories with filtered tags is maybe a little cowardly. Modmail navigation. Chat compiles learning-to-code resources for a first-year CS student: project-based learning repos, roadmap.sh, Advent of Code, and The Algorithm Design Manual. IP banning, scrapers, nftables vs iptables, and grayhatterโ€™s DNAT idea for serving ban explanation pages. Cursed projects roundup. CommonMarker build issue.

scratch


topics
  rambling about debugging pipewire with claude
  sqlite perf/prod issue
  PRs
    markdown on mobile https://github.com/lobsters/lobsters/pull/1956
    github avatars https://github.com/lobsters/lobsters/pull/1952
  issues
    more inviter feedback https://github.com/lobsters/lobsters/issues/1950
    invitee comments https://github.com/lobsters/lobsters/issues/1949
    taking away upvotes https://github.com/lobsters/lobsters/issues/1911
    upvote hover https://github.com/lobsters/lobsters/issues/1951
    submit w filtered tag https://github.com/lobsters/lobsters/issues/1953
    missing modmail link https://github.com/lobsters/lobsters/issues/1954

learning to code resources
  project ideas https://github.com/practical-tutorials/project-based-learning
  roadmaps https://roadmap.sh/roadmaps
  algorithm puzzles  https://adventofcode.com/
  algorist https://www.algorist.com/


title

post-stream
    

Transcripts are generated with whisperx, so they mistranscribe basically every username and technical term. They're OK but not great, advice appreciated.

Recording



02:29pushcx Welcome to Lobsters office hours, ask questions anytime!
You know that kind of relies on my reproduction steps exactly mirroring this setup and they didn't so we'll see. Hopefully, if somebody could sound off and tell me I sound normal or bad.

...57pushcx Please lmk if the audio is normal or choppy. I think it's fixed fixed now.
Alrighty. So this is Lobster's up on the screen. chamlis_ sounding five by five here
This is Lobster's office hours for folks to drop in and chat about the site. Oh, good. Thank you, Chambliss. So last stream, which was last Thursday, because I was out on Monday, a bit under the weather. had forgotten to start it and so it was choppy again and i thought you know this might be one of those things i could throw a clot at and it was it took a minute but it was one of those there was also the same day i was tinkering with it so it must have been saturday there was a post on the home page about how you do vibe coding you're not going to really learn things and i thought that was a really interesting point because i've joked on this stream about how i mean it's like a joke but not a joke how i've avoided losing learning docker until this year that was a very deliberate like that's not somewhere i want to put time into things avoided learning docker as a deliberate decision to protect my time and put more time into places where i can be more effective And then, you know, things change. And I had Chael's examples to work from. And I got set up with Podman locally, and I've been using it for some stuff on my machine. That's been nice. But I had a very different experience with it because with Docker, when I wanted to avoid Docker stuff at work, olexsmir all my docker knowledge is basic commands, and, it works on top of linux's chroot
I would just go grab you know the person who knew docker in the office and have them tweak something for me. Or I would just you know work on different projects that didn't touch it. yeah and.

05:13Having clawed around for debugging is kind of interesting because i've tried to avoid learning pipe wire like I don't do. Audio programming, I don't do demanding things. Pipeware is a complicated professional level tool. Like it can do real time audio if that's what you're doing. It has a lot of complexity and somehow pulse audio is underneath there. And somehow also is underneath there. olexsmir audio on linux was always very hard to understand and get right Kappa
And some of that is shared technology. And some of that is just lava layer kind of stuff. graefchen Problems caused by "Ai" are indeed interesting. I know of a, i think, preprint, that talks about "AI induced dementia" limesSit
And it's such a... Yeah, you know, even... It's not so much that it's hard, it's just... It's a significant problem or a significant project to learn enough about it to debug it effectively. And so I had nibbled around the edges of the choppy audio, but not really made any progress, especially because... to meaningfully generate hypotheses and test them, I would have had to learn a ton about pulse audio and pipe wire and how they interact. And because I had a reasonable way to reproduce it of recording an OBS without having to go live and then just talking for 10 seconds and then listening back to it, I could start Claude and be like, okay, the audio is choppy when the volume meter is closed. You can ask me to reproduce this and tell you if it's choppy or good. Let's go. And it kind of... And this was definitely not in... What's that called? The dangerously skipped permissions mode. It was in... let me review every single command because you're going to poke around slash etc and my personal config files and it made a whole false start about gosh i don't even remember now because it's been a week right i i was saying i didn't learn it and i sure didn't learn it because i don't remember what the false start was something about the the volume peaking like it thought that having a a node in the pipe wire graph attached to figuring out peak volume was what the difference was and so it tinkered with that and it reproduced that and it had me open and close the volume control panel to see the pipe wire graph change in the background and all this kind of stuff and then eventually it changed gears and was like all right let's try something else oh hey the the polling rate on the microphone changes when OBS is open versus when the volume panel is open. Maybe that's it. And then it tinkered a bunch and figured out what that was. The microphone's a few years old and it has a fairly low maximum polling rate. And OBS automatically, when it starts, tries to turn up the polling rate to get the best quality out of the mic. And so it was choppy because it was oversampling, is my best understanding of what that fix was. But I don't really have to have understood that fix because, you know, it generated a fix to the config file and then ran through the repro steps. And then... I tinkered a bit with other stuff, like, okay, does it persist on reboot? Does it persist if I unplug and replug the mic? All that kind of stuff. Sure, yeah, seems solved. And I saved, like, at least a dozen hours learning pipe wiring, pulse audio kind of stuff. I could have gotten there, but I don't want to. So, it reminded me a lot of... graefchen :Ohh. I looked it up again and it was just about dementia induced by digital media. limesNoted
And once I realized, like, B, I had that feeling of, I could have learned it, but I got to go faster by not, I was like, oh, this is the same logic from people who cheated video games. A lot of the times their excuses are, I could have done it, I just wanted to do it faster. that ability but you know if I can do it one time in a hundred that justifies using a little cheat that can do it every single time there's a YouTube drama channel I watch sometimes that dissects people who are cheating at video games I don't know why it's one of those like rubbernecking the accident kind of things everybody's got these interests right knitting disasters Bad home remodels, I'm sure. Or you read the advice columns and you're like, wow, I'm glad I'm not 21 and clueless in relationships anymore. Everybody has these like rubbernecking kind of interests. He said to justify to himself. Made me wonder how much of the anger about the use of vibe coding is that it feels like cheating. Like you don't have to do the work to get the result. It's live coding is the steroids of programming or the hack engine of the IDE. It feels like there's a lot of emotional parallels there. Hmm. rambling a bit i should do the the pr reviews and issues clearly i like thought about writing a comment and then didn't go do it so that's one of the reasons i write is just so i can kick stuff out of my head and i don't have to ramble with people about it so speaking of stuff that's hanging out I just emailed Thomas, who did the work on the SQLite stream, a note about a thing it did, what was that, two weeks ago when I tried to put it in prod. And he and Evgeny have kicked around the performance stuff, and I have to catch up on that email. But hopefully this weekend we could try again on SQLite. We'll see how that goes. And then... Don't think too much has happened. No, I haven't really been able to look at the repo much lately.

12:41twitchtd hi pushcx, hope you're doing well
Wait, Chamlus, have I missed a pull request from you? Oh, hey, Thomas. I was just talking about emailing you. 30 seconds ago. chamlis_ that ones waiting on the sqlite migration, then I'll redo it
I don't know if you heard it, but I just emailed you a note about the SQLite migration attempt and that I would like to try again real soon. I am not caught up on your email, but we could definitely put some time to it. Ah, thank you. I appreciate the reminder, Channels. All right, so rambling about debugging Looks like there's two things worth checking out on stream here then. This one, this one is big and ambitious, so I know I'm going to spend a couple of minutes on it. This one sounds like it's fairly small.

14:25I don't understand. That looks fine. Is that the after? Ah, so he opened a bug and then he opened a PR. Okay. So let's tag that. Oh, that's, man, that tags field fights us. Well, that's not so useful to have that shoved way over.

...59I'm not sure what I shipped recently that would have broken that. I'm happy to have the fix. Oh, we did touch stuff related to that tags field.

15:30OK, so this has to be a selector precedence issue if the fix is just to move it down under something else.

...49And it moved about 100 lines. OK. Markdown help summary.

16:07Yeah, GitHub, I might like you to render an entire 100 lines of code at once. 1,002, where's the insert? Oh no, it's 1,600. Oh yeah, I'm definitely asking too much to render 600 lines of code. That might be like three kilobytes of code. Hmm.

...43olexsmir github and their famous performant diffs
I feel good enough about just taking this. Hugo's contributed a bunch of fixes to the front end already, so I'm fairly comfortable. Yeah. I was just talking with somebody yesterday and they pointed me to two file-based ticketing systems that are designed to live in your repo. So I think I could probably wire up something with the GH command line tool, which I have set up. You can export all of the info about your issues. So it occurred to me like, okay, so we have, you know, round up, call it 2000 issues. You know, obviously we're a social news site. We have lots of issues, something like probably a couple hundred of these are pull requests. So call it, call it like 1500 issues. So great. I could grab an, you know, I can write that for loop of count from one to 2000, grab an issue. sleep 10 seconds grab the next one and then just get all of those down in json and write a second script that says okay give me all the issues by last updated date re-export them if they've been updated on github.com okay so for the cost of like 15 lines of code Now we have a well-structured export of all of our issues, which is a thing I've started wanting. olexsmir lately i've been thinking about creating plain text format for issue tracking that could be kept in the repo, but then i got reminded that i'm employed
And then I can look at these two ticketing systems, and if they're any good, write another probably longer script that maps that GitHub issue JSON into whatever their native ticketing format is. And even if that's one way, That gives all of the test data needed to like really try and drive one of those things. vlad_huskey doesn't forgejo/gitea have an automatic import from GitHub tool?
And if that's a really good experience, we could even think about turning off GitHub issues and telling people just PR your issue into the repo. I don't know. Vlad Husky, yeah, probably. They almost certainly do. olexsmir @vlad_huskey they do
I'm not interested in moving from one silo to another. I want my issues in my repo. The source of truth should be the repo or a database I control. I'm not super picky about it, but I'm not going from one olexsmir i kind of like what tangled.org does with keeping all issues on PDS
Forge to another that just doesn't improve anything really I would do it if GitHub is down or GitHub stops hosting for free projects like but I don't I don't see that realistically happening and to move to another Forge the other things I would want to see are native jujitsu support and i forget what my third thing was we went through this all on a previous stream and i don't remember what my third thing was off the top of my head but there was something else oh sure

20:54Oh, and welcome, Vlad. You're supposed to say that to new Twitch visitors, right? Howdy. Occasionally I remember these things you're supposed to do as a streamer.

21:27vlad_huskey howdy o/ (no problem, I'm mostly lurking anyway)
so we'll get this in all right so let's look at hugo's other report well no fix so well i guess that explains why hugo's previous contributions have been front-end oriented boy he really picked a a full stack problem for the first thing just because there's yeah for this there's got to be front-end code template code a controller action maybe a couple of those a job yeah there's going to be a lot of stuff moving parts in this Not sure what this change will do on the DB. Will Gravatar be the default or not? How can this be set? All right.

22:37So you added a setting for avatar preference. Settings are junk drawer.

...56Avatar preference.

23:29Okay, so we build on top of the fetched.

24:12I don't think actually fetching from all sites makes a lot of sense.

25:01Okay, just changes it to URL. Where does it come from? It comes from here. All right, that's fine for a variable name. Yeah, got some debugging.

...45I'm nitpicky about user visible copy.

...56There's a help class for this, isn't there? Yeah, the hint class.

26:18Here we go. Those spans.

...45What did I just do? Just clicked away somehow.

27:16Which service to cache from? That's kind of terrible. That's R implementation. I don't think this needs a hint, right? Because it's going to say avatar, and then it's going to say gravatar or github.

...52vlad_huskey > Pick your avatar source?
pick your avatar source. I mean, these other things, a bunch of the fields don't even need a hint that much. It's kind of obvious, right? Like these are third-party services.

28:34What am I touching on the keyboard that has me keep dropping down like this? Must be sitting funny.

...57Repeats. Try moving it, the expire cache. Make it work after moving it. I think there's multiple forms on this page. Let's double check.

29:16Yeah.

30:27Just amazing.

31:42Okay.

32:07Seriously, what is firing these random end keys and dropping me to the end of the... It's not even an end, is it?

...19No?

34:00Alright, so pretty quick through the issues today. Did I put that in the notes? Did not. That one, people have wanted this one for a long while.

...20Let's say the issue was opened years ago.

...30Yeah, 21. This one gets asked for. About once a year, usually on IRC rather than in the issues, so we don't have a ton of dupes about it.

...46Alright.

...56Let's take a look at issues.

35:14Where's my little desk timer? Get that set up so I can roughly keep on pace. Not that I have a lot of stuff scheduled, just trying to move at a steady clip. All right, notification. Yes, this was a feature request we talked about. in IRC. So I did this on stream a couple of weeks ago, but I'm trying to build up invitations into a little bit of an automatic mentorship program where we make it clearer to people to send invites that they are expected to help and acculturate the people they invite. olexsmir here goes audio quality
add a little more weight of responsibility to it. And really the only way to do that is to communicate those expectations. Huh. vlad_huskey audio is ok for me?
That's interesting.

36:38Audio is okay for you. Alexamir did it twitchtd audio works for me
davidofterra Audio sounds good to me
olexsmir every fine now
olexsmir idk maybe it was just me problem
change in the the classical get choppy way i'm deliberately not starting the work around so we can debug for a second and can you try reloading the stream if you're using the app instead just force quit but okay well maybe it was just a transient network issue for i guess it just you rather than just me usually it's my network Well, thank you. I still appreciate the report though, because audio quality matters. Yeah, so let's see. To pick up, yeah, the general flow is trying to build some messages and functionality into the site to better inform inviters how to mentor the people they invite. I think if we improve acculturation, it'll help with some of the issues we've had around self-promo and people avoiding tags and such.

38:00Speaking of which, in the, what has it been? Maybe three weeks since I replaced the mod note tattling about people seeing vibe coding tag then like deleting it to post or people seeing the authored by warning and deleting that to post since i changed that flow to not show the form and send people into a one sec all right since i changed that over instead of being like a twice a week kind of thing now it seems to be a once a week maybe and i think only one time in three weeks has someone done the the very visible and run so you know that might really be working The numbers are low enough that it's hard to be super confident just yet. You know, my p-value is pretty high, but we're not that rigorous. There is a certain amount of gut feelings involved, but early results are very promising. Fingers crossed.

39:35So, let's... Let's get this into the notes.

40:33This one.

43:00Actually, we don't have existing UI for it. We just have the send a message on user profiles. Above or below that? Let's say above that.

...39Two buttons or one, I think we want.

45:33You need an actual...

46:15Ewo_On_Sight Sup
Oh, hey, Evil. Ewo_On_Sight True or false
Hacking out some feature requests.

...59Ewo_On_Sight Rust developers have blue hair
I don't know, does the King of France wear a hat? Is this one of those logic puzzles? This man was in the mentorship period. Yeah, let's...

47:25Same for deleting a story. Same for deleting a comment. What else starts a mod conversation, right? Because this is pretty much everything that sends a DM from the mods now. So let's see. It's message, right? Yes. I don't think we have helpers in here. No. So let's just... What else? This is modmail.

48:20Ewo_On_Sight I mean if rust developer assume true right. lbunixTheMYTH
Okay. So then...

...32There's the activities table. No, that's fine. I must be above the models. Yeah. Because I know there's stuff in here that sends these out.

49:05Oh, same for disabling invites.

...20hakdog999 KonCha
I don't think the invitee needs to be involved with hat requests, right? Howdy, hack dog.

...36Got the hat requests. Yeah, no, we don't need to tag inviters into those. But, you know, let's just move those to modmail.

50:21hakdog999 what is rails used for hmm
notifications rails is a framework for making websites so it has a whole bunch of stuff for accessing the database and templating html notifications send message to moderated

...54Yeah, a lot of this stuff is hooked off of.

51:14hakdog999 ohhhh its kinda like react
Yeah, but it's on the. Mostly on the server side, so. olexsmir @hakdog999 it's more nextjs
React is almost exclusively on the front end, and so it's about layout and user interaction, and Rails is about storing things in the database and sometimes even getting them back.

...57Ewo_On_Sight Node or Bun
hakdog999 i see
Let's see, this is just hooked up with creation, right? Yeah.

52:13Ah, Luxemir. Good comparison, yeah.

...34hakdog999 in cs 1st year semester rn only taken 1 python class so far struggling with tutorial hell? any tips most of my classmates just use ai to code but dont really wanna be a vibecoder
You know, we were just talking about vibe coding earlier in the stream and I was saying. olexsmir @hakdog999 struggle more, over time you'll get there
If you use vibe coding to produce code or produce fixes you don't really understand what was wrong. So I think for beginners if you're going to use an LM tool, I would really have it restricted to. I have this idea evaluate it or. Asking researching kind of questions. So don't solve your direct problems just use it to explain things to you. I see this function A and B I don't understand how they're related what's calling both of them or is one calling the other those kinds of questions I think it's useful for as a student. I think the. The primary thing one can do, especially if you weren't programming before you joined college, is just practice, practice. Make lots of programs. It's okay that they'll be bad. It's good if they're bad. There's more to learn from.

54:48olexsmir ~~~most of programs we all write are bad~~
vlad_huskey personally, I would compare AI/LLMs to using a chainsaw when you want to make a tiny wood figurine
Don't think there's anything more to say.

55:31hakdog999 ohhhh I see that makes sense thanks
Ewo_On_Sight Linus Torvalds is right about LLMs
olexsmir the tip with ai is not "outsource" your thinking
Yeah, to build on what Alex Samir is saying, and it's easy to think of because it's a conversational interface, is the conversation you're having with the LLM a conversation that you would have with your teacher if they had infinite free time and patience? Because if it is if it's a conversation where you're like how does this work, are you explaining something to me, can you give me some options great if you're saying hey do this for me solve this bug. I mean if you can't ask your teacher that with a straight face. don't ask the LM that because you're just going to be short cutting your thinking in a lexemeres term.

56:30But yeah, my, my emphasis would be practice come up with ideas for personal programs right like write something that reads an RSS feed and I don't know texts you new items.

57:21Sorry, got a text here.

...49hakdog999 ohhh so basically socrates you figure out the answer yourself rather than ai doing everything for you
Yeah, heck dog, that's a good way to put it. vlad_huskey (write a thing that copies github issues to text files in a directory in a git repo :)))) )
I have found some use, too, with Claude to say, like, let's close signal, if that's going to jump over the screen. Something's changed in its layout code that the notification is wide enough to do that.

58:19olexsmir @vlad_huskey i think we all know a streamer that would like that program :)
hello sir welcome to my lap cat to be he has picked a new way to sit on my lap i don't know how to describe it he is sitting athwart my lap in the most awkward way possible that shoves my hand away from the keyboard so i'm going to get rsi because of the cat of course write a thing that copies github issues to text vlad yeah the Now, I can write that bash for loop myself because I don't want text files. I want a, what do you call it? I want a machine readable, well-structured representation of it so that I can run programs on it, not just text files.

59:21hakdog999 is it ok to copy a project? and replicate it or is it idk if i can makes something original sorry for asking too much questions
olexsmir @hakdog999 it's more than ok
Hackdog, yeah. I think, especially in an academic setting, that is important to give credit. So just say, you know, right in the readme, this is a version of the XYZ project, or I tried to copy this functionality and link to it. Academia is not... olexsmir i did a lot of "new killer of X" while learning
down on copying things their only negative is plagiarizing things if you give credit and you say hey i did this on purpose i am copying this other thing over here you can do that all you want in an And I think that's a great way to practice because it's hard when you're starting to program to figure out what features should I have? How should I store data? How should I run? What kind of interface should I have? Should I have command line switches? Copying an existing project or copying a single feature out of an existing project is a great way to start because you don't have to practice all of the skills of decomposing a problem and understanding it. You can do a little bit at a time. If you want to practice debugging, find a Python project and then read its closed issues. And if you look at the closed issues, you can see, OK, this one's really a bug. Can I figure out what it was if I check out a commit from that time? And then eventually, if you get stuck, you can read the answer and go read the commit or the pull request that fixed the bug.

01:01:12This is such a great feature idea.

...22So this one is about, again, this is from that same IRC chat. Let's get it in the notes.

...49hakdog999 oh ok got it thanks a lot guys can understand what to do now
Yeah, nothing really to say here. vlad_huskey oh, I never thought about checking issues and their solutions
This is a clear write up.

01:02:05Ah, well, I'm glad I could give you a fun idea there, Vlad Husky. Are you also a newer developer? vlad_huskey nah, master's student
You haven't talked like a new developer, but... But we can still appreciate fun ideas, even when they don't personally apply. Master student, ah. Aggression on mobile, upvote, hovering. vlad_huskey linux user for like... 8 years, lobsters lurker for like 4 years I think?
roll the red upvoted state gets toggled sometimes permanently until page refresh well that's an interesting bug what a useful bug report to include a video and think of being logged out oh that is a great bug report right there

01:03:12So this is 1911.

...28Hmm.

01:05:04hakdog999 found this github repo project based learning idk if this is a good start or nah?
You found what? Hacktog, you're welcome to share a link if you found something neat. hakdog999 https://github.com/practical-tu…
There's also, what is it, roadmap? hakdog999 this
Hold on, I gotta clear my throat.

...47vlad_huskey just reproduced the bug on FF mobile, the video certainly helps
Hackdog, that looks like a pretty good list of projects. I just scrolled it off stream here. I would say you could pick any of those that's interesting. The other one that might be useful to you is roadmap.sh. hakdog999 woaah whats this
They have these, like, what is the thing you want to learn? And so you can pick pushcx https://roadmap.sh/python
hakdog999 yooo that's coool
a language or a particular niche like databases and it'll give you a lot of things you wouldn't think to look up like and for some of these it has tutorial lessons for some of them it just mentions topics i don't remember what the difference is but there's a bunch of stuff that you might not think to learn hakdog999 thanks a lot this will help a lot
vlad_huskey if you want to try algorithmic problems, you can try solving past https://adventofcode.com/ puzzles
So even if you understand, okay, I want something that's going to read files, you might think of, okay, well, I want to create a file, and that'll lead you to open a file and close a file and write a file. But it would be possible to miss something very useful like Glob and not have that very practical tool in your personal toolbox. So anyways, lots of fun stuff here.

01:07:19Sounds like you're all set for, you know, your next 500 hours of practice. Oh, Vlad, that's... Yeah, and you know, I would add to that one, the puzzles get significantly harder as they go on. hakdog999 @vlad_huskey will definitely check this out
But advent of code has been running like 10 years so you could do the first day or two of puzzles for the last 10 years and have. 20 little puzzles. And then do day three and then do day for you know over the next couple of semesters as you level up your algorithms game. Because yeah data structures and algorithm tends to be a second or third course.

01:08:12Users can submit stories with tags they've filtered. Huh. I missed getting that one into the... You know, actually, I want to put both of these in... We're going to do a... stop juggling so many things all right so there's two things i want to do let's do taking way up votes because i didn't put that in scratch learning to code resources so our two things are all right three things are project ideas Our fourth thing is fighting the Linux clipboard. Come here, you.

01:09:24vlad_huskey *project idea*: lobsters issue 1949 :))))))
And then let's grab roadmaps. And then algorithm levels. Didn't even grab this URL, so let's do this.

...49And then this comes up fairly often on the stream. hakdog999 how much time or code you do in each day to avoid burnout?
Every month or two, somebody comes by and asks how to learn to program. But what I put in the back was like, I don't know. How do I learn programming for the first time? There we go.

01:10:34vlad_huskey I guess it depends on a lot of factors?
hakdog999 oh
olexsmir @hakdog999 as much as you can manage while not starting to hate it?
vlad_huskey always take breaks
Yeah, hackdog. To avoid burnout, I think the important thing is if you like it, about as much as you can, but do take breaks. And that's like setting an alarm to go off after an hour so you stand up and stretch because it's very easy to hunch and get yourself in a bad place and bad posture. Yeah, look up ergonomics of programming. So you sit right. I know it sounds silly, but so many programmers end up with repetitive stress injuries. And then... Yeah, I don't know. I started real young, and my answer was every aching hour. Every waking hour, because... hakdog999 @olexsmir makes sense
just wanted to i was curious about it i don't think there's a single right answer

01:12:56I swear this only happens when I'm programming on stream.

01:13:11Great. So I'm not ready to push the deploy button on the blog, but that'll be in the FAQ probably tomorrow.

...33So if we got that, we got that. I got everything but the URL into the notes. Bam, paste it. Look at that. My accomplishment as a programmer is learning to copy and paste. Users can submit stories with tags that they've filtered.

01:14:02chamlis_ if you get to your algorithms module and it's making your head spin, this book is great https://www.algorist.com/
I think that's okay, but I don't know. Oh, well, that's a real promising title.

...27olexsmir you know it's hard to know what to copy paste, so you can be proud of that
I can, actually. Oh yeah thanks channels let's put that. Right in the. Right in the book in the notes here. And.

01:15:04studying.

...13Great. Yeah, honestly. I think Winx makes a really good point here of You know, this is especially about rant culture and vibe coding. If you filter out PHP and you see a nice PHP link, no big deal. But if you filter out rant and you submit a rant that feels a little cowardly, like, no, you should have to be in there. If you filter out rant because you don't like the discussions it produces, don't start them. olexsmir some people just like to rant but not listen to other ranting
maybe that just says i think it's just a little too confusing where like i could remove them from the select box but if someone's filtered out a tag they sure know it exists so it has to be shown yeah alexa mirror and that does seem worth discouraging all right i'm gonna let me throw on the little break thing but i'll be back in like two minutes and then i'm gonna think about this very bad

01:18:40All right, so I didn't solve flame wars while I was up. In case you're wondering, but if anybody did, you could throw it in chat.

01:19:18olexsmir remove the brb text on the screen
Thank you.

01:20:10vlad_huskey did you publish your "stream answers" markdown anywhere?
My stream answers markdown. I'm not sure what you're asking for the so like not this, so this is the scratch notes. pushcx https://push.cx/stream
This other thing that I opened, this is my stream landing page.

01:21:00So the like, how do I learn programming for the first time? That's the section I just, and I guess intermediate, that's the section I just built out.

...17And that's the thing I was saying, I have some other stuff on the blog I want to tweak before I publish, otherwise I would have just published it live while I was here. I am like, I think three or four streams behind on publishing those archives too. I've just got to get the notes on the topics together.

01:22:45vlad_huskey oh, thanks
here's my database let me double check before i say things select tag comma oh what's it called hotness mod

01:23:23Yeah. Yeah, I think it really is just the ones that have these negative hotness mods.

01:25:35Is it happening for banned domains yet? So this mod mail feature is recent as the code base goes. olexsmir @hakdog999 btw one other thing i would recommend is reading code of libraries you're using
And so I'm slowly moving things over into it. Banned login. Deleted login. Invited. Yeah, OK. So story domain still is tattling.

01:27:02gsora_ no cat cam today?
No, he is over in the window, and it is a bright and sunny day, and he is warming his tongue. But it's not somewhere I can point the camera. It's starting to warm back up here in Chicago. So maybe he will take his throne on top of the filing cabinet again. He doesn't like to sit up there. gsora_ ahhh yes, i would lay in the sun as well if i was a cat
I think there's a enough of a crossbreed for a draft in the winter.

01:28:23Okay.

...53olexsmir @gsora_ i do it, even though i am not a cat
Oh, yeah. Especially in the spring. Once we start getting those days where it's like 55 Fahrenheit and sunny, I'll go out and just soak it up like a salamander. Or like a house cat, I guess I'm saying. Hello, sir. I'm talking about you. Why are you looking at me with your big face? Okay.

01:29:50gsora_ i shall embark in the quest for sun
vlad_huskey any tips for the job hunt? (EU region) applying feels useless (no calls/interviews)
It has been a long time since I've done a job hunt and I've never done one in the EU, so I don't know the cultural norms. Maybe somebody over there is in gsora_ EU is... weird
gsora_ most luck I had was applying to US startups quite frankly
chat and has ideas yeah I really don't know especially so you said you're working on a master's do you have industry experience or are you looking for a first job I guess regardless one thing I would try is Asking for introductions from all of your professors if you haven't. robberbaron1 has there been any discussion of changing the vibecoding on the stream previously? i searched but couldnt find anything
US startups, huh?

01:31:07robberbaron1 *vibecoding tag
of the vibe coding tag yes it's been a minute and i'm not sure i made a tag on the archives page for it yeah i think you're it's inconvenient but i think you're just gonna have to like well you know i can grep for you that'd be faster

...42That's not going to get everything because sometimes these transcripts get split on two lines. Oh, the transcripts aren't even in this folder. Well, let's just see if anybody shows up. Oh, there we go. So here's a couple of dates you could do. And I'm just going to grab these because then you can find the discussions real easy, right?

01:32:15robberbaron1 perfect thanks
I don't think that one is meaningful, but we'll include it just to be safe. pushcx 2025-04-28.md: Added a new `vibecoding` tag to Lobsters after analyzing AI coding tool discussions. 2025-05-01.md: Discussed the new "vibecoding" tag on Lobsters and the controversy around LLM coding tools. 2025-05-26.md: Tried to fix TomSelect sorting to prioritize 'vibecoding' over 'ai' tag. 2025-07-03.md: Exploring how vibecoding tag affects comment statistics.
Actually, let me just paste you this whole thing. Why am I picking out the dates? vlad_huskey got a few years of internship experience and got an article published as part of an EU funded project previously, so I would say I have the experience/knowledge for a junior position or even yet another internship...
Then you have context. And I'm sure there's more. Let's see. It just reorganized a bunch of stuff. Is it this one? No, these are just the YAMLs. berkandev Can we do this on lobsters search? `?q=vibecoding&what=stories&order=newest&tag=meta`
Oh no, that's what the transcript is generated from. Yeah, so if we say grep for this, In all the SRT, or I guess all the VTT files, or the sources. Okay. Yeah, so here's 5.5, which was not in the other list. So I mentioned it, but that one didn't get tagged. So let me just grab all of this and throw it in a gist for you.

01:33:41pushcx https://gist.github.com/pushcx/…
grayhatter_ hey, @pushcx I just read your email (technically monday, but thought replying on stream would be more fun... but I didn't see a stream monday?)
grayhatter_ sorry I missed it earlier
and that should throw it in the clipboard yeah look at that clipboard worked right all right there you go rubber bear if you think anything else that's useful let me know greyhatter i was under the weather on monday

01:34:11and Burke and dev, you want to say in the query here, let me just, there are search operators. So like here, actually the example is searching with tag meta. berkandev aah ty
pushcx https://lobste.rs/search?q=vibe…
So you can say vibe coding tag meta like that, which here, why don't I just hit enter and then. You can have your exact URL.

...51Sir has decided to sleep where the mouse goes. Very fitting of you, boss, but inconvenient for streams.

01:35:37Not putting on good first issue, just because this touches on so many mod issues that I would like someone who's hopefully familiar with the code base or the community to pick it up.

01:36:02Missing notifications.

...11This is a bug with mockmail.

...59grayhatter_ I've been sitting on an idea for a while that I really want to deploy, (but depression has been winning lately) but instead of banning IPs, instead I want to dnat requests to a static explanation page about why your ISP was banned, and how you should complain to them (and who you can email to get unbanned))
grayhatter_ ideally with open graph tags so that message shows up when someone pastes a link into stuff like discord
I don't remember if it's even discussed in here. We had a little bit of a checklist going.

01:37:13To DNAT requests to a static application page.

...23Greyhatter, that sounds pretty great. I don't know what DNAT means in this context. I only know NAT for, you know, the kind of net traversal that you get with being on shared Wi-Fi. grayhatter_ destination nat, yeah, exactly that, but in the other direction
What is that, network address translation? But it sounds like DNAT is something totally different. Destination NAT in the other direction, huh. gsora_ lobste.rs bans ISPs? :p
That sounds like a pretty dang good idea. gsora_ * :o
That would let us at a really high level in the, or I guess at a really low level in the networking stack, filter out those requests really cheaply. pushcx https://lobste.rs/banned-ips
Yeah, GSORA, unfortunately. So there's a public list here. gsora_ oh god, the scrapers
grayhatter_ banned IPs get their https requests redirected to 4433 instead of 443, but it's completely transparent to the client, so you don't need to add logic to your app
But in the last maybe eight months, the site has been sluggish or even down because it has been hit by very aggressive, very dumb scrapers. And also very dumb spam bots. Like there is one spam bot that tries 200 times a second to submit stories. And it's not even logged in or anything. gsora_ that's... a very dumb bot indeed
I mean, obviously it's not, or I would have banned it, but like that's been going on for months. I've stopped seeing it. And Caddy can serve those very well, but some of them are in here. grayhatter_ you can hyper-optimize to handle any amount of traffic
So if you search for, I think I called it the like story submit bot. No, story URL. Maybe I don't remember what I called it. Oh, search bot is part of it. Yeah. grayhatter_ are you using IPTABLES or nft?
Because it was it throws these URLs in the search engine. Yeah. So one of the annoying things about that one is it has it's dumb, but it is well resourced. robberbaron1 any linux users in the chat? how do you get twitch to allow you to login on firefox or chrome? i just get unsupported browser for both chromium and firefox
So it's using one of the networks and it has like many, many thousands of IPs. Gray Hatter, this is IP tables. So jumping over to the implementation, Robert Barron, the chat is full of Linux users. pushcx https://lobste.rs/chat
And I know if you dropped by our IRC channel, there are definitely... Robber Baron, you have a... grayhatter_ might be worth switching, nft is a much nicer interface
I have this problem, though. You have Adblock installed, and Twitch doesn't want you to have privacy. olexsmir @robberbaron1 browser extension for switching user agents
So what I would do is open a private browsing window disable uBlock Origin and any other privacy plugins, log in, take that cookie they give you and copy the cookie into your regular session. vlad_huskey I have ublock origin and it works right now
But no, it's not about your user agent. grayhatter_ I had that problem because I was using a custom user agent and disabled referrers
Twitch has very generic bugs for anything that they consider a slight security control. grayhatter_ broke everything on twitch
vlad_huskey maybe the custom user agent, I also have referrers disabled
yeah it's some layering of privacy things so yeah could be refers yeah i understand that twitch has just infinite spam bot attacks because they are open sign up but yeah some of this stuff is pretty frustrating to deal with as a false positive caught up in the church

01:41:28So where is it? Oh, it's in root deploy. Yeah. So Gray Hatter, I don't know NFT. And someone has reported in chat that one reason not to use IP tables is when your list gets too long, IP table performance starts to suffer. because it is evaluating rules individually where nftables is presumably compiling them, hence the name. grayhatter_ yeah, that's why I switched
vlad_huskey gtg, see ya o/
pushcx https://github.com/lobsters/lob…
Here we go. twitchtd that banned ips page is what makes me reluctant to expose some sites to the internet
robberbaron1 this is infuriating lol
So copy this permalink. Good luck out there, Vlad. Yeah, Thomas, that's been... exposing stuff to the internet honestly it really only is a performance thing and i know like the rails doesn't scale conversation has been dead and buried for like a decade but i think we're bringing it back especially with the What was that marketing message? The one person SaaS? I don't mean to take these marketing messages too seriously because DHH just kind of makes up a slogan every year. None of them really drive anything, but Rails performance is bad enough that you have to put some kind of caching layer in front of it. And that can be like a Cloudflare CDN Or for us, it's our full page caching, which is an abandoned plugin and has been abandoned for years, which is not great. robberbaron1 private browsing no good
Or you can use something that's more performant. Like, I don't know, Glean. Or you can render to static files. Use a static site builder, it's fine. You won't even notice. Unless you host like large media.

01:43:59grayhatter_ robberbaron1 it could also just be completely fucked this moment
robberbaron1 iโ€™m on nix can get any version of chromium or firefox, can anyone post a working version
So Gray Hatter, if you would want to swap this out to use NF tables or that DNAT thing you were describing, that would be great.

01:44:20I don't know what to tell you, Robert Barron. I'm on Firefox locally. grayhatter_ I heard amazon is having issues with vibe coded changes breaking prod
For Twitch, I think. To get it in firefox I think I made a new profile and then I had no plugins or privacy settings on that one, and then I was able to log in. Oh, I would also expect that if you have a vpn you should expect to not be able to log into twitch. yeah great header there was a story on the site about that this last week.

...59Future build out. Yeah. So.

01:45:39Do we want to track that or just do it now because i'm pretty much through the issues was going to skim if there's anything assigned to me because that's kind of my my personal backlog.

01:46:01This is improved, but still broken.

...09I don't know why this isn't assigned to me.

...39This doesn't need me assigned.

...47Mod log message. This may be obsolete now.

...57Guess not.

01:47:17robberbaron1 unrelated but has anyone used owncast for streaming
This doesn't need to be me. That does. This definitely does not.

...33OK. The other one that would be in this category is the merge story UI.

...45think i've ever heard of owncast robber baron all right and seeing a list of stuff only i can work on makes me say maybe i shouldn't do these links but if i want to lean on it especially if i just have written like what three comments in the last hour about how We should use this more. Let me just fix this visibility.

01:48:48robberbaron1 https://owncast.online/
robberbaron1 open source streaming
was the other one you know somebody brought up at proto earlier there is also something called i think stream place for open source streaming over at proto

01:49:59olexsmir http://stream.place
All right. Yeah, Luxembourg, that's what I was thinking. Thank you for finding that.

01:50:12You know, as soon as I do this, I'm missing in the notes that URL, what was it?

...41That's just missing.

...52Wow.

01:51:15hono5kami heyya folks. a bit burnt out of coding so i'm currently studying drawing as im watching this, hehe
Close all that stuff out. Oh, howdy, Hona. Well, I'm not Brent out just yet, but you know, you can watch me struggle through stuff if you like.

...34Let's close this out. We ran that query.

...47And then where am I at? Thomas is actively coding while I'm streaming. Hi, Thomas.

01:52:29I'm just getting puzzled. That's all.

01:53:02So where should we link to ModMail? Probably everywhere we have messages, right?

...30This one. I bet there's a bunch of like literal... Yeah, like user show and settings index. So there's a lava layer anti-pattern thing happening where a lot of the old links that have been around since the beginning of the site don't use... Route helpers to generate so they're a little harder to find sometimes because you have to remember to search both.

01:54:14I am sure you could. Use her to fix that but. yeah.

...33Let's get the server tab up. So that gets that and then. robberbaron1 got desktop working
It's gotta be new message path, right? No, it's just the the index. Yeah.

01:55:14olexsmir are you using vim as your multiplexer?
robberbaron1 needed resist fingerprinting on firefox
Alexa Mary, yes. Yes, I am. robberbaron1 for posterity
I don't remember why I settled that instead of... robberbaron1 https://www.reddit.com/r/Twitch…
olexsmir oh interesting
Resist fingerprinting. Yeah, that was part of it. Like I said, you have to get a browser with no privacy settings enabled. robberbaron1 resist fingerpriting is *REQUIRED*
Once you're logged in and you have the long-lived cookie, you can turn that back on. robberbaron1 you need more privacy, not less
but you can't auth without disabling privacy. What? I had the reverse experience.

01:56:05So seven months ago.

...15They must have changed something because I went through all this hassle and logged in like a year and a half ago. Sinking time zones and blocking fingerprinting. That's very strange. All right.

...45olexsmir twitch loves to break something
Well, I guess what I'm saying is don't lose that cookie.

01:57:03So let's see. Let's do some console just to make sure I'm not going to break this.

...16Yes routes plural. We can say message URL no it's message jazz right. Right.

...32And then, if I add. Alice. Yes, I get what I wanted.

...55So there's that fixed.

01:58:29grayhatter_ so, I made this thing you might find interesting @pushcx https://srctree.gr.ht/repo/bene…
Make sure I've got two param on the message. One second. Yes. Benevolence. Get the browser out.

01:59:01grayhatter_ you give it an IP, and BGP looking glass host, and it'll get all the subnets attached to that ASN
Given an IP and BGP Looking Glass host. grayhatter_ I had to write it when alibaba cloud was murdering my server
Is Looking Glass a service or a tool? I wrote a terrible bash script to pull it out of Whois.

...29I think Hunter saw it and was like, well, you're wrong. And then he taught me how to read who is output. That was a related issue with the IP bands.

...58grayhatter_ I find you get better routes from BGP data
Hmm.

02:00:03Yeah, Grey Hatter, is that true even when there's a war on? Because I thought BGP went to hell whenever there's a war on and people start poisoning. I'm being a little tongue-in-cheek, which I shouldn't be if I'm going to drag in off-topic stuff. Excuse me.

02:01:02grayhatter_ https://bgp.he.net/ip/17.246.19…
Well, that does solve a problem I've wanted. Hmm. Oh, I didn't click on the log rotate issue that I just flipped past, but that's almost done. There's something... that is extra rotating the caddy logs, those are not, those are getting rotated every hour, which I really don't want. But I'm getting there on debugging that.

02:02:16Okay.

...57So where do we want to put this? I guess just up here. Yeah, message subnav should have it.

02:03:15Do we need it to be the first thing? We can make it the last thing, I think is fine.

...33So this one wants to be mod underscore mail for the index.

...47Users don't have an index, do they?

...55No, they only have an individual view. This just jumped in complexity.

02:05:09Association. Yes. No.

...56So that should be automatically reversed. Yeah, so let's let's see it in action.

02:06:08Just want to see the query generated. Interjoin mod mail recipients on ID is recipients mod mail ID. Great. Or I guess I have talked to this person. Or they have generated some of their own. Or actually, it's probably just test data. But since that might be sensitive, I'm not going to pull it up on screen.

...41Let's just grab all of it. We will order by.

...54Has it created it, right?

02:07:07Let's order my updated app.

...22And then... So view mod, mod, no. Index. As an index. Yes, sir. Leave the mouse alone.

02:08:04You didn't get that I want to use that name?

...20So that one becomes ModMailPath, right? Yes. I can just leave that to do in Is there a new path for users just yet? No, so I am just going to delete that now.

...51Where's the was it? 1782.

02:09:43Don't need that for now. Don't need to get cute.

...54I think that's pretty good. Getting that into the subnav there. Do I want to add it to settings? Settings has a subnav, right?

02:10:19Nope. I mean, it does. It's just not broken out into its own file. OK.

...33That's probably enough.

...40Let's make some fake data so I have someone to log in as. Yes, I want to add more records.

02:12:28And what are the odds it's the test I just added, right? Maybe it's because that's going and it's locked the table.

...52Shouldn't have locked a relevant table. Hmm. This should finish in a second. Yep. Home stretch.

02:13:54OK, there we go. So with that done, this still doesn't want to run. That's the most obnoxious way for a test to fail.

02:14:36Let's check that it's this.

...47It is, OK. So is it generation? It's path generation. What? That's strange. I mean, obviously, it should be slash mod males slash. But no, I guess it's loading that's hanging. Did I do something in the? In the controller, did I not scope to the current user? Controller, mod, mails, controller. Not user, user. It wasn't hanging. It was just querying the world or something. No?

02:16:18I thought that was going to be it. Not having a trace back is making this kind of hard.

...35Well, I made a test user. Let's go look at it as a test user and see if this issue recurs. Yes, it's fine. Shut up. It's the formatting. Vim fights its own formatter and is like, I called the formatter and the formatter changed the file. Yeah, Vim, I know. It's okay, buddy. Maybe I should get one of the LSP setups proper.

02:17:20twitchtd could it be one of the actions? since that index method is barebones
I'm already logged in as a user. Must have a cookie hanging around. Could it be one of the actions? I'm not sure which you're thinking about.

02:18:00twitchtd the before actions
twitchtd in the controller
Well, it could have been, but it wasn't unless that was failing in the test. Oh, you know what didn't happen is I didn't call the sign in. Which should have just given me an error instead of hanging indefinitely. OK. So there's the error I just saw in the browser. Do we want to go down the rabbit hole figuring out why that hung instead of just redirecting me? Not really. Let's kind of tag that and move on.

02:19:37okay good let's sort out the bug require recipient or mod but there isn't an individual so this is only for Show.

02:20:13Okay. New error. Good. Undefined method mod mail. It should be plural. That's going to start tripping up, tripping me up more than it already does because I've started writing web database code and all the tables are singular over in another project and so i'm getting used to it being you know predictable and easy and correct so of course i'll be ruined for rails where. Only two thirds of things are plural. Okay. let's look at it here. Great. You know that's. We could build a little more info into that, but that basically works. Model, mail, index. What do you want to say? Let's look at the messages table.

02:22:52Oh, look, it's an n plus 1 in Rails.

02:23:14But I don't want to include all the messages. I only want to include the last one. Rails.

02:24:13Should include the avatar, shouldn't I? That'd be nice. Let's see, where do we do that? We do it on comment.

02:25:22Defined messages because they're called mob mail messages. That's just a little bit of a mouthful, but.

...39Undefined method comment, right? It's not comment. It's last message.

02:26:04No styled user link knows how to handle mod mail messages. Guess so. Look at that. The new system user is getting a workout. Okay. And then I can click on things. twitchtd I'm going to head out, thanks for the stream. I fixed that sqlite search issue. I'm still waiting for a patch about those performance fixes
Yep. Okay. Mod mailbox. Let's just call it mod mails because that's what people will call it. Thomas, are you waiting on a patch from me? And I should say I haven't read the last couple of emails in that thread. twitchtd not from you
Not from me, okay. I will catch up as long as you're not blocked on performance. Oh, performance, wait. Where did I see that? Simon Willison's thing. Did you see... Willison SQLite? No. Willison Postgres? No. Willison... Ah, damn it. Had to be a prolific guy, right?

02:27:33pushcx https://simonwillison.net/2026/…
xCollard_Greensx lord do have mercy, vanilla arch really has nothing on it, doesn't even have iwctl XD
yes this is the one i was thinking of where do i find your permalink so thomas i know it says postgres but i didn't know this was a thing i know the query planner uses statistics to determine how to join tables and such. So he asked if SQLite could do the same. And the answer is yes. So I will take one of those SQLite databases that I backed up when we were reverting. And I will run this on it. And then Anyone can load those statistics into their own local version and generate valid query plans and see these kinds of issues coming right. So that'll be pretty handy I think. and Colored greens yeah vanilla arches I think pretty thin out of the box, I don't know what I w ctl off the top of my head is. xCollard_Greensx it's the command line way to connect to wireless networks
cancel yeah okay so there we go there's a working list of mod mails it has a smoke test it has a failing smoke test aren't we glad we just wrote it the command line way oh that one twitchtd nmcli also :)
I think there are like three command line ways to connect to wireless networks right if I were to pull up the arch wiki. xCollard_Greensx yeah nmcli isn't installed either XD
How many sections would that have because I want to say like for an mcl I yeah there we go I knew there was another one. it's funny how I immediately recognize like oh wait a minute I lost time to this. 10 years ago. twitchtd wpasupplicant
Yeah, you know, there's a couple of these defaults where it's like, well, of course, you know, Wi-Fi is a brand new feature and it's not going to be in desktop I've actually now seen, this is so strange to me as an old person, that there are computer labs that have desktop computers and all of the desktops are on wifi because it means they don't have to run Cat5 or Cat6 around the lab. graefchen Who need Wi-Fi on an personal computer anyway? limesO
It saves an expense. The motherboards nowadays just have that built in so it's not even like a ten dollar wi-fi card versus the cost of running cable i don't know it's very funny living in a first world country where it's always the labor cost that's the expensive thing and having an actual person run cable is expensive in the first world where Buying another component is a fixed cost. It's always going to be cheaper. You know, for anything short of buying an H100, right? twitchtd TIL you can export stats from production dbs so you can repro query plans in dev/test
So where's user for nil? In the index.

02:31:18Oh, this is... This should have said inline avatar for... Oh wait, I don't remember the order of these args. Yeah, Thomas, me too. xCollard_Greensx lol i'm gonna have to reinstall arch and choose some packages because this mfr doesn't even have nano XD
I learned that like two days ago from Simon's blog. I'm so delighted by that. Okay, so viewer, that's this one. And then why is that nil? I bet this is test data. Request modmail. No, factory modmail. Yes, this did not automatically make a message in the modmail. So modmail is like the thread. And modmail message is the individual messages in it. twitchtd xCollard_Greensx I bet it has ed though
That's not confusing, right?

02:32:23graefchen what? doesnt it even have another editor that could help? even if it is just ed? limesHmm
You don't have nano.

...29yeah I was gonna say. xCollard_Greensx @twitchtd i didn't think about ed!
i'm trying to think of how you'd bootstrap that I guess you could use cat to write out. A config file. chamlis_ does it have vi?
iterating would be painful but.

...54yeah i would be does it have vi oh that would be funny if it has vi but not nano or ed that's totally plausible too i wonder if yeah at this point i would just especially easy if you have a working arch install i would just grab the package for an mcli or iwctl whatever it is you want to use and sneaker net that over with a usb drive i think that would be the easiest way to get that bootstrapping one of the nice things about the arch package manager being so 90s is they are just files on disk that you can copy around it's not like nix where it You can't really have packages to isolated I know the whole archive thing it's just. The way it gets wrapped up with metadata is a little more complicated. Alright, so. twitchtd alright thanks for the link, see you next time
There shouldn't be any flows that create mails without messages. xCollard_Greensx i'm just going to reinstall because it's so fast, i installed arch on my main desktop, but i used tethering from my phone instead of wireless to install everything, long story short i'm using i3wm instead of a DE, i went from 90fps in hunt showdown to 144fps
Yeah. Is there? See you later, Thomas. Association.

02:34:51graefchen 90fps on what? windows or another linux? limesHmm
have reached yeah you know we're getting past like two hours 45 when i all of a sudden start typoing everything all the time you know you're reinstalling because it's fast and it's fast because it doesn't come with anything by default what is hunt showdown is it one of those aim trainer games Odd mail messages. Okay. Oh, yes it is. Is it just not plural? graefchen First Person Shooter from, i think, Crytech.
Or did I just not type it right? Because I'm talking about how many typos.

02:35:47Oh, nice.

...55Yeah, I got myself a big display. graefchen *Crytek, close but way to far.
It's a widescreen. It's like 5K by 2K pixels. xCollard_Greensx it's a western horror extraction shooter that takes place in Louisiana in 1896
And the highest frame rate I can run that at is 72 frames per second. So I had to go get a fancy 3D graphics card to run it, which is funny because 3D video games make me throw up. And so I have a The fancy and video graphics card. xCollard_Greensx @graefchen 90 fps on archcraft linux with i think lxqt?
So that I can run things at 72 frames a second. And then that accidentally come in came in handy because now I have a bunch of reramp to run like whisper locally on.

02:36:47You know colored greens there are graefchen limesNoted
I've been hearing nice things about Bazite, I think, is the one that is kind of an independent reimplementation of the Steam Deck. And if you're playing high-end fancy video games, you might want to really follow that one because so much stuff is just downstream of Valve. Limes Noted? What? Oh, I guess limes is the name of the mouse in that? I don't know. What are we mad about our spec? We are infinitely looping. xCollard_Greensx @graefchen getting rid of the desktop environment and just using a window manager is so much faster.
Probably because modmail messages requires a modmail. All right, let's fix the spec the other direction.

02:37:52xCollard_Greensx thanks for the advice push, i'll check it out
Yeah, I have some gnome utilities like Nautilus. But otherwise, I just run, as you can see, AwesomeWM, which is a very comfortably performant window manager. It has no features. I kid. It's one of those that knows exactly what it wants to do and then does as little as possible. And so it runs pretty dang fast.

02:38:35I see. graefchen I am still using Windows, because I live in the EU and am currently a little bit to scared to switch to Linux. limesSit
We'll just create the dependent record and let it create the parent. And hey, I even did it without any typos. Okay. All right. Well, now we have this. We should include the subnav. That's weird to not have it, right? Odd male index. I'm going to go bonkers at some point because... of that difference between mod underscore mails and mod slash mails like you know that's going to trip me up that second one should be mod slash mod underscore mails actually so let's grab that and then this one wants to be messages slash remember if i have to put the leading underscore on the partial because i'm stealing it from another direction i do not that's convenient this feels good inbox mob mail

02:40:01That's great.

...11xCollard_Greensx @graefchen how i got into linux from windows was using a virtual machine to install different distros and try them out without changing my machine, then i went to a dual boot, then 6 years ago i went full on linux, i haven't touched windows since.
I'm going to throw on the last call banner and start winding down this stream by running the build. Watch me actually remember to run the build for once. And then leaving a comment over in the mod mails feature request. about what I just hacked up and then wind down the stream. So now is the best time to sneak in last questions and make me run long if you want.

...46Oh, nice. I got into Linux because I went to a house party rebecaaras Is it my impression or audio is lower in today's sream?
because a bbs sysop was moving to the bay area i guess that was technically the first dot com boom we didn't call it that yet we didn't really start calling it until the late 90s oh hey rebecca it could be lower you know i was tinkering a bunch with it i may have reset graefchen I am happily that I know a little bit about Linux, so I could switch if I wanted or needed limesSit
rebecaaras no problem!
xCollard_Greensx push, i hope you don't take this the wrong way but you don't sound that old
this slider over here all right well you know what it's i'm like two minutes from the end of my stream so i'm not going to adjust this and make anybody watching the archive mad but i'll click it right after i hang up but thank you it's also possible i'm just getting tired and i need my old man lap Thanks, Colored Greens. But yes, I am old enough that I got into Linux because of a BBS. He was moving out to the Bay Area and he raffled off some random tech equipment that wouldn't fit in the U-Haul. And I got a 46SX laptop with 8 megs of RAM and Slackware installed. xCollard_Greensx oh my
And I had used Linux a little bit because I... God, a kid on my block had a Linux machine. I have no idea how he got one. grayhatter_ so, here's a wild question... do you use pipewire, and need a new volume control app? :D
But he let me dial up and use it as a shell user, which required like, we lost like a full day to fighting PPP, if anybody remembers that. grayhatter_ oh dialup
davidofterra I do, sadly.
joelmccracken Slackware <3
Gray Hatter, the lesson of Claude was, yes, I use Pipewire, and apparently I could use a new volume control app. Yeah. If you know of one that's nice, I'd be happy to have a link. Hey, Joel McCracken. Yeah, I had to scrounge to find enough floppies to download Slackware. Because, you know, you only need, what was it, like the ABC? grayhatter_ I just made this https://srctree.gr.ht/repo/vizz
And then I think it was the networking stuff was often N or I for internet. And you needed just enough of that to get dial-up working. And then theoretically, you could download more.

02:43:43Oh, you just made a... That's fun. Alright, so... Yeah, I used Slackware for years. It was great. It forced you to learn all kinds of stuff. Speaking of, it was kind of the opposite of Claude, right? Having Claude is stuff just happens and you're never forced to learn it running slack whereas congrats you are going to learn a lot about config files and C plus plus builders and. naym1r hello there
lib C or glib see. xCollard_Greensx on my machine i use pipewire, and with my i3 bar i added a volume% icon, it's very barebones so it will go from 0% to infinite% lol
chamlis_ has anyone done "an llm tries to install gentoo" yet I wonder
It was great. That was one of the reasons I switched to arch actually is I ran ubuntu for years in the middle there and. joelmccracken Slackware was my favorite Linux from that era, took me a bit to learn but it just felt nice and well-formed
Then I realized I was out of touch with how the system was working, and every time I was debugging things, I went to the Arch Wiki to learn, so I just switched to Arch. Hey, Slackware's still alive. The dream of the 90s is still alive in Slackware. grayhatter_ it started off as a audio visualizer because I wanted to play with fft, and frequency detection... but then I had to make a whole pipewire API, and I've needed a faster way to change the volume that doesn't flash bang me (pavucontrol is very white)
As for, has an LLM installed Gentoo? I think all of them are easy enough to install now that they could do it. The only tricky part would be wiring up a terminal for it, you know, because you'd really want it to appear as the hardware keyboard. Yeah, if you can get past, like, hitting enter on the grub menu, because, you know, on some of them you don't get the grub menu, you have to hit a key to make it appear, and I don't know that And LLM, they're so line-oriented. Eh, it could be made to work.

02:45:48Yes, Pabu Control is bright, which does get me in the evening.

02:46:05Where is it?

...16speaking of hold on let me open this in a tab there we go that didn't open the image reddit you all right speaking of doing fast furrier transform this comic cracked me up this joke that got levels haha levels See, isn't it good that I'm ending the stream so I can't subject you to my dad jokes anymore?

02:47:05grayhatter_ lol
xCollard_Greensx lmao
rebecaaras ;D
joelmccracken fast furry transform
pushcx https://www.reddit.com/media?ur…
I'll share the link to that if anybody needs it. Did I already close it? There you go.

...17xCollard_Greensx xcolla2Bang don't do it again
xCollard_Greensx lol
actually know a trans woman who's done signal processing so i sent that to her and she was like it me though that's how you know you've told a really good joke is that grown you know when it someone you activate the diaphragm and they're just like like they had a taco bell for lunch Left off my closing tag. All right, so what was I finishing? Nothing. rebecaaras When you trigger the suicide desire on the listeners
joelmccracken you told a good joke, but is it a taco-bell-for-lunch-groaner
If it's green, ship it. Let's review the diff. A little heavy there. Rebecca, are you the Rebecca who made that x86 in CSS?

02:48:37rebecaaras No!
rebecaaras An PR?
Okay. pushcx https://lobste.rs/s/rhgsiy/x86c…
If you were... No, it's not a PR. It's... I showed it on stream last week. Oh, it's not Rebecca, it's Rebane. Sorry, I guess I just saw the first four letters and crossed it over in my head. Yeah.

02:49:09rebecaaras sadly it wasn't me
Such a beautiful, ridiculous project. I... I admire that one so much for being... rebecaaras hahaha
It's an accomplishment, but it's one of those, like, why would you do that? How did you do that? Now I can't unsee that. I'm so impressed by the project on so many levels. And obviously I have a soft spot for x86 assembly with the username I have. Okay, this looks good.

02:50:01davidofterra That reminds me of the x86 disassembler someone wrote in sed.
I'll leave that comment, and then I'll wind down the stream. They wrote what? I can barely write a basic regex instead, and they wrote a disassembler? That's... Wow. I get it. I don't want to get it, but I get it. That's truly cursed. Thank you for sharing that knowledge. If you have a link, I would love to have that link so that I can properly... grayhatter_ lmao
chamlis_ my entry here is a risc-v emulator in awk
graefchen why not? I know someone who apparently wrote an os in brainfuck. limesO
know just put my nose right up against the cognitohazard that that regular expression must be and just blast my neurons away a risk you you wrote a risk emulator in awk that's that's pretty good an os in brain I did just see an image of someone running Temple OS on a Steam Deck. That was cursed.

02:51:26Oh, it wasn't... What was the name of the issue? Because they didn't know it was called ModMail. Yeah, there we go. 1954.

...46What was my commit? Grab the SHA.

02:52:22Yes, I'm done here. graefchen https://github.com/bf-enterpris… And I found it! limesGiggle
Now let's do this. I didn't remember the name. Was it 59? 54.

02:53:08Alright, stop that. Stop helping.

02:54:42joelmccracken reminds me of ribbit scheme; I was playing with that for a while (for reasons that take a while to explain), but its a full on scheme emulator that compiles to a VM that's easy to implement (has implementations in many langs, but my interest was posix shell impl)
joelmccracken https://github.com/udem-dlteam/… if anyone is curious
What was that? Let's grab those feature requests. EF Enterprise Solutions. That is a beautiful org name. Thank you. Oh, Rebecca, you just filed this. I see your username matches. Do you want to take a look at that before the end of the stream here? Let me just grab these links and then I can change gears. But if you are interested in contributing to the code base or using the code base, I'm happy to take a second to get you started. graefchen I personally find vm's interesting, even if I only implemented the 6502, the lc3 and the chip-8. limesSit
Where are those? Here we go. 1950, this one was separate, yes.

02:55:58rebecaaras I oppened this hopefully closing it today
oh so rebecca i bet chamlus sees this one too channels do you know off the top of your head is this that thing where we were waiting on them to make to cut a release of the gem with the binary built in this is tickling some neurons but i've been going for three hours and so now my memory is flaky but i thought Thought we saw this issue and pinned a version of Common Marker because of it. It doesn't look like Chanlis is still here. Or maybe she's researching. chamlis_ that's not ringing any bells for me immediately
There was something about Common Marker. Who's that?

02:57:01chamlis_ I thought everything had settled down on the commonmarker front after we made the upgrade
I don't remember, did I make a grep? No. One of the few things I haven't learned. Yeah. Vips, prybug, dependabot. Webrick. Trilogy. I swore. Common marker, is this what I'm thinking of?

...44I swear we had. I swear we had an issue where. chamlis_ oh there was a build issue at some point, I think that was prism?
thought it was common marker but it's possible it's somebody else where we had a gem that depended on rust and for brand new releases or maybe brand new rubies it wanted to compile that dependency itself which drags in A whole build chain, but if we waited a week or two. That they would release a bumped version of the gem that package it all up as a binary. And now that you say prism, maybe that's what it was.

02:58:49Yeah, because didn't we didn't we name prism in the gem file for awhile? chamlis_ here I think for that one https://github.com/presidentbee…
Maybe I'm just crossing over and... Breakman?

02:59:15Yes, this is what I'm thinking of and vaguely remembering.

...31Okay, so this is not a Rust thing. Dagnabbit.

...48You know, Rebecca, I think we're actually like a point to release behind on Ruby, right? Yeah, there's a 401. so there's one thing you could try is if you edit the .ruby version to say 401 and install that maybe this would go away he said with a very big question mark at the end that's usually what I do when I see weird ass hassles with trans or what's the word when your dependency gives you a dependency transitive dependencies I usually just pick something in the chain and nudge its point release, and it goes away. And then I go, phew, I don't have to learn anything. rebecaaras oki I'll try that! I was trying to stick to the version of the proj xD
But coming back to the beginning of the stream, because I like callback humor, maybe you could avoid learning what's happening by using Claude instead of just randomly bumping and reinstalling, which is the old school way. Oh, Rebecca, I'm trying to talk you into work. So if it's fixed on 401, that could be your very first pull request, right? chamlis_ there's a newer commonmarker version that mentions adding ruby 4.0.0 support, but it doesn't look to change anything relevant?
And at that point, you would be a contributor and you could take on any of these many feature requests or bugs.

03:01:25There's a newer Common Marker version that mentions Ruby for support. chamlis_ https://github.com/gjtorikian/c…
I mean, we are using Ruby 4, so it works in some sense.

...56Fatal error, standard arg.h not found. That really sounds like it wants a... Oh, it's still compiling Ruby at this point. I don't think this is a common marker problem. Well, maybe. Ruby is Ruby 4. rebecaaras Might be my recent update on versions
It might be that RVM did a binary install of Ruby. And so there's some general C header that it would have, you would have had to if you built Ruby. This could be like, excuse me, whatever, hold on, let me just mute. This could be just some general C dev dependency that would be in your, Distro if you're on Linux. So like on Arch, I would install base-devel. But otherwise, yeah, I would say bump-ruby, bump-common-marker. If one or both of them solves it, I would love a PR. But otherwise, it's a little bigger than I can keep digging into. rebecaaras yeah linuxno prob
And maybe Chamlus would have more ideas because it sounds like it caught her curiosity. chamlis_ I'm trying a clean reinstall of ruby 4.0.0 to see if I get the same thing
and nerd sniping her is a very important feature of this stream yeah okay so you got you got three options there right bump ruby bump common marker look for a base development package to install and maybe one of those things will sort you if you do figure it out please just post to the issue and then otherwise rebecaaras thanks!
joelmccracken thx!
chamlis_ thanks for the stream!
i'm gonna call this a stream yeah yeah all right well thanks for hanging out and chatting folks happy to answer questions about the site and the code base i expect to be back on yeah it's only the 12th so i should be back on monday afternoon chicago time 2 p.m and in the meantime my inbox my mod mail, my email, you know, all that is open. Drop me a line. Otherwise, yeah, hope to see you on Monday. Take care.