Point taken, but mine still stands. Basically all of the software companies with market cap north of a billion dollars have web-facing apps written in C++ and Java.
Whether you admire them or not is another issue entirely.
"Basically all of the software companies with market cap north of a billion dollars have web-facing apps written in C++ and Java."
Not really true, unless you mean "have web-facing apps written in C++ and Java" in the same sense that they "have web-facing apps written in PHP and Python". I posted a list on Reddit, based on publicly available information (employee blog posts, mailing lists):
You're collapsing stuff down in an interesting way that makes these marginal languages look more important than they probably are. If you were to do it by lines of codes, organizational importance, financial pay off, number of engineers working in a language, or pretty much any metric other than "does ___ use ___ somewhere in their codebase?," I think you'll find that Java and C++ are huge.
That said, sure, folks use other languages, too. Yahoo and Facebook are particularly good examples of companies that have more than the typical share of a non-Java/non-C++ language for their apps. And even they use C++ (and maybe Java) elsewhere.
"If you were to do it by lines of codes, organizational importance, financial pay off, number of engineers working in a language, or pretty much any metric other than "does ___ use ___ somewhere in their codebase?,"
The flip side of that is that perhaps Java and C++ are huge because it takes more engineers and lines of code to accomplish the same task, and hence the potential financial payoff and organizational importance needs to be higher to justify their use. ;-)
It takes a while to get a billion dollar market cap. So if you use that test you're looking at old technology decisions.
A better test, for someone starting a startup now, would be to look at what's used by the companies started in the last year that seem most likely to one day have billion dollar market caps.
It's too hard to judge which apps started this year will most likely have billion dollar market caps - after all, if you'd done that in 1996, you'd think "AltaVista, Excite, Value America" and other similar nonsense.
Instead, how about looking at what companies with billion dollar market caps are buying. After all, that's the biggest statement of "We think this is really promising, but we can't build it internally, so we're going to fork over a billion dollars for it" that a big company can make.
Judging from this, the big languages seem to be Python (YouTube, Reddit) and Java (FeedBurner, Zenter). There are also a lot of recent acquirees where I haven't seen anything about their technologies - it's certainly conceivable that many of those are C++. Really, if I had to draw conclusions, it'd be "The language you use doesn't really matter - the important thing is that you build something people want."
I don't know if you're entirely correct on the old school/new school comparison. It's not as if Google decided way back in the late 90's that they'd (re-)implement Writely in Java just because it was en vogue. That's a newer technology decision than implementing reddit in python...
Ultimately, the question of what to code in is not nearly as crucial to success as we're making it out to be. And answering that question "correctly" has a lot to do with who's coding, how the code's used now, how you think it'll be used later, and many other questions.
I think it's at least worthwhile to know why other people use boring languages. Then feel free to use cool ones instead, not because you're impressed with how well Basecamp runs, but because you know you don't need Google-sized scalability right out of the box.
I suspect Google decided long ago to create a server infrastructure for programs written in certain languages, which in turn dictated how they rewrote Writely years later.
Choice of programming language may improve performance by a constant factor at best. I can't see how Google-sized scalability depends on that. I'd be happy to grow 1/10 or 1/100 of Google!
That's not necessarily significant unless you want to take it a step further and claim C++ and/or Java have a causal relationship with those market capitalizations.
There could be a lot of reasons why very large software companies are using the same languages.
It's certainly not coincidence that both Microsoft and Google use C++ for their big web apps. I'm suggesting that the opportunity to learn how and why their systems work as they do is a valuable one, even if you'd rather be coding in Python, Ruby, or Arc.
The poster talks about being the <10th employee, so I don't think he's considering going to work for Microsoft or Google.
It's questionable that there is much overlap between the "hows and whys" of the practices of these companies (that count their employees by the thousands and their bottom line by the billions), with the "hows and whys" of what you need for a startup.
Any opportunity to learn is valuable; whether learning the MS/Google way is a good choice depends on your alternatives.
If you look at what the Java world is doing, you'll see that experts try to keep their Java code as far away from the web layer as possible. That's what velocity, webmacro, cocoon, JSTL, etc. etc. etc. are for. There's probably a tool to keep Java away from the web for every letter of the alphabet.
Correlation is not causation. These software companies just happen to use C++ and Java. It's not because they use C++ and Java that they have market caps north of a billion dollars. They're making a product or selling a service that people want and if they used a different language, they would still be making a lot of money.
Whether you admire them or not is another issue entirely.