TehPers

joined 2 years ago
[–] TehPers 3 points 18 hours ago (2 children)

Don't forget Intel's latest GPU launches either! For custom PCs, there are some really affordable and relatively powerful GPUs available now (for the price). Despite their performance otherwise, Intel is killing it in the GPU space now.

For a lower spec build, you could definitely put together something with a 12100F (or other cheap CPU) and a battlemage GPU. Depending on where you get all the parts, you might be able to hit sub-$500 and get great 1080p performance, or for sure sub-$1k 1080p and likely 1440p performance.

Handhelds also have a lot of good options available too. To save some cash, you can get low end Steam Deck and swap the hard drive yourself. Got myself the cheapest LCD variant and swapped the tiny drive in it with a 2TB drive off Amazon.

[–] TehPers 1 points 1 day ago (1 children)

I'll be honest. I've written async code in Rust for years and I don't think I've used select at all. I tend to drop into manually implementing Future before that point. Either way, the issues related to that macro still exist, but the author seemed to call it out and link to an article about it (which doesn't seem disingenuous at all to me).

As for cancellation, the fact that you can cancel tasks by default in Rust has come up far more for me than any issues with unintended cancellation (which I don't remember ever coming up, honestly). What I find myself wanting in other languages (especially JS) is the ability to both control when the task starts executing (for initialization logic or to prepare the task and pass it somewhere before it starts executing) and when it stops executing (early termination, for example with debouncing). I don't get that by default in other languages, or often even at all in JS (unless I pass an abort controller everywhere).

[–] TehPers 2 points 2 days ago

Random Texas court ruling coming in 3... 2... 1...

[–] TehPers 2 points 5 days ago

Everything you said makes sense, but just want to add to your note at the bottom: * can also be used for reborrowing (&*blah, &mut *blah, &***blah, etc). This is useful for getting a shared borrow (&T) or unique/exclusive borrow (&mut T) from another type of pointer (like Box, Arc, or even MutexGuard).

[–] TehPers 5 points 6 days ago* (last edited 6 days ago)

Another potential security issue is path traversal - can someone getting an uploaded paste pass in an ID that allows them to read files in other directories of the system, like ../cert.pem? Verifying that the ID is a valid UUID, if that's the route you go, should solve this.

Anyway, it was a lot of fun reading your posts the past few days. Seeing the improvements between the iterations was really cool. Feel free to keep sharing your adventures!

[–] TehPers 3 points 1 week ago

If you don't threaten, tariffs hit and you pay more. If you threaten, he magically remembers what tariffs do and walks it back. At least, one would hope.

[–] TehPers 4 points 1 week ago (9 children)

Want to make Trump listen? Threaten him with tariffs. He'll only listen to money and threats.

[–] TehPers 2 points 1 week ago

Not only this, but C# has diverged enough from Java that anything but the absolute basics isn't going to help much with C#.

[–] TehPers 5 points 2 weeks ago

static mut has so many safety requirements to use it soundly that you should just not use it. Use an AtomicUsize instead, and just make it static.

[–] TehPers 1 points 2 weeks ago (1 children)

This is true of so many ecosystems. In the past year, I think I've had to rewrite an ESLint config twice, transition a Prettier config to another format, update React in a project and a good half of the other dependencies through some breaking changes, etc.

It's not really unique to Rust, and happens for projects that are well past v1 (in React's case, v19 - and they still haven't figured out suspense, not that I'd want to rush them).

Still, I'd love for things to remain consistent over time. The breaking changes in this version of axum are pretty easy to update to though, and you might even be able to just regex replace these in all your files since it's just a matter of using braces now instead.

[–] TehPers 69 points 2 weeks ago (5 children)

Cybertrucks have a lot of problems, but this seemed to be a clearly intentional explosion by somebody.

That aside, can Tesla just unlock any of their vehicles remotely and access all the camera footage on it? That seems like a much bigger problem, especially since Mr. Musk is practically our next president.

[–] TehPers 6 points 2 weeks ago

We understand that this is a breaking change for basically all axum users

Lol.

I love the changes. Probably better to get this over with now than to wait until it's no longer feasible to make this kind of breaking change. The Option extractor change is also nice - makes for some much more ergonomic error conditions.

view more: next ›