IBM Z Europe - Group home

Software Efficiency, or how long is a nanosecond

By Niek de Greef posted Thu January 30, 2020 10:24 AM


In this very interesting conversation with Kevin Kelly, you can find Marc Andreessen predict that programmers need to get very efficient on programming again (at about 17:30 minutes).

If we do not get more efficient in programming, things might get stuck.

Another interesting perspective on the same issue was already shown in the 60s, by Grace Hopper, the lady that invested COBOL, amongst other things.See this video: How long is a nanosecond.

This all reminds me of a small test we did recently to check resource consumption of programming languages, by writing just a very small Hello World program. One program is written in COBOL, one in Java and one in Groovy. The following summarizes the huge difference in efficiency by showing how many CPU seconds these programs needed to run:

  • COBOL 0,01 msec (basically it was immeasurable).
  • Java 1 second.
  • Groovy: 3 seconds.

And then we are only looking at very inefficient programming languages. I believe even more could be gained when looking at application architectures.

Microservices architectures, especially when applied radically, are significantly more inefficient than traditional tightly coupled applications in C, COBOL or even Java. Of course I do not want to advertise stovepipe applications, history has proven the maintenance issues to be detrimental, but we should aim at a more balanced architecture with more eye for efficiency.
(First appeared on On Software).