Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
adamch
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
8 ms
·
31.
▲
by
adamch
4y ago
I work on network services, but generally my server's requests start on a user's computer, get to my service, get proxied to some upstream destination elsewhere on the internet, and then the responses flow back. Point is, I work w
32.
▲
Unix Signals vs. Servers
(blog.adamchalmers.com)
2 points
by
adamch
4y ago
|
1 comments
33.
▲
Rust in 2024 (Niko Matsakis)
(youtube.com)
2 points
by
adamch
4y ago
|
0 comments
34.
▲
by
adamch
4y ago
K8s probably wouldn't make sense for a lot of startups -- it's designed to solve a lot of different problems, and you're probably not going to be interested in solving most of those. On the other hand, once you know k8s, it m
35.
▲
by
adamch
4y ago
It's both!
36.
▲
by
adamch
4y ago
Funny, I know a decent amount about k8s these days, but I've never really used AWS. I think there's a lot of systems that try to solve the same problems: "define these services, keep them running, here's how to check if
37.
▲
by
adamch
4y ago
Update: I did go through every `match` statement in my 16k-line Rust project at work, and I found a number of places where it was useful. My commit to use let-else had 10 files changed, 27 insertions(+), 48 deletions(-).
38.
▲
by
adamch
4y ago
Except the let-else version has one big disadvantage. The 'match' version has bound the error to `e`, so you can log that error or inspect it. The 'let-else' version can't read the error, so its log message can'
39.
▲
by
adamch
4y ago
They also received a very large amount of funding from some successful tech founders, Brian Acton and Pavel Durov
40.
▲
Solving Common Problems with Kubernetes
(blog.adamchalmers.com)
5 points
by
adamch
4y ago
|
0 comments
41.
▲
Static streams for faster async Rust proxies
(blog.adamchalmers.com)
1 points
by
adamch
4y ago
|
0 comments
42.
▲
Using Socat for TLS Interception
(losslessbits.com)
7 points
by
adamch
4y ago
|
0 comments
43.
▲
by
adamch
4y ago
I think HPBN and Beej's guide are perfect companions to each other. They've been the most useful resources on my journey to learn more about networking.
44.
▲
by
adamch
4y ago
This is really noticeable with video chat. I never use Bluetooth when talking with my family... between the Texas - Australia lag and the Bluetooth headphones - Android phone lag, it's enough to impair conversation. Now the problem is
45.
▲
by
adamch
4y ago
Hello, friendly Cloudflare employee here... there's a much simpler alternative to managing cache policy if your whole website is static. We built a tool for deploying static websites to Cloudflare [1]. It watches your Git repo for chan
46.
▲
by
adamch
5y ago
I was aware that other DNS clients existed, but just using one of them would have taught me as much!
47.
▲
by
adamch
5y ago
Oops, thanks so much! I forgot to check 'em. Fixed now.
48.
▲
What I learned from making a DNS client in Rust
(blog.adamchalmers.com)
145 points
by
adamch
5y ago
|
27 comments
49.
▲
by
adamch
5y ago
Does anyone know why Axum is so much faster than the basic "spawn a new task to accept the connection and write the response" async webserver? I'm curious what they're doing under the hood. They're both using the To
50.
▲
by
adamch
5y ago
My previous blog post about Nom tries to do that: https://blog.adamchalmers.com/nom-chars/
51.
▲
by
adamch
5y ago
That is exactly why I ended up learning bitwise Nom, and the inspiration for this blog post :)
52.
▲
by
adamch
5y ago
I agree, it's surprisingly usable given how complicated parsing can be! I think the key to its ease of use, at least for me, is that you can unit test the individual parsers. You can program very iteratively, building it piece by piece
53.
▲
by
adamch
5y ago
That's really neat, thanks for showing me. This looks very straightforward for parsing a straightforward format. I think Nom might be more useful as the format gets more complicated... the combinators can really save you quite a bit of
54.
▲
by
adamch
5y ago
Oh, interesting. I've used Bitvec for serializing binary data, and I can see how you can use it for parsing single bits or u8s... do you have an example of how to parse, say, a 3-bit binary number with Bitvec?
55.
▲
Parsing bitstreams with Nom
(blog.adamchalmers.com)
105 points
by
adamch
5y ago
|
34 comments
56.
▲
by
adamch
5y ago
Cloudflare | Data loss prevention team | Remote (must live in same country as a Cloudflare engineering office, including USA, Australia, UK, Portugal, Japan, Singapore) I am the sole engineer on a new team at Cloudflare, and I'm lookin
57.
▲
by
adamch
5y ago
Oops, yes
58.
▲
by
adamch
5y ago
Serde is good for self-describing formats like JSON, YAMK, TOML etc. At least that's what I use it for. Nom isn't necessary for them! Nom is good for protocols where you need to know the schema in advance. E.g. a binary key-value
59.
▲
by
adamch
5y ago
Hi Josh! "Parse, don't validate" is one of my favourite programming blog posts of all time. Between Nom and Serde, I find it very easy to use that approach in Rust.
60.
▲
by
adamch
5y ago
Interesting! The quote "sometimes, nom can be almost as fast as regex" has been removed from the Nom docs, so it's probably become faster since 2018 when that Cloudcity article was written. In fact, Nom now claims to "ou
More ›