Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

Yes, I was thinking about that case. While Ruby was comparatively still a modern language at that point, Rails used the metaprogramming of the language to effectively create a new unique language on top of it with it's opinionated design. It might be even a point in favor of Lisp, since even in an older language like Common Lisp it can still be possible to build a new language on top that feels modern, maybe some kind of tidyverse environment for handling the next AI wave paradigm whatever it may be.


sort by: page size:

I think you're missing my point. The early Ruby and Rails community I remember was a collection of very smart and explorative programmers who wanted to build cool stuff with this interesting language. People were trying out DSLs -- sure they could've used LISP -- but Ruby's metaprogramming was inviting and was a reason for the succinct Rails syntax which was a selling point compared to say Java's cumbersome approach.

The speed of trying stuff out (even if it wasn't super efficient) why startups used it. So it was a community of highly productive people sharing their love of building new things. That's my memory of that time period.


Rails is frankly a double-edged sword, though. While it helped propel Ruby, and is a great framework, it also seems to have permanently marked the language with a notion that its simply a vehicle for Rails.

Ruby is probably one of the more coherently designed general purpose programming languages (in my opinion, much more so than Python, a language that dominates the industry) but doesn't seem to get much use in that domain, which is a shame.


Only a language like Ruby could make Rails and the rapid prototyping setup work as beautifully as it does.

I don't think it's a coincidence that we got _why, DHH, pragmatic programming and the like as soon as Rails put Ruby on the map back in the mid 2000s.

It has a lot of Smalltalk in it in a way that is easy to step into from another language.


Some people (apparently) assume Ruby is only for the web; they're confusing it and Rails.

Lisp was closely associated with AI a few decades ago.


Does Rails define so much functions that it counts as an alternative to Ruby? I would say Ruby is a pretty good/modern language on its own.

I can sort-of agree in part with most of the points, but I don't arrive at a conclusion that we're in a sad state or heading to a dead-end one. On the larger codebase that I work with, usage has become very 'professional' which is to say less Ruby-magical for the most part. Every now and then Ruby's richness (being the metaprogramming and less so the DSL syntax tricks) is leaned on to make a complicated thing easy to use. The day to day use, especially now with static type checking feels like things are definitely getting better.

Ruby wasn't near my first language, nor is it my favourite, but I would still say that it's a fine language, and Rails a suitable framework to learn first and grow with.

What I would hope becomes more popular is less OO and more functional program construction, using something like F#/OCaml or Elixir. Elixir has a good chance with the Phoenix framework coming from a Rails background.


I'd argue that Rails' use of DSLs and metaprogramming makes it materially different from straight ruby. It gets even more confusing with lisp where your libraries are, by definition, language extensions. Often with completely custom syntax.

It's kind of an irrelevant distinction anyways. People don't really pick "languages", per se. They usually pick "language + libraries", and the line between third-party libraries and standard libraries is getting increasingly blurred.


Ruby will still be used years from now. Rails, probably not, but Ruby is a good language in its domain (scripting, dynamic languages).

Not so long ago, before the rise of Node.js and when it seemed like Rails was The Way of the Future (tm) and everyone was really down on PHP, I used to joke that there was a silver lining to PHP becoming the next COBOL: there weren't many COBOL jobs around, but there also weren't many COBOL programmers around, and if you needed a COBOL programmer the chances were that you really needed a COBOL programmer.

As things have played out, PHP has done pretty well at modernizing (I know some would debate that, but that's a different thread), and Rails has faded a bit into the background -- although now I joke that because Rails is well out of its fad phase, it can get down to the real work.

I do wonder whether Rails has been kind of a mixed blessing for Ruby all in all, though. I think Ruby is, in itself, a great alternative to Python or Perl, and it's the language I reach for first when I'm writing short utility scripts -- but since Rails exploded in popularity before Ruby itself did, a lot of Ruby programmers really only know Ruby to the degree they know Rails.


Ruby flourished largely due to rails which ends up being pretty opinionated about how to do things.

Ruby devs could look at Dylan and Lisp for inspiration how to improve the language performance, but I doubt it will ever happen.

Me personally, I tinkered with Ruby when Rails initially came out and it was about it, as it didn't brought anything new to my toolset.


I've been using Clojure for a while, but I've seen a lot of stuff lately (even just old stuff that predates Clojure, which has been dug up and reposted here) that points to it striking something of a perfect balance. I think it's on the cusp of becoming really big, and I honestly hope that popularity doesn't ruin it.

I fear a "Rails moment", which would be the inflection point where some library or framework for doing X comes along and dooms Clojure to forever be "an X language" in peoples' minds. Of course Ruby is still a fine language... but Rails practically made the Ruby community into what it is today, for better or for worse.


I actually got into Ruby before Rails hit and was immediately taken by it because it brought some of the best features of Lisp and Smalltalk and Icon into a language with a very practical, unix-friendly implementation. So I could drop in Ruby where I previously might have used Python or Perl. This was much harder to do with Lisp or Smalltalk, for example.

But I didn't have a good excuse to really use it at work until Rails came along and completely blew the existing Java frameworks out of the water for productivity.


You have good and valid points that I agree with, I was just arguing was from the standpoint of "Rails / Ruby becoming another PHP"

> I'm not saying Rails will _necessarily_ go down that road; but Python has already been there, and the Python 2/3 schism isn't pretty. It's a possibility worth entertaining, anyways.

I feel the Ruby community is different from Python's. I think people who work with Ruby and/or Rails like new toys and they are willing to adapt in order to keep playing. If anything I feel the bigger danger is for Ruby devs migrating to nice shiny toys that node.js has to offer.


What? Ruby existed long before Rails and will continue to exists long after Rails ceases to be the framework de jour.

Real innovation is language independent, and is certainly not defined by using the latest fad framework.


I wonder how much of Ruby's adoption was driven by Rails, and how much of Rails' adoption was driven by developers who previously only had experience with languages like Java or PHP.

I say this because as nice as Ruby is (at least in some ways), someone already familiar with Lisp or Smalltalk will learn nothing new from it, and yet there are no shortage of blog posts by Rubyists touting its borrowed features as if they didn't exist before Ruby, suggesting, perhaps, ignorance on the part of its more vocal advocates and of those persuaded by them


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.


This is interesting. I really do like Ruby and have used Rails as my go-to on a lot of projects because of simplicity and the general support of the ecosystem so if Ruby could maintain its great experience while getting way better under the hood it could mean great things for the language.

I wonder if any Rubyists said something similar pre-Rails.
next

Legal | privacy