My wife is a trained Ringling Brothers Clown College Clown.
Clowning is a difficult profession. It doesn’t receive much respect. It’s hard work. Physical comedy can easily wreck your health as quickly as it drives you broke. Material success means getting to work.
But clowning is a craft with roots as old as performance itself. True practitioners bring great discipline and joy to their work. A talented clown relates to their audience with the spontaneity and innate intelligence of a child while employing a mastery of performance honed by years of training. Good clowning is surprising, stunning, human and hilarious.
However, the level of talent, skill and training vary to extremes. There is no official apprenticeship process. When people think of clowns, they’re often thinking about amateurs who’ve had very little exposure to the work of veteran performers.
It’s easy to be a frighteningly bad clown. Many amateurs paint both the top and bottom of their mouth with a broad stripe of red makeup. They turn their character’s mouth into a gaping maw large enough to devour a child’s head.
If you ever get a chance to hang out with experienced clowns you’ll find out how embarrassed they are by bad performers with horrifying makeup and costume, few skills and little respect for the history and rituals of clowning.
I’d say the difference between what I do and what my wife does is that software developers earn a lot more money and are a lot less fun to watch. Still, what I do is also a craft. To do it well requires aptitude, discipline and apprenticeship. Just as in clowning, there are common mistakes perpetrated by bad or inexperienced developers.
Similar to my wife’s clown college class mates, I feel great pride in my craft and in those who take it up with talent and integrity. I also feel frustration, disappointment and a little outrage at peers who strive for less.
When we set out to build consumer software, I pulled together sentiments from our CEO, lessons learned, and principles behind the Agile Manifesto into our own set of principles.
Since I’ve already received permission from my employer to publish it in a paper, Agile Practices and Innovation, I thought I’d include it here.
Oxygen Software Product Development Manifesto
Building consumer software is a joyous and daunting challenge. We, software developers, owe Oxygen and Oxygen’s customers every chance at success. We believe success springs from the following principles:
It’s all for the end user
The most important relationship is between us, the people building these tools and the women and men who are our customers. We must continually refine our products based on ever increasing knowledge of our customers.
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. — http://agilemanifesto.org/principles.html
People own their identity and information
We respect our customers. We respect their privacy. We believe people own their virtual selves.
To that end, we will never misuse data, we will always provide a way to keep personal information private, we will always give our customers a way to export their assets and remove their identity from our systems.
Each tool we build helps people do a specific thing better than anything else available
Build the best solution for a specific need felt by a broad range of women.
Build simple tools that are useful, elegant and fun and go from there
First build a specific solution and then abet our customers using that tool in ways we never imagined.
This is both a cause and a business
We must remember that this is a business proposition. As our products evolve, we need to understand the revenue models and targets. We need to help define and measure appropriate metrics. We need to do everything we can without sacrificing the other values in this manifesto to achieve the business aim of the company.
Gerry Laybourne is the product owner
If our most important relationship is with our customers, our most important collaboration is with our product owner. Gerry sets our priorities. She must embrace what we are doing. Our relationship must remain direct. The best way to convey information is face-to-face.
These tools spring first and foremost from Gerry’s imagination. Direct connection between Gerry’s vision and our team’s creative efforts leads to success.
We are inventors
We must imagine solutions outside current limitations and ask ourselves, “what of this can be done now”. We must build something never seen before that when handed to the right consumer feels inevitable and obvious.
We must engage creativity, empathy with our customers, resolute professionalism and an inspired sense of play.
If we don’t love our inventions, no one else will.
We have authority, we are responsible, we are accountable
We are a self-organizing team in the best spirit of Agility.
If we, the people doing the work, allow this project to drift from its founding principles it will fail – with consequences for all concerned. In the face of that possibility, we must have courage to speak truth to power.
Specific technologies and mediums are just tools. Get over them.
This project is about helping our customer get more out of computing and making a profit for our company. We must not let assumptions or affection for specific tools, technologies and platforms on anyone’s part distract us from our mission.
Admit failure and move on
Resources are limited. Set specific, measurable goals. Face the truth and course correct. Don’t knowingly waste time or effort. Don’t use lack of knowledge as an excuse for wasted time or effort.
Our team just beta-released our. Along the way, they accomplished something of more strategic value. They matured into a performing, self-directed team.
A decent manager encourages software developers to do their best work while allowing them full personal lives. The heart of this effort is fostering strong teams. Individuals have bad days, make mistakes, lose momentum. A team watches each other’s backs, challenges each other, teaches each other. They build upon each other’s creativity.
The beauty part for a manager is — if you create the right conditions, start with the right people, trust them and hold them accountable — the team does the hard work of becoming. They deserve full credit for their achievements including the most ambitious achievement which is themselves.
That doesn’t mean it’s easy. Getting this consumer product to the general public has taken fifteen months. From our first study of agile principles to our current practice has taken the better part of four years of continuous improvement.
I’ll be presenting two talks at the November Scrum Gathering.
One of them is dear to my heart. I’ll be using this blog over the next few months to work up my ideas and document conversations I have around this topic.
The Ethics of Scrum and Agile Software Development.
Here’s what I proposed:
Are Scrum and XP inherently ethical?
In the face of contradictory beliefs over what we do and how we do it, we software developers, agile or not, experience pressure to compromise our work and our due care for others. Meanwhile, as our products become more beneficial, more pervasive and inter-connected our potential to harm grows.
Attempts by the ACM and IEEE to engage us in a dialog on norms of conduct has resulted in a controversial code of ethics that borrows heavily from established engineering disciplines – mandating specifications to ensure effective software.
We, agile software developers are making an under-appreciated contribution to ethical practice in our field.
Whether our work is a profession or craft, we need to engage the larger community in a conversation about how our day to day actions affect our employers, our peers, and our society. This presentation will attempt to frame professional ethics in the context of agile values and practices.
Why is this topic of interest to Scrum Gathering attendees?
The discussion over norms of ethical conduct happens outside the earshot of most working developers. The day to day experience of Scrum practitioners is at a distance from those who concern themselves with software ethics.
As a Scrum community, we have a responsibility to help shape the expectations placed upon us by others. We cannot delegate our integrity. Nor can we defer concerns over negligence, recklessness, or intent to harm the human beings who use the systems we create. We openly discuss our projects, our working conditions, and our advancement but to protect those very interests we often deal with issues of conscience privately.
Yet the passion behind Scrum is, in part, an idealistic one – a hope that by dealing openly and responsively with our stakeholders we will build something of real value. We need to harness this idealism to encourage each other make better decisions in the interests of stakeholders who do not pay us and do not always have a seat at the project table.
Given the downstream effect ethical lapses large and small have on society, we need to engage in this discussion or have the wrong solutions imposed upon us by employers, institutions, and regulatory agencies.
- Is it important for us to establish a shared commitment to ethical conduct?
- What obligations a software developer should feel beyond fulfilling the requirements of their employer?
- How the Agile Manifesto and Scrum/XP practices suggest a partial set of norms of ethical conduct.
- How agile organizations have started to provide their own statements of principles to extend agile values and encompass conduct towards our peers and society.
I’m presenting a paper, Great Scrums Need Great Product Owners, at the Hawaii International Conference on System Sciences.
The presentation is part of the Agile mini-track co-chaired by Jeff Sutherland and Hubert Smits. I co-authored the paper with the senior member of my product team, Ilio Krumins-Beens.
We survey literature to describe pragmatic and collegial relationships which satisfy the definition of collaboration and honor roles while barely tapping or actually working against the potential of a project and its participants. These limited forms of collaboration are common not just in our industry but within agile projects.
A common interpretation of the call for a single Product Owner is that the development team itself should play little part in shaping the vision and value priorities of a product backlog, focusing instead on efficient delivery of those priorities.
One of our major sources are the What’s Worth Fighting for series by Andy Hargreaves and Michael Fullan on collaboration in education.
The disempowering climate faced by teachers is a direct parallel to that faced by software developers disengaged from the business vision and value priorities of their work.
“â€¦ [W]e have collectively 45 years of teaching experience and nobody has ever asked us our opinion about anything where it would actually be put into action. And yet I’ve got to have more experience with junior [children] than a lot of the people who are telling me what I should be doing with them. And I think that is very frustratingâ€¦ I think I could help bring a lot to it and nobody ever asks, no one ever asks what we think. They just go ahead and proclaim and we have to follow.”
Its tragic how talented, experienced people are not allowed to bring their full selves to their work.
We contrast this with unbounded collaboration between a product owner and team. In unbounded collaboration an individual’s contribution is not constrained by their role or status.
It is a collaboration built upon high-performance, mutual respect and deep trust. The product owner walks a tight rope, engaging the team in an evolving product and business plan while guiding the project toward her vision and high-level goals. The team is passionate about the product they are building and feel personally accountable to the product’s success.
We argue that this kind of collaboration is at the heart of agile values and is a characteristic of the knowledge-creating companies upon which lean principles are based.
I’ll write more about unbounded collaboration, it’s opposites, practices we’ve used and what we’ve learned.