However, in the mobile world, from my experience, hiring good senior mobile engineers means they come with a specific skillsets already. They can take a view, animate it a certain way, and then respond to touches. Those are things that are entirely platform specific domains. So they will come from Swift/Kotlin or ObjC/Java backgrounds. The ultimate problem here is those same engineers are typically turned off by C++ nor have the desire to learn it.
You can throw C++ engineers at the problem, but they will most likely be turned off by having to solve animation timing issues or custom navigation stack designs.
If you have a venn diagram of the two sets, there would probably be very little overlap.
There are plenty of C++ devs out there (myself among them) that will jump ship for the right offer.
It's not just familiarity with the language, it's being willing and able to develop within the mobile development context, which as stated in the article is a whole other beast
Google and Apple keep piling feature on top, so mobile has the 2nd biggest churn after front-end. Recently even the preferred programming language changed on both platforms.
It's under pressure from web-applications, which although of inferior quality are easier to develop.
Most apps aren't anything special and require mostly UI and UI framework skills (animations, platform-specific APIs, etc).
Compilation was incredibly slow. Maybe when C++ modules finally arrive things will improve.
I like the language, but the compiler is painful.
https://github.com/melling/scala
I actually like the language but stopped using it because it was so slow to compile. I hear that it has gotten better so I’ve been revisiting it.
Worksheets seem to help with development.
The biggest winner, in my experience, was reducing dependencies in headers. Use forword declarations, etc. Precompiled headers helped a lot on Windows, but less so on Linux for the same code (but it still helped).
Incremental builds were fairly snappy, a minute or two (pretty good for a large C++ project).
I don't think that's necessarily the case. C++'s famed backwards compatibility, source of so many issues, is also a fabulous strength. There's nothing stopping one from writing C++03, while gradually adapting C++11 and beyond as time/circumstances permit (which is what I'm doing at my job, maintaining a massive legacy codebase while stymied by slow uptake on newer compilers by my corporate overlords...)
> It's no wonder 'senior' devs prefer to use plain C
Not this senior (in years, at least :)) dev. I've tasted RAII and I can't go back...
I find the '14 and '17 additions vastly improve C++ and in fact added things that I had just come to appreciate in Swift. So don't be too put off; learning the new stuff will help you if you need to adopt a more-recent language too.