Writing Is Rewriting

Among writers, this common saying represents the idea that ReWriting is the greater part of writing.

Our first draft of a text is rarely very clean. We often mash many ideas together in confusing lumps. ReWriting helps us to untangle these ideas; and to clearly see the points we are trying to make. ReWriting makes editing easier.

WritingIsRewriting is in no way meant to equate the two terms. However, among many programmers, the two terms are indeed considered equal. For example, when programmers say that they are "ReWriting" a program, they usually mean they are WritingCodeFromScratch.

The overloading of the word rewrite has left programmers without a word to represent the traditional meaning of ReWriting. Recently, the term ReFactoring emerged. ReFactoring is used throughout Wiki synonymously with ReWriting in the traditional sense. See RefactorByMerging, HumbleRefactorer, CanYouRefactoraLiveThread, DeleteDontRefactor, and so on.

In RefactoringImprovingTheDesignOfExistingCode, MartinFowler had this to say on the origins of the term:

I've not succeeded in pinning down the real birth of the term refactoring. Good programmers certainly have spent at least some time cleaning up their code. They do this because they have learned that clean code is easier to change than complex and messy code, and good programmers know that they rarely write clean code the first time around.


See ReWriting, ReFactoring, RewritingIsNotRefactoring


EditText of this page (last edited April 3, 2004) or FindPage with title or text search