this post was submitted on 01 Sep 2023
337 points (96.2% liked)

Programming

17503 readers
7 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 12 points 1 year ago (1 children)

Write the whole thing, and only then, scrap it and rewrite it. This way you actually have a good understanding of the entire implementation when you are rewriting. When I refractor while writing my draft I will slow myself down and trip over myself, I'll be way more likely to rewrite something I've already rewritten.

Sure there is a limit to the size of projects this can work for, but even for massive projects they can still be broken into decently sized chunks. I'm just advocating for not rewriting function A as soon as you finish function B.

[โ€“] [email protected] 1 points 1 year ago

Write the whole thing, and only then, scrap it and rewrite it.

Exactly. And that's the part a lot of folks don't understand about writing tests. If we're not sure an interface will survive into the rewrite, it probably doesn't belong in the test suite.

And the rewrite can be very fast, if we tested the right things.