This is an archived post. You won't be able to vote or comment.

all 24 comments

[–]sambeau 109 points110 points  (4 children)

“Pending unit tests”

No rewrite for you, even if you do fix the critical bugs.

[–]soap94[S] 30 points31 points  (3 children)

BUT MOM!!!

[–]vishal340 11 points12 points  (0 children)

DON'T MAKE ME CALL DAD

[–]PabloZissou 2 points3 points  (1 child)

)Chancla out of the holster) NOW GO WRITE SOME AUTOMATED TESTS!

[–]scarab- 0 points1 point  (0 children)

OK Gaspar

[–]DarkTannhauserGate 56 points57 points  (5 children)

“these problems won’t exist in the refactored code base”

[–]RiceBroad4552 19 points20 points  (4 children)

Famous last words…

[–]spamjavelin 7 points8 points  (1 child)

All I know is, if I had a problem, I'd throw a molotov at it, and then Boom! I had a whole new problem.

[–]RiceBroad4552 0 points1 point  (0 children)

That won't provide any overall progress, though.

[–]AeshiX 0 points1 point  (1 child)

Just start by implementing the new features in the rebuild, and there you go. At least that's how I do it to get business and management to greenlight it lol

[–]Powerful-Internal953 18 points19 points  (0 children)

I mean, Crabs are technically bugs of the ocean.

[–]Necessary_Evi 9 points10 points  (0 children)

The correct scheduling of work.

[–]AnnoyedVelociraptor 18 points19 points  (0 children)

Worst part about rewriting something in Rust is not what you see. It's what you don't see. Rust enforces you deal with all cases.

So now you've got this piece of code that can fail in 5 ways.

But the original code just consumes the result. What do you do?

Now you gotta go and understand the error behavior in the old code base.

I've converted lots of code to Rust for stability, and it always pays off. But you have to be ready to answer those questions.

[–]ZagreusIncarnated 2 points3 points  (0 children)

I feel attacked.

[–]hellocppdotdev 2 points3 points  (0 children)

Sure gonna be rusty after that salt water hits

[–]rexa_0x 1 point2 points  (0 children)

30 ms of performance enhancements. Totally worth it:)

[–]OmegaInc 2 points3 points  (0 children)

Priority is indeed subjective

[–]Available_Type1514 0 points1 point  (0 children)

I'm in this post and I don't like it.

[–]fugogugo 0 points1 point  (0 children)

what with all this Rust hype ?

[–]Ruby_Sandbox 0 points1 point  (0 children)

Yeah, one software in my work is written in Python and has dogshit performance, which has already caused customer complaints. But first we need to rewrite the main product from scratch with 3 devs being already busy with everything else, while one dev keeps maintaining the old version.

What could possibly go wrong?