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.
“Metastasized” is a fantastic verb for JavaScript
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.
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.
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.
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.
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.
holy shit you’re right
Friends don’t let friends do string manipulation in bash.
youre right
thats what
sed
is forWell this is awk-ward
That’s what she sed
I think we some ed-ucation here
Anything I can do in Shell I will do in Shell and yes I am a devops engineer thanks for asking.
Shellcheck really helps
Obligatory relevant xkcd https://xkcd.com/1205/
Both are
<
HTML:How to meet ladies?
deleted by creator
MFW I’m using sh variant #7923 and trying to write a for loop.
On that other site, I compared it to being a lifelong English-speaking resident of Chicago and being unable to order a pizza in Indianapolis without a phrasebook.
The only validation you should expect and need is self-validation.
Your work is absolutely valid and important. Your efforts are absolutely appreciated and worthwhile. But people are stuck in their own heads and work and stress and concerns and desires and validation loops and it takes actual work to break out of that to not only offer appreciation but to even realize that they need to offer it.
And for that reason, you should also really appreciate anyone that validates you.
I know a bit of HTML so I just started learning Python. It’s fairly easy and fun, haven’t made anything real yet tho
Things that could have been done in bash is python’s best usecase. And bash sucks for scripting. Why not python?
There are many cases where bash/shell is better than Python. For one, any time you’re just stringing together 2-4 existing shell tools, bash has unbeatable speed since it’s all running in C. Plus, you should probably learn the tools anyways to handle CLI stuff on a day-to-day level, so the knowledge is reusable and becomes very intuitive to compose into some crazy one-liner piped chains of commands. If I just want to loop over a set of directories and do a couple chained CLI commands on each directory, this is the way I go.
That said, in cases where you’re doing something very custom, any time you’re doing something that can’t be simply described as a chain of CLI tool transformations, and any time you want to maintain a global state across a complex set of operations outside of a pipeline, I agree that Python is generally a more robust solution with much easier maintainability.
compose into some crazy one-liner piped chains of commands
Why not something that is completely redesigned from the ground up:
That looks really elegant. I think I’m gonna give it a try. Thanks a lot for the recommendation!
have you ever tried to recreate a simple shell pipeline in Python
If we’re talking about 5 like script, then sure. Just use bash. But python is much better long term, in my experience, for scripts any bigger than that.
Xonsh
Not really true. Python was created for, and is still best used for data science. It’s user-friendliness made it a first for many inexperienced programmers too, and it started to be used for way more than it was initially intended. I’m not saying it’s bad at everything else, but there’s most certainly better tools for the job.
I won’t argue with what it was created for, but I disagree that it’s best usecase isn’t as a bash replacement. That’s the only spot I’ve used and liked it.
Groovy is better
thoughts on lua ?
Lua is weird, but I would rank it same as Python
Lua is not as common as python. Every team I’ve worked on knew X and python. C++, Java, JS, or node, and then also python.
lua is hot and sexy
If I have to install it myself instead of being able to assume it’s on the system by default, that’s a Problem.
… minimastic iso users: 😐
also i think it comes with neovim
I’m using G’MIC for raster-graphic image-processing, but I can do other things in it too with ease. I feel this post so much.
They may not know but they will when I explain kekeke
deleted by creator
Python is never the right answer!
what is a well-known genus of non-venomous snake ?
Anaconda!
Wait…
This isn’t jeopardy! 🤣
lol
I know there’s a lot of downvotes because there are people reading this as hate toward Python. On one hand, one can make the case that it is overused and this doesn’t bold well for those that simply can never like it’s syntax. On the other hand, Python is perfect for small scripts that isn’t tailored for a Domain or just quick codes.
Honestly, I’m not really a fan of the formatting and syntax of Python but I agree, it is a fine choice for scripting things quickly if you don’t mind the language itself.
The biggest issue I have with it are all the incompatible versions, juggling modules, having some other random thing with a ridiculous configuration, where a bash script would be infinitely easier. Anything more complicated and Python is just too much of a headache.