Live data from Hacker News

The pool of talented C++ developers is running dry

efinancialcareers.com

481–490 of 869 posts

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

#481

Earlier quoted context omitted.

Slightly off topic but imagine an induction cooker with the original iPod control wheel as it's power control. We opted for a gas hob when we installed our kitchen. Mostly because I like the controllability when cooking. Obviously it's a nightmare for health and the environment but man it makes cooking easier.

Touch controls on induction cooktops/hobs are almost ubiquitous, and they have extremely poor usability in my experience. Liquids cause problems, and you need to be very careful not to move a pan or any utensils over the controls, or brush against them while concentrating on cooking. Apart from the other awful usability issues with the UI or icons. I did a survey of all the cooktops/hobs I could find in my city, look…

The ability to clean the cooker is the only advantage of touch controls. I don't know how well the original iPod touch wheel would hold up in that environment but from a usability point of view it was excellent.

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

#482

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…

"IE" ?

Yeah -- I thought it meant something along the lines of "for example" or "one instance being"?

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

#483

Earlier quoted context omitted.

I left my last job which was entirely C++ because of lower wages compared to the industry and low upside in wage growth potential. While I enjoy the lower level nature of that kind of work why stay somewhere solving hard C++ problems when I can go do some easier web backend stuff somewhere else making 15% more or become a kubernetes expert and break into new pay band all together?

>solving hard C++ problems when I can go do some easier web backend stuff As guy who worked with both C++ and backend I would assume you don't have much experience if you say one is harder than the other. Different beasts, different problems to solve, complexity lies in different parts.

Why would you dismiss my comment on my presumed experience? Seems a bit arrogant. Did I say all backend problems are easier or that all C++ problems are harder? No, I merely stated why work on hard C++ problems for less pay when one can work on easier backend problems for more pay.

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

#484
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…

> Because Python pays more. In the extremely underpaid start-up world? C, Java, C++, Kotlin, Swift, etc - IIUC pay MUCH better and are more in demand at companies where you really make good money as an engineer.

In the past few years I’ve discussed salaries with dozens of companies as a staff level IC. C++ companies pay significantly less even if the work is far more specialized and challenging. The real money is in “Cloud + python/golang”.

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

#485
post #346

Earlier quoted context omitted.

The code is quite secure, but the process and company are... typical processes and company people. Paper ballots and physical boxes are more secure if good practices are followed. At one point I was tasked with shuffling the data layout on disk in real time to mitigate de-anonymization attacks. Security was real concern. Crypto everywhere. The voted ballots were encrypted with keys generated and delivered immediately…

I am from Brazil. If you saw the news, the current president that just lost elections, been insisting for years, that elections here are untrustworthy. Reason is simple: electronic voting machines with no logging, paper trail or anything. And the common people doesn't have permission to do penetration tests or read the entire source. All of it is proprietary and secretive with no public testing basically. For years t…

Most American voting machines print a ballot an let the voter review it, but not all. There have been some jurisdictions that have given up on that for reasons that seem bad and vague to me.

I think mandating that voting machines be open source is a good idea to me. Here in the US we have 3rd party auditing companies. Various US State and the Federal Government all have different testing/auditing labs that they have certified they trust. Then each voting machine company has to convince them that it is good to sell to the governments that trust them. The final build that the lab signs off on gets a cryptographic signature and the poll workers are supposed to check that it matches what they are given to run on their machines just before the setup their machines for voting.

Do Brazil have anything similar with auditors or inspectors? Or at least some crypto connecting the vendor to the polling locations?

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

#486

Earlier quoted context omitted.

I'm always conflicted with this. My gut says any new student should start with an interpreted language like Python or JS/TypeScript. As that gets you to running code, and core concepts like variables, loops and if statements in little to no time. However, there is value in learning some of the under the hood concepts such as pointers, structs, memory layout, endianess, pass by reference, compilers etc. I don't think…

C and C++ are still horrible languages even if you want to teach those concepts, because of how many footguns they have. That's why Pascal was so popular as a teaching language, historically speaking - it still has pointers and other stuff you need for manual memory management, but it's much simpler and more regular both syntactically and semantically.

no, it has exactly the same issues as c and c++, and some of its own, such as arrays of different sizes being different types. guess why it isn't used anymore

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

#487

Earlier quoted context omitted.

The mere idea of waiting for a kitchen appliance to "boot up" makes me angry. How did we normalize this madness? Telephones, TVs, car engine instruments, HVAC thermostats, why can't any of these be instant-on like in the 80s? Apply power and it starts working is a basic design principle.

Meh. Bootup time is irrelevant if the thing is always on. Many "dumb" microwaves won't let you use them until you set the clock after a power loss which creates an artificial "boot up time" of 5-120 seconds (depending on how complicated the procedure is; I remember microwaves that had absolutely obtuse clock-setting procedures).

In the case of this cooktop, it was not always on. You have to boot it up every time you go to use it.

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

#488
post #413
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 someone who has been writing C++ at Google, this exactly. Despite all the tooling, guidelines and "internal magic", C++ is still an abomination. And no it has nothing to do with memory management, I actually do like C. I love how Eric Raymond describes it as "anti-compact", because, well, it really is. C++ as a whole should be deprecated -- and no new projects should use C++ (unless for some very odd and specific…

>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.

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

#489

Earlier quoted context omitted.

What can PHP do that other less vilified languages can't? What is its "niche"?

Please, everyone is supposed to be slagging C++ (and me), here. I'm sure there will be rich opportunities to dis PHP, in other threads.

You are right, my apologies. It was just so surprising a mention I couldn't stop myself.

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

#490

Earlier quoted context omitted.

"IE" ?

Yeah -- I thought it meant something along the lines of "for example" or "one instance being"?

Usually people use the lower case with dots, i.e. `i.e.`. Also one usually uses `e.g.` in those situations with `i.e` reserved for "that is". To illustrate:

"We had to come up with some way to cut our burn rate, e.g. lay off (i.e. fire) some of our workforce; cut facilities (i.e. get out of our leases),..."

As an aside, I wish there were "minor aside" conversations that wouldn't pollute the main thread so I could respond without occupying massive comment-space.

Post reply on HN