3 ms·
Hate to sound preachy, but compare to Python developers, who very carefully maintain and update their stdlib. I feel like it is risky to commit to using Ruby f
by brendano 16y ago
Hate to sound preachy, but compare to Python developers, who very carefully maintain and update their stdlib.
I feel like it is risky to commit to using Ruby for the long-term.
- tptacek 16y agoIs that a joke? How many different interfaces are there to popen(3)? How many different ways to get the current time? If Ruby's standard library is a ghetto, Python's is a jungle. If you like Python, I don't know why you'd even think about "committing to Ruby for the long term"; you're a Python dev. They're practically the same language. Stop trying to pick fights.
- bdr 16y agoYes, there are many interfaces to popen, but that doesn't refute the grandparent, who claims that the Python stdlib is maintained and updated. See the top of http://docs.python.org/library/subprocess.html http://docs.python.org/library/subprocess.html -- the bad solution was deprecated, and a good solution was created. This is movement towards goodness, which the OP laments the lack of in Ruby.
- kingkilr 16y agoIt's the ciiircle of liiffeee...
- viraptor 16y ago> How many different interfaces are there to popen(3)? popen, popen2 - both deprecated. The new "proper" one is available since 2.4 (quite a long time now) - subprocess. > How many different ways to get the current time? time.time() <- timestamp, datetime.now() <- date Is this that bad? Sure, popen and popen2 are silly, but they're left for compatibility, while subprocess was introduced to update stdlib (as OP claimed). It's hardly a jungle...
- keyist 16y agoGP is trolling. No need to counter-troll while feeding. The flamebait on committing to Ruby does not invalidate his point on stdlib maintenance though. We can sit here and ping each other with examples of cruft all day. I think it can be shown objectively that Python's standard library is better maintained. I'll attempt to below. I'm not saying this has a great significance in picking one language over the other in and of itself. Just that if you want to talk specifically about stdlibs, the differences are pretty clear-cut imo. == In terms of quantity of updates == - Mar 13 2007: Ruby 1.8.6 launched - May 18 2008: Ruby 1.8.7 launched - Distance: ~14 months - Sep 19 2006 Python 2.5 launched - Oct 18 2008 Python 2.6 launched - Distance: ~23 months So discount the amount of 2.5->2.6 changes accordingly to account for the extra time. Then compare stdlib changes: - Ruby: http://svn.ruby-lang.org/repos/ruby/tags/v1_8_7/NEWS http://svn.ruby-lang.org/repos/ruby/tags/v1_8_7/NEWS - Python: http://docs.python.org/whatsnew/2.6.html#new-and-improved-modules http://docs.python.org/whatsnew/2.6.html#new-and-improved-mo... or http://www.python.org/download/releases/2.6.1/NEWS.txt http://www.python.org/download/releases/2.6.1/NEWS.txt == In terms of quality of documentation == Compare http://www.rubydoc.info/docs/ruby-stdlib http://www.rubydoc.info/docs/ruby-stdlib to http://docs.python.org/library/ http://docs.python.org/library/ You'd need to compare across actual libraries (unittest vs Test/Unit etc). I didn't provide specific examples in links to avoid inevitable accusations of cherry-picking. == In terms of process == Compare http://www.python.org/dev/peps/pep-3108/ http://www.python.org/dev/peps/pep-3108/ to... closest equivalent I could find was http://redmine.ruby-lang.org/projects/roadmap/ruby-19 http://redmine.ruby-lang.org/projects/roadmap/ruby-19 . Anyone with a better link?
- j_baker 16y agoYou could pretty much substitute Ruby for Python in this post and it wouldn't change much. I mean, right down to the http modules being outdated and non-idiomatic (especially urllib and urllib2). I seem to recall reading somewhere that they were written by Guido himself and were some of the first pieces of the python standard library.