5 ms·
Honestly I will always be saddened by the fact in this reality Python won out over Ruby in the readable scripting language wars. Writing Ruby feels elegant, it
by buscoquadnary 4y ago
Honestly I will always be saddened by the fact in this reality Python won out over Ruby in the readable scripting language wars. Writing Ruby feels elegant, it feels fluid, it feels like creating.
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.
- shadowofneptune 4y agoPython's mission statement has been to be the most ergonomic imperative language. That it doesn't support other styles of programming doesn't seem so bad to me, languages do not need to be multi-paradigm. Where does the frustration come from with Python being more popular than Ruby, is it that some libraries can only be found in Python?
- tmpz22 4y ago> Where does the frustration come from with Python being more popular than Ruby 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) * ...
- urthor 4y agoPython has excellent support for dependency injection and monkeypatching these days. 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...).
- akerl_ 4y agoWhat’s the measure by which Python “won out” over Ruby? Both seem to have pretty broad usage.
- jnwatson 4y agoOne reason Ruby lost is the culture of monkey patching. The same facility exists in Python but is used much more sparing due to the mess it makes.
- int_19h 4y agoIs it part of the Ruby culture, or part of the Rails culture?
- kevingadd 4y agoI know when I did some RPG Maker XP hacking they extensively crammed stuff onto Object, so I suspect the culture is not limited to Rails.
- BurningFrog 4y agoI guess this is what I think of as the "Too Much Magic" problem in Ruby. I'm a programmer, not a wizard...
- wyldfire 4y agoI don't know that I ever gave Ruby a fair try but reading the source felt like it was too Perl-inspired for me.
- adambatkin 4y agoIt is notable that you said "Writing Ruby feels..." but made no mention of _reading_ Ruby. I think I agree with you that I enjoy writing Ruby more, but I definitely enjoy reading Python. 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.
- pdntspa 4y agoEh, that just means you haven't read enough Ruby. It's really quite readable once you have worked with the language a bunch.
- mulmen 4y agoI say the same about perl.
- pdntspa 4y agoAlso a fantastic language!
- urthor 4y ago"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.
- pdntspa 4y agoIf we select only for readability, we reduce down to a single language. Which would be something that most closely matches the readers' background... which puts us back at square one. 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...