Live data from Hacker News

The pool of talented C++ developers is running dry

efinancialcareers.com

861–869 of 869 posts

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

#861

Earlier quoted context omitted.

> I've even designed an analog hall effect keyboard PCB with integrated IR sensor, dual power regulators (to handle 95 ultra bright RGB LEDs), invented-by-me analog hall effect rotary encoders (incremental and absolute), and more. It wasn't rocket science. Sorry to burst your bubble... Glad you learned enough to do it and had fun with it. Yet, such PCB's are trivial to design. Heck, one could auto-route something lik…

Honestly all of that sounds like it maps pretty well to programming. I sometimes run little 30 minute programming workshops where I teach people enough of the basics that they can walk away with something they’ve made. Give a novice 3 months to go through an bootcamp and they can become a half useful programmer. But the “other half” of their knowledge will take a lifetime to learn. In just the last 2 weeks my job has…

> Honestly all of that sounds like it maps pretty well to programming.

Yes, definitely. And, BTW, this also means that lots of useful work can be done without necessarily having golden credentials.

Here's where I see a huge difference between hardware and software at scale (I have been doing so for 40 years): Hardware, again, at scale, represents a serious financial and technical commitment at the point of release. Software gives you the ability to release a minimum-viable-product that mostly works and issues fixes or updates as often as needed.

If we imagine a world where v1.0 of a piece of software must work 100% correct and have a useful service life of, say, ten or twenty years, we come close to the kind of commitment real electronics design requires. You have to get it right or the company is out of business. Not so with most software products, be it embedded, desktop, industrial or web.

If I go back to the late 80's, I remember releasing a small electronic product that gave us tons of problems. The design went through extensive testing --or so I thought-- and yet, contact with actual users managed to reveal problems. I had to accelerate the next-generation design, put it through more extensive testing and release it. We had to replace hundreds of the first generation units for free because we felt it did not represent what we wanted to deliver. This is where knowledge and experience can be invaluable.

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

#862
post #251

Earlier quoted context omitted.

Did they upload the recording to YouTube? I would like to listen to her.

It was try!Swift New York, back in 2017, or so. I don't think they published vids, but maybe. I'll have to go look at my badge, to see which one it is. https://www.tryswift.co [UPDATE] It was 2019. They have videos, but hers (and a few others) aren't there. [UPDATE 2] Found it. It isn't linked from the main site, but is on the YouTube playlist: https://www.youtube.com/watch?v=CZOVnlwWPZk It's a really good talk. I li…

Thanks. I watched it.

That was a lovely talk and changed my perspective on C++. My impression was that C++ is a ancient language with lots of footgun.

The talk reminds me of its value. C++ is still evolving. Improvements are introduced slower compared to other languages, but still, C++ is making progress and many found it pleasant to work with. It just need more time.

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

#863

Earlier quoted context omitted.

> glorified CRUD apps Why is API design/backend engineering the only software discipline that gets maligned like this? These are bread-and-butter operations. I don't mean to attack you, just noting that I never hear anyone talk about mobile development in the same way, for example.

A lot of CRUD app development feels like tedious, repetitive busy work. Data entry was a solved problem in COBOL if not earlier, it's not gotten any harder in the decades since, it's just gotten more tedious. There are generic data entry tools that solve the entire class of problems in that space. In web tooling there are things like Django's Admin app. In "the ancient world" there is Excel for good and bad and ugly.…

> In web tooling there are things like Django's Admin app.

Which is great - for creating custom admin panels easily. You can't use it as "generic app" you just turn on and it works, so someone has to do it.

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

#864
post #775

Earlier quoted context omitted.

If you take criticism of any activity you partake in as being "damned rude" and a violation of site T&C, then there'd never be any discussion at all. You are not your job, and prepare yourself for listening to honest criticism of the things you base your identity around or you will find it very difficult to learn and grow.

It was not the criticism that was damned rude. Criticize anything you like, or don't. What was rude and, frankly, hateful, was the call to demote or lay off all C++ programmers.

Apologies if it came as rude or hateful, that wasn't my intention.

Funny thing is I'm a C++ programmer myself right now as I mentioned :) Even if we decide to "deprecate" C++ today, Google alone would have large enough C++ codebase left to maintain for the next two generation of programmers.

So no, I don't think it means we should demote or fire all C++ programmers -- but at the same time I'd like to note that as a programmer no one should be married to a single language -- languages come and go.

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

#865

As a talented C++ developer... yes there is a dearth of talented C++ developers. I've been to several C++ conferences. Even there, many of the engineers end up learning "new" things that are IMO basic concepts that have been around for years. I recently went through a hiring phase for Senior C++ engineers and most of the applicants were familiar with old tech. It was really disheartening to me to realize how many "se…

To be fair and assume competence: A lot of C++ programmers have been burned by adopting the latest and greatest bling, then having to port it to some backwards platform that doesn't have a recent compiler. Many of us use the legacy stuff when possible, because we know it works, there are already robust third party libraries that interoperate with the legacy stuff, and it is more likely to be portable than std::omfgbb…

I find that argument funny, given that Rust can't be updated often enough before every other library breaks.

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

#866
post #173

As a talented C++ developer... yes there is a dearth of talented C++ developers. I've been to several C++ conferences. Even there, many of the engineers end up learning "new" things that are IMO basic concepts that have been around for years. I recently went through a hiring phase for Senior C++ engineers and most of the applicants were familiar with old tech. It was really disheartening to me to realize how many "se…

I've had the same experience in Java. Experienced engineers that are learning "new" Java even though those features came out years ago. I really think this will be the case for any language. Most people are not the HN type that are going to live and breath programming.

The ones on HN that actually work don't have the time to run after every few language feature either ;)

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

#867

Earlier quoted context omitted.

system programming is a tough and low reward path indeed, be it in c/c++ or whatever. embedded/EE is worse. unless you made into the big few(google,amazon,meta,apple,microsoft,...), salary will plummet by half in general, or even more.

This is true, trying to switch from FPGA's/RTL Design to something higher up the stack over the next few months for this reason. My employer does seem to have great difficulty hiring anyone with these skillsets but funnily enough, the salaries never seem to improve.

Physical design and logic design talent is actually _super_ in demand right now but you have to have real silicon experience for which FPGA can help you get.

Google/Apple/Nvidia/Qualcomm/Broadcom and gang are having problems retaining talent right now.

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

#868

Earlier quoted context omitted.

With fiat you KNOW you're getting poorer by the minute, but with crypto you have the hope you will earn more. Fwiw I have a grand total of 300€ "invested" (or "lost" if you're a pessimist) in crypto, so I'm not exactly a crypto fanatic.

The point of money is to be spent, not to hold it. You can't have an asset that's both good to hold over the short and long term. (I forget where this is stated.) That's because the point of an economic system is to trick other people into making food for you, and holding money instead of trading it obviously isn't going to lead to that.

Yep. A good currency is meant to have low volatility and an expected value in the future.

Confusing or conflating good currencies with investment assets is a common crypto evangelist move.

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

#869

Earlier quoted context omitted.

Could you tell me some differences that you see as significant between the C++ and C# type system? I can think of a few but they seem like compiler sugar only. For instance C# classes are treated as a &ClassName or std::shared (handled by reference transparently to the programmer). Otherwise I think that C, C++, C# have very very similar type systems. They don't have alternatives to dynamic dispatch (virtual / overri…

C++'s type system is both more consistent and more expressive. GC'd languages fall into roughly 2 categories. 1. those that are pure but lack strong primitives (Python, Ruby, et al), 2. those that bifurcate their type system and treat primitives as a special case (Java, C#, et al). 2 is done as a compromise for performance since they'll start making guarantees such as preferring stack allocation. This is the primary…

Fair points. I agree that having to memorize which types are arbitrarily treated as pointers in Python is a huge pain. Python also adds pain with the "default argument" issue.
Post reply on HN