Do CM and other development tools have personality? Writers and inventors have long suggested that machines will eventually develop to a point where they can think, learn, experience emotions, and display traits commonly associated with having a personality. Computer scientists have long studied thinking and learning machines . Many people certainly find that some tools have apparent personality flaws, including acting stubborn, unpredictable, and—at times—irrational. Science fiction aside, tools often have display characteristics that are commonly associated with human personality, and understanding this can help when it comes to evaluating, selecting, and implementing tools to support your software development process. This article will help you handle the people side of tools selection and adoption.
MIT Professor Joe Weizenbaum shocked many people with his groundbreaking work to develop Eliza, a natural language program that mimicked the non-direct probing commonly associated with Rogerian Psychology . Dr. Weizenbaum asked people to converse with Eliza as a way of improving the natural language capabilities of the program. Soon it became apparent that a number of people had trouble remembering that Eliza was only a computer program; Eliza became real to these people. There were even reports that some people refused to show the script of their conversation with Eliza to the researchers because the information revealed was too personal!
Being a People Person
I am not a computer person; I relate to other human beings, along with all of their complex feelings and emotions. But I must admit that there are times when my laptop does seem remarkably like a stubborn teenager going through a tough adolescence. So what does all this blurring of human-machine qualities mean in terms of selecting, implementing, and supporting tools?
Tools Have Personalities, Too
You need only have a short conversation with a true open source enthusiast to realize that many tools have personalities that are impacted by their creation and development. Open source tools usually have traits that relate to the community where they were developed—perhaps nurtured is a better word. Those who support open source often gladly accept limitations or even bugs in their tools for the sake of maintaining the transparent and communal nature of tools written and supported by the open source community. It’s not only open source tools that have their own personalities, commercial products also have their own, too, in addition to cultural norms, especially in terms of expectations for support and maintenance.
Commercial products have personalities that mirror the companies that developed them, although possibly once or twice removed due to corporate acquisitions. Many companies are truly dedicated to their products and customer satisfaction. Others seem to be far less committed, although these may still have their own competencies.
Organizations Have Personalities, Too
Some organizations have almost a philosophical orientation in favor of one tool approach or another. This phenomenon is most obvious in companies that insist on only selecting from a wide array of open source tools. Other firms may require the features or perhaps the security of a commercial tools vendor. Cognitive complexity also factors into alignment of tools and their personalities by providing just enough features to get the job done effectively. Some organizations just really like to keep things simple, while others may want to push the envelope with advanced procedures and development methodology. Interestingly enough, some commercial tools vendors—for example IBM—are learning to be a little more communal by providing a light weight open source version of their tools.