lpghatguy

Joined 9 years ago

Karma
430
Submissions
100
Member since
Jun 10
not just computers but also other things
View on Hacker News

Recent submissions

Comment · 10 hours ago
I went back and forth on this for a long time. Lua's exception mechanism is actually pretty fast but they're just strings, so there's no useful information unless you match on those strings (eek!)

I think encoding these things into a better type signature is the way to go. In Go and Lua, that means multiple return values like `success, result` or `result, err`. It's pretty clunky and verbose in both of those languages though and so my years of Lua made me instantly skeptical of Go doing the same thing.

Languages with cheap data-carrying enums like Rust are my favourite these days. No unhandled exceptions, super obvious where the failure is, and Rust has a lot of niceties for handling, mapping, and adding context to errors without a lot of runtime cost.

Comment · 10 hours ago
The AI generated (read: fake) mockup image that's first in the README looks great! This would be really cool if it looked like that, but it doesn't.
Comment · 5 days ago
When I was writing a bunch of Lua, I was a big fan of having a None sentinel value (Lua uses 'nil' for representing absence) and it was useful for a lot of things similar to Pydantic's MISSING.

This distinction is something that I think is actually handy about JavaScript, and distinguishing between 'null' and 'undefined' is sometimes useful for similar reasons.

Comment · 9 days ago
Astonishing to me that a company like Google would be willing to publish such a terrible looking product demo. Interactive, but with completely made-up inputs that are ignored?
Comment · 21 days ago
The README being so full of AI prose is super grating.
Comment · 1 month ago
I'm a little surprised there's no data here from the Montréal or Toronto metro systems! I think Canada has the same escalator speed limit as the US, so I expect them to be similar.
Comment · 1 month ago
The artifacts from some of the AI-generated images are a pretty significant detraction. For a site with so many pictures of hands, so many of them being malformed or having the wrong number of fingers (hithhiker's thumb, palmaris longus) is really off-putting.
Comment · 2 months ago
If you use more than one operating system, you can't use the operating system browser if you want sync or the same experience. For example, I use a Windows desktop and a MacBook.
Comment · 2 months ago
Having those things come up in conversation with a friend, who we can probably trust to deliver good information to us, is _way_ different than a platform that is going to potentially profit if they can sway you another direction.

If my friend is involved in an MLM scheme, I'm not going to trust them that I should buy NutriProteinShakeMax! I probably don't want them to tell me about it, ever!

Comment · 2 months ago
99% of applications on Windows will just include all their dependencies in a folder with the exe. It’s great — it works, it’s compatible, it’s simple!

Getting dependencies to build your app is definitely harder on Windows but the fact that you can just throw things in a folder for a binary distribution is unbeat!

Comment · 4 months ago
I find it frustrating when people talk about memory safety as “a spectrum.” Yes, there are safer patterns in unsafe languages, but at the end of the day, not having memory safety as a category of bug _period_ is such a nice baseline level to work from!

If you hit a weird state in your program and it can _never_ be caused by memory corruption, you rule out a big bug space and no longer need to check the entire scope of your program. It’s similar to Rust’s unsafe blocks — it doesn’t really matter if they’re “more unsafe” than Zig because in Zig the scope of the unsafe is your entire program! Local reasoning is a huge part of what you buy into and I could never give that up if I didn’t have to.

Comment · 5 months ago
Take care here though, because shaders are almost always working in linear sRGB colors, while color codes are almost always defined in gamma-encoded sRGB.

This property makes it mildly annoying to copy color constants between different contexts.

Comment · 5 months ago
It's the StackExchange model! This has bootstrapping issues, is hard to break into the community, and risks creating moderator cliques.
Comment · 7 months ago
I bought the same keyboard when I was a teenager as my first "real" keyboard!

These days I have a ZSA Moonlander. I adore it! I love how easy it is to program it without any software installed and it's been phenomenal to customize it to fit me perfectly.

I just changed all the switches out (in order to be quieter than my stock Cherry MX Brown switches) and replaced them with a set of Gazzew U4 switches. I'm _shocked_ at how far mechanical switches have come along since the days of Cherry dominance. They're super quiet and still have an awesome tactile feel!

Comment · 10 months ago
In my career, I've found that this problem crops up the most when a team is unable to make impactful changes to a system that they depend on. It's so much easier (and requires less collaboration and fewer approvals!) to build an abstraction over some core system than to actually fix the core system, even if fixing the core system is always the better choice.

I was very guilty of this as a young go-getter engineer! Why try to convince another team that something should be fixed if I can just paper over it?

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton