I deleted my program, actually C++ code, and am re-writing it in a different way.

Especially, I am updating the engine of my code.

What would be the best word or verb to express what I am doing?

  • remake

  • renovate

  • rebuild

  • redesign

  • reconstruct

  • Since you deleted it, and then rewrote, I would omit "renovate". The other three options seem okay. – CowperKettle May 31 '16 at 6:20
  • @CowperKettle Would "renovate" be okay if I deleted some parts of my code? – Han Aug 15 '16 at 15:25

There's a domain-specific term Refactor which you may be looking for.


Improving a computer program by reorganising its internal structure without altering its external behaviour.

For example:-

"The original program grew out of a messy prototype, so I spent some time refactoring and now it is easier to maintain."

| improve this answer | |

As per me, rebuild will be the best verb to use, and rewrote itself seems like a good option.

I had to rebuild the C++ program I was working on.


I rewrote the C++ program code from scratch.

Remake also sound correct but somehow doesn't sound as good as rebuild to me, in this case.

I remade the C++ program.

Renovated and redesigned do not seem appropriate to me.

Renovate is more popularly used for physical buildings.

For example,

I had to renovate my house after the earthquake.

Redesign seem appropriate when the 'design' of something is being considered, which is not the case here.

I redesigned the software because it was not looking very user-friendly.

| improve this answer | |
  • "Building" a program has a very definite meaning: it means executing your compiler program on the source code to produce the executable. Developers can do it many times an hour, and it often takes mere seconds (or hours for big projects...) So "rebuild" is a throw-away word in the industry (unless it's a big project!) – John Burger Aug 16 '16 at 9:03

There are three things you might have changed:

  1. The outward behaviour. For example the user interface might now be radically different
  2. The internal design. Perhaps you used a different approach to the overall structure or you used a different Framework or set of low-level libraries, or different algorithms to calculate the results.
  3. The actual code. In principle you might have used exactly the same algorithms, program structure etc. but simply wrote the code using different variable names.

It's pretty unlikely that you would have just done item 3; almost certainly the crucial part was the redesign. The fact that you chose to delete the entire code-base implies that this was a very fundamental change not just a simple refactoring or replacement of some low-level libraries.

I would make it clear that a new design was created. I think in this case you did not actually change the functionality. So:

We redesigned and reimplemented the application exploiting the xxxx framework.

Had you modified the actual functionality I would say:

The application has been completely redeveloped, with detailed analysis and function design preceding the technical redesign and reimplementation.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.