this post was submitted on 15 Jun 2023
169 points (95.2% liked)
Programming
17534 readers
130 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities [email protected]
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
There’s a catch here, something I read someone mention on Hacker News and I agree. Python is easy when you don’t care about performance; the moment you need to worry about it, all the easiness gets thrown away.
Everything is easy when you don't care about performance.
Have you ever used py-spy? It's an excellent profiler for Python code (written in Rust 😉). It can attach to a running process and tell you what line is taking the most time. Seems pretty easy to me. (Which is not to say Python can achieve optimal C speed.)
I don't think there's such an easy profiling tool for C or Rust? But I'd be happy to be proven wrong here.
Go solve 20 or 30 Project Euler problems. All of them are solvable in less than a second using Python (or any language). Write your solutions in C or Rust and you will soon see that a naive or brute-force solution in Rust will literally never finish (the heat death of the universe will come first), but a clever and efficient solution in Python takes less than a second.
This is why I say algorithms matter more than language. There's like 2 or 3 orders of magnitude to be had by choosing the fastest language (which is to say, Rust might be 1000 times faster than Python in some cases), but there's like 10 or 20 orders of magnitude to be saved using the right algorithms sometimes.