You know, the more I think about the world and the times we live in, the more attractive farming becomes. I could stand working outside all day instead of in a stuffy office listening to blabber all day.
Thanks for re-invigorating my desire to be a farmer yet again.
I truly enjoyed this post. I come from a long line of west Texas farmers and have always considered what I do to be very similar to cotton farming. Itās good to know that Iām not alone in this thinking.
One universal law for farmers and ranchers here in Texas is:
Leave the gate the way you found itā¦
This is one axiom that Iāve found true in programming as well when dealing with other peoples code. Anyway, thanks for the article.
First, let me say great post and this is a great blog!
The garden metaphor is a great example of how software development feels. The construction metaphor is extremely effective for communicating with people who depend on software but donāt understand development. I can only imagine the reaction working in a software company when explaining that the release will grow organically with different flowers and plants, and it will be beautiful but we wonāt know what worked and what didnāt until spring. Itās much easier to say the team is pouring cement and adding plumbing and soon weāll be ready to talk about painting walls and designing the entry way.
That said, Iād much rather work at the company where people saw software like a garden, and I do believe that a culture that supports creativity leads to better products. That might require a corporate culture change however (like how about not putting my release date in your financial projections so that I donāt impact the stock when I am just trying to make a better product). Let my garden grow!
I think this topic would make a great interview question for marketing and product management teams. Do you see developing software like growing a garden or building an office building and why?
OK, one last thought which you should put in the something to think about category. People like to walk in gardens and look at gardens, but they live in houses and work in buildings. If your software is something that people must rely on, then does the garden metaphor really work? I like the smell of plants and the colors and all, but I NEED the lights on and the roof to stay over my head and those aspects I can not leave up to the chance of organic growth.
Except that farmers donāt insult each other for failed crops or pick each other apart over dates and grammar. We need to find some parallel that has more of an āAssholeā factor to it.
Construction āfailsā for the same reason manufacturing does: people look at the wrong part of it. Both parallels work if you realise that the programming is like the design stage of construction or manufacturing, and that running the program is like actually building the house or manufacturing the object. Each run is a new result based on the design.
The building/manufacturing part of this so obviously canāt be like writing software: you canāt ārefactorā a building already ten stories high by entirely replacing the foundation. Software developers (good ones, anyway), do that kind of thing all the time.