I’ve been reading a very interesting book written by John Bogle of Vanguard fame called “Enough”. It’s a wonderful read and highlights some very fundamental values he espouses and has lived throughout his life. You can get a feel for the book simply by looking at chapter titles. Here are chapters 1-3:
- Too Much Cost, Not Enough Value
- Too Much Speculation, Not Enough Investment
- Too Much Complexity, Not Enough Simplicity
One chapter in particular, “Too Much Business Conduct, Not Enough Professional Conduct”, struck a cord with me in a number of ways. It reminded me of Bob Martin’s Craftsmanship and Ethics outlook and books espousing a professional code of conduct.
In Mr. Bogle’s book, he discusses an article that describes 6 core principles of a profession, a professional, and professionalism.
6 core principles of a profession:
- A commitment to the interest of clients in particular and the welfare of society in general
- A body of theory or special knowledge
- A specialized set of professional skills, practices, and performances unique to the profession
- The developed capacity to render judgments with integrity under conditions of ethical uncertainty
- An organized approach to learning from experience, both individually and collectively, and thus of growing new knowledge from the context of practice
- The development of a professional community responsible for the oversight and monitoring of quality in both practice and professional educators.
“The primary feature of any profession is to serve responsibly, selflessly and wisely and to establish an inherently ethical relationship between the professional and the general society”
As I read the list, I tried to think through MY chosen profession and wondered if we consistently have “Too Much Software Development, and Not Enough Professional Development”. I also wonder how many of the above 6 principles my community exhibits. Sadly, it seems very few. What’s interesting about that is how awkward it is to think about true professions behaving like we tend to behave in our daily work.
Some examples of professional absurdity from 2 well known professions (Medicine and Law):
- Think about the lowly hand surgeon. You go into their office with a little hand pain. If your hand surgeon tells you that you don’t need surgery, do you force them to do surgery anyway? On the spot? Moreover, would a professional hand surgeon actually do it because they notice that you seem upset?
- Now think about a lawyer. You get caught stealing Ryan Braun jerseys from the local truck stop. You stop in to see your lawyer and tell him about the case. Do you tell the lawyer you won’t use him unless he guarantees, unequivocally, that you will be acquitted of all charges? Would a professional lawyer tell you they know, without question, the outcome of your case? What if you were wealthy, intelligent, wore a suit to the appointment, and seemed upset? Would they guarantee it under these circumstances?
Each one of these 6 principles could generate its own post, but I want to focus on the quote above from the book. I key in on the words “serve responsibly, selflessly, and wisely” and it conjures memories of all the discussions I’ve had, witnessed, or lead that were simply attempts to cajole development staff (myself, peers, direct reports) to leave their professional judgment at the door. I’ve written a bit about why this happens, and the fact that there are no villains in this equation. Everyone is operating with the best intentions.
Knowing there’s rarely something subversive going on, I think our community members need to think much harder about their professional conduct as much as the next great framework or development practice. As a trustee and steward of technology, our obligation to the “greater good” is to stand up and help others make good choices.
“Develop a capacity to render judgments with integrity under conditions of ethical uncertainty”.
While we may not face unethical choices, we clearly face choices of uncertainty. In this regard, the work Bob Martin is doing is wonderful. That said, the “6 principles of professional conduct” message tends to get muddled by the 1 or 2 principles espousing the, mainly, technical skills development and practices.
For now, I leave you with one question. What are you doing to teach and advance the profession of software development, in its entirety, in your organizations?