On Fruit Trees and Code Bases

A fruit tree planted in a nice sunny spot, given water and time will grow.

It may not grow how you want or expect it to, but grow it will.

Each branch of the tree does it’s job and sprouts new branches. All of them competing for sun, getting in each others way, and shooting off in unexpected directions.

The branches will grow so long they can’t support the weight of its own fruit. The tree will grow so tall you won’t even be able to reach the fruit.

To properly care for a fruit tree, it requires consistent pruning and maintenance, not just sun, soil, water, and air.

The amazing thing, a tree properly pruned will actually produce more fruit, even though it is smaller. The tree’s energy is not wasted on creating branches that won’t bear fruit or stretch itself too thin.

Do I even need to draw the parallels to software code bases?

My neglected fruit tree

Funny thing about the above tree. For several years it just produced apricots, then last year, another section of the tree started growing peaches.

Turns out it was two trees grafted together, just took the peaches longer to start fruiting.