Working with Python always leaves me with a sour taste in my mouth and frustration after having to try and figure out how to make modern concepts work well, and giving up and going back to old imperative styles of coding.
Working with Python always leaves me with a sour taste in my mouth and frustration after having to try and figure out how to make modern concepts work well, and giving up and going back to old imperative styles of coding.
It's definitely easy to write unreadable Python code, just as your can write easily readable Ruby code. But I think that some of the "clever" things that the Ruby language allows (some of the things that make it fun, things that aren't considered obscure or advanced features) tend to make Ruby code more difficult to comprehend.
It's really quite readable once you have worked with the language a bunch.
I find that's kind of the point. Python was extremely easy the first time,
Learning Ruby took me twice as long and the output was not really an improvement.
You say Python is readable, I say it is obnoxiously pedantic. (Among many other critiques). Honestly I find Java to be easier to parse than Python
My love goes to Ruby though...
I'm a programmer, not a wizard...
Where does the frustration come from with Python being more popular than Ruby, is it that some libraries can only be found in Python?
Both ecosystems have produced a lot of "content" and there's certainly some things Ruby got better. But because Python has won more marketshare the ceiling of those ruby tools feels lower.
Now the reasons python won aren't hard to find:
* data science / machine learning dominance
* closer to Java/C++ gives it a huge edge in academia as a beginner language
* Python is bigger then the sum of its parts where as people see Ruby as a dependency of Rails (only half joking)
* ...
It has an entire arsenal of pre-made decorators.
I've found Python's original paradigm, "create deep, object oriented libraries, and have users write procedural/functional scripts in production," to be absolutely excellent.
These days though, the world's most popular programming language has been extended, and not in a bad way.
You can do just about anything in it, and it'll be a really good experience (and extremely slow code...).