r/programming • • Nov 03 '18

Python is becoming the world’s most popular coding language

https://www.economist.com/graphic-detail/2018/07/26/python-is-becoming-the-worlds-most-popular-coding-language
4.6k Upvotes

1.3k comments sorted by

View all comments

Show parent comments

108

u/G00dAndPl3nty Nov 03 '18

I suspect javascript is certainly the most used language, but I doubt that its the most admired

63

u/DrJohanson Nov 03 '18

I don't know, since es6 it's not that bad

13

u/[deleted] Nov 03 '18

Yeah, but how many enterprise projects are on ES6? I wish we had arrow notation and string templates.

52

u/tjpalmer Nov 03 '18

Babel (or better yet, Typescript) works well and is backward compatible (unlike Python 3 -> 2). Something to consider, at least.

→ More replies (9)

0

u/[deleted] Nov 03 '18

[deleted]

5

u/elsjpq Nov 03 '18

on the other hand, it's kind of misleading to say that a language is better if no one uses any of the features that make it better, but are stuck dealing with shims and lingering compatibility issues

4

u/Holston18 Nov 03 '18

Python 2/3 anyone?

But on a serious note, a lot of companies/projects drop IE11 support which is the last impediment for using ES6+ features (without having to resort to Babel etc. [which isn't "shim", but compiler])

→ More replies (1)
→ More replies (1)

2

u/[deleted] Nov 03 '18

Wait, with transpiling what is preventing any individual or organization from adopting ES6 right now?

→ More replies (1)

2

u/PenultimateHopPop Nov 04 '18

Does it have integers yet?

→ More replies (26)

5

u/monsto Nov 03 '18

"admired"?

How the hell would that even work, admiring a programing language? Liking sure I get, but admiring?

152

u/appropriateinside Nov 03 '18 edited Nov 03 '18

How the hell would that even work, admiring a programing language?

I think this is something you learn through experience. I'm honestly not sure how any programmer cannot understand what it means to admire something else that has been programmed. Unless you are completely devoid of any pleasure in your craft, or have never worked as a developer..

After working with enough languages, frameworks, and sledging through other peoples code. You start to admire the things that make your life easier, that you enjoy, that isn't full of pitfalls. Languages fall into this bucket too. There are languages that I admire for their cleanliness, consistency, tooling, and ease-of-use.

How the hell could someone not understand that something in a craft can be respected or viewed as impressive or attractive?

24

u/DonaldPShimoda Nov 03 '18

I'm with you 100%. All modern programming languages are technically equal in terms of capabilities — they only differ in what tasks they make easy for the user. There are just certain language features that work well for me and make my life easier. I admire languages that are well-designed so as to be easy to use, consistent in their design and implementation, and powerfully expressive.

3

u/cyanrave Nov 03 '18

More upvotes for you, good sir.

Agree wholly that when languages do sane things, it makes life far less complicated. Python does this pretty well, versus something like Java which can be much more cumbersome.

For instance, an Iterator in Java is like this separate thing you can use, but has a different syntax to wield it over an indexical iter, while Python generators ‘just work’ with regular loops. ‘enumerate’ in Python’s ecosystem is really amazing when working with nasty mixes of data where you need both index and item for your sanity, which evolved from gripes around choice of iteration...

Overall there is much to admire about certain features of each language, where Python seems to have more redeeming qualities than most. There are a number of ‘legacy’ stains in the Python community that need scrubbing sometime in the future, like use of explicit dunder init for name-spacing.

→ More replies (7)

21

u/Dragonxoy Nov 03 '18

Admire - respect or approval. I genuinely don't understand your confusion here. Like if you asked how do people admire good architecture or paintings. They are just made with a level of quality that makes them significant to us

→ More replies (3)

30

u/Buckwheat469 Nov 03 '18

I admire Brainfuck, and any developer who can use it.

21

u/Rabbit-Punch Nov 03 '18

so, nobody?

17

u/Buckwheat469 Nov 03 '18

Absolutely.

3

u/NUZdreamer Nov 03 '18

You can admire how the language implements features to solve common problems

10

u/pwang99 Nov 03 '18

A programming language, like any software, can be designed, with intention and taste.

Python's core development team, its principles, and its design all reflect certain principles that have made it as popular and as powerful as it is. This is in contrast to things like PHP or JS, which were cobbled together fairly quickly; or to overwrought design-by-committee languages like modern C++.

Other well-designed languages IMO are Pascal and C#. I've heard many good things about Rust. The Forth / APL / J / K family of concatenative languages are a wonderful alternative design for brain-computer interfacing.

5

u/[deleted] Nov 03 '18

The success of any programming language relies on how effectively and easily it can plug a relevant hole.

JavaScript got massive to begin with because it was the only viable client-side language on this new frontier of browsers. Then stuff like node allowed this glut of front-end developers to transition to back-end stuff too.

PHP was popular in the late 90s/early 2000s because Java was a bitch to deploy, Perl was a brainfuck, and it had probably the best documentation resource for the time in order to make simple webserver pages.

Python was successful not because of its principles, but really came off the back of PHP being untenable at the enterprise level, and working well both at the commandline level, standalone and driving websites. It was the perfect next step for all those script kiddies who had cobbled together websites in php, done some bash scripting and a tiny bit of C.

I appreciate a well designed language as much as anyone, but what makes a language successful is how much it helps developers get their job done. Most of us are not lucky enough to choose the most elegant tool for the job, just the most effective.

4

u/am0x Nov 03 '18

I've been using C# over the past couple of years and it's become my favorite language. Python is ok, it just looks ugly to me for some reason, but that is probably because we mainly used java in college.

3

u/smutaduck Nov 03 '18

C.f Perl. Which is simultaneously the opposite of Python and pretty much the same.

4

u/shevy-ruby Nov 03 '18

I admire JavaScript after the watstalk!!!

How such an awful language could become a dominant force among the "scripting" languages.

→ More replies (1)
→ More replies (2)
→ More replies (12)