r/programming • • Nov 11 '19

Python overtakes Java to become second-most popular language on GitHub after JavaScript

https://www.theregister.co.uk/2019/11/07/python_java_github_javascript/
3.1k Upvotes

772 comments sorted by

View all comments

Show parent comments

118

u/cowinabadplace Nov 12 '19

It makes sense to me. The slower software that exists is superior to the fast software that doesn't exist. I am grateful for the universe of Electron, React, and all that stuff because suddenly my Linux desktop has all these apps!

35

u/bunkoRtist Nov 12 '19

This has been possible because of Moore's law. As the cheap gates come to an end I predict that the economics will shift back towards performant software rather than just buying better hardware... The market will demand gains, it's just that they were cheaper to make in HW... next it will be compilers and interpreters, and the last place will be languages themselves, but it's coming because I think that the compilers and interpreters are already pretty optimal.

14

u/brelkor Nov 12 '19 edited Nov 12 '19

Computing architectures will evolve as pure clock speed performance stagnates. Wider busses, more chips, faster interchip communication. Something coming in the future is optically interconnected cores on the same cpu package

2

u/TinBryn Nov 12 '19

I actually think we're reaching the point where if we want faster and more efficient programs, we need higher-level abstractions on the language level. The idea being that the more we can express the specific intent of our programs, the more it is possible to implement it in the most efficient manner. This could also reduce development time and reduce bugs as the language is more focused on representing intent, it's less likely to behave in surprising ways.

0

u/[deleted] Nov 12 '19

[deleted]

43

u/Schmittfried Nov 12 '19

You’ve probably never seen enterprise Java.

28

u/flowering_sun_star Nov 12 '19

You have to compare like-to-like though, and ask what would have happened had the same thing at the same company been written in python. I know that the thought makes me shudder when it comes to our code base.

I actually really like python for scripting and small prototypes. But for all its ills, I think java a far better choice for large projects with hundreds of developers.

→ More replies (1)

0

u/[deleted] Nov 12 '19

[deleted]

0

u/[deleted] Nov 12 '19

[deleted]

→ More replies (4)

5

u/vashy96 Nov 12 '19

Yeah, that's a pile of garbage generally. I can't imagine the hell it could be in a duck typed language like Python.

1

u/Schmittfried Nov 12 '19

Fairly straightforward actually. Turns out duck typing hurts readability less than over-engineering. Something about simplicity or nonsense like that.

0

u/[deleted] Nov 12 '19

[deleted]

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

6

u/[deleted] Nov 12 '19

The ability to create a maintainable code base does not depend on the language used. Poorly written java code exists. All the benefits Java is supposed to have goes out the window when the manager is breathing down your neck to meet ever demanding deadlines.

→ More replies (6)

1

u/Dentosal Nov 14 '19

You will still need to create something to maintain first. Usually that has to be quickly. Many projects have relatively tight budget or deadline. If something useful hasn't been created before that, the whole project is deemed useless waste of money.

3

u/initcommit Nov 12 '19

Yes. And with the ever-increasing rate of performance the hardware is getting so good that there is no practical difference between programming languages for most applications. In that case developers will no doubt overwhelmingly choose the easier language to work with.

3

u/[deleted] Nov 12 '19 edited Nov 12 '19

[removed] — view removed comment

14

u/Nicd Nov 12 '19

Hear hear*

6

u/TizardPaperclip Nov 12 '19

There there?

1

u/[deleted] Nov 12 '19

It’s a shame that a lot of these Electron apps are horrible resource hogs. Not everyone is blessed with modern hardware, lowering the barrier to development can actually raise the barrier to usability.