ReFactoring: Kill Your Darlings
In software design, when you find yourself feeling particularly proud of a neat little bit of design or code, stop and ask yourself how someone who didn't give birth to it will regard it. If it turns out to be overwrought or too slick for the need, you should probably kill your darling and replace it with an ordinary solution that others can actually use, and not just marvel at. Darlings are sometimes characterized as being "ever so clever." For an example, the phrase "ever so clever" is ever so clever.
Notes:
A good principle in software design, related to egoless programming, where developers don't get personally attached to their code, making it easier to cut for more elegant solutions
Folksonomies: programming refactoring
Taxonomies:
/society/sex (0.514471)
/art and entertainment/music (0.420645)
/technology and computing/internet technology/web search (0.394644)
Keywords:
neat little bit (0.960697 (positive:0.350814)), software design (0.820656 (positive:0.403389)), good principle (0.692843 (positive:0.255624)), elegant solutions (0.685227 (positive:0.551154)), egoless programming (0.668973 (neutral:0.000000)), ordinary solution (0.626938 (neutral:0.000000)), Darlings (0.500049 (positive:0.255624)), code (0.389661 (positive:0.350814)), darling (0.320053 (neutral:0.000000)), phrase (0.316754 (neutral:0.000000)), developers (0.304908 (neutral:0.000000)), example (0.304063 (neutral:0.000000)), birth (0.300784 (neutral:0.000000))
Concepts:
Software engineering (0.906586): dbpedia | freebase | opencyc
Computer program (0.878648): dbpedia | freebase
Software development process (0.799852): dbpedia | freebase | yago
English-language films (0.776520): dbpedia
Programmer (0.766725): dbpedia | freebase | opencyc
Debut albums (0.763936): dbpedia
Solution (0.708917): dbpedia | freebase | opencyc
Childbirth (0.691662): dbpedia | freebase
Triples
Rewriting and Refactoring Have the Same Principle
ReWriting Principle: Kill Your Darlings > Similarity > ReFactoring: Kill Your DarlingsBeing willing to cut your favorite passages and your favorite programming solutions are an important part of both rewriting prose and refactoring code.
The "Kill Your Darlings" Principle in Computer Science
ReFactoring: Kill Your Darlings > Similarity > \"Kill Your Darlings\" in Computer ScienceGood programming means killing ideas that are too clever for the sake of being clever, and good computer science means killing code, frameworks, and languages in order to free up space for new ideas and inventions.