4 ms·
It's not marginal, not even close.
by adamnemecek 6y ago
It's not marginal, not even close.
- orf 6y agoI disagree, and judging by relative popularity so do most people. I guess the onus is on you to prove that it's not even close.
- adamnemecek 6y agoI don't care about proving anything. You are looking at absolute numbers as opposed to things like growth or experience of people who switched. Even something like inverting a random 4x4 matrix is just so much simpler. In julia it's just "inv(rand(4,4))". In python, you'll have to install numpy first and then writing it out is like 4 times as many characters.
- orf 6y agoIn Python it's also literally "inv(rand(4,4))". And yeah, you need to install numpy first. But if you're doing this work you of course already got it installed.
- adamnemecek 6y agoNo, it's import numpy as np np.linalg.inv(np.random.rand(4,4)) And you have to write it like this, because of lack of dynamic dispatch.
- orf 6y ago> import numpy as np > np.linalg.inv(np.random.rand(4,4)) Which of course is nothing to do with python, and is trivially reduced to the aformentioned `inv(rand(4, 4))` with imports. > And you have to write it like this, because of lack of dynamic dispatch. Not at all.
- adamnemecek 6y agoBut you shouldn't be doing the imports and no one does it like it. You shouldn't import it into the global namespace because you can't dispatch on the type so you need to refer to it by the full name.
- orf 6y agoWell, not really, no. You shouldn't import into the global namespace for clarity - "from numpy import *" is very unclear. But importing specific objects is fine and is done all the time. And if you're in a notebook setting and value "less typing" over everything else it's certainly encouraged. Dynamic dispatch would help if you also defined a "rand" function in scope, but that's a way more general argument and IMO you'd lose more than you gain with it.
- adamnemecek 6y agoOK but the imports don't same much typing.
- dunefox 6y agoPopularity and quality are not really correlated, so the first point is false. As for the second, nobody has to prove anything to you - if you're interested go take a look and you will see for yourself, otherwise don't and keep using Python.
- orf 6y ago> Popularity and quality are not really correlated, so the first point is false Popularity is a good enough proxy for how good a given tool is at a given task. Go give 100 people a hammer and a tootbrush and ask them to nail a plank, and you can divine the relative usefulness of each tool based on the number of people who used each. > As for the second, nobody has to prove anything to you Nobody is beholden to anyone, but if you're putting a contrary position forward with no evidence be prepared to be asked to elaborate. Such is life.
- adamnemecek 6y agoThe comparison ignores things like age (older tools will be ore popular). Certain things have to be experienced. I'm not sure how you want me to prove something like productivity. How would you prove python is better for some things than c.
- deleted 6y ago[deleted]
- fishmaster 6y agoYour analogy is false. Python is popular because it is popular - it has momentum. That's pretty much the only reason.
- orf 6y agoThe reason for pythons popularity is only because it’s popular? Not because it’s suited to any particular task? Then no doubt the majority of those 100 people would use the toothbrush to hammer the nail. It is after all a far more popular tool.