It seems odd that for a decade the web dev community has singled out this framework. It's always relevant to suggest updates and things to be fix - any framework has those. But the continuing conversation of "is Ruby on Rails good enough" (which seems to be the underlying driver for conversation) is still present after hundreds of companies have built solid products with it.
How Ruby on Rails Could Be Much Better (2008)
51–60 of 63 posts
Re: How Ruby on Rails Could Be Much Better (2008)
#52Random fact of the day, co-founder of Dreamhost created Ceph. Which is the filesystem for nearly all block object storage (AWS S3, etc) these days.
Re: How Ruby on Rails Could Be Much Better (2008)
#53Is there a framework out there that faces as much consistent scrutiny as Rails? It seems odd that for a decade the web dev community has singled out this framework. It's always relevant to suggest updates and things to be fix - any framework has those. But the continuing conversation of "is Ruby on Rails good enough" (which seems to be the underlying driver for conversation) is still present after hundreds of compani…
Re: How Ruby on Rails Could Be Much Better (2008)
#54> “Zed Shaw” Wow, that’s a person I haven’t heard from in ages. He was a Big Flipp’n Deal back in the day (Mongrel, Spats with DHH, etc). Curious to know what he’s up to now.
Re: How Ruby on Rails Could Be Much Better (2008)
#55> “Zed Shaw” Wow, that’s a person I haven’t heard from in ages. He was a Big Flipp’n Deal back in the day (Mongrel, Spats with DHH, etc). Curious to know what he’s up to now.
Authoring books: https://twitter.com/lzsthw
Re: How Ruby on Rails Could Be Much Better (2008)
#56Is there a framework out there that faces as much consistent scrutiny as Rails? It seems odd that for a decade the web dev community has singled out this framework. It's always relevant to suggest updates and things to be fix - any framework has those. But the continuing conversation of "is Ruby on Rails good enough" (which seems to be the underlying driver for conversation) is still present after hundreds of compani…
I feel that SPAs get a lot of scrutiny, but it's spread out among the specific libraries/frameworks. There's also a lot of vocal advocates (as Rails used to have) that makes it feel more balanced.
Over the course of my career, it seems that the "easy" languages (Visual Basic, ColdFusion, Ruby, etc) always get a lot of criticism. I feel like Rails is in a great, mature spot right now, and some exciting things are happening to make it the best positioned for the coming push-back against "Javascript all the things".
Re: How Ruby on Rails Could Be Much Better (2008)
#57To me, the only point on this list that hasn't improved much is "Ruby on Rails needs to more or less work in ANY environment". Ruby's install/user story for Windows is still Not Great, and Ruby version wrangling on any operating system is a question that you still get 100 answers to ("use asdf/rvm/rbenv/chruby blah blah blah"). For the rest: 1) It's certainly Fast Enough now. More important webperf issues are happeni…
Re: How Ruby on Rails Could Be Much Better (2008)
#58I think the next main challenges for Rails are improving the view layer (see upcoming ViewComponent for example) and better integrating with modern javascript (WebPacker feels half baked for gem writers). To me these issues (which both have to do more with the view layer) are where Rails is very much lacking.
Re: How Ruby on Rails Could Be Much Better (2008)
#59Earlier quoted context omitted.
This is not correct. When Ruby is doing I/O such as this is the only time it’s not blocking. This is due to Ruby, not specific to Rails. Here are a few references: https://github.com/puma/puma/issues/1003 https://thoughtbot.com/blog/untangling-ruby-threads
I have to admit that I have not used puma for development. Edit: your links show that indeed its blocking and you need to spawn many threads/instances, which use memory.
"The reason for that is waiting on IO (talking to a DB, etc) will allow another thread to run"
The threads don't run in parallel, but they do run concurrently. While this isn't the panacea of performance, it does work well with many web apps which tend to be I/O bound (waiting for a database or remote service). So to your original of "Doing a http request or a sql query blocks everything until it finishes. The solution is to spawn many instances" - an HTTP request or SQL query will, in fact, allow other threads to execute while waiting for a response meaning you can rely on threads, rather than instances, and maintain a very low memory footprint.
If you like Ruby but want true multi-threading and parallelism, I'd highly recommend taking a look at JRuby (https://www.jruby.org). Those guys have done an incredible job with it.
Re: How Ruby on Rails Could Be Much Better (2008)
#60Earlier quoted context omitted.
The company I work for (mostly standard Web Dev) uses almost exclusively Elixir for any backend work. Only the fanboys of Elixir and functional everything are happy with it, just to be different to everyone else. The experience is terrible: Tooling (editor plugins, tests runners, IDEs (oh, there are no IDEs...), debugging) is like going back 20 years. There are no libraries for the most basic stuff you get almost by…
Really? I've been able to find everything I need in the Elixir ecosystem from auth to background jobs and one of if not the best GraphQL server implementations out there. Do you mind sharing which libraries you found missing or incomplete?
The latest incarnation of this problem, was when we had to validate RUT codes (a tax code with a checksum we use here in Chile). Options for Python [1], options for Node [2], options for elixir [3] (don't mind to click, it's a list with nothing to do with RUTs or modulo11 validations). So we had to implement it ourselves. Looking for information we found example implementations [4], where as you can see you have example implementations even for Asterisk Dialplans (!!) but no mention of Elixir.
[1] https://pypi.org/search/?q=rut [2] https://www.npmjs.com/search?q=rut [3] https://hex.pm/packages?search=rut&sort=recent_downloads [4] https://es.wikipedia.org/wiki/Anexo:Implementaciones_para_al...
There are many more examples. Of course you get libraries for the "standard" stuff, it is when you get into the detailes, and that happens when you are already too deep into your project, that you realise all the missing pieces.
Also, what code editor do you use? we've tried everything, and seems the best option is you grow a beard and go emacs/vim. The VSCode plugins hog your laptop and are really inconsistent, incomplete and sluggish [1] [2].
[1] https://github.com/JakeBecker/elixir-ls/issues/54 [2] https://github.com/elixir-lsp/elixir-ls/issues/96
Of course there is no IDE similar to intellij, rubymine or pycharm.