HN user

Forricide

146 karma

Software developer. C++, Python, Rust. English, French.

Posts0
Comments49
View on HN
No posts found.

One of those niche, (presumably?) widely-unknown bugs that is actually extremely relevant to subcommunities of people who play the game - in particular, any decent Minecraft speedrunner is well aware of "boat break" and plays around the possibility.

Part of the reason I love speedrunning games in general is how it tends to bring weird bugs to the forefront of your consciousness, just like this!

So for me, extremely anecdotally, I host a few fairly low-importance things on a home server (which is just an old desktop computer left sitting under a desk with Ubuntu slapped on it): A VPN (WireGuard), a few Discord bots, a Twitch bot + some auth stuff, and a few other services that I personally use.

These are the issues I've ran into that have caused downtime in the last few years:

- 1x power outage: if I had set up restart on power, probably would have been down for 30-60 minutes, ended up being a few hours (as I had to manually press the power button lol). Probably the longest non-self-inflicted issue.

- Twitch bot library issues: Just typical library bugs. Unrelated to self-hosting.

- IP changes: My IP actually barely ever changes, but I should set up DDNS. Fixable with self-hosting (but requires some amount of effort).

- Running out of disk space: Would be nice to be able to just increase it.

- Prooooooobably an internet outage or two, now that I think about it? Not enough that it's been a serious concern, though, as I can't think of a time that's actually happened. (Or I have a bad memory!)

I think that's actually about it. I rely fairly heavily on my VPN+personal cloud as all my notes, todos, etc are synced through it (Joplin + Nextcloud), so I do notice and pay a lot of attention to any downtime, but this is pretty much all that's ever happened. It's remarkable how stable software/hardware can be. I'm sure I'll eventually have some hardware failure (actually, I upgraded my CPU 1-2 years ago because it turns out the Ryzen 1700 I was using before has some kind of extremely-infrequent issue with Linux that was causing crashes a couple times a month), but it's really nice.

To be clear, though, for an actual business project, I don't think this would be a good idea, mainly due to concerns around residential vs commercial IPs, arbitrary IPs connecting to your local network, etc that I don't fully pay attention to.

“How's that going to work when ten years in the future you have no one that has learned anything,”

Pretty obvious conclusion that I think anyone who's thought seriously about this situation has already come to. However, I'm not optimistic that most companies will be able to keep themselves from doing this kind of thing, because I think it's become rather clear that it's incredibly difficult for most leadership in 2025 to prioritize long-term sustainability over short-term profitability.

That being said, internships/co-ops have been popular from companies that I'm familiar with for quite a while specifically to ensure that there are streams of potential future employees. I wonder if we'll see even more focus on internships in the future, to further skirt around the difficulties in hiring junior developers?

This one (among others) does really fascinate me. Maybe it’s due to spending a lot of time around diverse groups of people but I’ve never really seen a huge distinction between these words. Washroom, bathroom, toilet, I and everyone I know pretty much would use interchangeably? Or at least wouldn’t blink at someone else using them.

Restroom, and a variety of others, might be slightly more usage specific but still… wouldn’t be unexpected or weird, I’d say?

I always assumed we just called it hydro in BC because so much of the power comes from hydroelectric, but then I moved and it seems we call it hydro everywhere no master source..?

That's very fair - at least with third party software, it can be nigh impossible to track down a problem.

With third party libraries, I've too-often found myself reading the code to figure something out, although that's a frustrating enough experience I generally wouldn't wish on other people.

Fixing everything is impractical, but I'd say a safer rule of thumb would be to at least understand small strangenesses/errors. In the case of things that are hard to fix - e.g. design/architectural decisions that lead to certain performance issues or what have you - it's still usually not too time consuming to get a basic understanding of why something is happening.

Still better to quash small bugs and errors where possible, but at least if you know why they happen, you can prevent unforeseen issues.

I use a Cepstrum (bought a kit + switches + keycaps and put it together; there's no soldering required, so it's quite easy). I never 3D printed tenting, so it's not quite perfect for normal typing, but for gaming it's fantastic - I don't think I can go back to non low-profile switches.

Your book is legendary and I have recommended it to a good number of students/programmers-in-learning. Haven't ever made it through (no matter how good the textbook, I'm still not a textbook person...) but immense respect for the time and dedication required to make such a brilliant and engaging learning material.

You're correct, there are a bunch of different ticket options. Not sure about how it's actually implemented, though.

Slightly tangential, but when I was in Montreal, I was blown away that you just purchase a ticket from a machine and you get a printed out ticket with an NFC chip inside. Not my favourite part of the trip (Montreal is beautiful!) but definitely a cool piece of technology to see being put to such a mundane use.

This is a super interesting anecdote, considering the name definitely confused me at the time - trying to learn web development with no context I did indeed think it was some kind of Mozilla-centric resource. All those times using w3schools over MDN are, in hindsight, a little sad aha.

Couldn't agree more. Learning bad things - not that TDD is bad, or anything, but over committing to it might be - is a huge part of understanding why certain approaches are better or worse than others. Although, I suppose 'making mistakes is the path to learning' is already conventional wisdom, so.

Discord is down 3 years ago

Yep, they've had that feature for quite a while, too.

I've always had the impression that - although obviously there is pressure within the company to monetize - they seem to have a lot of developer focus on 'just doing the obvious things that clients want'. Almost every major complaint or feature request I can think of from the last decade or so of using Discord has been addressed in some way, which is really cool to see from software... even if they do somewhat irritating things sometimes.

My memory is really bad for this kind of thing, sorry. I think some of Keigo Higashino's recent translated works have this kind of physicality in their mysteries, but I'd have to reread them to remember ahahaha. (But on the enjoyment angle, I do really like Higashino's works, so I do recommend them if you like mysteries)

I'm thinking: construct a visual scene, object A is on top of object B, etc., and then ask a question that would be obvious to someone actually seeing the scene, but very difficult to reason out otherwise. Obviously such a test would be hard to come up with, hence why we don't seem to be able to talk about this stuff very well.

Yeah. I mentioned this elsewhere in this thread but the big thing that made me understand (some of) the gulf in terms of visual rendering abilities was murder mysteries. I read a lot of them with friends and oftentimes mysteries rely on an ability to construct an image of the scene in your head. Not being able to solve such a mystery doesn't mean you have aphantasia, of course, but there's this feeling for me in these that they're literally impossible, and yet other people can definitely solve them.

Aphantasia is also often linked with SDAM (Severely Deficient Autobiographic Memory).

Thanks for mentioning this... did an extremely quick Google and I suddenly understand everything about my memory.

I wouldn’t be surprised if 99% of the discourse here is just miscommunication on what “picturing something in your head” means and 99% of people who think they are different are not.

Yeah, this is exactly the issue, and it's really just impossible to know. There's this popular 'apple test' image that gets posted a lot, where you're supposed to self-diagnose your level of aphantasia/visual imagery prowess based on which 'tier' of apple you can visualize, and people will always say: yeah, I can see [extremely vivid, realistic image of an apple] in my mind perfectly well. And that seems impossible to me, but then, how are we supposed to know what other people can actually see in their mind? It's in their mind, after all.

The one thing for me that does make me believe there is some major difference is murder mysteries; I have friends who can visualize scenes and solve mysteries that would be impossible for me.

Conversations around this kind of thing are so fascinating to me, because they seem to present this fundamental breakdown in human communication - how impossible it is to convey what 'really is going on' inside your mind.

The idea (to me) that people can just see full-fledged lifelike photos in their mind is crazy, especially with low effort. I can't really draw things in my mind very well but I can 'pretend' I see them, blurring the line between 'knowing I'm seeing something' and 'actually seeing that thing'.

But, is that the same thing as actually visualizing that object? It feels like it for most use cases, but then there's some task that actually would be way easier if I could legitimately 'see' that thing, and suddenly everything becomes more complicated.

This definitely isn't my experience, but I work in C++, where having a second eye to look over things is... valuable.

That said, I think culture for this kind of thing varies wildly between different companies, and between teams in those companies; many (most?) teams are comprised of small numbers of people, so even one team/technical lead having a preference for a certain style could change things, and... well, everyone's different.

I _kind of_ understand in the sense that - it can feel bad/like wasted time to do code review when you don't leave a single comment.

But of course, it's very very important to ignore that feeling and do the sensible thing, which is be happy that the code review is smooth and the code can be merged. I can't imagine the existential dread of realizing that half your job is pointing out the same common errors every single time. Tools like clang-tidy, clang-format, etc are so vital for staying sane.

You're correct, it's a configurable feature (not paid, it's been openly available for 1-2 years).

Discord also supports forums, but most server owners disable one or both as they can take more effort to moderate/maintain.

I haven't used the OP's application, but I've used a variety of other WYSIWYG markdown editors. It's true that WYSIWYG is kind of pointless for READMEs or what have you, but for writing prose it's very useful to continuously understand what your output will actually look like. (And writing prose in markdown is great because you have a plain text, easily manipulated & cross-compiled storage format that you can read the plain text of easily if you have to)

I wrote short stories on Reddit for around two years, mostly for fun and practice. Nothing that needs to be saved, but it's nice to have this kind of thing around if you want to look back in the future!

Just in case -

My G600 started double clicking ~2yr ago. I hate replacing things, so I tried a bunch of guides to fix it - opened it, cleaned the switches, soaked them in alcohol, etc. It would stop double clicking for an hour but then would happen again.

Was going to pick up a new one when I read a reddit comment that said it could be static buildup in the mouse & that just spamming both the buttons at the same time for 30s could fix it. I did this and ... it fixed it. I also usually hold the mouse upside down while doing this so maybe it was just dislodging dirt that the alcohol didn't get. Who knows.

In any case, holding the G600 upside down and just spamming r+lclick for 30s generally solves the problem for me for at least a few months. (I've been heavily using the mouse since ~2016) Maybe this helps, maybe not.

Side note - I love this mouse. Tried to switch to a Razer mouse and it broke within 3 months. RMA'd it and the replacement had a bad side button so I just gave up and went back to the G600. It's not ideal for my use case but finding a good mouse does seem impossible these days.

I really love this talk in particular: https://www.youtube.com/watch?v=4P_kbF0EbZM (On charconv)

But any of the ones I've seen from Stephan have been fantastic, I think, although I'm not actually sure if I've seen more. He seems to have a lot of talks on very specific subjects, which can be really fun.

Hyrum Wright is in the audience yelling interjections as a result of Hyrum's law

This sounds absolutely hilarious, I'll have to take a look.

It's kind of crazy how major compilers have been ignoring the standard for so long that people consider a standard compliant compiler to be weird and broken.

I had absolutely no idea this wasn't even supposed to be the case (although I was aware of the duplication in std::). Guess it makes sense that the standard would shy away from global namespace pollution - I suppose one of the compilers perhaps did this for long enough that the others ended up duplicating it to increase code compatibility?