Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
cakoose
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
13 ms
·
91.
▲
by
cakoose
6y ago
The idea of certificates is built in to QUIC, but certificate authorities are the client software's responsibility. Client software can ignore certificate authorities entirely, just like with HTTPS. How exactly does widespread adopt
92.
▲
by
cakoose
6y ago
> > Running an etcd cluster is much easier than running an HA PostgreSQL or MySQL config. > What if you used one of the managed RDBMS services offered by the big cloud providers? Yeah, AWS RDS "multi-AZ" does a good job o
93.
▲
by
cakoose
6y ago
I don't think it's categorically wrong to say something is too simple . There are accepted terms for that: over-simplification, simplistic. There's also the Einstein line: "Everything should be made as simple as possib
94.
▲
by
cakoose
6y ago
Even if compiler-only ILP is doomed to fail, maybe VLIW optimists are just hoping something useful might come out of everything we've learned? For example, compilers already model the CPU's pipeline and ILP capacity to inform inst
95.
▲
by
cakoose
6y ago
First, "innocent people can be framed" is not that simple. Without non-repudiation, you don't automatically get to frame someone for whatever. You need to provide the usual (non-DKIM) evidence of whatever you're claimin
96.
▲
by
cakoose
6y ago
> It simply offers an assurance that, at around the time of sending, a given email was mostly likely sent from the server that signed it. It can't prove _anything_ about who actually sent it, because it can't guarantee the owne
97.
▲
by
cakoose
6y ago
What might be causing confusion is the difference between tagged unions and untagged unions. A union type "A | B" means "a value of type A or a value of type B". Example: function f1(): String | Integer {
98.
▲
by
cakoose
6y ago
"Solving Jepsen" is kind of a misleading way to say "debugging issues found by Jepsen". The former made me expect some kind of general solution to distributed consistency. > And ultimately, adding quality tests is th
99.
▲
by
cakoose
6y ago
Is it really that common? I often see HN posts calling for end-to-end encryption, but not homomorphic encryption. (But even "just" end-to-end encryption is more difficult than many realize.)
100.
▲
by
cakoose
6y ago
When describing the input stream back-pressure problem: > To mitigate this problem, a pause() method was added. This could solve the problem, but it required extra code; and since the flooding issue only presents itself when the process
101.
▲
by
cakoose
6y ago
Is this different from how streams work in most other languages, e.g. Java, Go, Python?
102.
▲
by
cakoose
7y ago
Oh wow, I only read the paper's abstract and was fooled. Thanks for the correction.
103.
▲
by
cakoose
7y ago
https://xkcd.com/1468/ "Worrying"
104.
▲
by
cakoose
7y ago
Xor filters require all the members of the set be provided up front. Bloom filters allow adding members, but not removing them. Cuckoo filters allow removing members: https://www.cs.cmu.edu/~dga/papers/cuckoo-conex
105.
▲
by
cakoose
7y ago
I think this statement from the grandparent post might have been misleading: > If you're looking for concurrent code that doesn't use `unsafe` you won't find any. The Rust standard library provides a bunch of concurrency p
106.
▲
by
cakoose
7y ago
> That's not what the original blog post was about though, it was about how bad Gunicorn is. Yes, the post starts out describing an issue with how Gunicorn listens for connections. Like you said, there are better libraries than Gun
107.
▲
by
cakoose
7y ago
Sure, that's a fine argument to make. But the article says "I expect AES to outperform ChaCha20 in every single scenario", even when the very next sentence talks about a scenario where that's not true.
108.
▲
by
cakoose
7y ago
The standard Ruby VM (MRI) is about the same speed as the standard Python VM (CPython), aka on the slow end. Twitter famously moved from Ruby to Java/Scala, largely for performance reasons. Node.js is much faster because V8 is much fa
109.
▲
by
cakoose
7y ago
It seems to be a complaint against doing process-per-CPU. Let's say your server has 4 CPUs. The conservative option is to limit yourself to 4 requests at a time. But for most web applications, requests use tiny bursts of CPU in betwe
110.
▲
by
cakoose
7y ago
Using async/await instead of gevent wouldn't fix the issue described in the blog post.
111.
▲
by
cakoose
7y ago
Even if you manage to preload everything you need, Python's reference counting mechanism will cause everything to be copied anyway. Every time you access an object, its reference count is mutated, which will the memory page to be copie
112.
▲
by
cakoose
7y ago
I noticed that too. I think it's because the buses are 3 stripes long instead of 4. After I changed the "--bus" CSS variable from 30px to 40px, I got the stepping effect.
113.
▲
by
cakoose
7y ago
Yeah, 2^48 is huge, but that gets you a collision probability of ~40%. You'd want a probability more like 1-in-a-million (or 1-in-a-billion). That's 2^39 (or 2^34), which is 1000 messages a second for 17 years (or 7 months). Agai
114.
▲
by
cakoose
7y ago
AES-GCM-SIV takes a nonce; if you reuse a nonce with two identical plaintexts, you reveal that the plaintexts were identical, but not much more. With AES-GCM, if you reuse a nonce with two different plaintexts, you reveal the XOR of the t
115.
▲
by
cakoose
7y ago
The first example shows AES.GCM.seal(...) and then states: > This code avoids some of the numerous pitfalls that you can encounter when constructing encryption schemes yourself. For example, it ensures that you use a randomly selected no
116.
▲
Uber driver TOS: You agree that Uber does not provide transportation services
(twitter.com)
3 points
by
cakoose
7y ago
|
0 comments
117.
▲
by
cakoose
7y ago
For me, if you type: when you do `foo()` it foos the bar. It does the right thing for me. This was the case yesterday and it still is today. It's possible that the author got a different release. It's also possible that
118.
▲
by
cakoose
7y ago
> For Python, we don't need to supply the optional initializer 1. Without the initializer, factorial(0) doesn't work.
119.
▲
by
cakoose
7y ago
> In almost every other language this code would look messy or use some terrible recursion. Nah, lots of other languages can do this. Python: def factorial(i): return reduce(operator.mul, range(2, i+1), 1) Ruby: de
120.
▲
by
cakoose
7y ago
Hmm... Git's commit chain might be a blockchain (in the minimal sense of the word), since I think it uses that hash chaining technique. But if I were describing Git to others, I wouldn't say "Git is a distributed, blockchain-
More ›