Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

disclaimer: I've never written a line of Perl.

When I look at the programming world, my primary instinct is that if something is popular, then there must be something good about it. Take JavaScript. In spite of its limitations as a language (the worst of which is not having a canonical OOP style) there is no easier way to create a single GUI for 3 platforms, as JS. I could make similar comments about Python and C++.

I don't really understand the point of view that using [old language] is an indication of really knowing how to program. Apart from some minor details, all imperative and OOP languages are fundamentally the same.



I take the opposite (hipster) view. If a language is suitably popular it's because there is something bad about it. Either

A. the barrier to entry for other languages is too high (Javascript for the browser, Objective-C and Swift for iOS, etc), and so there is no evidence that there is anything good about it (you just lump it and accept that's the way things are done).

or

B. Because it is still a generic, C-style, imperative, possibly somewhat OO language that feels very similar to a language you already know, and which is a reasonable choice for nearly any problem (rather than ideally suited to a subset of problems), and you are probably selecting it based on that merit rather than any real technical merit the language offers. (Note that this can be a reasonable business decision, but oftentimes people delude themselves. "We use the best tool for the job"...so long as that tool is Java or Javascript)

As you say, all imperative and OOP languages are fundamentally the same; for me it's when languages veer off that path that they start getting interesting and really differentiate themselves.

As a note, too, 'there is no easier way to create a single GUI for 3 platforms, as JS' is not a testament to how good JS is, but a testament to Netscape being in the right place at the right time. It was a language written in a week, whose syntax was forced by suits to be 'Java like' because that was what was popular at the time, and which had no competition.


Javascript is the worst example you could've picked. The only thing "good" about it is that it is implemented in every browser on every platform, and as such available to every programmer of every age. The language itself is actually quite bad, which is why you get so many people trying to make languages that transpile to it.


Reading in context, I was talking about languages holistically. You can't entirely separate a language from its context, e.g. JS is the only scripting language that runs in browser (as I highlighted in my original post).

And do people transpile to JS because the language is bad, or because the interpreter and runtime are good?


The former.


Why do you say that if something is popular then there is something good about it? The world is full of sub-optimal solutions to all sorts of problems. This is especially true for programming languages and frameworks.


It's just my own view that I developed based on everything I've experienced. It can't be boiled down to a single assumption, or a single piece of empirical evidence. I studied economics so I'm very influenced by economic theory. But on the other hand so called "network effects" do imply that suboptimal technologies can become dominant. In practice, I don't think that languages usually become dominant purely by network effects. They need to have a real advantage.

To take a concrete example, Python has very user friendly syntax. This allows people to quickly iterate on code. Another advantage of Python is its complete standard library, and availability of other libraries. But these things probably would not have existed if Python was not such an efficient language to program in.


To take another concrete example, PHP is extremely popular. It doesn't mean PHP-the-language is better than less popular alternatives, it means it's extremely easy to throw things together and deploy (mostly due to almost universal support on VPS). Nonetheless, PHP's history is an accumulation of appalling technical decisions and security holes.


Here's my take on PHP:

- It was the only way to throw together a webapp easily for a long time.

- It is actually pretty efficient for this purpose.

- Much later Python and Node became viable alternatives.

- As soon as they did, people started shifting to them, and today few people would start a new project in PHP.

So according to my (not very informed) understanding, the history of PHP supports my claim that inherent quality (relative tot he alternatives) is more important than network effects.


I've never heard anyone describe a monopoly and say it had inherent quality before. Interesting.

(Note that I'm not saying you're accurate in your assessment as to reasons why PHP became popular, just that your reasoning as to why it has inherent quality is interesting)


isn't by definition a monopoly the highest standard of inherent quality? (unless of course there has been coercion/force/aggression)

i kinda think that google got a 100% monopoly because at the time they were the best search engine (and remained so). and as soon as someone comes along who is better, the monopoly will end (i use ddg but i'll admit it's not as good. i like some of the cool hacks and features so i'm trying to stick with it). am i wrong?


It depends how difficult it is to displace this monopoly. Monopolies don't necessarily sustain themselves by being superior to the alternatives. Regulatory capture, vendor lock in or billions of lines of existing code are quite effective for this purpose.


From Swatow's post - "i kinda think that google got a 100% monopoly because at the time they were the BEST search engine"

Emphasis on -best-. Compared to all the others. I.e., altavista, yahoo, ask.com, msn, lycos, infoseek, etc". Google came into the party late, and -displaced- the existing players, by offering a superior product.

Swatow stated that when PHP came on the scene it was the "only way to throw together a website easily", that it's now being displaced by other tech, but because for a time it was the only way to do it easily, it somehow had inherent quality. That would be like saying that because Archie was the first search engine, it had inherent quality.


> As soon as they did, people started shifting to them, and today few people would start a new project in PHP.

At the risk of sounding like I'm doubting you, I honestly think you have no idea what you're talking about.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: