Live data from Hacker News

A year of Rust in ClickHouse

clickhouse.com

51–60 of 102 posts

Re: A year of Rust in ClickHouse

#52
post #45

Earlier quoted context omitted.

The Rust community is unfortunately plagued by this subset of devs who are zealous (and downright toxic) in their shilling for their favorite language. Before anyone gets triggered and starts typing up a reply: "SUBSET" is the word I used.

So is any big enough community. Look at that "Why Go?" discussions, and you'll see a lot more loud, obnoxious C# devs, but somehow Rust is the worst. There was also a Rewrite it in LISP post[1] fan. Where is the "The Lisp community is unfortunately plagued by this subset of devs who are zealous (and downright toxic) in their shilling for their favorite language." [1] https://github.com/microsoft/typescript-go/discuss…

.....and you got triggered.

Somehow in the past 3-4 years it's only been that subset of Rust devs that have been wailing about: "WHY NOT REWRITE IT IN RUST?".

Often they're mostly the same type: anime pfp, walls of text of pompous technobabble as if they were some elite caste of arcane cyberpriests preaching the gospel of Rust, etc.

There's a reason "just rewrite it in Rust" has become such a meme.

Re: A year of Rust in ClickHouse

#53
post #45

Earlier quoted context omitted.

The Rust community is unfortunately plagued by this subset of devs who are zealous (and downright toxic) in their shilling for their favorite language. Before anyone gets triggered and starts typing up a reply: "SUBSET" is the word I used.

So is any big enough community. Look at that "Why Go?" discussions, and you'll see a lot more loud, obnoxious C# devs, but somehow Rust is the worst. There was also a Rewrite it in LISP post[1] fan. Where is the "The Lisp community is unfortunately plagued by this subset of devs who are zealous (and downright toxic) in their shilling for their favorite language." [1] https://github.com/microsoft/typescript-go/discuss…

FWIW, Go used to have that issue of "I'm a 10x dev writing type-safe compiled microservices in Go (not golang) wowzers".

But that subset of devs has largely disappeared/moved on to other langs.

Re: A year of Rust in ClickHouse

#54

Earlier quoted context omitted.

C++ can be safe enough if you proceed with care. What I dislike of C++ is that it grew to become a monster of a language, containing all programming paradigms and ideas, good or bad, known to mankind. It's so monstrously huge no human can hold its entire complexity in his head. C++ allows you to do things in 10000 different ways and developer would do just that. Often in the same code base. That being said, I would u…

I find Zig to be a saner Rust alternative, with the caveat that it is still a immature (but getting there). Give it a few years and it will be a very strong contender. The true C successor.

Yeah, I’m leaning towards zig but I’m a bit on the fence still.

For Rust, I kind of got tired of writing unsafe rust for embedded, but that’s addressable afaik. The real dealbreaker was that after 10k+ lines of code I still will pop open the source of a library that solves a simple problem and the code looks indecipherable. I also don’t really agree with the dependency explosion that cargo encourages.

Zig is very nice in that it has the most ergonomic struct usage I’ve encountered. The stdlib could really use some improvement though. Comptime is very cool, but I also worry if the community will get undisciplined with it.

Re: A year of Rust in ClickHouse

#55
post #45

Earlier quoted context omitted.

So is any big enough community. Look at that "Why Go?" discussions, and you'll see a lot more loud, obnoxious C# devs, but somehow Rust is the worst. There was also a Rewrite it in LISP post[1] fan. Where is the "The Lisp community is unfortunately plagued by this subset of devs who are zealous (and downright toxic) in their shilling for their favorite language." [1] https://github.com/microsoft/typescript-go/discuss…

.....and you got triggered. Somehow in the past 3-4 years it's only been that subset of Rust devs that have been wailing about: "WHY NOT REWRITE IT IN RUST?". Often they're mostly the same type: anime pfp, walls of text of pompous technobabble as if they were some elite caste of arcane cyberpriests preaching the gospel of Rust, etc. There's a reason "just rewrite it in Rust" has become such a meme.

> .....and you got triggered.

Sure, you got me. If someone says the earth is actually a cube, I have to go defend the spherical chads.

In this case, it's the sheer disconnect between RIIR askers, and the sheer number of people painting Rust devs with a continent wide brush.

It's very in-group vs out-group reasoning.

Let's demonstrate it. For example: I'm a Java dev, and I see a Java dev, being a moron, so I'll say "What a moron". But if that guy was a C# dev, I'm going to say "C# devs are morons". See the error committed here?

> There's a reason "just rewrite it in Rust" has become such a meme.

Just because something is a meme, doesn't make it true, either. Like it was true around the time of Rust 1.0. But that's been like 10 years ago.

It isn't even the worst part about Rust community.

Re: A year of Rust in ClickHouse

#56

> If you do an experiment and say "C++" anywhere on the Internet, in a minute someone will chime in and educate you about the existence of Rust. Many people see this as a problem. The response to TypeScript choosing Go over Rust was pretty gross imho, no one should be abused for choosing a language.

> no one should be abused for choosing a language Can you link to the abuse?

https://news.ycombinator.com/item?id=43413702 is one example.

A Rustacean implied Go was not memory safe and that Microsoft couldn't understand the power of Rust. Steve Klabnik & others told them off. But other Rustaceans, like Patrick Walton, argued that Go has memory safety issues in theory.

Re: A year of Rust in ClickHouse

#57
post #8

> If you do an experiment and say "C++" anywhere on the Internet, in a minute someone will chime in and educate you about the existence of Rust. Many people see this as a problem. The response to TypeScript choosing Go over Rust was pretty gross imho, no one should be abused for choosing a language.

The actual issue wasn't Go over Rust, rather having key people responsible for C# design, on a Microsoft project, going for a Google language. While at the same time, the .NET team routinely talks about .NET image problem outside traditional Microsoft shops, which naturally decisions like this aren't helping a tiny bit.

I think it speaks to an incredibly pragmatic viewpoint though. When you take a look at your flagship language/ecosystem and you say, "hey, this is great for building entire systems for doctor/patient data... or perhaps even banking software"... but recognize that "it's probably not the best thing for building a compiler/tooling". Google themselves show the same pragmatism when NOT using Go for Android. They prefer Kotlin these days.

Re: A year of Rust in ClickHouse

#58

Earlier quoted context omitted.

C++ can be safe enough if you proceed with care. What I dislike of C++ is that it grew to become a monster of a language, containing all programming paradigms and ideas, good or bad, known to mankind. It's so monstrously huge no human can hold its entire complexity in his head. C++ allows you to do things in 10000 different ways and developer would do just that. Often in the same code base. That being said, I would u…

I find Zig to be a saner Rust alternative, with the caveat that it is still a immature (but getting there). Give it a few years and it will be a very strong contender. The true C successor.

I like Zig, too. Not sure if it's a Rust alternative as in you still have to manage the memory yourself.

But is much simpler, easier to read, easier to understand, easier to follow and easier to reason about. It's less verbose and more productive.

It feels like what C would look like had it been invented today.

Re: A year of Rust in ClickHouse

#59
post #54

Earlier quoted context omitted.

I find Zig to be a saner Rust alternative, with the caveat that it is still a immature (but getting there). Give it a few years and it will be a very strong contender. The true C successor.

Yeah, I’m leaning towards zig but I’m a bit on the fence still. For Rust, I kind of got tired of writing unsafe rust for embedded, but that’s addressable afaik. The real dealbreaker was that after 10k+ lines of code I still will pop open the source of a library that solves a simple problem and the code looks indecipherable. I also don’t really agree with the dependency explosion that cargo encourages. Zig is very nic…

Zig is fantastic, however there are a few issues (mostly related to its immature/wip status):

- the build system is constantly changing in a breaking way (between releases some of the repos I have on GH no longer build and need their build.zig to be updated).

- the comptime section of the docs needs to be heavily expanded, I'd love to see them take common Go interfaces and redo them in Zig (like io.Writer, io.Reader), breaking down the process step-by-step. It took me a little bit longer than it should've to efficiently use comptime.

- a whole section dedicated to things like using WaitGroup and multithreading, for those coming from langs like Go. Also, higher-level concurrency primitives like channels would be fantastic.

- a better import system for external zig libraries, the zig fetch => .dependency => .root_module.addImport stuff is not as straightforward as it should be although for someone coming from C it definitely does feel like using meson

None of these are critical and again, all signs of Zig's "youth".

Re: A year of Rust in ClickHouse

#60
post #55

Earlier quoted context omitted.

.....and you got triggered. Somehow in the past 3-4 years it's only been that subset of Rust devs that have been wailing about: "WHY NOT REWRITE IT IN RUST?". Often they're mostly the same type: anime pfp, walls of text of pompous technobabble as if they were some elite caste of arcane cyberpriests preaching the gospel of Rust, etc. There's a reason "just rewrite it in Rust" has become such a meme.

> .....and you got triggered. Sure, you got me. If someone says the earth is actually a cube, I have to go defend the spherical chads. In this case, it's the sheer disconnect between RIIR askers, and the sheer number of people painting Rust devs with a continent wide brush. It's very in-group vs out-group reasoning. Let's demonstrate it. For example: I'm a Java dev, and I see a Java dev, being a moron, so I'll say "W…

>In this case, it's the sheer disconnect between RIIR askers, and the sheer number of people painting Rust devs with a continent wide brush.

I have no idea how you can accuse me of this when I made a big disclaimer in my original comment:

>Before anyone gets triggered and starts typing up a reply: "SUBSET" is the word I used.

Post reply on HN