Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
Twey
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
6 ms
·
31.
▲
by
Twey
3mo ago
I think it definitely sits at a reasonable point in the tradeoff space here, but it's not the only reasonable point. And it's the nature of tradeoffs that some cases will slip through the cracks.
32.
▲
by
Twey
3mo ago
I did not know that was something people had done! Thanks for the pointer! If I were to quibble, though: in-process implies exactly the absence of the isolation guarantees that OOP!Kay and microservices share. (The overhead on a Boolean als
33.
▲
by
Twey
3mo ago
Taken to an extreme. It's not feasible with current microservice architecture to, for example, represent every Boolean in the program as a service.
34.
▲
by
Twey
3mo ago
I think that's more of a workaround than a fix. Relying on unstructured concurrency does mean you no longer have to understand the scheduling of your program's fibres (… until you do), but it introduces a bunch of new footguns aro
35.
▲
by
Twey
3mo ago
All recurrent people problems are system problems.
36.
▲
by
Twey
3mo ago
That's an excellent question I don't have an answer for in general :) IMHO the goal is usually for the compiler not to make these decisions but to provide the tools for the APIs people build to make them. That's kind of passi
37.
▲
by
Twey
3mo ago
`Poll` is marked `#[must_use]` so if you were assigning to something other than `_` you'd get a warning that you're ignoring the `Pending` path. The Clippy lint is only for `_` which Rust considers a use by default.
38.
▲
by
Twey
3mo ago
Hence ‘sadly’. IMNSHO both of these (or at least _untyped) should be enabled by default. Untyped `let _` is too big a footgun during refactorings.
39.
▲
by
Twey
3mo ago
I said ‘flagged’, not ‘fixed’ :) You can always write the wrong code if you want it enough. But hopefully a warning would have prompted someone to think harder about this flow.
40.
▲
by
Twey
3mo ago
This would have been flagged by Clippy lints `let_underscore_untyped` or `let_underscore_must_use`, which sadly are not enabled by default.
41.
▲
by
Twey
3mo ago
> I don’t use AI when I write, for the very reason that writing itself is the act of organizing and clarifying my own thought. Letting the bot write for me would be like paying someone else to exercise for me and hoping that gets me in s
42.
▲
by
Twey
3mo ago
Mathematics, and its empirical cousin science, are not about picking out individual things that are true in the universe. There is an infinite set of statements of things that are true about the universe, almost all of which are, necessaril
43.
▲
by
Twey
3mo ago
Green threads predate modern async/await by quite a long way. Since async/await was developed, recent languages tend to prefer the ‘principle of least surprise’ by making the yield points explicit, since they interact in important
44.
▲
by
Twey
3mo ago
Related research: Elliot Evans' Polytope ( https://elliot.website/editor/ ).
45.
▲
by
Twey
4mo ago
Regular reminder: the ‘lines of code’ metric is a liability not an asset. The best engineer is not the one who can produce the most lines of code in a day but the one who can ship the feature with the fewest lines (and prepare the system to
46.
▲
by
Twey
4mo ago
Sorry, misread you — but you can substitute ‘monopsony’ into my comment and I think it still holds. This is a ‘no true Scotsman’ so I don't think I can really respond to it directly. But I'll point out that my claim is not that s
47.
▲
by
Twey
4mo ago
No human can _100%_ consent to anything (… probably: free will is tricky). Coercion is a continuum, not a binary. I don't really think that companies (or other parties in trades) bear moral responsibility for this inherently — a compan
48.
▲
by
Twey
4mo ago
This effect is very much not limited to monopolies, though it's certainly easiest to see there. There's no step change from monopoly to competitive marketplace though. If you believe it's the company's moral duty to prov
49.
▲
by
Twey
4mo ago
If those terms include the potential for predictable harms like lack of healthcare or housing if an agreement isn't reached, then yes, I think that is indeed an engagement in violence. Now I'm not saying that the employer is neces
50.
▲
by
Twey
4mo ago
Health is not a perk but an inelastic demand: a threat to withhold health is a threat of physical harm, and a negotiation in which one party's physical health is on the line is quantitatively but not qualitatively different from a nego
51.
▲
by
Twey
4mo ago
This is a strawman argument. It is of course mathematically possible to obtain a billion dollars (although notably much harder to do in a way that is liquid, but let's gloss over that). My somewhat more charitable reading of that claim
52.
▲
by
Twey
4mo ago
Yes I really think it should be better advertised! The continuation model is the standard model of async programming and still perhaps the nicest semantically. Rust's big innovation is that futures are polled from the top, i.e. (poten
53.
▲
by
Twey
4mo ago
> What is harder to find is the bridge between them, the part that connects understanding how async works to actually shipping with it. There is actually already a tutorial at this level: Tokio has its ‘async in depth’ tutorial [1] that
54.
▲
by
Twey
4mo ago
> I like my colours to have a bit more blue and green in them, so I skewed everything that direction. Colours like 222 look a tiny bit bluer / greener than you'd expect. It might be hard to see but trust me, it's true babe
55.
▲
by
Twey
4mo ago
John Day talks about this a fair bit: what people want to do is naming of applications, in a way that makes it independent of addressing (i.e. where the application is running). DNS still names the machine — it's just a one-step abstra
56.
▲
by
Twey
4mo ago
The concept of linting feels somehow inimical to Markdown, a language designed to progressively enhance existing plain-text formatting conventions.
57.
▲
by
Twey
4mo ago
But my bitstring representation of a heap may not be your bitstring representation of the same heap. Neither C nor C++ makes enough guarantees about the representation of the heap that you can assume that, so a higher-level ‘heap’ type that
58.
▲
by
Twey
4mo ago
> On the higher philosophical level, I wanted to avoid the cursed tower-of-abstractions trap that I felt quite sharply in C++. Then you might want to avoid computers in general: C also sits on a tower of ‘imaginary’ abstractions (binary,
59.
▲
by
Twey
5mo ago
In the same vein Wasm is also an option that might be more suited to this kind of thing thanks to the higher-level ABI (/components).
60.
▲
by
Twey
5mo ago
Even the _design_ of languages is a generational project. There are open problems in the PL space that we know need to be fixed but we have no idea how. Once you've got the ‘core ideas’ of the language in some papers somewhere (and pro
More ›