Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
HippoBaro
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
6 ms
·
1.
▲
by
HippoBaro
22d ago
This is specifically for immigrant visas. USCIS distinguishes two broad categories of visas: immigrants and non-immigrants. Tourists are part of the latter group.
2.
▲
by
HippoBaro
7mo ago
> Says frustrating things like "so I can just use unsafe", because no you don't and if you do I would reject your changes immediately. This is the kind of hostility (which is frankly toxic) that’s become associated with pa
3.
▲
by
HippoBaro
8mo ago
> Rust invented the concept of ownership as a solution memory management issues without resorting to something slower like Garbage Collection or Reference Counting. This is plain wrong, and it undermines the credibility of the author and
4.
▲
by
HippoBaro
10mo ago
> It actually took a lot longer to re-write the game in C++ than it took me to write the original machine code version 20 years earlier. Is the most interesting quote IMO. I often feel like productivity has gone down significantly in rec
5.
▲
by
HippoBaro
1y ago
I’m very excited for Zig personally, but calling it “ultra reliable” feels very premature. The language isn’t even stable, which is pretty much the opposite of something you can rely on. We’ll know in many years if it was something worth re
6.
▲
by
HippoBaro
1y ago
It was nighttime in Singapore when the ruling was announced. My husband and I scrambled to find a flight back. The best we could find, at any price, lands 25mins after the deadline. We are on our way there.
7.
▲
by
HippoBaro
1y ago
It’s really the hardware block size that matters in this case (direct I/O). That value is a property of the hardware and can’t be changed. In some situations, the “logical” block size can differ. For example, buffered writes use the pa
8.
▲
by
HippoBaro
1y ago
Just to add my two cents—I’ve been writing Go professionally for about 10 years, and neither I nor any of my colleagues have had real issues with how Go handles errors. Newcomers often push back on this aspect of the language (among other t
9.
▲
by
HippoBaro
1y ago
I’m amazed by the ambition, technical brilliance, and relentless dedication behind some personal projects on display here. All of this for a clock! I don’t get it, but I’m in awe.
10.
▲
by
HippoBaro
1y ago
Eminently pragmatic solution — I like it. In Rust, a crate is a compilation unit, and the compiler has limited parallelism opportunities, especially since rustc offloads much of the work to LLVM, which is largely single-threaded. It’s not s
11.
▲
by
HippoBaro
2y ago
It would be great to know a bit more about the protocol itself in the readme. I’m left wondering if it’s reliable connection-oriented, stream or message based, etc.
12.
▲
by
HippoBaro
2y ago
I am not sure I buy the underlying idea behind this piece, that somehow a lot of money/time has been invested into asynchronous IO at the expense of thread performance (creation time, context switch time, scheduler efficiency, etc.). F
13.
▲
by
HippoBaro
2y ago
> Under the asynchronous model, both timeouts and cancellation simply compose. You take a future representing the work you're doing, and spawn a new future that completes after sleeping for some duration, or spawn a new future that
14.
▲
by
HippoBaro
2y ago
I think the author knows very well what UB is and means. But he’s thinking critically about the whole system. UB is meant to add value. It’s possible to write a language without it, so why do we have any UB at all? We do because of portabil
15.
▲
by
HippoBaro
2y ago
Go has an amazing runtime and tool ecosystem, but I’ve always missed a little bit more type safety (especially rust enums). Neat!
16.
▲
by
HippoBaro
2y ago
For the kind of software I write there are two cases: (1) the hot path for which I will always have custom allocators and avoid allocations and (2) everything else. For (1) GC or not it doesn’t make a difference, I’ll opt-out. For (2) GC is
17.
▲
by
HippoBaro
3y ago
A few years ago my company moved to using Bazel as our build system. JetBrain IDEs have a plug-in for Bazel that’s incredibly slow and buggy. It’s a shame because I used to really enjoy using their product, but now it’s barely usable.
18.
▲
by
HippoBaro
3y ago
As a database engineer who worked extensively with both i3 and i4 instances, I want to add that although i4 has lower IOPS, the latencies distribution of IO ops is an order of magnitude better. IOPS indeed matters a lot, but so does latency
19.
▲
by
HippoBaro
3y ago
Abstracting code is always a dangerous gamble because they rely on invariants. In this case “the shape all resize the same way”. When the invariants breaks, the abstraction collapses and the code can become much more convoluted than it was
20.
▲
by
HippoBaro
3y ago
There's absolutely nothing in Rust that mandate error handling. You can always ignore them, just like in any other language.
21.
▲
by
HippoBaro
3y ago
This! These fancy operators add a lot of complexity in practice. Trivial things in Go like error wrapping (to add local context), become much more complicated with `?` operators. Go made something super simple. I write and review a lot of G
22.
▲
by
HippoBaro
3y ago
I think there are a few misunderstandings there (the video is funny, btw). The kind of async IO I'm referring to exists one layer below whatever Apache and node are using. Both are event-driven, actually. They both use some flavor of e
23.
▲
by
HippoBaro
3y ago
I can't entirely agree with this, but I like how the authors think about the issue (S3 being a de-facto standard without anything formal to back it up). POSIX is outdated and problematic. It's outdated because it was conceived whe
24.
▲
by
HippoBaro
3y ago
I think the information there is valuable because questions about memory usage in Linux keep coming up. The answer: "don't worry about it," is probably a good starting point. The page claims things that are just really mislea
25.
▲
by
HippoBaro
3y ago
> I've used stackful coroutines many times in many codebases. It never required or used a runtime or preemption. Can you tell us which? Go, Haskell and the other usual suspect all have runtime with automatic, transparent preemption.
26.
▲
by
HippoBaro
3y ago
As someone else said, it is not, strictly speaking, a bug. If your server receives a request that requires very computationally expensive work, is it okay to delay every other request on that core? That's probably not okay, and it'
27.
▲
by
HippoBaro
3y ago
They often implement soft preemption. Tokio and others like Glommio do. Usually, it's based on interrupts. The runtime schedules a timer to fire an interrupt, and some code is injected into the interrupt handler. This is used to keep t
28.
▲
by
HippoBaro
3y ago
Virtual threads or green threads, etc., are all names for the same thing: stackful coroutines. I would say yes! If your language/platform/runtime supports them, that should definitely be your starting point.
29.
▲
by
HippoBaro
3y ago
The argument here is that Rust chose to implement coroutines the wrong way. It went the route of stackless coroutines that need async/await and colored functions. This creates all the friction the article laments over. But it also prai
30.
▲
by
HippoBaro
3y ago
Async Rust is especially problematic in the enterprise world where large software is built out of micro-services connected through RPC. Typically, if you want to build something with Rust, it'll have to use async, at least because gRPC
More ›