
VxWorks now with C++17 and Rust support, alongside Ada and SPARK - pjmlp
https://www.windriver.com/news/press/pr.html?ID=22444
======
lxglv
Another thing that I'm really surprised about is the salary range for the C++
developers with RTOS experience. In case we compare this with frontend React
developers, then difference will be more than 50% (React guys will be paid
more). According to my understanding C++ development for projects that require
RTOS is much more demanding in terms of skill and corresponding experience. I
would also assume that there are much less developers with VxWorks experience:
within my region I may find around 40 people with VxWorks in their CV on the
job board against 1000 developers with React experience. I really hardly get
the economics of the modern IT job market.

~~~
pnako
Aside from the already mentioned supply/demand aspect, people working on
things like that tend to do so for an entire career, so might be willing to
accept a lower salary in exchange for stability.

The React developer will have to retrain and rebrand themselves as Bojombo
developers in 2 weeks and as Klazoum Framework ninjas in 2 years.

~~~
linuxlizard
You got me. I just started learning React and your comment freaked me out. Oh,
crap, I have to learn Bojombo now!?

------
seren
Details are a bit sparse, they likely support Rust only in RTP[0], not in
Kernel. If someone has a more technical resource, I am interested.

This is an important milestone, because this is a significant actor in the
embedded world, where suppliers are often rather conservative regarding
language/toolchains they provide, that is putting some of its weight behind
Rust.

[0] RTP are VxWorks Real Time Processes.

~~~
pnako
Considering it's mentioned alongside Python and Boost, it's most likely as a
userland process too.

------
jandeboevrie
Do we have any hn members who develop voor vxworks? If so could you please
describe how and what you do?

~~~
hatsubai
I am one of the OS developers for a military vehicle that utilizes vxWorks and
Linux. It's honestly no different than other OS work out there. Documentation
and help outside of WindRiver's official docs are more scarce, and open source
support is smaller, but grasping how an RTOS works vs a GPOS isn't any major
mental leap. If you can program in C and understand communication protocols
like i2c, UART, SPI, CAN, etc. then it's not terrible.

Right now, we are looking at moving away from vxWorks and onto a Yocto-built
Linux with the RT patches to the scheduler. From a requirements standpoint,
the RT patches meet our needs for "real time" since our timings require more
of a soft real time than a hard one. There's also way more support out there
for Linux, and I am also slightly biased in that I am more of a Linux guy than
a vxWorks guy simply due to familiarity and ease of troubleshooting.

This latest news with vxWorks is great, however. I actually sent this to
management because we are attempting to figure out what direction to take as
our current version is reaching EOL.

~~~
therealjumbo
>Right now, we are looking at moving away from vxWorks and onto a Yocto-built
Linux

This decision is probably out of your hands, but I'm happy to share a few
words of caution. I've been the yocto distro maintainer at a large firm for
about three years and I absolutely despise it. BMW released a slide deck about
their experience with yocto, and it was mostly "it sucks." I read that
recently and it matched my experience down to a t.

If you absolutely need third party commercial support, yocto is probably the
only game in town, but if you don't, I would highly recommend looking at nix
(which recently gained cross compile support) or buildroot.

I'm dead serious about avoiding yocto if at all possible, I've seen things I
wish I could unsee. But that sounds about right for a military project.

EDIT: I put my email into my profile if you want to chat about yocto more in
depth.

------
mastax
There have been a lot of changes to Rust's libstd recently for vxworks [0].
Expect it to be a bit buggy until Rust 1.42 or so.

[0]: [https://github.com/rust-
lang/rust/pulls?utf8=%E2%9C%93&q=is%...](https://github.com/rust-
lang/rust/pulls?utf8=%E2%9C%93&q=is%3Apr+author%3Abaoshanpang)

------
Pulletwee12549
This is huge for folks developing with VxWorks. And for rust adoption in
general.

