I like to compare hating java to hating SUVs - they may be used inappropriately most of the time, but there are scenarios where they are the best tool.
In the enterprise, you need a language that can support
- multi-million line code bases
- a development team of dozens or even hundreds of programmers
- a software project that lasts years
- a team that changes over time
- a team that isn't just rockstar programmers (try hiring dozens of rockstar programmers at once if you are not google, facebook, and you aren't doing something perceived to be 'sexy')
I think java and C# are the best languages that meet those criteria today (and if you don't want to be married to MS, then you are left with Java).
I think dynamically typed languages are not appropriateness for such a scenario.
However, HN is a startup-oriented site, and those certainly are not the criteria you need to meet in a startup.
In the enterprise, you need a language that can support - multi-million line code bases - a development team of dozens or even hundreds of programmers - a software project that lasts years - a team that changes over time - a team that isn't just rockstar programmers (try hiring dozens of rockstar programmers at once if you are not google, facebook, and you aren't doing something perceived to be 'sexy')
I think java and C# are the best languages that meet those criteria today (and if you don't want to be married to MS, then you are left with Java).
I think dynamically typed languages are not appropriateness for such a scenario.
However, HN is a startup-oriented site, and those certainly are not the criteria you need to meet in a startup.