Smug Ruby Weenie

Those who think RubyLanguage is so great but have never used SmalltalkLanguage or other powerful but less-popular ObjectOrientedLanguages and so don't have any real basis for comparison.

The RubyOnRails core team seems pretty damn smug.


Signs of a Ruby Weenie:

"EverythingIsAnObject!": Evidence of a background in JavaLanguage and its JavaPrimitiveTypesDiscussion issues. Leads to excitement over "In Rails you say 5.days.ago!"

"Ruby has OpenClasses?!": Indicates unfamiliarity with JavaScript, PythonLanguage, and undoubtedly others.

"Ruby has blocks!" [BlocksInRuby]: Indicates unfamiliarity with SmallTalk, HigherOrderFunctions, inside-out FunctionalProgramming, etc.

"Ruby has method_missing!": Indicates unfamiliarity with PythonLanguage, SmallTalk, CommonLispObjectSystem, perhaps others. See DoesNotUnderstand:.

"In Rails you say 5.days.ago!": Indicates unfamiliarity with ForthLanguage and conflating peculiar features of Ruby syntax with EverythingIsAnObject. StupidPetTricks with TypeTheory.

-- SmugPythonWeenie

"We added 18 new features in 2 days!" A sure sign we are familiar with commercial platforms marketed to the "Enterprise".


...or maybe that just indicates unfamiliarity with another language that has all those things, i.e. SmalltalkLanguage. Or, better, a popular language that has all those things, e.g... maybe, PerlLanguage? Why is it smug to mention that a language has a feature set other languages don't?

The trouble is not "mentioning" language features but jumping up and down about them as if no other languages have them or RubyLanguage does them so much better... all because RubyOnRails is like crack (I hear) compared to JavaTwoEnterpriseEdition, JakartaProject, ZopeApplicationServer, DjangoProject, WebObjects, or whatever.

You've totally departed from the discussion by rejecting the practical use of the tool. You're simply identifying any advantages of Ruby as weenie-isms, for reasons I can't determine. As I'm trying to explain, these are benefits of Ruby because Ruby can be used in environments that require technologies used to be fairly popular. You seem not to understand the situation of people who have to do real work for money.

Thank you. You seem not to understand the situation of disabled people who have to live on the dole. But work and money aside, I am not "simply identifying any advantages of Ruby as weenie-isms." Someone at the top of the page defined SmugRubyWeenies as people who think Ruby is really great because they know no powerful languages to compare it to. I am trying to illustrate that definition by quoting a thrilled Rails programmer I know in real face-to-face life, someone who is not aware of other languages sharing the RubyLanguage features he extols.

Smalltalk is so frequently mentioned in the presence of Ruby it doesn't make sense to me for the enthusiasts not to know about it, but I'll take your word for it. As for the definition, I guess I would agree with it a great deal more if the word "powerful" was replaced with the superset "useful", but I was missing what you were getting at.

I think I misspoke a bit in the previous paragraph. Smalltalk and Python get mentioned all over. (Plus I like to tell people about JavaScript as a language, ignoring web programming.) So, you're right, Ruby enthusiasts are aware that Ruby has loads in common with these, and that Ruby has a lot of Perlisms. But that doesn't mean they have programmed in Smalltalk or these other languages. I know about half a dozen Ruby programmers in real life, and none of us has used Smalltalk. Only one of my Ruby friends (aside from myself) uses Python, and that's after he started learning Ruby. And except for myself, they're kind of clueless about Perl and super loath to write JavaScript by hand. Hence, it's Ruby that brought them out of the dark world of Java and CeePlusPlus (and PhpLanguage and FortranLanguage and ...) and showed them the light, and it's Ruby that turns them on. I've quoted the most comically enthusiastic of my Ruby friends because I get such a charge out of him.

Well, I got into Smalltalk after Ruby, if that makes your day any brighter. I started writing a Settlers of Catan clone on my last trip away from the internet.


Hacknot bemoans the "Invasion of the Dynamic Language Weenies" (primarily RubyLanguage but also PythonLanguage) at http://www.hacknot.info/hacknot/action/showEntry?eid=93

The author responds to a bunch of assertions about dynamic languages by making some other random assertion. See SweepingGeneralizations in the article like "Any claim that a DL has a more natural syntax that another language is just an attempt to elevate one personal preference over another," or "This is just an example of one language community in action, but the same observations hold true for any other language community you might name." It looks to me like the author is just flaming. --JesseMillikan


Most of my problems with ruby aren't language problems - I can (okay, mostly) avoid the pitfalls with lots of discipline & team agreement. The biggest problem I face is the lack of discipline in other people's gems. Just because you can metaprogram and monkey patch doesn't mean you have to make a virtue of doing it as much as possible!

Maybe it suffers Lisp's problem: it's too powerful for team-centric programming. Issues of discipline and coordination tend to override coding productivity past a certain project size.


A SmugRubyWeenie is someone who thinks that Rails was the last significant problem remaining to be solved in computer science.

But does anybody actually think that small? Seriously? People being obsessed with a particular tech or niche I can understand - which might be described here but this "last significant problem in CS" phrase sounds like a straw man to me.


Ruby does not have method_missing! but it does have method_missing. The good news, method_missing will catch your method_missing! ;) CategoryRuby CategoryWeenie


EditText of this page (last edited February 5, 2014) or FindPage with title or text search