Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
pornel
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
42 ms
·
811.
▲
by
pornel
2y ago
> My feeling about Rust is that it's a playground language where many ideas are tried and insights can be formed No, from the very beginning this has been an explicit non-goal of Rust. http://venge.net/graydon/
812.
▲
by
pornel
2y ago
To me Drew's article is a "bless your heart" answer that tells Rust users to go away, and keep themselves busy with something that nobody else will care about.
813.
▲
by
pornel
2y ago
`cargo check` that does all the parsing, type system checks, and lifetime analysis is pretty fast compared to builds. Rust compilation time spends most time in LLVM, due to verbosity of the IR it outputs, and during linking, due to absurd a
814.
▲
by
pornel
2y ago
> rust insists on a very specific version of various dependencies It only insists on semver-compatible versions (if a Rust/Cargo package specifies libfoo=5.1, it will work with libfoo=5.9). It's one per major version, not that
815.
▲
by
pornel
2y ago
1. Because Windows/macOS/iOS/Android don't have a built-in package manager at the same granularity of individual libraries, but modern programming languages still want to have first-class support for all these OSes, not
816.
▲
by
pornel
2y ago
It's still an improvement, because you can find what makes that MysteryObject and you know how to pass it to a function that takes a &MysteryObject or Rc<MysteryObject> or other variation. In C, it's all MysteryObject* a
817.
▲
by
pornel
2y ago
Radiance Cascades is a technique for rendering real-time soft shadows/global illumination. This paper uses it in the context of astrophysics, but it has a good up-to-date explanation of the algorithm in general, not limited to astrophy
818.
▲
by
pornel
2y ago
> Packaging a dozen version of the same library? Cargo uses semver for unifying minor dependency versions, so you don't have dozens versions. It's one per major version. It's not even that different from what Debian does
819.
▲
by
pornel
2y ago
Things are called AI only until they can be done well by a computer, and then they become just an algorithm. There was a time when winning in Chess was a proof of humans' superior intellect, and then it became just an algorithm. Then G
820.
▲
by
pornel
2y ago
That's why Firefox needs a userbase too large to ignore. If the overwhelming majority of users submits to Google, then Google has the power to erode privacy for everyone.
821.
▲
by
pornel
2y ago
It works okay with Rust, but it's not really needed, except when integrating C code with Rust. For verifying unsafe code, Rust has a MIRI interpreter that catches UB more precisely, e.g. it knows Rust's aliasing rules, precise obj
822.
▲
by
pornel
2y ago
Poe's law.
823.
▲
by
pornel
2y ago
The quality difference between generics and proc macros vs the hoops C jumps through instead is pretty significant. The way you solve this in C is also unobvious, but doesn't seem like it when you have a lot of C experience. I've
824.
▲
by
pornel
2y ago
Rust feels impossible to use until you "get" it. It eventually changes from fighting the borrow checker to a disbelief how you used to write programs without the assurances it gives. And once you get past fighting the borrow che
825.
▲
by
pornel
2y ago
24 megapixel almost-lossless photos dumped straight from the camera are too heavy to be used directly on the Web. They also have lots of metadata including GPS location, that people usually don't want to share. In practice you'd w
826.
▲
by
pornel
2y ago
JPEG XL has many compression modes inside, and the lossless JPEG roundtrip works only for one of them that was specifically designed to hold old JPEG's data. You can't take an arbitrary JXL file and turn it into a JPEG without los
827.
▲
by
pornel
2y ago
Rust emits unreasonable amount of debug information. It's so freakishly large, I expect it's just a bug. Anything you compile will dump gigabytes into the target folder, but that's not representative of the final product (aft
828.
▲
by
pornel
2y ago
An expensive car is also a status symbol. But when the brand is inseparable from Elon's shitposting, it's not something to brag about any more.
829.
▲
by
pornel
2y ago
https://wgpu.rs can emulate newer APIs on WebGL2. It's really nice to work with.
830.
▲
by
pornel
2y ago
The "actual compression magic" has been used before DCT in other codecs, but applied directly to pixels gave lousy results. You can also look at 90's software video codecs developed when DCT was still too expensive for video.
831.
▲
by
pornel
2y ago
It's been working like that for a decade, and it's been fine. Rust/Cargo have been designed for it from the start.
832.
▲
by
pornel
2y ago
It's very useful to get a multi-network RFID card. I've got ChargeMyHyundai and their card works with all these crappy little networks that feel so important to have an app.
833.
▲
by
pornel
2y ago
I hate charging at gas stations. They're not a place where I want to spend time. Their retail is usually small, food choice is meh, and the surroundings are boring and smelly. In my experience oil-company-owned charging networks are th
834.
▲
by
pornel
2y ago
I'm a huge fan of Fastned. They have never failed me. I can rely on their chargers working, and delivering maximum speed. Ionity is not too far behind, and between the two the coverage is pretty good in Western Europe.
835.
▲
by
pornel
2y ago
Glasgow Subway operates in tunnels with a 11ft diameter — smaller than Musk's 12ft tunnels, and they have driverless trains in operation now.
836.
▲
by
pornel
2y ago
The phones do lots of things, and a lot of them well, so overall satisfaction doesn't mean that App Store pricing is satisfactory, nor fair. Apple forbids developers from itemizing pricing and telling users how much Apple takes, interf
837.
▲
by
pornel
2y ago
The app ecosystem is the lock-in, and creates a very high bar to entry for other players outside the Apple-Google duopoly. Note that Google has created a dependency on proprietary Google Play Services, and owns the Play Store, so even lever
838.
▲
by
pornel
2y ago
You make one of them have thickness of both, so that the collision detection becomes line vs capsule collision. Another trick is to rotate both so that one of the move directions is axis-aligned, and then the problem looks more like AABB.
839.
▲
by
pornel
2y ago
Using a numeric ID + ignored path part is easy to implement, but actually using the textual part without an exposed ID seems more elegant to me. Tip for implementing that: * have a separate table that maps slugs to IDs, allowing many-to-one
840.
▲
by
pornel
2y ago
In theory, AVIF supports palette-based blocks, so it can express perfectly sharp edges and even transcode a GIF with perfect accuracy. In practice these modes are not used. A blurry alpha channel is just having soft edges. A naive encoder w
More ›