by TheLocehiliosan on 4/28/22, 6:17 PM with 38 comments
by valbaca on 4/28/22, 7:03 PM
1. Python Is Not Fast
It's fast enough and "fast" is relative
2. Python's Syntax Is Too Rigid
WTF???
3. Python Provides a Limited Programming Experience
I'm cracking up at this point.
4. Nothing Really Big Has Been Written in Python
Crying laughing at my keyboard.
Django, NumPy, just to start with
" you'd think someone would have done something more interesting with it by now than write scripts and simple apps. But they haven't, and they probably won't." AAAAHAAAHAHAHA
by PaulHoule on 4/28/22, 6:29 PM
It's not to knock it, but the real strength of Python is as a language that the non-professional programmer can pick up right away and use to put their non-programming skills on wheels.
Jupyter, numpy, pandas, scikit-learn and such are the center of the ecosystem for many people. You can point your finger at these people and tell them to try Julia because it is better on paper... And they will, and they won't like it and they'll go back to Python.
by Ambolia on 4/28/22, 6:45 PM
1. seems straightforward, it would be better if a language was faster.
4. is debatable, most programs are not big, so most programmers shouldn't need to use a programming language better suited for big programs, as long as it provides other advantages, if they are not going to build a big program.
by whatshisface on 4/28/22, 6:34 PM
People have trouble following Python's syntactic rules?
by digisign on 4/28/22, 6:55 PM
This article is not useful, and not-particularly well-reasoned either. Best to let it drop.
by faizshah on 4/28/22, 6:59 PM
The point about speed is nonsense, python is fast when it needs to be due to the ability to optimize python with C/cpp extensions. Also the idea that “every millisecond counts” in 2022 is dubious at best, IoT is just one domain of programming and not even the most popular one.
I have never heard anyone comment about python’s syntax rules being hard to learn, in fact when I first coded in python I just jumped right in with my knowledge of Java and reworking snippets from stackoverflow. I know non-technical people who have jumped into python directly and they run more so into basic errors in logic like accidental quadratics than syntax errors in python, in fact that’s one of the strengths of python.
> knowing how to code in Python is merely one step up from knowing how to run programs in a Bash shell, which is not coding at all.
This is a silly point as well, the strength of python is beginners and even non-technical experts in other fields can program in a simple interactive environment via the REPL or jupyter and do real work. When they want to ship their software they can use the plethora of tutorials to deploy with docker or learn how to distribute wheels. 90% of my software development skills I learned from working on a project in production so I don’t really understand what your choice of programming language has to do with it.
> Nothing really big has been written in python
This is not correct, I think that python is not the best tool for writing a complex web application or web service. However there are many large complex Django apps for instance or ETL pipelines that are written in python.
I think if you were to write a fair version of this article the reasons why python shouldn’t be a top programming language are:
1) lack of a typing system like Typescript
2) no agreement on a standard way of packaging and distributing python programs
3) too many ways to accomplish the same task
4) the GIL
However, I think python should be the top programming language simply because it’s easy to learn, teach, read and write. No matter what problem you have in your python code you can usually google and find an answer or a tutorial. Like I said anyone with a little bit of coding experience can pick up python and accomplish real work in a few days and that’s powerful.
by specproc on 4/28/22, 6:51 PM
I built something this week that takes a source document, extracts entities from the text, uses that to build a query, ranks the results and returns a load of relevant documents.
It's massively useful to me and my organisation, complex enough to require coding, but absolutely sufficient as a quick command line script.
I'm not a CS grad or a serious developer, I only got into coding in the last few years, but I can make all this awesome stuff without worrying about compilers, garbage collection, pointers and whatnot. Python rocks.
by spullara on 4/28/22, 6:40 PM
Except YouTube LOL. Don't get me wrong, Python is not fast. But every time you run into a bottleneck you just rewrite it in C/C++/Rust and move on.
by tbsdrj on 5/4/22, 4:27 PM
by God2022 on 5/4/22, 3:06 PM
by beeforpork on 4/28/22, 6:40 PM
I.e., I cannot read that page without enabling JS in my browser... :-)
by hdjjhhvvhga on 4/28/22, 7:02 PM
by WaffleIronMaker on 4/28/22, 11:48 PM
This person (bot??) has never used Python.
by ohCh6zos on 4/28/22, 6:51 PM
by jredwards on 4/28/22, 6:50 PM
by asdf_snar on 4/28/22, 6:43 PM
"1. Python Is Not Fast"
I'm not a software engineer and I don't have a background in computer science, but in my experience the question of "speed" is always a subtle one. Are you doing scientific computing? If so, there are plenty of Python wrappers that make it easy to run vectorized operations (instead of, say, running for loops). I don't buy the argument that "every millisecond counts" in every scenario. I can't distinguish between 1ms and 10ms when I'm throwing a basic script together.
"2. Python's Syntax Is Too Rigid"
Someone will have to explain this to me. I've never heard Python's syntax being called "too rigid". Python is not a good language to churn out code quickly? I've only heard the opposite ("it's too easy to churn out junk code quickly"). The only qualm I might understand is tabs vs. spaces.
"3. Python Provides a Limited Programming Experience"
> you could argue that Python is creating a generation of programmers who don't necessarily know "complete" programming. They just know how to write interpreted code.
I don't necessarily disagree -- although navigating the web of Python environment hell (obligatory https://xkcd.com/1987/) does force you to learn a thing or two -- but I don't see why Python being a popular programming language necessarily means everyone who uses Python is a programmer.
"4. Nothing Really Big Has Been Written in Python"
I'm not qualified to judge, so I'll just go back to studying C++. Big things have been written in C++ and everyone loves C++ !
by richm31415 on 4/28/22, 6:51 PM
OpenStack and Ansible are pretty large applications/ecosystems