"legacy RoR" , so if it's not a 2 year old startup "changing the world" - it's boring?
Working in Stripe / Shopify / Github is boring?
I'm pretty sure btw new projects are being started in Ruby in bigger numbers than Elixir (which isn't saying much, but still).
I don't really love those language wars but I don't see why Elixir has to keep trying to assert itself by dissing Ruby. First - at least by numbers, it's way way smaller. Second - it should be more confident in itself.
I'm not bashing ruby or something. I love ruby, I have been using ruby/rails since rails 0.9. Still using ruby with roda/sequel, and i think it is the best language to rapidly prototype and explore ideas.
But the reality is, that all the interesting and cool stuff is happening somewhere else now. Ruby is still a great language, but the active community outside rails is shrinking and the creativity isnt there anymore. People prefer to explore novel ideas in different languages now - rust, go, elixir etc, even if they do ruby for a living.
And rails is showing its age too. Every rails project i encountered was a petrified spagetti monolyth that had to be broken up and refactored into smaller pieces.
If I write an application in asp.net core it will continue functioning on the most recent version of .net core and asp.net core 5 years from now.
If I do the same thing on RoR it will not, guaranteed.
I've lost count of the number of times I've gotten a new client and had them on a web framework that was EOL, on a version of the language that was EOL, and on an OS that was EOL (because they couldn't get the EOL language/framework running on a modern OS).
Anytime you use something like RoR you're automatically taking on a higher maintenance burden because you MUST upgrade or you'll find yourself in a spot where you're trying to decide if you want to rewrite or pull it up to the newest version.
So asp .net core is pretty much a complete rewrite and different runtime than asp .net, right? So it's not like huge changes don't ever happen in Microsoft land. If you have clients running on asp.net that ask to migrate to .net core , is that going to be painless? The clients probably all wanna run on the newest thing probably.
And who's to say .net core doesn't have any breaking changes in 5 years, are they guaranteeing not to do any breaking changes at all to the framework?
going from .net framework to .net core will mostly be painless unless you're using a windows specific API (such as windowing).
If you're using ASP.Net MVC then your app should also come across to .net core fairly painlessly.
The only real challenge is going from the old webforms with its page lifecycle to the asp.net core. But depending on how the application was originally implemented, that really should just be about the frontend, not the entire app. And of course EF core has changes you'll need to deal with as well if you're using it.
It's by no means seamless, but MS did the best they could to maintain compatibility between the two, and you only do it once.
It should also be noted that .net framework is almost 20 years old. Doing something like this once in a 15 year period is a far cry from Laravel's every 6 months or RoR's 2-3 year cadence. IOW, it's not optimal that the divide between framework and core exists, but it's a far better story than Laravel, RoR, et al.
> And who's to say .net core doesn't have any breaking changes in 5 years, are they guaranteeing not to do any breaking changes at all to the framework?
ASP.Net core is literally just a set of libraries. You'll be able to run those on the modern version of .net in 10 years from now. We know this because it's what they did with asp.net. An application built on asp.net 1.0 will work on 4.8.
"We know this because it's what they did with asp.net. An application built on asp.net 1.0 will work on 4.8" . Yep, up to the point where they replaced the framework and called it .net core.
You can also keep running Rails 3 for 20 more years if you want btw.
We generally agree that .net is more stable than Rails though, your point is correct.
> You can also keep running Rails 3 for 20 more years if you want btw.
While I understand your point, not on a modern OS you can't. You literally can't build the tools necessary to run it on a modern OS. I know because I've had to deal with this many many times. You literally are forced to run that stack on a version of ruby that's EOL and on an OS that's EOL.
I mean yes, you CAN do that, just like you can run Windows Server 2000, but it's really really not a good idea.
OK, stability is relative.
Compared to Node / Elixir Rails is still pretty stable. I'd put it with stacks like Laravel / Django.
ASP.net probably changes less, I agree. But .net core was a huge change though, kind of a new framework right? new runtime even.
I don't have any experience with Elixir / Pheonix.
From comments I read, even things like deployment change frequently in Elixir, and major libraries are created or abandoned.
It's just still a very new ecosystem.
In 5-10 years I'm sure the rate of change will decline.
Then there is a stack like Node where constant change seems to be just part of the culture.
Rails changes too, but not as much.
Elixir compiles and runs on BEAM, which is a technology that's roughly 34 years old.
I think most elixir projects are on Phoenix, and while I can't speak too much about the speed of that project, the poster you're responding too has clearly stated they have an app that's 4 years old and running just fine so I have to believe it's not as much of an issue as you think.
It was a Phoenix app. Upgrading from v1.2 to 1.5 is very straightforward, the largest part being replacing Brunch with Webpack for the front-end.
There are some new choices for building releases that make it easier for people who prefer to use run time environment mentioned variables for configuration instead of compile time ones. Previous ways of building releases still work as before.
I make releases with Distillery just as I did back in 2016. The main change in my release workflow is that now I use Gitlab CI/CD, and that's unrelated to any Elixir or Phoenix changes.
I don't know what that means in this context. What I do know is that RoR versions go EOL roughly 2-3 years after they're released. That's not stable by any stretch of the imagination.