Software is the bridge btw the human world and the physical world. It is the bridge between human science and physical science. It is about giving ideas concrete forms. It is about digitization of life. It is about creating life.
- Software is broad. You have a large variety of lives, so you have a large variety of software. Life manifests itself in different forms in various software. How many species of plants and animals you have on this planet?
- Software is deep knowledge about human world. Since software is digitization of various life forms, if you understand software, you understand better of life.
- Software takes many years of continuous hands-on learning.
- Software is complex, just like life can be very complex. So we try very hard to make it as simple as possible, but not simpler. Software is about taming complexity.
- There is no software architect who doesn’t do intensive programming anymore. Maybe it is ok in other disciplines to have architects who don’t do hands-on work anymore, but not in software.
- Software planning is strategic. Like a soccer team needs a coach to plan things strategically and build up the team, so is a software team. If you have a software architect in the company possessing those comprehensive skills, cherish her/him, let her/him make the decisions and be responsible for them.
If this list is too short, I hope people can keep it in their minds to contemplate on constantly when working with software, and I hope this list is enough to turn around people’s common misconceptions about software.