Slashdot Mirror


Is Ruby Dying?

New submitter John Moses writes "I have been working with node.js a lot lately, and have been discussing with co-workers if node.js is taking steam away from Ruby at all. I think the popularity of the language is an important talking point when selecting a language and framework for a new project. A graph on the release date of gems over time could help determine an answer. The front page of RubyGems only shows data on the most popular, but I am really interested in seeing recent activity. My theory is that if developers' contributions to different gems is slowing down, then so is the popularity of the language."

59 of 400 comments (clear)

  1. Short answer: no by gentryx · · Score: 5, Insightful

    Long answer: a better indicator is how many Google queries for the respective languages are issued. And those suggest that Ruby is standing stronger than ever. Ruby is more than just Rails. And just because there is yet another web apps framework, it doesn't mean that the other ones automatically lose traction.

    --
    Computer simulation made easy -- LibGeoDecomp
    1. Re:Short answer: no by hjf · · Score: 3, Funny

      Silly programmer, you're not an "coder"! You don't know what's cool and what's not. Look at that UID. You must be like, 35! Yuck, old people!

    2. Re:Short answer: no by hjf · · Score: 2

      Oops... meant "a coder". I was going to put "an app developer" but changed my mind at the last minute...and forgot to fix the "an".

    3. Re:Short answer: no by Tchaik · · Score: 2

      Nice graph. You'll have better luck with 'javascript' than 'java script' though.

    4. Re:Short answer: no by lgw · · Score: 3, Insightful

      How about picking the best tool for the job, rather than holding a popularity contest? Too old-fashioned?

      It's good to avoid going too far off into the weeds, lest you find it impossible to hire someone to support code in some pet language, but that's not the concern here. Of the universe of languages, both mainstream and niche languages commonly used in your niche, pick the one that makes it easiest to develop and support the features in front of you.

      It's pretty obvious someone is playing "what language will look best on my resume" here, and if playing that game is obvious to me from this distance, it will be glaring to hiring managers. Few people are looking for a history of "trendy" (you'd be amazed how fast "trendy" becomes "sad" in tech), while a history of doing the dirty, unpopular, work that keeps development teams productive is always welcome, long after the tech stack fades into obsolescence.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    5. Re:Short answer: no by Anonymous Coward · · Score: 3, Insightful

      Interesting that even though PHP's interest has declined over time (according to the same chart), it's still more popular than Python & Ruby combined.

    6. Re:Short answer: no by Lisias · · Score: 4, Informative

      Nice try (intentionally spelling "java script" is not cute, dude!).

      Here, I fixed it to you.

      Not a surprise, anyway.

      --
      Lisias@Earth.SolarSystem.OrionArm.MilkyWay.Local.Virgo.Universe.org
    7. Re:Short answer: no by Tumbleweed · · Score: 5, Funny

      Look at that UID. You must be like, 35! Yuck, old people!

      Careful there, kid. :)

    8. Re:Short answer: no by hjf · · Score: 3, Funny

      Eeeeeeeeeewwwwwwwwwwww dirty old man!

    9. Re:Short answer: no by kelemvor4 · · Score: 3

      How about picking the best tool for the job, rather than holding a popularity contest? Too old-fashioned?

      It's good to avoid going too far off into the weeds, lest you find it impossible to hire someone to support code in some pet language, but that's not the concern here. Of the universe of languages, both mainstream and niche languages commonly used in your niche, pick the one that makes it easiest to develop and support the features in front of you.

      It's pretty obvious someone is playing "what language will look best on my resume" here, and if playing that game is obvious to me from this distance, it will be glaring to hiring managers. Few people are looking for a history of "trendy" (you'd be amazed how fast "trendy" becomes "sad" in tech), while a history of doing the dirty, unpopular, work that keeps development teams productive is always welcome, long after the tech stack fades into obsolescence.

      All these pseudo-languages look bad to me when I review resume's. If you want to impress, learn C, C++, Assembler, or a few other real languages. Ruby, C$, VB, Python etc... those can be picked up on the fly if needed.

    10. Re:Short answer: no by SuricouRaven · · Score: 4, Insightful

      Learn C. Almost everything else draws from it. Learn C, and you're half-way to learning anything else.

    11. Re:Short answer: no by dunkelfalke · · Score: 4, Insightful

      The problem with it is that if you learn C as first language, you probably will always write C in any language. With all the ugly hacks and trying to reinvent the wheel time and time again.

      I write in C for a living, but frankly, while I love my job, I don't like the language. It is just a bit more high level than a macro assembler and full of crazy behaviour.

      --
      "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
    12. Re:Short answer: no by mellon · · Score: 2

      It probably doesn't. It probably has to do with Drupal.

    13. Re:Short answer: no by lgw · · Score: 4, Interesting

      I got hired at both my current and previous jobs with no expertise in the languages used, and paid quite well. Experience with the problem domain, and with doing the dirty jobs senior devs volunteers for (because dammit we can't keep working this way) is what matters. In my experience, it's only really the bottom-feeder companies that are looking for a very specific tech stack instead of "smart enough to come up to speed;" the kind of places you work when you're desperate for anything, not what you want to steer towards!

      --
      Socialism: a lie told by totalitarians and believed by fools.
    14. Re:Short answer: no by JWSmythe · · Score: 2

      Don't worry about it, QA will catch it before it goes to production. That's the new world of development. Write your code as horribly as you want, someone will fix it later.

      --
      Serious? Seriousness is well above my pay grade.
    15. Re:Short answer: no by shutdown+-p+now · · Score: 5, Informative

      the compiler is free to rearrange the order of the fields as it sees fit.

      No, it is not. ISO/IEC 9899:1999, 6.7.2.1 "Structure and union specifiers", paragraph 13:

      "Within a structure object, the non-bit-field members and the units in which bit-fields reside have addresses that increase in the order in which they are declared. A pointer to a structure object, suitably converted, points to its initial member (or if that member is a bit-field, then to the unit in which it resides), and vice versa. There may be unnamed padding within a structure object, but not at its beginning."

      The C++ standard has a similar provision. What's unspecified is whether there is any padding between the fields.

    16. Re:Short answer: no by shutdown+-p+now · · Score: 3

      Oh, one other thing that's different in C++: the relative order of fields in a struct/class in different visibility blocks is unspecified. So, for example, in this one the fields must be ordered:

      class foo {
      public:
        int x;
        int y;
        int z;
      };

      Whereas in this one, x and y must be ordered exactly as specified, but z may precede or follow them:

      class foo {
      public:
        int x;
        int y;
      public:
        int z;
      };

    17. Re:Short answer: no by hutsell · · Score: 2

      Long answer: a better indicator is how many Google queries for the respective languages are issued. And those suggest that Ruby is standing stronger than ever. Ruby is more than just Rails. And just because there is yet another web apps framework, it doesn't mean that the other ones automatically lose traction.

      The Google trends supplied in your link used generic search terms, seriously skewing the results inaccurately about programming languages. Stuff about reptiles, famous comedy acts and things such as an infamous Italian scandal (and whatever else) were being included. By replacing the display with terms specific to programming, this version showing trends for searches about programming languages in Ruby, JavaScript, PHP, Java and Nodejs should show something a little more meaningful.

      Since the summary is more interested in just Ruby and Node and those trends with the other 3 are difficult evaluate, showing those two together, separated from the others, helps in the evaluation. (I left out Python, not due to any agenda of my own; there were problems with the search terms I wasn't able to resolve.) Fwiw, when it comes to the top regional preferences for these two languages: Japan is for Ruby while South Korea & Iran are for Nodejs. (Cuba prefers PHP).

      --
      Yesterday's Weirdness is Tomorrow's Reason Why
    18. Re:Short answer: no by reikae · · Score: 2

      Am I misunderstanding what you mean with the struct member reordering? According to this Stack Overflow question's accepted answer the compiler isn't allowed to do reordering. I don't see why typedef would change that, but I freely admit I'm in the 90% of C programmers, hence this post.

    19. Re:Short answer: no by Algae_94 · · Score: 2

      Wordpress runs far more websites than Drupal. Drupal sites probably have more useful content though.

    20. Re:Short answer: no by mellon · · Score: 2

      Very true, but I suspect the reason behind this phenomenon is that people who use Wordpress are looking for something they don't _have_ to program.

    21. Re:Short answer: no by NormalVisual · · Score: 2

      Really. It's all about how many check-ins your boss sees from your account every week.

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
    22. Re: Short answer: no by alta · · Score: 2

      Nice to meet you fellow 4...

      --
      Do not meddle in the affairs of sysadmins, for they are subtle, and quick to anger.
    23. Re:Short answer: no by buddyglass · · Score: 2

      Which metric? I included four candidates. Let's look at how perl fares on each, in order:

      1. Google trend data for perl programming. That certainly doesn't bear out the assertion that perl's where its at. In fact, it looks more like the trend line for Ruby and PHP. Which is to say asymptotically approaching zero.

      2. TIOBE. Perl doesn't fare very well here either, ranking 12th in Dec. 2013 after having ranked 9th in Dec. 2012. Python is stead at 8th. PHP is steady at 6th. Ruby looks more like perl, falling from 10th to 13th.

      3. Jobs at LinkedIn. Perl: 132 results. Better than Ruby, but vastly less than Python and PHP.

      4. Programmer perception survey. Specifically, the question "This language is likely to be around for a very long time." Python is rated most likely to be around for a long time, followed by perl, then Ruby, then PHP.

      So I gotta ask...how does even one of these metrics suggest that Perl's future "outshines them all"?

    24. Re:Short answer: no by Anonymous Coward · · Score: 2

      the compiler is free to rearrange the order of the fields as it sees fit.

      Spoken like someone who clearly doesn't code C at all. If your compiler reorders your struct members, you need a new compiler. The padding between those struct members isn't guaranteed, unless you use something like #pragma pack or something.

      Basically I'm terribly tired about this: "learn C and all is good" /. myth.

      Perhaps if you had learned C, you'd understand why this is not a myth.

    25. Re:Short answer: no by Jack9 · · Score: 2

      > How about picking the best tool for the job, rather than holding a popularity contest? Too old-fashioned?

      How do you judge best tool for the job? That isn't an objective question. How would I know if Ruby is the right tool for me?

      The more useful question is "what does the tool offer" and Ruby doesn't have much going for it. If you are using a tool that uses Ruby (like Gherkin), you have a compelling reason to use Ruby. The cost tradeoffs, for integrating one of the many equivalent languages, usually results in the language of least resistance. This doesn't bode well for that language as the primary driver for adoption...excepting when the language has no real competition, as happened with ECMAScript->javascript in the browser.

      You want Ruby/Python/Go to become the most common language and last beyond your lifetime? Get the major browsers to integrate runtimes for those languages. What happened to browser development? Instead of speeding up rendering by 12% I would gladly trade the ability to write and serve client side code in Ruby and have Mozilla automatically (with permission) download a runtime for it. Even if the performance sucked or the features were hobbled.

      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    26. Re:Short answer: no by madprof · · Score: 2

      I kind of miss the hot grits and petrified Natalie Portman. Kind of. I also miss chicken pox.

    27. Re:Short answer: no by fatphil · · Score: 2

      C++ isn't C.
      Global variables aren't structure members.
      Local variables aren't structure members.

      You cannot correct mistakes about structure members in C by making statements about C++, global variables, or local variables.

      And quite why you've assumed there's a stack for local variables I don't know - there's no mention of local variables being on a "stack" in the C standard. Architectures which didn't use a stack for local variables never had stack overflows, there was much to be said for them.

      I do not feel you are qualified to make comments about so-called C experts.

      --
      Also FatPhil on SoylentNews, id 863
    28. Re:Short answer: no by synaptik · · Score: 2

      Git off my lawn.

      --
      HSJ$$*&#^!#+++ATH0
      NO CARRIER
    29. Re:Short answer: no by fatphil · · Score: 2

      You gave irrelevant examples. Your depth of misunderstanding in this entire thread - starting with your own initial post - is horrifying. Please develop reading skills more advanced than a 5-year-old.

      --
      Also FatPhil on SoylentNews, id 863
  2. Netcraft Confirms It by Anonymous Coward · · Score: 5, Funny

    It is now official. Netcraft has confirmed: Ruby is dying.

    One more crippling bombshell hit the already beleaguered Ruby community when IDC confirmed that Ruby market share has dropped yet again, now down to less than a fraction of 1 percent of all languages. Coming on the heels of a recent Netcraft survey which plainly states that Ruby has lost more market share, this news serves to reinforce what we've known all along. Ruby is collapsing in complete disarray, as fittingly exemplified by failing dead last in the recent programmers survey.

    You don't need to be the Amazing Kreskin to predict Ruby's future. The hand writing is on the wall: Ruby faces a bleak future. In fact there won't be any future at all for Ruby because Ruby is dying. Things are looking very bad for Ruby. As many of us are already aware, Ruby continues to lose market share. Red ink flows like a river of blood.

  3. Re:Node.js? Dude, that was so last year by Lisias · · Score: 2

    The cool kids are using Go for their server apps and infrastructure projects.

    While their parents are taking real jobs and paying the bills!

    --
    Lisias@Earth.SolarSystem.OrionArm.MilkyWay.Local.Virgo.Universe.org
  4. not dying in DevOps by thule · · Score: 4, Insightful

    Chef and Puppet are huge in DevOps. It seems Ruby has found its niche.

  5. Contributions also slow down with maturity by stox · · Score: 2

    Now people can spend much more time actually writing applications than writing supporting infrastructure.

    --
    "To those who are overly cautious, everything is impossible. "
    1. Re:Contributions also slow down with maturity by Xtifr · · Score: 2

      I think that's as bad of an oversimplification as the original thesis. But it certainly raises an important issue the submitter seems to be ignoring. For a highly modularized system, a lack of contributions to particular modules may well simply indicate that those modules are mature and don't need a lot of additional contributions any more. To really get a feel for the health of the overall ecosystem, you have to take a broader view.

  6. But Node.JS IS WEBSCALE by Billly+Gates · · Score: 5, Funny

    Node.js invents threading/processes and is webscale.

    The best part is once you start coding it you will find yourself with a neat trimmed beard in designer plaid in a hip coffee shop listening to music not even out yet with 2 georgous ladies by your side giggling and being turned on by your most awesome code that is on your laptop screen.

    1. Re:But Node.JS IS WEBSCALE by Animats · · Score: 3, Interesting

      But it's web scale.

      The event/callback/state machine model is a pain to program in, but at least you don't have race conditions on shared data. Also, now that most Javascript programmers are aware that the language supports closures, callbacks aren't so hard to code properly.

      The classic problem with threads is that the usual locking primitives (which are almost always variants on the POSIX primitives) are treated as an OS object, rather than part of the language. For most languages, the language has no idea of which locks lock what data. Ada gets this right, but the Ada rendezvous is clunky. Even Go gets this wrong. (See the endless discussions of "is this a race condition?" in the Go newsgroup.) So race conditions are common in threaded software, and a cause of random failures.

      Practical problems with threads include crappy implementations of lock primitives that make a system call even in the non-blocking case, the cost of fencing on superscalar CPUs, and poor scheduler coordination between context switching and message passing.

      Most of those issues are way too theoretical for the average web programmer. It's better that they not have to think about them. There's a lot of web code to be written and we don't want to waste the good people on it.

  7. Node.js by thammoud · · Score: 4, Interesting

    We had to swallow a dagger and use JavaScript on the client as it is the only game in town. Please someone, enlighten me, why would I use this horrific language on the server side? What exactly am I missing? What is so great about Node.js that warrants having to deal with JS.

    1. Re:Node.js by countach74 · · Score: 3, Interesting
      JavaScript is rather misunderstood. It does, indeed, have issues--perhaps more than other languages (I'd say certainly more than say, Ruby or Python). But it has merits as well that most people overlook or simply don't know about. It is, for instance, very expressive. Particularly in the server-side programming realm, NodeJS has a few advantages to it that most other languages / frameworks don't (or require more difficulty in implementing), such as:

      1. Naturally asynchronous, NodeJS allows vastly more I/O than a similar threaded solution. Need to implement long polling for 2,000 concurrent users? Not a problem.

      2. The ability to share libraries and other code effortlessly between server-side and client-side applications.

      Some of the down sides to NodeJS are that, well... it uses JavaScript. Seriously, though, it could be worse: it could be PHP. JavaScript really isn't that bad, once you actually learn the language. I hated it until fairly recently because I didn't really understand it. Now that I've spent some time learning its intricacies and quirks, I am much more productive with it. I can even enjoy using it. Would I prefer using Python? Absolutely. But it's really not so bad.

      Moving forward though, I think one of the biggest problem with JavaScript in general is that we have far too many people who know just enough JavaScript to be dangerous that trying to establish high community standards will be very, very hard. In fact, one of the reasons I like Python so much is not that Python itself is all that great (it, too, has issues), but rather that there are countless excellent, well maintained, well designed libraries available. The same is simply not true for JavaScript in general.

    2. Re:Node.js by Billly+Gates · · Score: 2

      We had to swallow a dagger and use JavaScript on the client as it is the only game in town. Please someone, enlighten me, why would I use this horrific language on the server side? What exactly am I missing? What is so great about Node.js that warrants having to deal with JS.

      Because web developers think they invented threading. They like node.js because they can do block/non block I/O and asynchronize programing and can write something hip called events to manage them with a new technology called a scheduler.

    3. Re:Node.js by countach74 · · Score: 3, Informative

      No, more like: http://pastie.org/private/ij3rdcgtkgteefgwj57mfg

      I realize that's just an example of simple inheritance, but not bad for using nothing more than functions and prototypes. Yes, it's a little verbose. You can also do prototypal inheritance, etc. The point is that with just a couple of constructs, JavaScript can do things that most languages must separate into many more statements, expressions, etc. But to clarify, I am *not* saying JavaScript is awesome; it clearly has limitations. But it is pretty amazing what all can be done with such a simple language. It is misunderstood.

    4. Re:Node.js by countach74 · · Score: 2

      And it's not a problem in any other decent server side language either. Async/Completion Ports for .NET, NIO/Mina/Grizzly/etc for Java.

      But it is in Ruby, to my knowledge. And many other higher-level languages.

      I'm struggling to understand why you'd ever want this (assuming a web application, which is a fair assumption as you're talking about JS). Your business logic lives on the server, your presentation logic on the client - and never the twain shall meet. The only thing I can really think about is data type definitions, but JSON does a good job of simplifying that (and something like GSON will deal with the conversions). Now I have wanted to share code between server and client in a rich client application, but in that case I could build both sides in either .NET or Java and be perfectly happy.

      Yeah I'm mostly thinking pseudo classes and things like that. Say, a custom date/time library, etc.

    5. Re:Node.js by Anonymous Coward · · Score: 2, Informative

      Long polling for 2,000 concurrent users? Trying streaming real-time multimedia to 5,000 concurrent users using a single process, no threads, and with each stream customized for each user on-the-fly by splicing in announcements and advertisements. And I wasn't even aiming for performance. I stopped at 5,000 because it was about as high as I could go without the network being saturated. My user CPU time was less than 40%, with the majority of the time spent in the kernel dealing with TCP. After looking at my numbers I figure I could saturate a 10Gb link with a week's worth of effort--run a couple more event loops in separate threads and tweak the network stack with IRQ pinning or some other hack. And that's before I bother looking for bottlenecks and optimizing my code. I know I do way too many needless memory copies.

      Although, I should say I use straight-up C with a smattering of Lua for, e.g., handling the logic of advertisement selection, which is ugly and has lots of code churn.

      I've been doing asynchronous programming in C and other languages for well over 10 years, before libevent event existed. Today's processors are so ridiculously fast that a Perl script would easily handle long polling for 2,000 concurrent users without breaking a sweat. Do long polling for 20,000 connections on Node, with a significant fraction of those active at any one time, and then you'll have something to be mildly proud of.

      If you need to do any amount of heavy lifting, you have to use C. For everything else, almost any scripting language will do. I don't like C++ because people tend to go nuts with Boost and other bloatware and end up with performance not much better than something like Node or Lua. Same thing for Java.

      At the end of the day, CPU performance allows scripting languages to look like highly optimized C applications 10 year prior. Frequency isn't getting faster, but caches are growing, which is often more important, anyhow. But if you want to maximize performance today for today's hardware, you still have to go back to the old tools.

    6. Re:Node.js by countach74 · · Score: 2

      There was an example of both. I threw in encapsulation as an after thought to show how it can be done in JavaScript without any special syntax.

  8. Re:Nope (title capitalization sucks, btw) by Anonymous Coward · · Score: 4, Informative

    No. Next question, is Slashdot dying?

    Slashdot will be dead as soon as the new "design" comes out.

  9. Obligatory: She's dead, Jim. by PNutts · · Score: 4, Funny

    Damit Jim, I'm a doctor, not a developer in a dynamic, reflective, object-oriented, general-purpose programming language that supports multiple programming paradigms, including functional, object oriented, and imperative.

    Thank you, Wikipedia.

  10. Re:It is... by RDW · · Score: 2

    You're the guy who told me to get off his lawn when I first joined, aren't you?

  11. Wrong. We in industry are very upset with Ruby. by Anonymous Coward · · Score: 5, Interesting

    Those of us in industry are very fed up with Ruby and Ruby on Rails, but I think it's much more because of their communities than it is because of the technologies themselves.

    I don't know if there's a polite way of saying this, but far too many of the people involved with those communities are utter disasters who in turn create utterly disastrous software systems. For every Ruby success story we may hear about, there are probably 10 or 20 total disasters that aren't as widely known. The disasters are usually because of the people involved, not the technologies.

    Those of us who've been in the industry for many years, if not decades, and have had to engage in hiring over the past 8 or so years will know what I'm talking about. We have to deal with candidates who have no formal education at all in computer science, software engineering, or a related field. They don't even have the equivalent of a single four-month community college programming course. If we're lucky, they've read a single book about web development using Ruby on Rails. (This is ignoring their other serious flaws, such as the complete inability to dress or act with even a minimal level of professionalism; I've interviewed some of these hipsters while they're wearing t-shirts with dumbass sayings on them, and fedora hats.)

    Now, having been in the industry for years, I can see right through these people. When they get past HR, they don't get past me. But I can't be everywhere. I've worked with a few organizations lately where the people making the hiring or purchasing decisions in the past didn't know better, and now these organizations have ended up with their very own Ruby on Rails disasters.

    The Ruby community may not realize it, but they're getting a very bad reputation in the industry. It's nearly as bad as the reputation that the PHP and JavaScript communities have now. But this is exactly what's expected to happen when dealing with programmers who do shitty work in the first place, or who think it's perfectly normal to write unmaintainable code, or who think it's acceptable to job hop 3 or 4 times a year, or who can't work in a professional manner, or who deliver one under-performing and costly software disaster after another.

    At more and more places, "Ruby" and "Ruby on Rails" are becoming synonyms for "costly disaster". That's not the kind of reputation that a programming language or a web framework can have if it wants to survive and flourish past the short term. Maybe the people in these communities don't realize it, but they're losing trust at an alarming pace.

  12. Re:Dying? No. by NoImNotNineVolt · · Score: 2

    See, that's the thing. Perl isn't dead. Perl is still used extensively in system administration and for quick prototyping and proof-of-concept work. Python is still alive and well in the sciences as a supplement to MatLab and other similar tools. Perl and Python have both just about vanished from the web, though, as other server-side scripting tools have become more prevalent. This same tide that displaced Perl and Python from their traditional stomping grounds has also displaced Ruby. However, Perl and Python have found other niches where they thrive. Can the same really be said of Ruby?

    --
    Chuuch. Preach. Tabernacle.
  13. Short answer: yes. by hessian · · Score: 3, Insightful

    Trends always die.

    All-purpose languages that adapt over time are better tools to learn.

    You learn more in depth, instead of having certain tasks be very easy.

    This is similar to the trade off between wizard-based interfaces and actually knowing what you're doing with an operating system.

    1. Re:Short answer: yes. by xtal · · Score: 2

      It amazes me the utility and run I've gotten out of learning C and C++.. decades go.

      --
      ..don't panic
  14. We don't need you, Ruby! by bmimatt · · Score: 2, Insightful

    Dear Ruby: Please leave Chef behind and go and die in some dark corner. Take rails with you. Thanks.

  15. Re:ruby is obnoxious by larry+bagina · · Score: 3, Informative

    For quick and dirty scripts, you can just define your methods and variables and not deal with classes. They're added to the main object, much like javascript globals and functions are added to the window object.

    --
    Do you even lift?

    These aren't the 'roids you're looking for.

  16. Re:ruby is obnoxious by Bill_the_Engineer · · Score: 2

    No you do not need to place a function in a class.

    irb
    2.0.0-p353 :001 > def add5(x)
    2.0.0-p353 :002?> x + 5;
    2.0.0-p353 :003 > end
    => nil
    2.0.0-p353 :004 > add5(10)
    => 15
    2.0.0-p353 :005 > add5(12)
    => 17

    --
    These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
  17. Re:Finally got it by rk · · Score: 3, Funny

    Hmmm. 46 here. And apparently still too fast for Slashdot who tells me to "Slow down, cowboy!"

  18. So in other words, Ruby is running off the rails? by JoeyRox · · Score: 4, Funny

    :snicker:

  19. Re:Finally got it by 93+Escort+Wagon · · Score: 2

    I'm 53 - but was relatively late to the party (and I've tended to have younger coworkers, one of whom introduced me to /. a decade or so ago).

    I suspect any age to UID correlation has a pretty large sigma. I wouldn't be surprised if the four and five digit UIDs demonstrate a big cluster of people who are now between 30 and 40, though.

    --
    #DeleteChrome
  20. Re:He's not "conceited". He's absolutely correct! by tibman · · Score: 4, Insightful

    Bad language or not, it is already used heavily on the client-side. Using it server-side allows you to make use of the same objects without having to maintain things like validation logic in two languages. It also means that if you are using Karma or something similar for testing that you only need one testing framework. Otherwise you'd need two testing frameworks running. Switching gears from one language to the next isn't hard but going from strongly typed to dynamic often results in developers trying to strongly type their javascript or writing it in such a way that it becomes too rigid. Tests should be governing everything anyways, especially if it is TDD.

    My company is using C# on the back-end and javascript on the front. I write php+javascript at home though (and have experienced a life-time of derision from "professional" developers for it). I still write C/C++ for linux and embedded projects. Too many developers have decided their language is the best and everything else is horrible. When really, every language is covered in warts. Every language has (had) growing pains. Have you ever wondered why if your language is the best it is rarely used in all situations? That's because it's not the best tool for every job.

    Your kind is nothing new. Anyone who has a passion for programming runs into people with your attitude and just shrugs. It is almost like dealing with a form of bigotry.

    --
    http://soylentnews.org/~tibman
  21. Re:ruby is obnoxious by shutdown+-p+now · · Score: 2

    You're wrong. While it's true that "everything is an object" in Ruby, a lot of it is implicit. E.g. you can define "global" functions - they just end up as methods of Object. And because Object is a base class of any other class, you can call those methods directly in any piece of code. So it's OO, but you can completely ignore it if you want.

    "Everything is an object" in Python, too, by the way. Global functions there become methods on the module object for the module in which they are declared.

    All in all, this just means that the type system is simplified (no separation into primitives and objects etc).