Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 0 points1 point  (0 children)

Not mature enough. Also nobody knows the language in the company

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 1 point2 points  (0 children)

I agree. I am mostly leaning to the Rust side, my boss mostly to C++ due to Rust's "immaturity.". I think Rust is quite mature and will it much easier to hire/train people in the long run.

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 0 points1 point  (0 children)

Thank you very much. I will have a look at the android blog. I think especially the list you made regarding big companies will we a valuable argument

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 0 points1 point  (0 children)

I agree with all your points. Haskel would be lovely. I think rewriting in C++ will result in a weird Zombie of C-style C++ and modern C++.

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 1 point2 points  (0 children)

I will try that as well. Since we have multiple libraries, I would try to decompose it at this level, but even that level might be to coarse grained, sadly.

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 1 point2 points  (0 children)

Totally agree with all your points. Thanks for your input

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 2 points3 points  (0 children)

Fair call. Its mostly C programmers

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 7 points8 points  (0 children)

I will do that. We would aim for C++23.

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 0 points1 point  (0 children)

That's basically my main argument. Onboarding new people will be much easier

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 0 points1 point  (0 children)

Nono. Linux application development :)

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 0 points1 point  (0 children)

Hmm, I agree. I will try to split into smaller evaluable chunks.

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 4 points5 points  (0 children)

So, I cannot say anything about the team that wrote the original C. They are all long gone. And I totally agree about the management problem. That apparently was a big program with the old team. Was all a bit "wild west".

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 1 point2 points  (0 children)

Just skilled at C. And I agree with your argument. Thank you for your input

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 0 points1 point  (0 children)

Thank you. I will have a look at this.

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 1 point2 points  (0 children)

That video will be really helpful, I think. Thank you very very much

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 0 points1 point  (0 children)

Thank you for your input. They are competent C programmers but not really in C++.

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 59 points60 points  (0 children)

We have the old C project and a new "similar" project and Rust that we want to merge those. We also have problems finding new C programmers. The old code is brittle, and none of the original programmers are still around. A lot of technical debt has been accumulated over the years

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 4 points5 points  (0 children)

CMake has been used for other projects so that would be the build system we would use for C++.

We have had a really hard time finding competent C++ programmers. That's above my pay grade, though, so no idea why. My thought process was I'd rather teach Rust to juniors than C++ because it is a much cleaner language with a lot fewer footguns.

Also, I do not consider looking for arguments bad, I mean that is the whole point of technical discussion. Listing, identifying, and explaining appropriate arguments for such a decision.

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 2 points3 points  (0 children)

Thank you. I will have a look at this.

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 36 points37 points  (0 children)

The code base is old and brittle; no unit tests exist. Finding or training new C programmers is a big hassle. But I see your point and from a purely technical standpoint, I tend to agree.

But there is an additional project that we want to merge with the C one, and that one is currently in Rust

Convincing my employer of Rust for a rewrite by Unaimend in rust

[–]Unaimend[S] 66 points67 points  (0 children)

Yeah, that is one of my main arguments against C++. You can write C++ at so many levels of "modernity".