Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
EdSchouten
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
11 ms
·
31.
▲
by
EdSchouten
2y ago
Just like “this entire meeting could have been an email”, all this effort writing this gist could have been spent creating a PR.
32.
▲
by
EdSchouten
2y ago
> The Dutch have a very lackadaisical attitude to law What do you mean by this specifically?
33.
▲
by
EdSchouten
2y ago
Relatedly, what's the advantage of that secretbox package over calling https://pkg.go.dev/crypto/cipher#NewGCM ?
34.
▲
by
EdSchouten
2y ago
Indeed. A screenshot of the resulting output would have been more useful.
35.
▲
by
EdSchouten
2y ago
An interesting aspect of waitid is that it allows you to access the full exit code of the process (i.e., the entire int instead of just the bottom 8 bits). Unfortunately, many operating systems implement waitid() on top of one of the older
36.
▲
by
EdSchouten
2y ago
strlcpy()!
37.
▲
by
EdSchouten
2y ago
Note that it doesn’t remove support for 32 bit apps. It only removes the ability to boot 32 bit operating systems.
38.
▲
by
EdSchouten
2y ago
Exactly. This is also highly problematic if you try to perform atomic operations against bare 64 bit integers on those systems, because the atomic instructions do require them to be 8 byte aligned. In C11 and later it’s not an issue, becaus
39.
▲
by
EdSchouten
2y ago
Another thing that's worth investigating: As the name implies, the sizes of nodes of Prolly trees and geometric search trees are geometrically distributed. My question is: is this really the right distribution to use? The larger nodes
40.
▲
by
EdSchouten
2y ago
Exactly. But my concern is that this is not any stronger/better than what Prolly trees already offer, which is why I'm disappointed that they are mentioned under "related work", but not discussed/compared in more de
41.
▲
by
EdSchouten
2y ago
From "2 Related Work": > None of these data structures can provide a non-probabilistic upper bound on the number of items per vertex. This hampers efficient implementation; and adversarial data suppliers can trivially produce n
42.
▲
by
EdSchouten
2y ago
ARM64’s equivalent (NEON) only has 128 bit registers, so the gains of using SIMD are not as massive as on x86-64. Edit: turns out there’s nowadays something called SVE that provides wider registers: https://developer.arm.com/
43.
▲
by
EdSchouten
2y ago
Static CPU manager also affects the cores that sched_get affinity returns. And that’s what Go uses to obtain the core count.
44.
▲
by
EdSchouten
2y ago
If you’re on Kubernetes, you can solve this/work around this by enabling the static CPU manager policy: https://kubernetes.io/docs/tasks/administer-cluster/cpu-mana...
45.
▲
by
EdSchouten
2y ago
So you can only declare a couple of hundred lists, and you’ve exhausted your process’s 2^47 byte virtual address space. Great.
46.
▲
by
EdSchouten
2y ago
> Its not a hard problem, [...]. At its core its structured events that carry two GUIDs along with them: a trace ID and a parent event ID. It is just building a tree. I've always wondered, what's the point of the trace ID? What
47.
▲
by
EdSchouten
2y ago
Out of curiosity, would placing all DELETE queries within a single transaction also help? Or does that still cause PostgreSQL to process each of the queries sequentially?
48.
▲
by
EdSchouten
2y ago
For the example of the call centre a graph would still be better than a gauge. Because if the graph of people in the queue is going up you may want to get more staff.
49.
▲
by
EdSchouten
2y ago
What I dislike about Grafana is just how much freedom it provides when building dashboards. It means that if you open up a dashboard that's made by someone else, you have absolutely no idea how to interpret the data. For example: - I&#
50.
▲
by
EdSchouten
2y ago
This approach is essentially what is called an "augmented data structure". Namely, in this case a B-tree is augmented to store an element count. But there are obviously many other data structures to which this can be applied, and
51.
▲
by
EdSchouten
2y ago
At least in the Netherlands there are programs through which you can get a bank account, even if you are otherwise severely disadvantaged. https://www.basisbankrekening.nl/
52.
▲
by
EdSchouten
2y ago
I think Linux should go the FreeBSD/macOS route of completely deprecating major/minor numbers. Just treat stat.st_rdev as a fully opaque identifier.
53.
▲
by
EdSchouten
2y ago
I like the name. “Praat” is Dutch for “talk”.
54.
▲
by
EdSchouten
3y ago
As I'm not allowed to edit the post above: using a unary number system instead of exponential/triangular makes the implementation even simpler, and cuts down the output of the example output even further to 798 bits.
55.
▲
by
EdSchouten
3y ago
Shrinking happens automatically, because every iteration takes the actually meaningful width of the previous iteration.
56.
▲
by
EdSchouten
3y ago
> > By default, the subsequence that is used is identical to that containing differing bits during the previous iteration > If I'm understanding correctly, this means that if the first choice a sized subsection is oversized, t
57.
▲
by
EdSchouten
3y ago
As the article states, you need to apply some heuristics to choose between cases (2) and (3). I'm not a big fan of that, because it means the encoding is not deterministic (as in, it leaves room for interpretation/optimization by
58.
▲
by
EdSchouten
3y ago
I think the description for Go is inaccurate/incomplete. You can call this function to instruct the decoder to leave numbers in unparsed string form: https://pkg.go.dev/encoding/json#Decoder.UseNumber That allows
59.
▲
by
EdSchouten
3y ago
The downside of an approach like this is that it limits you to a single programming language on both the frontend and backend. This is exactly the reason RPC frameworks like gRPC use an IDL.
60.
▲
by
EdSchouten
3y ago
Are there actually practical cases where Rabin-Karp hashing is what dominates the running time of an application? The naive implementation already gives you 0.75 GB/s. Seems pretty fast.
More ›