Live data from Hacker News

Why we develop EloqDB mainly in C++

eloqdata.com

81–90 of 94 posts

Re: Why we develop EloqDB mainly in C++

#81
I would also choose C++

The language is improving and improving. Some years ago it was way too difficult for the speed gain to be worth it.

But it's become more and more easy to write. Many of the safety arguments Rust has are still technically true, but 90% less true than 6 years ago.

The C++ community is also really friendly and open minded.

It's hard to explain but C++ also has this nice relaxing feel when writing it. Like doing a puzzle. Maybe the cognitive load is very evenly spread? Or the header hpp model forces you to think first in data models and interfaces? I have no idea it's mainly a feeling.

Re: Why we develop EloqDB mainly in C++

#82
post #61

Earlier quoted context omitted.

Manual snobs are a tiring bunch, it's not an inherently better transmission or way to drive. That said, instant torque isn't really that special and feels like a novelty after the first few times you've floored it. When an EV actually has a suspension setup and overall weight that doesn't feel like I'm piloting a boat at sea, then I'll probably care. Porsche & co seem like they're still aiming for it so I've got some…

Speaking of snobs, I have had multiple arguments with Automatic snobs, who think I am a bit thick for still driving a manual. They refuse to take 'I do it because I like it' as an answer.

I mean that's weird - "I do it because I like it" is, IME, the answer that makes everyone drop the discussion.

Personal preference is the most valid reason, lol

Re: Why we develop EloqDB mainly in C++

#83
post #74

Earlier quoted context omitted.

I might be biased but I found it that the people who came to interview for the Rust roles of my company were noticeably better (or at least better at interviewing) than the applicants for the Java roles. More knowledgeable on the theory, struggled less on the hard things, more up to date on their tech watch

Well, now you name something. Java is the most bureaucratic language only a matching personality or a programmer who is not very good would tolerate it.

Maybe 10 years ago. This too has changed.

Re: Why we develop EloqDB mainly in C++

#84
post #58

Earlier quoted context omitted.

Is this like a dig? Does anyone disagree that manual is much more fun?

Fun isn't the point, and it's not (necessarily) a dig. I drive a manual transmission car as my daily driver. I enjoy it. I would never try to say it's better than a modern automatic, though - because that would be wholly incorrect at this point by any objective measure. I'm noting that C++ vs Rust is basically this: every article that someone writes which goes over "we're still choosing C++" has the same vibe as peop…

Nah there are plenty of embedded contexts where you're only going to have an SDK for C/C++.

I worked on one recently.

Re: Why we develop EloqDB mainly in C++

#85

Earlier quoted context omitted.

I get your point and I like driving a manual car, but there’s a reason the whole world has switched to automatic

There's essentially no learning curve moving from manual to automatic. But moving from C/C++ to Rust, there's a big learning curve.

So not the perfect analogy--my point is the "manual" version isn't always better than the "automatic" version.

For one thing, manual transmissions require physical activity and coordination. That's not true with programming languages...

Re: Why we develop EloqDB mainly in C++

#86

Earlier quoted context omitted.

I get your point and I like driving a manual car, but there’s a reason the whole world has switched to automatic

Perhaps not always for the better? People eating, drinking and using mobile phones .. I think the luxury of having a hand free with automatic transmission is a contributing factor. Stick shift requires a certain level of attention/engagement that might actually make for safer driving IMO.

I mean it's an analogy, so it's not directly the original comparison. I hate C++ but I concede it's possible to get the most performance from C++ if you are diligent. My argument there would be: Ok, use C++ and C (or even machine code) for the most performance sensitive parts, but then use a safer easier language everywhere else.

Re: Why we develop EloqDB mainly in C++

#87
post #58

Earlier quoted context omitted.

Fun isn't the point, and it's not (necessarily) a dig. I drive a manual transmission car as my daily driver. I enjoy it. I would never try to say it's better than a modern automatic, though - because that would be wholly incorrect at this point by any objective measure. I'm noting that C++ vs Rust is basically this: every article that someone writes which goes over "we're still choosing C++" has the same vibe as peop…

Nah there are plenty of embedded contexts where you're only going to have an SDK for C/C++. I worked on one recently.

These will be slowly eaten by Rust, but sure, we can agree that there might be a small carve-out for that sector of software. It's not a hill I'm willing to die on.

Re: Why we develop EloqDB mainly in C++

#89
post #71
post #67

Earlier quoted context omitted.

This kind of generalization is so old. Imagine someone told you that "I've noticed that people of race A are noticeably better than people of race B". If you think it's different, just consider that people don't really have much of a choice in either case: there's a lot of Java developers because there's a lot of Java jobs, universities teach it, and it's been around a fairly long time when compared to Rust, at least…

> This kind of generalization is so old. I feel you're objecting to the wrong comment. sebstefan appropriately specified "the people who came to interview for the Rust roles of my company [...]", and was giving it as a counterpoint to the previous comment's broad generalization. > there's a lot of Java developers because there's a lot of Java jobs, universities teach it, and it's been around a fairly long time when c…

> I feel you're objecting to the wrong comment

Not at all. His comment was worse in that it generalized a whole lot of people based on the minor evidence he's been able to collect. Unless he's had several dozen, at least, Java applicants, as well as dozens of Rust applicants, I assume he's just using the exact same plain old discriminatory thinking people used to employ when comparing, among many things, race and nationalities. It's incredibly hard to generalize anything about people honestly.

> whereas the other requires going out of your way to pick up, could well be a factor in the latter having more knowledgeable average applicants

I disagree. It's much more likely, in my view, that newer languages will appeal to people who value the wrong things in a business, like which language they want to use for the excitment of being in the cutting edge (not to mention technically as well - we've tried for so long to create languages that make software engineering better, but anyone with a long experience in trying things will know that language is very low in the list of things that help: many studies have shown that over the years)... which also tends to correlate with people who will leave the job as soon as something new catch their eye.

Except in extremely niche cases, the language is not that important. The only things that really help writing software are static types and tests... and that doesn't mean the more the better either: there's a diminishing return with both. That's why Haskell is NOT the pinnacle of software engineering, despite what some fanatics will try to tell you (proof of which is that almost no important software is written in Haskell or languages like it - I think the most successful type-rich language so far is actually Rust!).

> I presume the majority of Rust programmers learn it online.

What I meant is that in their region, there's a good chance that learning another language is useless to find a job because all jobs are in Java or C#/C++.

But I do advise younger people to learn many languages anyway because of the fact that it really helps them think better and not get stuck with a particular approach to software engineering when there's many.

Re: Why we develop EloqDB mainly in C++

#90
post #82

Earlier quoted context omitted.

Speaking of snobs, I have had multiple arguments with Automatic snobs, who think I am a bit thick for still driving a manual. They refuse to take 'I do it because I like it' as an answer.

I mean that's weird - "I do it because I like it" is, IME, the answer that makes everyone drop the discussion. Personal preference is the most valid reason, lol

You would think!

But people seem to take offense if someone doesn't follow what is common wisdom (according to them) !

Post reply on HN