Summary: Software Fashions

Software is a precise discipline. A single bit out of place can crash a program. It’s like math. Fashion is the exact opposite – skirts are short or long, you wear a tie or you don’t, whatever. It’s all opinions and taste, nothing objective about it. How could there be fashions in bit-driven, nerdy software? This is a summary of my writing on software fashions.


Here’s a survey of some current software fashions and a couple that have become standard practice.

Software people are, after all, people. People want to have status. One of the main ways to get status is to get identified with a fast-rising fashion trend and ride it.

The status-driven attraction of fashion is so powerful that software people will often go with the fashionable approach and ignore software methods that would achieve dramatically better results.

Other things that become fashions are OK ideas taken way beyond where they make sense. These fashions often appear repeatedly, usually with new names.

Another pattern is wild swings from one end of a spectrum to the other -- and back again. You'd better be on the right end of the spectrum or risk being "out of it!" In computer programs whether data is defined inside the program logic or outside of it is a decades-long example.

Computers and software are all about innovation -- so how could innovation itself be a fad? Well, for a few years, innovation was a fashion-forward as you could get. Until it faded back to its usual place.

Sometimes technical fashions are picked up by nontechnical people, who wildly promote the fashion without having clue about what the underlying technology is about, and therefore get it wrong. DLT (blockchain, the technology underlying cryptocurrencies) is an example of something that is promoted as a solution for problems for which it's not relevant.

And for problems which have existing solutions that are often thousands of times better.

It wasn’t so long ago that everyone was talking about Big Data:

Here’s an example of how the focus on fashion with Hadoop (a fashion-driven approach to Big Data) led to bad results.

Large bunches of data, shared computers (the cloud) and virtualization are things that have been around since the early days of computing, are still around and always will be. But for a period of time they were what fashion-forward people talked about.

How is it possible that fashion can play such a large role in software decision-making? It’s because evidence is rarely part of software decision-making.

In a broader sense, fashion rules in software because, in spite of the name, Computer Science is not a science.