Created: 2023-01-12 21:59

References:

DIY programming / Programming, means to an end or the end on itself?

The food industry can serve as a fitting analogy for software development and technology.

There’s the professional production of food in restaurants by chefs and there’s the cooking at home. Both serve different purposes.

One goes to a restaurant to have an nice experience and eat something that somebody else specializes in cooking, or for the convenience of not having to cook for yourself.

However, we wouldn’t want to always have to go to a restaurant to eat. It’s nice to be able to cook at home. It s usually cheaper, it is relaxing and rewarding.

People don’t only learn to cook so they can become chefs. Some do! But many more people learn to cook so they can eat better, or more affordably. Because they want to carry on a tradition. Sometimes they learn because they’re bored! Or even because — get this — they love spending time with the person who’s teaching them. The list of reasons to “learn to cook” overflows, and only a handful have anything to do with the marketplace. This feels natural; anyone who has ever, like … eaten a meal … of any kind … recognizes that cooking is totally tangled up with domesticity and curiosity, health and love.

In a world where people only consumed food prepared by cooks and chefs in restaurants, it would be a very strange thing to suggest to somebody to learn to cook a meal at home.

That’s exactly the case with software development today. Most people learn to do it as a profession and those that don’t write software for a living do not delve into learning how to program.