Skip to content


Why Open Source for Product Development

(this topic is also discussed in a podcast episode)

One of the paradoxes in product development is Open Source. How can you personally or as a company benefit from participating in Open Source projects? Why should you share your great ideas and code? How can you build a business or a career by giving things away? How can an open-source project be a reliable supplier without contractual guarantees? Most successful technology companies today participate in open-source projects. Why do they do this?

Open source is difficult to fully understand and much has been said about it. There are many approaches to licensing and funding. Many question the equity and sustainability. Many get bogged down in ethical, moral, and political arguments. There are messy problems that don’t seem to have good answers. But we need to go deeper and examine the core issues of why companies are turning to open-source.

We will consider several product development perspectives:

  • Our motivation is to produce something of value that society can use and benefit from.
  • Software technology is advancing at a rapid rate of change.
  • Technology in modern systems is increasingly complex.
  • How can we maintain some level of control over the resources we use to ensure they will meet our needs?
  • And how does organizational culture impact our ability to deal with these issues and build modern systems?
Read More »Why Open Source for Product Development

Think Horses, not Zebras

There is a popular quote in medical circles:

When you hear hoofbeats, think of horses, not zebras. — Dr. Theodore Woodward

“Zebra” is the American medical slang for arriving at a surprising, often exotic, medical diagnosis when a more commonplace explanation is more likely.1 What does this have to do with product development? Like the medical profession, we often diagnose problems — we call it debugging. Below are three recent cases where I would have been helped by applying this approach a little more rigorously.

Read More »Think Horses, not Zebras

The Technology Trajectory

See also a podcast episode where we discuss this topic.

Modern systems require the integration of technology, often from many sources. This can come in the form of processors, integrated circuits, operating systems, open-source software components, databases, messaging systems, cloud infrastructure, programming languages, build systems, frameworks, etc. All technology follows a trajectory — an example is shown below. The timeline may be short or long. Your usability threshold may be low or high, sloped right or left, etc. But the fact remains that most technology will eventually be replaced by something newer. We can debate whether or not newer is better, but the fact remains that time marches on.

Read More »The Technology Trajectory