by Dwayne Phillips
Most computer programmers and builders of systems see ourselves as being helpful to the people who use the things we build. Beware, as most users of the things we build see us as interfering in their lives. This situation applies to must people in the world who see themselves as helpful (consider, as an example, “public servants” a.k.a. politicians).
There it was again. Yet another product that promised the ability to create great applications for a computer. You didn’t need any training as a computer programmer. No, this product merely required your great idea plus the ability to draw a few boxes, circles, and lines and then type a few words. Voila – a great application for your home, business, or to make you millions of dollars.
I have seen these for years. Some of them do make “computer programming” easier. Some of them allow people with no training in programming to “write” programs that do run on computers. A few of these products have made millions of dollars, but not for the non-programmers writing programs. No the people making the millions were the ones who created the product with all the promises.
There is something about these products that have great appeal. Well, let me rephrase that, there is something about what these products promise to replace that has great appeal. These products promise to rid the earth of the professional programmer. Ooops, I was once a professional programmer and still fancy myself as someone who can design programs.
Why would anyone want to rid the earth of me and my kind? We are perfectly logical people who only want the best for those who use programs. Pity those poor souls who, unlike me and my kind, cannot write programs themselves. But those poor souls are blessed with me and my kind. Me and my kind will take care of them. Me and my kind will write their programs for them. Me and my kind are benvolent. What could be wrong with the presence of me and my kind?
It seems that the poor souls of the world don’t really care for me and my kind and our benevolence.
There are several problems that follow benevolent people like me and my kind. The receivers of benevolence seem to tire quickly of me and my kind. Our benevolent attitude usually comes across as arrogance instead of benevolence. How could that be? Don’t the poor souls understand the good intentions of me and my kind? The answer in a word is NO.
Wise men and women have long known one little thing about people:
attempts to help are usually interpreted as attempts to interfere.
Stated another way:
benevolence is usually interpreted as arrogance.
But, but, but…
No “buts” about it fellow programmers and designers of software. The poor souls who are not “blessed,” or is it “cursed?”, with the logic and math and science and just plain smarts needed to write computer programs are not happy with us. They have never been happy with us. They have merely tolerated us as a necessary evil. If they can only find that magic program that allows non-programmers to be programmers, they WILL rid the earth of us.
There are several options (we logical types always can list options):
- Learn a new trade as this one will disappear.
- Learn how to be less interfering and arrogant.
I don’t know which option will be easier for us.
Oh, and by the way, this helpful-interfering and benevolent-arrogant thing is not confined only to programming computers. It also exists in all fields of endeavor. So, if you find yourself always being benevolently helpful to others, most of the people of the world may see you as an arrogant interferer. Beware as you may have the same fate as me and my kind.
1 response so far ↓
1 Brian Crook // Dec 31, 2009 at 5:59 pm
This triggers three random thoughts.
1. Each new programming language (and IDE) has been touted as enabling folks to write their own programs, thus obsoleting programmers. Trouble is, it still isn’t easy, and you have to learn quite a bit more than you need or want to know (both about the programming language and about organizing your thoughts) in order to write that first useful program. And most non-programmers don’t have the time or inclination to learn.
2. Few people have a rigorous understanding of the data they work with, filling the gaps with hunches and arbitrary folklore. Programmers must have a rigorous understanding to make programs work at all, and often impose rigor in a way that offends their clients. Also this lack of rigor inspires a certain level of contempt, and that rubs off.
3. Our friend, Jerry Weinberg, cautions us against “inflicting help”. In the situations we’re considering here, it’s all too easy to get way ahead of clients’ perception of their needs, and start offering or simply implementing solutions to problems they haven’t been aware of. Jerry’s prescription is to narrow down requirements to what we know is doable, and which the client actually wants. One little task at a time.
Leave a Comment