Live data from Hacker News

The pool of talented C++ developers is running dry

efinancialcareers.com

591–600 of 869 posts

Re: The pool of talented C++ developers is running dry

#591
post #189

I was a C++ programmer for 25 years. Last 3 years, I'm using Rust language in my daily job and for all my hobby projects. I will not return to work in C++ again. No money can make me to change my decision. Nowadays, programming is a pure joy for me again. This was not the case when I had to work with C++.

I've drank C++'s kool aid. I believe in the vision and think of everything in C++ terms. ...I think I could last about 3 months in another language before I'd forgotten too much to go back.

I doubt that's true. I haven't used C++ for many years now. I was in your boat a few years ago (C/C++ since 1990) but now 6+ years Python then Rust centric. I still think in C++ terms when writing rust, although most of the time it's "I would need 10 lines to do this 1 line of rust code were I still using C++."

I dabble in C++ occasionally as a contractor. No problem picking up the new features and making useful contributions.

C++ maps pretty directly into Rust. I found it useful to understand the underlying data representation in memory. For instance https://doc.rust-lang.org/nomicon/repr-rust.html

Re: The pool of talented C++ developers is running dry

#592
post #494

Earlier quoted context omitted.

>C++ as a whole should be deprecated -- and no new projects should use C++ (unless for some very odd and specific reason). And what can be used instead of C++? C? If C was better, then C++ wouldn't have been invented. Rust? It's much more painful to use than C++. Zig? It's immature and has very low usage. Nim? Has very low user base. Julia? It isn't solving the same problems.

Mark Russinovich (of Sysinternals fame), thinks Rust should be the non-GC language of choice moving forward. https://twitter.com/markrussinovich/status/15719951172335042...

[deleted]

Re: The pool of talented C++ developers is running dry

#593

Earlier quoted context omitted.

I wouldn't put much stock into such starter templates, the developer who put them together has a goal and priorities that are not yours. QT tends to be particularly painful outside of QTCreator so I also wouldn't use that as a general knock against C++. having said that, C++ build times are slow due to both the #include mechanism and templates. The C++ modules coming will help deal with the #include mechanism and tem…

C++ modules has been promised for a long time, I wouldn't hold my breath on it coming anytime soon. As for build times, it is sadly very easy in C++ to have long build times. Avoiding it takes careful work, knowing when and what to include, when to forward-declare instead, and always maintaining includes as requirements change, etc. There's nothing to make that process any easier or automatic, which is very frustrati…

I was under the impression C++ Modules were accepted in C++20, although I'm not sure how complete the implementations are.

But yes, C++ build times are why I'm not a fan of header-only libraries, especially ones that have templating in them.

Re: The pool of talented C++ developers is running dry

#594
post #411
post #299

Earlier quoted context omitted.

One could learn in C++ using a variety of methods… including the ignore memory management variety. The question is why? For a student learning dfs for the first time or hash tables/queues etc. python will be much easier to learn. Java/rust/go will likewise be easier if you want to talk about types.

Java and Python's notions of type safety are completely brain damaged. I can't imagine how things would have gone if I'd learnt them as first languages. Rust, C and C++ get that better, in my opinion (you have to consciously choose to write type safe code in two of those languages, but at least it is possible in all three). Go's thread safety is way behind Rust's. meh.

I would argue C++ type system is superior to even C# and I'm a huge fan of C#.

But more to the point, people claim it's somehow harder in C++ to learn programming so either I'm super smart or they're wrong.

Re: The pool of talented C++ developers is running dry

#595
post #209

I’ll offer a perspective unrelated to pay: It’s a pain to start learning C++, and even after you do, older devs will roast the hell out of your code because your book/tutorials of choice forgot to mention a crucial (in their opinion) feature that you absolutely should/shouldn’t use! Not to mention you’ve only programmed on Mac/Linux so far & windows is totally different, has a different compiler, different ways to in…

As a C++ enjoyer I would 100% have learned Rust if it was around when I started... just for Cargo alone. Problem is now I've already done my time in the Makefile trenches there's little incentive in me re-learning another systems lang and having to compete with lots of smarter people, with more Rust exp, for jobs whilst giving up all my arcane knowledge of CMake and friends. Rust being popular atm is great for C++ if…

[deleted]

Re: The pool of talented C++ developers is running dry

#596

As someone who has been painfully self-teaching C++ for the last ~1.5 years on and on, these are my hangups: - The features that make C++ decent are often found in C++ 20/23, for which there are woefully few resources - Code taking advantage of coroutines and generators isn't commonplace yet, rare to find examples - C++ 20 concepts are a near mirror copy of Rust Traits and enable composition that's an alternative to…

Let's add the fact that no IDE right now fully supports C++ 20. Visual Studio comes closest, but for example modules still don't really work well.

Re: The pool of talented C++ developers is running dry

#598
post #209

I’ll offer a perspective unrelated to pay: It’s a pain to start learning C++, and even after you do, older devs will roast the hell out of your code because your book/tutorials of choice forgot to mention a crucial (in their opinion) feature that you absolutely should/shouldn’t use! Not to mention you’ve only programmed on Mac/Linux so far & windows is totally different, has a different compiler, different ways to in…

As a C++ enjoyer I would 100% have learned Rust if it was around when I started... just for Cargo alone. Problem is now I've already done my time in the Makefile trenches there's little incentive in me re-learning another systems lang and having to compete with lots of smarter people, with more Rust exp, for jobs whilst giving up all my arcane knowledge of CMake and friends. Rust being popular atm is great for C++ if…

I did my time in the Makefile trenches, too. I'm happy that I've learned other languages. There will always be smarter people than you, but you will bring your particular knowledge and do new things. Keep on learning!

Re: The pool of talented C++ developers is running dry

#599
post #232
post #9

Because Python pays more. Or Javascript. Or Ruby. More demand, more salary. Apart from finance, pay is lower than web languages. And finance is small. Embedded systems programming, that also uses the language, pays 30% less than web jobs from my last job hunting period. Employees may be leaving the embedded space (and C++) for web tech because of this. This is the feeling I get from my local job market (western Europ…

It's also the companies that use C++ in my market (Embedded, Germany): They are either "old" industries (cars, car-parts, industrial machines, military equipment, embedded stuff) or consultancies working for these companies. Very few of them have any real flexibility nor do they care about their employees' wishes much. I have been looking for a 20h/week remote job (I have 5+ YOE) in this field for a few months and ba…

Sounds like a completely different world from where I work in Cologne. We're having trouble finding good Java developers, so we're basically dropping requirements left and right. We'll even interview people without a resume and we're far more flexible on remote work than we are in the rest of the company.

Re: The pool of talented C++ developers is running dry

#600

Earlier quoted context omitted.

If people think C++ is hard to learn and attracts opinionated people boy are they in for a surprise when they start using Rust.

Learning rust is like cycling over 2 big hills. It’s exhausting and painful if you’re in any way out of shape. Learning C++ is like cycling from SF to LA. It starts easy enough and every day you’re making a lot of satisfying progress. But you have so far to go because of all the features and quirks of the language. It’s probably easier to get started learning C++. But it’s also much faster to finish learning rust and…

You forgot to mention that someone mined parts of the roads from SF to LA.
Post reply on HN