Conversation between a friend [Java programmer] and myself:
Me - I code in Python
Her - I h ate Python, it's overrated
Subscribe in Bek Brace YT Channel
https://www.youtube.com/bekbrace
Join Bek Brace Page @bekbraceinc
https://www.facebook.com/bekbraceinc
Instagram
https://www.instagram.com/bek_brace/
Reach out
info@bekbrace.com
Top comments (41)
This tells more about your fiend than Python.
It's not overrated I don't think, neither is any programing language (apart from solidity and other web3 stuff xD). They all have their place, and we, us developers have the choice to decide what language to use in each situation. Once you know the basics and have a good skillset, the language becomes almost meaningless, you pick the one most appropiate for the task at hand.
I can't express in words how true this is. "programming" fundamentals is paramount. After that, the rest is just learning the nuances.
This month I have written production Java and python. 2 languages that i've never pushed before. ( ruby dev here )
how long have you been developing in Ruby ?
I agree, and I think the main reason she despised Python is only because of its syntax, surprisingly, as she felt more comfortable with C like languages.
But, apart from my colleague, I've read a lot of opinions, especially on Twitter (i don't like to go there often for obvious reasons!) that Python is overrated
Makes sense, we tend to not like stuff we're not familiar with.
I don't use Twitter at all, I despise it, makes me angry each time I use it
same for me, Keff :)
I think it's silly to be as reductive as just "Python is overrated", but to entertain that idea: Yeah, I think in some ways Python is overrated.
I see Python held up on a pedestal for some of its data/academic use cases, or just as the only language to do certain type of work in — but in my experience I can find a library for most of the cool data stuff in any other popular language and I have never felt the need to get into Python deliberately for this purpose.
Python is a much loved programming language for a lot of reasons, but I have definitely met some people who overrate it for one reason or another.
All that being said, saying "I hate Python, it's overrated" is just a personal stance which is fine to have, but doesn't need to be taken very seriously. A lot of people would say that about JavaScript, and they're not wrong, but they're also only right on their own terms.
Agreed, I think it's over-rated because it's the default choice for too many things and increasingly so. It's the lazy "no-risk/no-reward", choice for too many things, where , yes things are doable and people know it, from data-science to backend plumbing, but rarely the best choice.
Absolutely 100% I agree with those words
Thoughtful comment ...
I don't think python is overrated, but I can understand people feel it is.
First, Python is a golden hammer:
Python is slow when badly used (sorry to emphasis, but well used python is extremely fast, even faster than average C++ program). The problem is that python is very bad in doing loops and if.
So, you want to have a look to pyhon, you write an hello world program that sum integer from 1 to n and end up with:
And then you scream "Oh my god that's so f*** slow !!!"
But then, you try for example
And you gain nearly an order of magnitude.
Totally, and even with this problem:
res = 0
for i in range(0, 100000000):
res = res + i
If you think you can fix it with list comprehension:
item = [n+1 for n in range(100000000)]
Then you're wrong, it's so slow
CAUTION Do not try that code, it will slow your system and will freeze the transistors even for some time!
The reason the numpy version of your example is fast is that numpy is written in C. You're really contrasting interpreted Python execution speed (your first example) with natively compiled C execution speed (the numpy version) in this example.
Well, that's the problem. When talking about a language, you don't talk about only the language, but all its ecosystem, its libraries, its package manager, its interop, etc...
WebGL is base on vendor's OpenGL implementation, which in the end are written in C. Does this means OpenGL is not a Javascript library ?
Some part of OpenCV C++ are written in CUDA. Does this means C++ is not fast because it uses CUDA libraries ?
Développer est maintenant plus proche de coller des briques ensemble que d'écrire un algorithme pur en utilisant uniquement le langage.
CUDA is a C/C++ interface enabling utilizing GPUs. It isn't a general purpose language that can be compared to C++. It is complimentary to C++, enabling utilizing hardware that you couldn't otherwise directly use. It is the GPU that is speeding things up in that case and not an alternative language.
In the case of numpy or scipy (both great libraries that I regularly use), the speed advantage comes because those libraries are native C implementations. The Python modules are just wrappers. If they were implemented directly in Python, they would be slow by comparison.
One of the advantages to Python is the combination of (a) it is relatively straightforward to provide a Python interface to C, and (b) its relatively simpler syntax, etc compared to other languages. This is likely why it has been so widely adopted in data science and scientific applications. All of the computationally intense stuff is actually implemented and compiled natively in C. The data scientists, etc, can then use these as needed from Python with its simpler syntax.
And then you try 'n*(n+1)/2' ...
Python the ecosystem? I don't use it, but from what I've heard there's barely anything you can't find a library or a tutorial on, and in some fields specifically (like ML) it's probably the easiest language to get started with, so it's definitely not overrated.
Python the language? Yes, absolutely, it's overrated dog shit and I don't understand how anybody ever adopted it for any serious project let alone how it became as big as it is. I'd rather switch to lisp than to python.
Lisp ? 😆
Yes?
Lisp FTW. I wish it was used a bit more in the industry.
Have you worked with Lisp before ?
Yes, I worked with Clojure.
cool!
I think Python is a little bit overrated, the language has LOTS of potential, but it will eventually not meeting all the expectations people have in it at this moment.
If we recall the Gartner Hype cycle, I believe python not reach the "Trough of Disillusionment" yet.
dev-to-uploads.s3.amazonaws.com/up...
Gartner Hype cycle ... pretty interesting !
I don't think Python is overrated it's far too easy for programmers to become super defensive over their choice of programming language. Like it's two rival sports teams trying to get a victory. I believe there is a tool to suit every purpose and the fact that we have so many tools aka programming languages ensures that there is something out there for everyone.
I can think of one solution to this argument. Just learn as many programming languages as you can or in a lot of cases that tends to be possibly 3 different languages so you can alternative between technical stacks.
Then you can just choose to use whatever you want depending on the use case. For example JavaScript for building websites, Python for creating machine learning apps and C# for game development.
Everybody is a winner!
Let's quote Bjarne Stroustrup:
“There are only two kinds of languages: the ones people complain about and the ones nobody uses”.
That's a good one :D
Same thing. Saying it's "overrated" is basically just short form "many users believe it's the right tool for jobs that there's really much better tools for".
If programming languages were tools, then they'd all have weird quirks like a screw driver that you have to hold with a reverse grip because otherwise it won't grip the screw, or a hammer that can magically hammer in screws as well as nails, but there's a weird bump on the handle that you have to keep your fingers off because otherwise it will pull the nail out instead of hammering it in.
Every programming language has these quirks, but some of them have more than others, and some quirks are more severe.
In that sense, is the screwdriver overrated? Really depends on whether you're comfortable gripping it like that.
Nah, I’m still finding new things in Python everyday