Thanks for the feedback Kelly. I may not have made the sufficiently clear in the article, but I have put it in bold letters now that I was talking about creating a new VM based language makes no sense for the enterprise today.
I was not claiming Java and C# makes no sense for the enterprise. That would indeed have been crazy talk 😉
Basically the argument I made was this: If we lived in an alternative history where Java and C# did not currently existed, then there would be no rational today to make them. The rational that existed for these languages back in the 90s, no longer exists.
And I don't buy your tribalism argument at all. That is points to lack of historical knowledge and experience with how this field has developed. If we had followed that philosophy, we would still be programming primarily in Fortran and COBOL.
No, the field needs constant renewal as technology, compiler understanding, type system understanding etc evolves as well as because hardware changes.
The hardware today is different from when Java and C# was concieved. The needs are different.
Julia e.g. which is now taking over the scientific computing field could not have been made back in the 1990s when C# and Java came around. Type systems and JIT compilation was simply not understood well enough, and memory was too expensive.
Go itself is an outgrowth of the understanding in modern software development of how important concurrency is. This was poorly understood when Java and C# was created.