tasn
E.g. make a table that's 3x3 is easier to read (Go), but the equivalent line in Rust would also include material, angles, height, etc. because the type system encodes much more information.
Though I always found Go to be significantly harder to read than Rust. Sure Rust has some crazy syntax at the edges, but Go makes it very hard to know where imports come from (and thus what they do), and the imperative style + lack of clarity about mutability makes code much harder to reason about.
Though the data I do have: how many people adopt these advanced endpoints in practice (as we offer these), and it's less than webhooks.
These weaknesses are why we[1] added FIFO endpoints, Polling Endpoints, and what we call "Svix Stream" as ways to do ordered state synchronization (each with its own tradeoffs). This lets people consume the events in the way that best fits their use-case. We are working on more things to make the state sync even easier. I'd love to hear about more challenges people are facing with webhooks, as we want to make these things better.
OP: I'd love to hear more about your thoughts there, and will send you an email in a moment.
P.S, if you're unfamiliar, please check out Standard Webhooks[2]. It's a spec we created to help with signature verification that has been adopted by OpenAI, Anthropic, Google, and many others. We are chipping at one webhook challenge at a time. :)
1: I'm the founder of Svix (mentioned in the post), we do webhooks infrastructure as a service.
Strong static typing, a hill I'm willing to die on
Startup's security policies are concerning
The Future Is Event-Driven
The US has the 5th amendment protecting you from self-incrimination, while in the UK you can go to prison for not divulging your encryption password (even if you forgot it!).
The US doesn't have ISP/DNS level blocking for all I'm aware of, but there's the ultimate blocking that sometimes does happen (FBI raiding your servers, even if outside of the US).
The US has the 1st amendment protecting speech, while in the UK people routinely get arrested for social media posts.
Maybe there are areas where the UK is better about privacy/freedom than the US, but no examples immediately come to mind.
Show HN: Diom – Back end primitives (queue, rate limit, etc.) in one Rust binary
Hey HN, my name is Tom, and I'm excited to share Diom (https://diom.com) - a backend components server.Diom includes implementations for common backend primitives such as cache, key-value, idempotency, rate-limiting, queues, and streams, with more on the way.While building Svix, we had to reimplement the same backend primitives that everyone have to reimplement. We also constantly felt the...
Show HN: Diom – Open-source back end primitives with no runtime dependencies
Hey HN, my name is Tom, and I'm excited to share Diom (https://diom.com) - a backend components server.Diom includes implementations for common backend primitives such as cache, key-value, idempotency, rate-limiting, queues, and streams, with more on the way.While building Svix, we had to reimplement the same backend primitives that everyone have to reimplement. We also constantly felt the...
Show HN: Diom – Backend primitives (queue, rate limit, etc.) in one Rust binary
Hey HN, my name is Tom and I'm the founder of Svix. We've been working on Diom (https://diom.com) for the last 6 months, and I'm excited to finally share it on HN!Diom is a single Rust binary that replaces Redis, RabbitMQ, Kafka, and a lot of custom code for many common use-cases. It's open-source, self-contained, and has no external runtime dependencies.While building Svix, we had to...
As for the $40m number: I also saw this number, but I don't think it's correct. E.g. Germany recently bought 140 of them for $165m. Ref: https://www.i24news.tv/en/news/israel/defense/1649255166-ger...
For perspective: Patriot missiles cost $4m each.
As for traveling to the future: that sounds like fun!
So you support many more than you realize!
I wonder how long it'll take them writing a compositor from scratch.
Now, if what you're saying is that with super highly optimized sections of a codebase, or extremely specific circumstances (some kernel drivers) you'd need a bit of unsafe rust: then sure. Though all of a sudden you flipped the script, and the unsafe becomes the exception, not the rule; and you can keep those pieces of code contained. Similarly to how C programmers use inline assembly in some scenarios.
Funny enough, this is similar to something that Rust did the opposite of C, and is much better for it: immutable by default (let mut vs. const in C) and non-nullable by default (and even being able to define something as non-null). Flipping the script so that GOOD is default and BAD is rare was a huge win.
I definitely don't think Rust is a silver bullet, though I'd definitely say it's at least a silver alloy bullet. At least when it comes to the above topics.