RIP RUBY AND RAILS

thenextweb.com/dd/2017/07/26/ruby-rails-major-coding-bootcamp-ditches-due-waning-interest/

Is Rails dying? Has Ruby's complete irrelevance outside of CRUD web development sealed its fate? Github activity is down, it has dropped to 11th on the Tiobe index, down to 12th on IEEE Spectrum, most gems are abandoned, and the primary Ruby implementation has lost most of its funding and only has a part time skeleton crew working on it.

Other urls found in this thread:

github.com/matz/streem
de.slideshare.net/Blaine/scaling-twitter/:
infoq.com/articles/twitter-java-use
twitter.com/SFWRedditVideos

Single page apps killed most boutique languages like ruby.

the witch is dead! the witch is dead!

So whats replacing it for CRUD apps? Node and GO?

Ruby is heavily used for infrastructure at a lot of shops these days. Github and gitlab are heavily invested in ruby for their backends, and Amazon EC2 uses ruby extensively- in fact it is the 4th most used language at Amazon in all of their operations.

Aside from that, I wouldn't say greenfield projects are commonly being developed in ruby, which is a shame because it's a beautiful language that is easy for new hires to digest and contribute with.

all the hipsters migrated to javascript

Java, Node, Python, PHP or Go.

RIP scam coding bootcamps

It's definitely losing marketshare, but it's unlikely to die anytime soon. The integration of yarn and webpack was a smart move that will likely keep them alive for a good bit longer.

>RoR bootcamp gets replaced by Java Spring course
Hipsters BTFO

Are Kotlin, Swift and Elixir the future, guise?

Kotlin/seift for mobile
Javascript for web
Go for web servers

Could be worse actually.

the amount of "magic" (e.g. naming conventions) in rails infuriates me

Elixir and Phoenix are a direct replacement.

Almost every language can create the web api bit (I use C# at work, go at home). Then you slap a javascript front-end on. Honestly doing the web front end on something like rails (or mvc in C# land) feels like a dead end.

Django REST framework is great for making an API. Get a browsable API basically for free on top of everything Django already provides (authentication and authorization, ORM, migrations, validation etc.). I've yet to find anything even remotely as fast to work with in node, Go, Java etc.

Phoenix is nice but these days there's way too many libraries in major languages like C#, Java, JavaScript and Python for a niche language with no real corporate backing to catch on.

>Kotlin/seift for mobile
lmao
it's swift and onb-c and java for mobile.
there's more reactnative/JS apps than Kotlin apps too.

Node is the way, you can do SSR just like normal function call. Go comes second just for the performance but its syntax is shit

have any of you pajeets ever considered using the shit that is already built into Javascript by default?

There is nothing that your shit frameworks can do that javascript couldn't already do

Hilarious that Python, a utilitarian scripting language, of all languages, outlasted Ruby

Well they're both utilitarian scripting languages...

Ruby just got popular because of Rails, before that it had nothing and after that it might as well die.

>hipster bloat ruined the internet so much, every website is practically its own app version of itself

Django will die too m8.

It sucked always. It's also home of the most SJW community ever. So.. good riddance!

But Ruby was only popular because of RoR. Python can sustain itself without django, you can literally import windows and you have a complete OS at your fingertips after one line of code.
Okay that is an exaggeration but still, it's one of the comfiest language I ever used during my years and I am not even a Python dev.

Once it stops being popular in the web, usage overall will go down, as people are interested in learning languages they can use everywhere. In a few years, people will be using Javascript as a general purpose scripting language instead of Ruby or Python.

Well the primary difference to me is that Ruby has true classes whereas Python uses prototypal inheritance, which to me makes Python more hackish to me. Ruby certainly can be "hacked" through specific hooks but it's not quite as plain as Python.

Long story short, Python's plainness is its main appeal and that makes it used for more utilitarian purposes. Ruby tends to be used where concision is appreciated.

>year 2060
>Spring Framework 50 released
>coincidentally, the version number roughly corresponds to the number of flavour of the week hipster frameworks it has outlived
like pottery

Rails is still the king of CRUD. It's fast to develop with and mature.

It's getting less popular, yes, but for other reasons:
1. There was a strong need for cheap CRUD applications that led to bootcamps like the one you mentioned. I think nowadays Rails teams work on large websites and would rather hire CS majors who have taken database and algorithms classes.

2. There are more tools available, so companies can now use the best one for the job. E.g. Discord uses Elixir, and good for them -- Elixir handles large-scale concurrency much better than Ruby (which will hopefully be fixed in the next major Ruby release, since we only have threads right now).

3. Programmers are so scared of falling behind the times that they stampede to every new GarbageJS framework, even when their old tools are perfectly fine. So when massive websites like Twitter move away from Rails to scale better, a hundred more shitty webapps that will never need to scale get written in something other than Rails, despite Rails being the king of quickly building hacked-together shit.

> Ruby is dead.
Ruby development is extremely active right now. The Japanese government is very proud of Ruby and is pouring money into it, to the degree that it's now used in really weird places like embedded systems. Some of your cars might have mruby code in them.

Furthermore, Ruby is a fantastic sysadmin and general scripting language. It's like a Scheme that stole the best of Smalltalk and Perl, and it's really what Python should have been.

I appreciate Python's simple syntax, but the way the language is organized seems much less logical and less elegant than Ruby. (Python's array.array() for example)
E.g. Python:
socket.ntohl(data)
Ruby:
data.pack("N")

>Furthermore, Ruby is a fantastic sysadmin and general scripting language. It's like a Scheme that stole the best of Smalltalk and Perl, and it's really what Python should have been.
Yes but to sysadmin brutes it'll be easier to write in Python, sadly. I do have a love for Ruby's functional side that flairs up from time to time.

This.

Ruby is far from dead, Ruby3 is about to come in two years and will be great.

It's just more competition today, we have such a hard market with so many paradigms at the same time..
Are single page apps the the answer to everything?
Is functional programming?
Concurrency?

At the end of the day, each technology has strong points and weak points. The MEAN hype is over, the "simplicity is king" hype of Golang is over, Rust probably won't revolutionize the Web and neither will WASM. And we are left with a lot more decisions than 10 years ago.

But at the end of the day you want to know many different technologies, and there will alway be a usage for a simple, powerful and fast MVC framework like Rails.

The King is dead, long live the king.

have they considered re-writing ruby in rust?

this. meanwhile, Python still hasn't something like mruby

No it won't. The Python community is enormous compared to Ruby and Django will be fine because there are too many useful libraries written in Python. Even on web development projects I often end up pulling in libraries like numpy, pandas, matplotlib and celery. Most of the shitty meme languages don't even have basic things like real HTML parsers to do proper XSS sanitization or comprehensive image libraries like Pillow.

In real world scenarios, a properly configured Django deployment with uwsgi is also roughly as fast or faster than most of its real competitors like Rails, Spring, Laravel, Phoenix etc.

Ruby doesn't have anything going for it outside of Rails and Rails is far slower and uses far more memory than anything else. That's why it will die.

>The Japanese government is very proud of Ruby and is pouring money into it

LOL. No they aren't. The primary Ruby implementation has a total of 3 paid contributors in Japan and two of them, one being Matz, only work on Ruby part time. The only other paid contributor is tenderlove from Github. There are random niche academic languages that have far more funding.

Ruby is far more popular in the US than it is in Japan.

>Calling everyone Pajeet
>Shilling JS

The decline of Ruby/Rails
>Twitter switches from Ruby on Rails to Scala
>Then people didn't want to use RoR
>Node.js rose to prominence and then became hip - people only wanted to do things in JS

Ruby is a pretty good language handicapped by a SHIT interpreter and a community that relies too much on magic libs that are too bloated for any kind of serious real-world project.

There a lot of companies that publicly switched away from Rails. Twitch is another one. They moved from Rails to a mix of Django and Go.

>The Python community is enormous compared to Ruby

Python is maybe 3 times as much people as Ruby. And there will always be much much more Rails places than for Django.

You see, Python is first and foremost academics and a little bit of infosec, sysadmin and plain sciprting and so on. And then it's also good for web development.
Ruby is like 75% Rails and maybe 20% sysadmins, infosec and so on.

>Ruby doesn't have anything going for it outside of Rails and Rails is far slower and uses far more memory than anything else.

Chef, Puppet, Metasploit, Hombrew and many other small frameworks..

>In real world scenarios, a properly configured Django deployment with uwsgi is also roughly as fast or faster than most of its real competitors like Rails, Spring, Laravel, Phoenix etc.

Ahaha.. that level of delusion is priceless.


>That's why it will die.

I just love how snake people keep on repaeting this meme liek a mantra. They really wish for it so much to be true so they could be great again..


You point is completely irrelevant because Ruby is open source. Your stupid namedropping doesn't change the fact that the Ruby community is huge and Matz would have an army of developpers who would love to contribute to Ruby.

The point is more or less that Ruby diesn't need need much fixing at the moment. It's mature and stable. We'll see what Ruby3 will bring to the table.

Meanwhile you guy keep fighting about Python2 vs. Python3..

It has been dieing a slow death since it's peak in around 2013. Few now apps use it and many old apps that used it moved to node, php, go, rust, etc.

>Matz would have an army of developpers who would love to contribute to Ruby

None of which are capable of contributing to a decent implementation. Very few people are capable of working on modern competitive virtual machines and out of all those people none of them work on Ruby.

Ruby isn't dieing, so much as rails (ruby for Web Development) is dieing.

many of them work on truffleruby

Golang needs an ActiveRecord. So far no ORM I've used in Go is as feature rich or productive.

I primary use Go at work but if I was building a big ol' CRUD app and there was even a risk that it wasn't going to be a smashing/scaling success, I'd still use Rails.

That said I'm going through the process of scaling an old Rails app and it's a nightmare. As soon as I get a page to render quickly, someone adds `active_record_collection.reject! {|o| o.expensive_n+1_operation? }` to a view.

truffleruby is nothing more than an experiment that Oracle uses to test Graal. Rubyists have been wanting it to be more for years now but that time will never come.

No, it "peaked" because of the hype train (like node a few years later), then it declined. But it has been growing for the last few years.


Do you even read the comments before replying? The point is Ruby doesn't need a huge army of maintainers at the moment. And Matz has been working on Ruby3 for a while now, for example look at this proof of concept language here:
>github.com/matz/streem

Twitter switched from Rails because it was not the right technology for their modell. They were pretty surprised by their own success and growth back then. That's what they wrote themselves.

Ruby scales well, but not endlessly. But if you really get THAT big that Ruby doesn't scale anymore, you really have luxury problems.

ORMs like ActiveRecord are garbage. A simpler composable query builder like Squirrel or Ecto is far better.

>Ruby scales well

yeah they're just gonna make rails work and then completely stop working on it and literally noone will pick it up because fuck logic

Yeah, that's pretty much exactly what happened with Rubinius and JRuby.

>Ruby doesn't need a huge army of maintainers at the moment

It needs competent programmers that have a lot of experience writing and optimizing virtual machines because the current implementation is slow unstable garbage that devours memory. Unfortunately for Ruby hipsters like you, almost all the people capable of such programming are already working at Google, Facebook, Apple and Microsoft and don't give a fuck about Ruby.

Look at this interesting slideshares:
>de.slideshare.net/Blaine/scaling-twitter/:

Ruby sacles, but
a) not totally out of the box
b) not endlessly

This.

>slow
-faster than python
-piss easy usage of C libraries for C speed tasks

>unstable garbage
souce please

>for Ruby hipsters like you
I have worked with Java, Python and others. It's just that Ruby is better engineered, simpler and yet more powerfull than Python, thats all. And that's exactly the reason Python people hate Ruby so much.
BTW hombrew is written in Ruby, which is also preinstalled on each Mac. Facebook and Google promote their own languages/frameworks (bootstrap, go and so on) and Microsoft has no clue anyway.

You know that twitter was rewritten in Scala and Java because it scaled so poorly?

infoq.com/articles/twitter-java-use

> faster than python

The only benchmarks where Ruby is beating anything is where Ruby is using the FFI for absolutely everything (ie. Debian Benchmarks Game).

> piss easy usage of C libraries

Nothing half as good a ctypes.

> hombrew is written in Ruby, which is also preinstalled on each Mac

Homebrew isn't preinstalled on any Mac and could easily be a collection of shell scripts for how simple it is. It doesn't have even a small fraction of the features of proper package managers and it doesn't even do automated dependency resolution.

The only thing Homebrew is famous for is its author getting BTFO on Twitter for whining about failing a simple Google interview. To make it worse for himself, he claimed that all Googlers use Homebrew to which Googlers responded by pointing out that Homebrew is banned internally because it's considered insecure.

Ruby dying is an objective fact. I'm not sure why you're in denial this hard.

That magic is what makes Rails so damn productive. I still don't think there is any framework out there that will get your business up and running as quickly as RoR.

It has MicroPython. But really, you should just use Lua or TinyScheme, maybe Tcl.

>comments

Neat, I like learning languages that are forgotten gems, such as perl 5 or self.

Maybe they have to ditch due to a lack of jobs with the language and that hurt their employment numbers.