Monday, January 20, 2020

Getting started the Agile Way.

Getting started is hard.
One of the sayings of the Scrum Alliance is, “Scrum, easy to explain; hard to implement.”  When I first saw it, I thought it was a concise way to sell the concept to others.  With experience behind me, I understand it was a clear warning.  Scrum is hard to implement but it is a way to deliver more value to customers sooner.  How do you get started?

I am what Bloomberg Business Week called “The Man in the Taupe blazer.” I have a wrinkled suit and an eye for continuous improvement.  I look around the organization and find a way to make things better.  Over my career, I have discovered that people do not know how to manage projects.  Skills like prioritization, time management, and breaking work down into smaller pieces are rare in the business world.

I suspect lousy project management happens for two reasons — first, many of us to learn to create by ourselves.  The use of teams to educate students and develop teamwork is a recent trend in education.  It means people learn to work on their own instead of with others.  I also attribute this to the glamorization of what I like to call “asshat leadership.”  Gifted people like Elton Musk, Steve Jobs, Carly Fiorina, and Alex St. John lead organizations and behave poorly to others.  The “asshat leader” is someone who thinks being rude, insensitive, and authoritarian is leadership.  It is not and Robert Sutton’s book, “The No Asshole Rule,” makes it clear that being an “asshat leader” has serious implications for the business.  The style of leadership is colorful and media-friendly but, in the end, it often leads to adverse outcomes.  For those two reasons, I think it is hard to lead and manage projects.

So, where does a rookie coach or scrum master begin when they introduce scrum in an organization?  I say before you do anything, talk to people doing the work and listen to what they have to say.  Many people like talking about their jobs, so when you ask, they will be happy to share with you.  Ask them about what is working for them.  Ask them what they feel needs to be changed.  You will be surprised by what you learn.  Only when you have learned what you can will you be able to move forward.

The next step is to teach and practice the basics.  Show a development team the process of scrum.  Show them the rituals involved with a sprint and practice them always.  Repetition is an excellent teaching tool.  Eventually, the team will treat the sprint cadence like a routine.  If a team masters the basics of sprinting then they will be able to focus on more advanced topics.

Once the team is sprinting, track your progress and ruthlessly inspect and adapt.  Measure how you are doing and then make changes to each sprint to improve.  Team members need to feel like they have input into the changes and are respected.  I remember a quotation from Will Durant, “We are what we repeatedly do.  Excellence then is not an act but a habit. “

Help people develop good habits and then watch them succeed.  I did not realize this until I worked with an organization that stressed excellence daily.  Soon, we considered it reasonable to achieve daily and when we did fail to be able to cope with the disappointment and do better the next time.  Now one will ever be perfect but we can all strive for excellence.

So, if you are beginning your agile journey, practice the basics of scrum, listen to others, inspect and adapt regularly to change, and make excellence a habit.  It is not easy but it will be worth it.

Until next time.

Monday, January 13, 2020

Be a Kind Scrum Master

The lonely life of a great scrum master.
It is hard to talk about being an agile coach or scrum master.  It is both an art and science.  The science understands computer programming and technical systems.  The art is listening to others and coaching them to address their challenges.  The profession is easy to learn, and it is a hard one to master.   Many of the aspects of being a good coach or scrum master appear to be touchy-feely skills and that is because the difference between a good and great scrum master and coach are those skills.

When I became a scrum master, I thought I understood the skills, and I would become a raging success.  My first few sprints squashed those delusions.  Teams have conflict, they confront deadline pressure, and individuals inside the group have messy emotional lives.  It is up to a scrum master to deal with all of these issues and more.  In the words of Kim Scott, “It is management and it is your job.”

It is a job that requires listening and empathy.  It means not only talking about agile but living the values of agile daily.  It is about courageousness when you are tired or scared.  It is about being focused when you are in your worst moments.  You respect others and their different perspectives when you want to tell them to take a flying leap — openness to the secrets and vulnerability of others and to try out new ideas.  Finally, a good coach or scrum master must show commitment to the shipping product and the people doing the work.  The values are hard to do which makes them more necessary to the performance of each team.

The business world has plenty of damaged, neurotic, and mean people.  These individuals were not born that way; the dysfunctional cultures of many businesses created them. Companies promote the mean because they appear to get work done.  Years of unrealistic deadline pressure, lean budgets, and lack of advancement opportunities created the neurotic.  For the agile community, this is what we face.

To counter the sickness which resides in the corporate office, the agile coach or scrum master walks a lonely road.  It is choosing to be kind over being snarky.  When they see exploitation, a coach needs to point it out.  Finally, it is doing the right thing when other people are not watching.  It was not easy which is why so few people are good at it.

If you are looking for an opportunity to create “healthy ownership” in an organization, a scrum master or agile coach needs to practice the values of scrum, they need to listen, to show empathy, practice kindness and do the right thing.  I continue to walk this path and I hope you join me.

Until next time.

Monday, January 6, 2020

The Profession of Software Development

Software developers are much like plumbers. 
The stereotypes surrounding software developers are numerous.  Sandra Bullock was the shut-in hacker in the 1990’s film “The Net.” The cast of “Silicon Valley,” embodied the “move first and break things,” ethos of the rise of Facebook.  Finally, the frat brother atmosphere of gaming companies is legendary. Software developers are many things, but not many people outside of the business consider them professional.  Today, I would like to take the time to discuss professionalism in software development.

Many of the things we use operate on code.  The turbochargers in our cars are computer operated.  Trains rely on computer algorithms to run on time.  We can shop for groceries from the comfort of our sofa.  The reason this is possible is the combination of increasing computer power and the work of smart people who write the software code to exploit that power.  It is a detail-orientated and challenging task.

Software development is custom work with little automation, so each piece of software is made by hand.  Each phone application or web site we see today began as a blank slate that needed data, graphics, code and business processes. Line by line, a software developer wrote what you see.  As the site became more complex Database administrators, user experience experts and network security specialists will add their contributions. It is like the manufacture of a hot rod with all the mechanics hammering out the individual parts and then attempting to assemble them into a working car.  The complexity and challenges are difficult for people who do not do it to understand. 

People understand the pressures doctors endure.  Each day doctors are making decisions that might affect the life and death of patients.  Attorneys are responsible for up to billions of dollars in money during civil suits.  In criminal trials, they have to power grant or deny a person their freedom.  Likewise, bankers must make an informed decision about how to invest and loan money to protect their depositors. Finally, teachers educate and look after the wellbeing of children.  Our culture understands these pressures and rewards a particular level of respect and deference to these individuals. 

Software professionals are in that gray area.  What they do is essential but it is invisible until something breaks. The story of the Boeing 737 is a tragic example.  Software developers compensated for an engineering flaw in the aircraft.  Given the time pressures, they were able to create a control system that prevents planes from crashing.  What was not taken into account was the way pilots would behave in critical situations.  The flaw in logic would cost the lives of over 300 people in airline crashes.  It also cost the CEO his job because people no longer wanted to fly on 737 aircraft.  No one knew what the standard of excellence for software was until planes began to fall from the sky.

The software profession has a youth bias; many of the contemporary programming languages have been around for less than twenty years.  Less than five-tenths of a percent of the entire world population know how to write code. Caucasians and Asian people dominate and it is an overwhelming male occupation.  The attire is comfortable, and software professionals are more interested in getting things to work than being likable.  Compared to other professionals, software developers do not look the part.

The trends above make the profession seem clannish.  The time pressure often forces these professionals to take shortcuts.  Finally, the skills are in such demand that compensation is a powerful incentive for people with mediocre talent to join the profession.  Taken together people outside the business see developers with the same respect as mechanics or plumbers. The funny thing is these professionals lack respect until we need them.  It is then we will pay big money to use their expertise and services.

So software developers deserve respect because they keep the contemporary world working.  The world runs on code.  It is a shame we needed planes falling out of the sky to understand that reality.

Until next time.

Monday, December 30, 2019

Looking Forward to the Next Decade

Back for another year in review.
Being a blogger opens you up to scrutiny and criticism.  I use this forum as a way to share knowledge about the agile reformation.  I attempt to argue in good faith and provide others with a voice.  I am a passionate advocate, and that passion clouded my reason leading to some big mistakes.  Fortunately, my discourse avoids bitterness so when I eat my words; I do it gladly.  The most treacherous blog of the year is my annual predictions.  Sometimes, I am an oracle with an accurate vision of the future.  Other times, I blunder like a drunken person in a dark room; time will tell if any of my predictions are correct.

The “Breakup,” of Big Tech-

Continuing issues with Facebook, Alphabet, and Microsoft will prompt regulators in the United States to pursue anti-trust suits and legislation to regulate the technology industry.  The efforts by congress will create tremendous pushback from the technology industry.  I expect to see billions of dollars spent on lobbying efforts.  Additionally, political candidates will fundraise and stump for votes by publicly bashing large tech companies.  The technology business does need oversight but I am afraid 2020 is going to have little meaningful reform.

Fighting Corrupt Agile-

As agile becomes more prevalent in organizations, bad actors and corrupt practices will flourish.  The article, “Agile is Whatever Management Says It Is,” was one of the most insightful articles in 2019 business press.  The article discusses how management professionals will demand behavior and process changes from others while clinging to their self-destructive practices.  It is up to us in the agile community to fight this corruption.

“Radical Candor” in the New Decade-

Kim Scott wrote an excellent book on the topic of business communication.  I feel that is will be used by business leaders to improve their performance and the performance of the people they serve.  The difference between “radical candor,” and “manipulative insincerity,” are going to be crucial for leading a successful global business.

I look forward to spreading the word.

The Awful Election of 2020- 

I steer away from politics on this blog.  The internet contains better takes on political rhetoric.  If you are a conservative or liberal, there are plenty of authors on-line to provide insight and perspective.

The presidential election is going to be awful.  The pugilistic style of President Trump and the cultish behavior of the GOP is going to make the election an exercise in pain tolerance.  Democrats will be accused of socialism, infanticide, and having over-due library books.  The very nature of what and who Americans are will come into question.  It will be ugly.  In victory or defeat, the president will be petulant, and regardless of the outcome, our nation will seem smaller as a result.  I hate feeling this pessimistic.

I hope these words are not too bitter.  I am sure I will have to eat them someday.  Thanks for spending the year reading the blog, and I look forward to more writing in the next decade.

Until next time.

Monday, December 23, 2019

Be on the Look Out for Workism

Even Elves need some rest.
The Christian holidays are close and it is easy to become caught up in the bustle of parties, shopping, and family gatherings.  The biggest challenge is weighing the exclusive demands of family and career.  Derek Thompson wrote an excellent article about the subject earlier this month.  As a member of the agile reformation, I want to remind my fellow professionals of the danger of workism.

Speaking for myself, I become a software developer for two reasons. The first reason was I was chasing the hype and wealth of the first internet boom.  It was a giddy and stupid time where Bill Clinton was president, and anyone with a “.com” at the end of their company name wasted millions of dollars.  I wanted to be one of those twentysomething or thirtysomething millionaires writing code instead of being told to smile more while casino patrons blew cigarette smoke into my face.  The other reason was I was good at it.  I became a wizard with Microsoft Office and was soon glancing at Visual Basic code like I was reading the morning news.  My dream of working afternoon drive at a classic rock radio station evolved into becoming a web developer.  The pay was better and it gave me a career that I did not enjoy in my twenties.

Looking back, I realized I joined the technology during a dramatic period of expansion.  I was one of the numerous anonymous workers who helped construct the contemporary internet we enjoy today.  I was an early consumer of social media with a MySpace page.  I was using a smartphone before the birth of Android.  I witnessed the evolution of Microsoft from an evil empire to an innovator in Cloud computing.

It was not an easy road to travel.  I failed numerous times, working for every type of business imaginable.  I became an entrepreneur and failed, and each setback and disappointment set the stage for more significant success.  These experiences helped me coach other professionals so that they avoid the mistakes I made in my career.

It is also a profession where less than one percent of the world population can do it successfully.  It often means cramming various amounts of work into a single workweek.  Developers and network engineers work long hours keeping the global economy working.  It is intellectually demanding and detail-oriented.  Imagine a world where checks do not manifest, or shopping on-line comes to a stop. It is a nightmare world I would not like to live in.

The lucrative work and the shortage of people who can do it successfully translate into long hours.  Thompson in his essay in the Atlantic talks about workism.  It is a career focus that puts family, friends, and community at arm’s length.  High skill workers benefit from long hours in ways that low skill workers do not.  If you work in technology, you are expected to work long hours because it is cost-prohibitive to find people who can do the work.  It is also the only way for a professional to advance in their career.  As Thompson says in his essay,

“At many firms, insanely long hours are the skeleton key to the C-suite and partner track.  Thus, overwork becomes a kind of arms race among similarly talented workers, exacerbated by the ability to never stop working, even at home.  It’s mutually assured exhaustion.”

Executives enjoy exploiting this arms race to get more out of their employees.  In the agile world, we need to push back against this exploitation.  Countless studies point out overwork is counter-productive.  Workism has severe consequences for employee health.  It hurts morale.  It also undermines the quality of the work.  Agile is about “Healthy Ownership,” a sustainable pace and delivering value to customers at a more reasonable pace.  Anything else is waste and exploitation. As an agile coach or scrum master, please be on the watch for workism.  It is a path that leads to poor quality and burnout.  The better way is Agile which is a more sustainable, satisfying and safe way to work.

I want to finish this blog by wishing all of my readers a Happy Hanukkah, Merry Christmas, and a joyous Kwanzaa.  I am sure I am missing some other holiday but I hope each of you enjoys time with your families and take some time for reflection.  I will back next week with my end of year predictions.

Until next time.

Monday, December 16, 2019

Ignore Product Delivery at Your Own Risk.

When we talk about agile and scrum, we often talk about the process.  It is a curious paradox because the agile manifesto clearly states, “Individuals and interactions over process and tools.”  I want to take some time to discuss the reason we do this crazy agile thing.

When agile began in a ski lodge in Utah, it was the product of seventeen leaders in software development.  It is not a perfect document and others have made numerous suggestions for revision.  The agile movement has balkanized because people have different interpretations of the values and principles outlined in the manifest.  Finally, the challenge of scaling agile to accommodate large software projects has further split the community into competing camps.  I have attempted to stay above the bitter disputes but I have taken sides on a few issues like no-estimates. The conflicts among agile professionals hide something which all of us agree.  The purpose of agile is to get work done.

Agile does not promise to get work done faster; it promises to get customers involved with work so that businesses can deliver value to those customers.  Agile professionals ship software, develop marketing campaigns and provide services that offer value.  Anything else is differences in style.  These styles range from prescriptive approaches for organizations beginning the process of agile to experimental methods which allow teams to self-organize and come up with unique ways of doing things.

Many of the disputes in the agile community are about how well people are following the steps of agile or scrum.  It is an unhealthy disagreement about the process. Instead, everyone in the agile community should focus on delivery.  The shipping of products is what pays the bills and continues to build the agile movement.

To review, agile is about delivery.  Individuals are more important than development processes, and both are subservient to providing value to customers.  Anything else is waste.

Until next time.

Monday, December 9, 2019

Requiem for a Software Developer

I use this blog to discuss two principle topics; software development and software developers.  It is an exciting topic, and the people who build software represent some of the best traits in the human species.  Today, I want to talk about one of them. 

Carla Robinson was an anomaly in the technology business.  She dedicated most of her career to one company.  Carla spent the bulk of her career at R.R. Donnelly, and when the company split, joined one of the spin-offs, LSC Communications.  She worked with AS/400 systems and wrote RPG code.  It was hours of staring into green screens and sorting through reams of sequential code.  She kept a legacy system alive, and as the technology business changed, she rolled with these changes. 

I knew Carla as her scrum master.  She was learning how to write C# code and unit tests.  What made her invaluable to her team was her manual testing skills and her business knowledge.  Often, she was able to answer questions about the product and how it helped the business.  She was a person of good spirits when times were tough.  Finally, she would not accept grief from anyone and demanded respect. 

She loved Bessie Smith, vintage Prince, and anything to do with dusty radio.  She was a colleague and to many a friend.  The world is a little less fascinating without her.  I imagine her enjoying some step dancing in the afterlife and feeling a sense of pride about a life and career well lived. 

Fair forward and not farewell, Carla.