There is no much science in software development.


Science implies there is proof that something is true. In software, there are a lot of opinions and there is experience.

Is there any proof that one programming language is better than another?

  • No

Is there proof that object-oriented programming results in better productivity?

  • No

Most proofs are about performance measurements, and there are statistics, but hardly any relation to what language a program was written in or what tools were used.

It is not art either.


since the main goal is that software works well, not that it looks nice.

It is much more of a craft.

A craftsman uses whatever tools he thinks will get the best result, no matter if they are what everybody else is using or something different.

And a good craftsman makes his own tools when needed.