Art is subjective, soft, human, unique.
Science is objective, formulaic, algorithmic, process-heavy.
Think about a recent problem you faced and its surrounding context. Was your approach more artistic or more scientific? Did your perception change as you solved the problem? How did it compare with your colleagues?
As with anything difficult to define, let’s begin with principles:
- Nothing is all art or all science; everything is on a spectrum.
- Any positioning on this spectrum is subjective.
- A common interpretation is that science leads to art. A scientist invents after decades of study. A dancer expresses after decades of practice. Said another way—science at a master level feels like art.
With respect to software development, which day-to-day activities lean one way or the other? What is art and what is science?
Art or Science?
The Difficult Road To Consensus
“Alignment” is one of this year’s nominees for the Most-Used Corporate Buzzwords Award. Jokes aside, alignment as an outcome is critical. We flounder without it. While rough science can be drawn from alignment-building frameworks, it will always be more of an art. This is because it will always depend on people and how you influence them. This one dependency is why consensus can sometimes be so difficult to achieve.
Partnerships Not Contracts
Partnerships exist at every level of an organization. Individual contributors work across teams. A Team Lead collaborates with his or her Product and Design counterparts. A CTO matches with a CPO.
A common mistake (and subsequent growth opportunity) is when an analytical engineer approaches a partnership as a science. This is natural if you come from a world of APIs and interfaces. However, a contract of deliverables will never produce a healthy working relationship between you and a PM. There is a time and place for contracts, but a professional partnership is not one of those places.
Coaching Through Patterns
Coaching represents a healthy mix of art and science. If I had to pick one, I believe that art edges out science—but barely.
With respect to science, many underestimate psychology. Research and methodologies really do provide insights behind personalities and there’s a reason why Myers-Briggs type indicators are so popular. Patterns can—and should—be generalized across people. Coaching effectively is just pattern-matching after years of coaching repetitively. Will Larson probably recognized Staff Engineer archetypes after countless hours working alongside Staff Engineers. In theory, pattern-matching is how our brains work in general.
While pattern-matching sounds scientific, applying and extending it is an art. Effective pattern-matching depends on experience, personalities, constraints, and context. Patterns span across disparate domains; a lesson from your religion somehow makes its way into your software design philosophy. This kind of artistry is reserved for humans. This is also the scary stuff that we hope to not be seeing in robots any time soon.
Coding, in the context of professional software development, is more science than art. There is a difference between programming to poetically express yourself versus programming to build things for people to use. Software must be extensible, maintainable, and readable. As a system scales, these attributes are only attainable if the science outweighs the art.
“Ops” is a broad term that encompasses all activities contributing to software delivery. This includes change management to project management and everything in-between.
Operations evolves from an art to a science as a group progresses through the classical stages of forming, storming, norming, and performing. When a group forms, artistic liberties are taken to establish the process itself. The group’s end-game is to operate as a well-oiled and predictable software delivery machine.
When it comes to people, do not assume that everything is an art.
Feedback and performance review are examples of activities where managers should rely on science. Management’s goal is to set clear objectives and key results for employees. If the results are hit, compensation and promotions should follow. If the results are not hit, constructive feedback and coaching should be provided.
If you’re a manager, lean scientific with your approach to performance and accountability. Career ladders should be detailed. Performance reviews should be predictable. This is contrasted with coaching—something that remains perpetually ON in various ad-hoc and artistic capacities.
The challenge with art versus science remains in its subjectivity. Art for you is science for someone else. As long as you remember this principle and keep your mind open to compromise, you will find elegant solutions to your problems whether they be technical or not.