python < shell (for scripts)

alexcoder04@programming.dev to Programmer Humor@programming.dev – 596 points –
67

You are viewing a single comment

Python is the second best language for everything. Having one language that does it all is better than learning several that might do it a little bit better.

Careful, that attitude is how we ended up with this infestation of JavaScript!

JavaScript is very much not the second best language for anything.

JavaScript came about because it was the only choice in the context for which it was designed, and then it metasticized into other contexts because devs that used it got Stockholm syndrome.

Speed is a serious problem in Python though. Python has its use cases, and so do other languages. Things would not end well if we started using Python for everything.

This might be an unpopular opinion but python's speed wouldn't even be an issue if it was 5x slower than it is now.

Python is a language designed for write-time performance, not runtime performance.

I have worked on a lot of real time simulation with python glue. It is.. not fun. I'm a better programmer for it though.

If I wanted to write a 3D game engine, I wouldn't use Python either. But there's zero chance of me ever doing that. For 90% of things 90% of people do, Python works just fine. And the performance thing is actively being worked on and getting better all the time.

Not since 3.11, python is now one of the fastest languages

Definitely not even close to being one of the fastest languages, but still faster nonetheless.

Python is the best "glue" language I've ever used. When you want to chain together your program's high-level logic and all of the loops happen inside lower-level languages like Rust, Go, Zig, D or C, Python's performance is perfectly adequate and it's so clear and concise it reads like pseudocode.

As long as you do all your lookups with dicts or sets performance is pretty decent for smaller workloads.

Python is secretly a functional-paradigm language. If you're not making liberal use of comprehensions instead of loops (especially loops with LBYL conditions in them), you're doing it wrong.

Even worse when you look at a class that’s over 1k long.