Real developers only use cat >> <file> to edit, and start from scratch if they make a mistake.
I remember stumbling on to them in my first job and thinking an very much appreciating their power over having to write a small program to iterate through an arbitrary # of files to do something... and another small program if I wanted to do something slightly different, etc.