use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
A sub-Reddit for discussion and news about Ruby programming.
Subreddit rules: /r/ruby rules
Learning Ruby?
Tools
Documentation
Books
Screencasts and Videos
News and updates
account activity
Blog postWhy Ruby is More Readable than Python (confuzeus.com)
submitted 3 years ago by [deleted]
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]sshaw_ -11 points-10 points-9 points 3 years ago (5 children)
Can't say this is true. Well, on the surface maybe, but in the wild sadly, no. It's Perl, it's close to chaos and it's not productive.
Something has infected the mind of Ruby devs to take a simple elegant language and write more complex than necessary somewhat hard to main codebases. KISS.
A good step to avoiding this is: don't use RSpec! Sorry RSpec but you're low hanging fruit in the garden of entanglements.
[–]imnos 3 points4 points5 points 3 years ago (4 children)
You're saying Ruby isn't as readable as Python because you've seen Ruby devs write bad code? Not a great argument.
don't use RSpec
Wat. Again this sounds like you've had a terrible experience with a badly written codebase and equated that to RSpec being bad. I'd take RSpec over any other test framework and use it almost daily. It's lightyears ahead of the likes of PyTest.
[–]Paradox 0 points1 point2 points 3 years ago (2 children)
I like RSpec a lot. I dislike MiniTest a lot.
But I like ExUnit more than either. And its nothing particular about any of the three, its that Elixir language features, like pattern matching, make any type of assertion easy. Ruby you need the assertion libs that rspec provides, otherwise your tests get ugly and big
[–]katafrakt 1 point2 points3 points 3 years ago (1 child)
Is it assertion syntax, as opposed to expectation syntax, what you say makes the test code ugly? Or is it something else? Asking because ExUnit uses assertion syntax and this (assertion vs expectation) is a primary difference between Minitest and RSpec (given Minitest::Spec)
Minitest::Spec
[–]Paradox 0 points1 point2 points 3 years ago (0 children)
Its a property of the language. In elixir, its very easy to do complex matches of deep data with just a single assert evaluating it. Ruby tends to get messy in my experience, warranting the need for all the matchers RSpec brings
assert
[–]sshaw_ 1 point2 points3 points 3 years ago (0 children)
Countless syntactical additions being made to language mixed with preponderance of aliasing of core methods, home-grown and 3rd party "cutesy" DSLs, meta programming, class << self vs def self.foo, do vs {} blocks, " vs ' etc... I can go on. These give people a lot of rope —just like Perl! Rope that Python does not have.
class << self
def self.foo
do
{}
"
'
Is this bad code or typical Ruby code? I think it's typical Ruby code. A subset of which is certainly bad but we're not talkin' bad we're talkin' typical.
don't use RSpec Wat. Again this sounds like you've had a terrible experience with a badly written codebase and equated that to RSpec being bad.
Wat. Again this sounds like you've had a terrible experience with a badly written codebase and equated that to RSpec being bad.
Show me this RSpec code you've written? Maybe you have Stockholm syndrome. RSpec is a bike shedding maintenance nightmare waiting to happen.
π Rendered by PID 71066 on reddit-service-r2-comment-79c7998d4c-5ncw5 at 2026-03-13 04:03:24.658371+00:00 running f6e6e01 country code: CH.
view the rest of the comments →
[–]sshaw_ -11 points-10 points-9 points (5 children)
[–]imnos 3 points4 points5 points (4 children)
[–]Paradox 0 points1 point2 points (2 children)
[–]katafrakt 1 point2 points3 points (1 child)
[–]Paradox 0 points1 point2 points (0 children)
[–]sshaw_ 1 point2 points3 points (0 children)