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."
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
I sure hope so. Ruby is just too much overhead for not enough deliverables. Ugh. Ruby is do "ugh" that it makes me want to use PHP.
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.
No one in my department will touch it anymore, despite it being the choice just a few years ago.
The cool kids are using Go for their server apps and infrastructure projects.
Netcraft confirms it (http://everything2.com/title/BSD+is+dying)
-I'm just saying
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
You are all fucking bastards who need to get raped by horses.
Seems legit.
Making a scripting language be mandatory OO is just annoying. Do your developers really suck so bad they can't write a couple scripts without it devolving into spaghetti? Both Python and Ruby feel like reactions to Perl that went way too far, Python with its stupid whitespace as syntax bullshit and Ruby with its mandatory OO but if I had to choose give me Python any day.
yes.
Chef and Puppet are huge in DevOps. It seems Ruby has found its niche.
Now people can spend much more time actually writing applications than writing supporting infrastructure.
"To those who are overly cautious, everything is impossible. "
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.
http://saveie6.com/
No. Next question, is Slashdot dying?
It will live on in our hearts and in our memories.
Ruby as a language is progressing well and Ruby 2.1 will be out soon.
Ruby gems is still active.
Just because it's not getting all the buzz from the young kids doesn't mean it's dying.
These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
I thought I saw a job posting that asked for experience with Ruby and/or Ruby on rails. I didn't know that companies use Ruby.
I think the popularity of the language is an important talking point when selecting a language and framework for a new project
Well, there's your problem. Unless your goal is to start a new project which is doomed to become a legacy system based on 'some popular language of the day' that nobody want's to touch when the shiny wears off.
Next time try selecting a language and framework based on a solid history of doing the job not a popularity contest.
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.
(i.e. Slashdot is) - as far as content and quality are concerned. Look at my UID, I've known the site since the beginning. These days I don't really know why I still come here, reddit has MUCH better comment quality on average (not a joke - this includes that the really good comments are easy to spot while the garbage quickly disappears). Slashdot is living off of past glory completely. Back then the moderation system was state the greatest asset - today it's still the same while everyone else continued to develop. I'm not bitter at all - as I said, reddit is pretty good so I know what I read most of the time...
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.
The cool kids are using Go for their server apps and infrastructure projects.
While their parents are taking real jobs and paying the bills!
Sadly, those kids are hired and keep chasing the latest and greatest (including jobs) and leave their one trick pony app behind that was written in "the next big thing" language with no knowledge transfer or support.
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.
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.
Futurist Traditionalism
You're close. Both ways. Funny. 32, not 35. ^^
Computer simulation made easy -- LibGeoDecomp
Your comment is absolutely correct.
I don't think that those running Slashdot really appreciate how many people are going to be driven away once the beta is no longer optional, and the classic site is totally gone.
The only reason I'm still around is because I can use the classic site. Once that's gone, I'll be gone, too. And I'm just one long-time user among many others who are in the same boat. I've seen enough other comments expressing similar sentiment about the beta site, but they always seem to get modded down. Huh, imagine that!
The beta design is completely unusable. It's damn near impossible to even read the comment threads, never mind actually participate in them in any meaningful way. Every single thing about it is worse than the previous design. It's difficult to believe, but there really are no redeeming qualities at all. It's an all-around worse experience.
If this new design is a response to dropping traffic numbers, I'm afraid it'll do nothing but accelerate the process beyond anyone's wildest dreams. We've seen what happened to Digg after they made this kind of a redesign mistake. That site never recovered, and likely never will.
As a long-time Slashdot reader and commenter, I sincerely hope that those running Slashdot come to their senses soon, cut their losses, and scrap this entire redesign before it ruins Slashdot. This beta site has proven again and again that it is surely not the way forward. It is nothing but the way to destroy Slashdot, I'm afraid to say.
So technically it is not dying.
The fedora is pretty hipsterish, but I couldn't care less it any of my applicants come in with a T-shirt. Some of the most childish, shitty, unprofessional people I know wear suits everywhere.
Always looking for the magic language which will solve all their problems.
That's why the fads come and go, but the reality is nothing compensates for laziness and an inability to think clearly and coherently.
Masses of effort put into 'frameworks' - which only regurgitate known solutions to known non-problems and once the house has been given a new coat of paint the original problems with the plumbing still remain - and the house painters move on to some other fashionable neighbourhood - leaving that faint whiff of raw sewage in their wake.
This isn't about anyone's "personal feelings" about JavaScript.
This is about the hard, objective facts. This is about basic software engineering principles. This is about a minimal level of professionalism.
JavaScript is objectively a bad language. I really hope that we don't need to go through the list of problems with it, but maybe we should address at least some of the most serious problems. Its type system is very broken. Its object system is a joke (prototype OO is always inferior to class OO; that's why everyone tries to fake classes using prototypes, and the result is always terrible). Its comparison operators are broken. It doesn't offer sensible modularity. It doesn't offer useful namespacing. Its implementations are generally bad, even the ones receiving much investment and effort from large and well-funded organizations like Google, Apple, Mozilla and Microsoft. Its development tools are a decade or more behind those of Java and C++. It's rife with stupidity like semicolon insertion. It has almost no standard library, and what does exist exhibits complete idiocy in almost every respect.
For crying out loud, the most respected JavaScript book is Crockford's "JavaScript: The Good Parts". Almost the entire book tells you to not use significant features of JavaScript! Only a very broken programming language would have a book like that become so popular and recommended.
Professional software developers can only express disgust when it comes to JavaScript. There's just no way that anyone who cares about doing a good job can seriously consider it anything less that a terrible disaster. JavaScript is indisputably a horrible programming language. It's just not possible to suggest otherwise.
Dear Ruby: Please leave Chef behind and go and die in some dark corner. Take rails with you. Thanks.
I thought the Ruby fad peaked in 2005 and then went under the radar by 2006.
Now you're telling me that people still use it? WAT?
Should I bother learning Ruby? What advantages does it have over its competitors? (Note: I don't consider "on rails" to be an advantage.)
He probably doesn't expect, or even want, them to wear suits. What some of these Ruby hipsters wear doesn't even approach "casual", let alone "business casual" or anything remotely considered "formal". It's better classified as "freak" or "social outcast".
Too many of them dress, groom and act in a way that makes them come off as total fools. I mean, do I really want to hire somebody who wears thick-rimmed glasses without lenses? Do I want to hire somebody who spends hours styling his mustache, but ignores the rest of his personal hygiene? Do I want to hire somebody who turns every discussion into how his preferred beer or music is trendier or more obscure than some other brand of beer or type of music? Do I want to hire somebody who refuses to take off his fedora, even when in the presence of customers? Do I want to hire somebody who wears clothes in what's likely an intentional effort to stand out like a sore thumb? Do I want to hire somebody who tries to incorporate "irony" into everything? No.
I'm not sure about you, but I don't think it's too much to expect a software developer to wear clean clothing without offensive messages or an overtly distracting appearance while on the job. I don't think it's too much to expect a software developer to shower and brush his teeth at least once on workdays. I don't think it's too much to expect a software developer to be presentable to clients who may expect even the smallest bit of professionalism.
What they wear or how they act on their own time is their business. But if they're getting involved with a workplace of some sort, they sure as hell ought to be at least trying to act like adults, not just oversized children stuck with a high-school mindset and mentality, while on the job.
Netcraft confirms it.
Clearly I am not in "the web world" and I am seeing this question from an external viewpoint. But I never really saw anybody exciting about ruby or using ruby or praising ruby except one single phd student who was using it to make his experiments repeatable and automatically logged. Sure there is an occasional article on a new version of ruby, a flaw in ruby-on-rails. I heard people talk a lot about PHP, about Python, about javascript, to do pretty much anything. But quite frankly I never hear about ruby. Actually I hear more about LUA than I hear about ruby.
For that reason I never took ruby for more than an hobbyist pet project. Maybe I am wrong, but seen from my chair of low-level programming guy, no one uses ruby.
http://goo.gl/k07tpC
The Kruger Dunning explains most post on
:snicker:
I've had a Google Alert for several years now for "Ruby Program|Hack|Code|Example" that has had fewer and fewer hits in the last 18 months. Lately it's been only Ruby Tuesday charitable programs.
I'm no fan of Ruby, but it does seem a lot of sites use some combination of PHP or ASP and Ajax (Javascript). And so long as we're talking about disasters, there are quite a few pieces of software that fit the bill, especially in open source circles. Might I suggest that a bad programmer is a bad programmer regardless of the tool? After all, you wouldn't trust an unlicensed builder with any tool on your home, would you?
I'm a CS prof and I'm sorry but I must agree with you.
The trend is similar to other industries like butchers or the food service industry. Trade skills were optimized out and tasks were specialized to the point where a moron could do the job in the assembly line. The pay that came with skill and pride in a job well done was replaced with depressed drones who need to be morons so they don't kill themselves... or quit... or become a citizen.
Most programming can be made into small problems that take less understanding and skill than used to be required. It's not assembly line but it is the same trend and at some point it'll be simple enough that the degree is little more than a tech school course dragged out into massive debt. Luckily, due to the nature of the work, there will be many years of higher level jobs... for 3rd world CS majors. May as well stick with your toy language because your only stable employment option will be scripting as a digital janitor... as I.T. likely part of a digital cleaning service (because that beats having to hire as many house janitors.)
Has Ruby really been alive?
> You'll one of the morons, and you don't even know it.
Clearly you'll one of them.
(Pinwheeling... pinwheeling... pinwheeling...)
Hey guys, I'll let you know sometime tomorrow.
When Ruby was red-hot, it was when people were building entire apps in Rails. But now everyone realizes that the future is in JS-based front-ends based on Ember, Angular, or Chaplin, but that doesn't mean that people aren't using Ruby and Rails in the background for their back-end setups. It's quite common for me to hear about a fancy JS front-end being powered with JSON api endpoints being served by Ruby and Rails. Maybe this too will change, but right now from where I'm sitting Ruby seems still alive, just repurposed.
just reading all these posts about the endless flood of boring fad techs used in web development makes so fucking glad i don't have to resort to such shit for a living.
Without a doubt, the lower the barrier to entry into programming, the more competition can be expected from less qualified individuals. This may very well be taken as a threat, as you seem to take it. However, if we consider the economy as a whole and not just a single industry (or even a slice of a single industry), there are great advantages to lowering these barriers. It allows things to be done cheaper, for those who would not have had a chance to make a living in the industry do just that: make a living. When an entire industry's costs are reduced and competition increased (especially an industry as pervasive and important as the tech industry), the rest of the economy is made richer. Exceptional quality C/C++ is not the only thing that matters.
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 cast, 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 therefore be unnamed holes within a structure object, but not at its beginning, as necessary to achieve the appropriate alignment.
http://port70.net/~nsz/c/c89/c89-draft.html#3.5.2.1
It's funny because it's always poignant; as long as something is a good tool for some job, it's got legs.
In the future, I would want to not be isolated from my friends in the Space Station.
Indeed, we are horses, fucking away at those bastards.
Slower rate of change in gems might indicate less need for change.
in your heart...
Does it do what you need it to?
One definition of "dying" is when a project is no longer maintained to keep up with changes in the underlying platform. A language whose implementations are "dying" in this way does not "do what you need it to".
Can you get your project completed using it?
Another is that it becomes harder for a coder to find jobs or for an employer to find people to maintain a project in a given language. A language "dying" in this way interferes with "get[ting] your project completed".
I mean you don't see the engineers going "ZOMFG my VHDL is as out of fashion as an iPhone 3!" /swoon/.
You do if, for example, state-of-the-art FPGAs start shipping only with Verilog compilers.
Ruby has, since it has become popular, mostly been used for webdev tooling and frameworks. In that department it combines the crappyness of PHP with a communities arrogance of C and the toolkit variety of Perl. So it could be that traction won't hold as long and good as some would like it to. PHP is deeply entrenched in serverside web development and the new kid on the block definitely is JavaScript with Node.js offering Serverside development in the turing complete language that also drives todays web frontend logic.
New serverside web projects I'd personally do in PHP or - if time and resources allow for experimenting - I'd use Node.js. For the simple reason that it offers the same PL on the serverside that we use for Ajax.
Bottom line:
With Node.js on the rise and JS offering basically the same features that people rave about in Ruby I would be suprised if Ruby loses traction again.
My 2 cents.
We suffer more in our imagination than in reality. - Seneca
as long as something is a good tool for some job, it's got legs
Counterexample: Kevin Michael Connolly is a good tool for the job of photography.
Sadly, those kids are hired and keep chasing the latest and greatest (including jobs) and leave their one trick pony app behind that was written in "the next big thing" language with no knowledge transfer or support.
What can I say? Taking advantage from dumbasses with money to lose is not a crime and everybody (including the ones that can't code) must eat!
Lisias@Earth.SolarSystem.OrionArm.MilkyWay.Local.Virgo.Universe.org
The cool kids are using Go for their server apps and infrastructure projects.
Go!?! That's so old school, Sir. The insiders know, the really cool people know it's all about using Dart.
Python and/or Django: Instagram, reddit, YouTube, Disqus, Pinterest, bitbucket, The Onion, New York Times, Washington Post, The Guardian, Yahoo Maps, Battlefield 2, Civilization 4, etc...
Ruby and/or Rails: Hulu, Funny or Die, github, Groupon, Twitter (dropped due to scalability concerns), etc...
Ruby is actually fun to program in.
JavaScript is horrifically painful to develop in. I would compare writing in javascript to gluing thumb tacks to the keys on the keyboard dangerous side up, and then trying to write OO COBOL.
graph on the release date of gems over time could help determine an answer.
Perhaps that would just show you if 'gems' are dying. COBOL^H^H^H^H^HRuby, could still be thriving.
This is like trying to use CPAN project release dates to determine if Perl is dying.
Shitty web tech. Dying? Who cares.
Thank god this whole toy "web" thing is going away! At last we can get back to using real programs, on real computers, called mainframes.
Crack open the books and learn Javascript...
You could maintain it if kept current...
Wages...
Too many people here suffer from butthurt. Detach yourselves from the desire for more butthurt. There are two types of languages: the ones people complain about, and the ones nobody uses. All this butthurt proves this point.
FWIW, at one place I worked there was a table anyone could dump a book on for others to "borrow". No real expectation of getting it back, but a way to pass on unwanted books to someone who might find it useful.
I wanted to reduce my collection of books. So I dumped a less-popular Ruby book onto that table. It vanished before the end of the day. I dumped a couple other ruby books, including The Ruby Way and some book on Ruby brain-teaser quizes, something like that. Poof, as if done by a magician trying to impress members of the opposite sex, they vanished quickly and completely, by the next time I passed through that room. Interesting.
Then I dumped Andrei Alexandrescu's The D Programming Language. It sat for a day, then another day, and another. After a week it was still there. Eventually someone took it. At least at this one company, D is 1/100th as popular as Ruby. Neither language is used officially on company projects - it's all Java, C++, C# and Python. Internal web sites do not use RoR that I know of.
Ruby is a fine language, but in practical implementation other languages, in particular, Python run circles around it. A circle. Maybe half a circle, but you know what I mean - Ruby is fine but never in first place. I still use it for some electronics graphics (http://www.darenscotwilson.com/spec/stereo888/stereo888.html) It's certainly not dying if there are such quick book-snatchers in a company not using it.
OTOH, those who know of D like it quite well, actually use it, try to spread the word, and that includes me. Maybe D is in the stage of early growth outside it's originating community, where Ruby was in 199x where I'm not sure what 'x' is.
D is clearly growing, but has a long way to go, while Ruby is way up there, and has a long way to go if it is in fact shrinking.
What?
Last time I checked, the web world was founded on perl and python, and things weren't going nowhere.
Where do you believe the web world migrated to? do you believe that all the big sites rewrote all their Python and Perl code to follow yet another fad language?
I hope they finish mruby. It would be nice to have an interpreter with full unicode support which aims at the embedded scripting domain.
For web related stuff, I couldn't care less.
If someone doesn't have a CS background and yet would like to get into programming in some fashion, what should they be doing instead of Ruby? Python or Java?
Nice try (intentionally spelling "java script" is not cute, dude!).
What makes you think that this was intentional and not just a typo?
Computer simulation made easy -- LibGeoDecomp
Or it could be that it has most of the features for its market niche hence development slowing is a sign of maturity.
Sorry, typo...
Computer simulation made easy -- LibGeoDecomp