Smart Spiritual Software

From AardRock Wiki
Revision as of 13:46, 27 August 2007 by Martien (talk | contribs) (Added pond photo by We Are CS)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

photo (cc) We Are CS

Computers are dumb. But they are very very fast at being dumb. And they are constantly getting better at it. It is time that we put this sheer inexhaustable power to improve our quality of live.

The software that we use daily desperately needs to get smarter. When software is better able to handle the meaning (semantics) of data, and thus makes it smarter, she can better understand us and adapt itself more appropriately to our needs, rather than the other way around. At the same time, smarter software improves the communication between people. This leads to more mutual understanding, and this, in turn, to a better world.

When software is better in handling the meaning of data, it gains the potential to communicate better within it self as well. One piece of software can understand the other. This leads to more meaningful information and a software layer that can serve us even better.

Don't make me think!

The bottom-line of good software is powerfully summarized by Steve Krug's "Don't make me think!" It's overarching principle is the ultimate test to software's usefulness. It means that a system with a human touch must be self-explaining. Crystal clear. Transparent. As a user, I must be able to grasp the system—it's purpose and how to use it. Effortlessly. Time and time again.

This resonates with Donald Norman's perceived affordance and emotional design. Norman uses the computer screen as an example. The screen has a "perceived affordance" to point at things. But pointing at things on the screen only makes sense with a touch screen. All PDAs have touch screen though, and its users use it without giving it a second thought. Pointing at things on a normal computer screen does have its use with multiple people looking at the same screen of course.

ICT: the IQ-EQ disharmony

Information Communication Technology is predominantly crafted by highly intelligent people. Individuals with a high IQ and degrees in computer science. And that shows. Its EQ, Emotional Intelligence, is seriously missing. The 'C' of communication—that what needs to be in common—lacks. IQ and EQ are often in total and utter unbalance. That's why the late Douglas Adams puns "Technology is something does note work yet."

We might get somewhere when we grow IT systems that integrate elements from Stephen Covey's "7 Habits for Highly Effective People" right from the start. Adding "Be proactive" and "'Seek first to understand, then to be understood are important big steps in the right direction. As a developer or designer, envision yourself as being your software and try your best to communicate with the human at the other side. Try and feel what the other feels when using your product. Seek to understand and be amazed by the improvements, acceptance and success of your brainchild. It just feels more alive.

The primary goal of any IT system is to make its users more effective. Only then does it deserve to include the 'C' of communication in its ICT acronym.

Biomimicry—biological organic architecture

What kind of architecture does humane software have? Inspired by nature, Stuart Kauffman's "At Home in the Universe" on emergent complex adaptive systems and evolutionary computing, as well as Christopher Alexander's "A Timeless Way of Building" and his magnum opus The Nature Of Order, and proven by the Internet, the Web, Grid Computing and the blossoming Social Networks, it seems that the architecture is not the solution.

Architecture is a chaordic emergent phenomenon. It arises by the collaboration and interaction between its players—symbiogenesis. The "architecture" in each system is shaped by a number of very basic and primitive rules by which the system grows. The art is not designing and specifying an architecture and then building the system accordingly.

The art of creating living systems is in definining its basic elements, principles and protocols and its evolutionary processes—mutation and cross-fertilization. When we can do that, our software systems will match our needs in an intelligent, natural and harmonious way and grow with us—hand-in-glove. Only then can we ask ourselves the Alexandrian question which system is more alive and has a more human touch.

Succes en plezier,

also available in Dutch