Rediscovering What Once Was Taught: Why Software Goes the Wrong Way
March 27, 2020
DarkCyber spotted a link to an essay called “The Expert Blind Spot In Software Development.” The write up states:
I stumbled upon the theory of the expert blind spot…
What’s the blind spot? DarkCyber knows that Microsoft cannot update Windows 10 without creating problems for some users. Google cannot update Chrome without wizards in the office. Apple cannot update the iPhone without breaking things like the hot spot function. In fact, software pretty much is one set of things that don’t work. Some large, some small—Most are friction, costing money, slowing down actions.
Modern software development explains why Amazon, Google, IBM, and Microsoft make their cloud technologies complex and opaque. Increasing friction generates revenue, not happy users. The image is from Go Physics’ depiction of entropy.
The article explains that beginners operated with the “illusion of competence.” What’s omitted is that institutional pressure forces beginners to operate as if they were chock full of information germane to a task. Managers don’t want to manage, and most managers know that their responsibilities exceed their competence. But that’s the way the world works: Everyone is an expert, and the leaders lead, or that’s the theory in many organizations. The managerial forces create Brownian motion in which those creating software operate like sailboats, each generally heading in some direction: Just with poorly defined rules of the road.
The write up works through an interesting explanation of how “memory” works. But the core of the essay is that “expert blind spots” exist, and those blind spots are problems. The article states:
The best way to be aware of somebody’s level of knowledge in some precise areas is simply to speak with him. In my experience, informal, relaxed conversations, around a cup of coffee, a tea or whatever you like, is the best way to do so.
The idea is that interaction and talking fill in some of the knowledge gaps between those who work together to achieve a goal. There are a number of tips; for example:
- Map your schemata which seems to edge close to the idea of taking notes
- Write a journal which seems to be taking notes, just on a time centric trajectory
- Writing a blog, which seems to be converting the two previous ideas into a coherent essay.
What’s quite interesting about this write up is that the core idea was well stated in “On a Certain Blindness in Human Beings,” an essay / lecture by William James, yeah, the novelist’s brother.
James wrote:
And now what is the result of all these considerations and quotations? It is negative in one sense, but positive in another. It absolutely forbids us to be forward in pronouncing on the meaninglessness of forms of existence other than our own; and it commands us to tolerate, respect, and indulge those whom we see harmlessly interested and happy in their own ways, however unintelligible these may be to us. Hands off: neither the whole of truth nor the whole of good is revealed to any single observer, although each observer gains a partial superiority of insight from the peculiar position in which he stands. Even prisons and sick-rooms have their special revelations. It is enough to ask of each of us that he should be faithful to his own opportunities and make the most of his own blessings, without presuming to regulate the rest of the vast field.
Several observations:
- A certain blindness defines the human condition
- Technical people are rediscovering why their software sucks but lack an pre-conditioning or early alert about why their work product is half baked or just good enough
- A flawed mechanism for creating the fuel for the 21st century guarantees that the friction will wear down the parts; that is, software becomes more and more of a problem for its users.
What’s the fix? On one hand, there is no fix. On the other, a more comprehensive education might reduce the frustration and time consuming rediscovery of what’s been known for many years.
Now about those new nVidia drivers which cause crashes when a cursor is repositioned…
Stephen E Arnold, March 27, 2020