5 ms·
I am pretty sure. If you developing the next Basecamp these are essential. However, I rarely see Rails succeeding in other aspects of web development. I spent s
by StreamBright 7y ago
I am pretty sure. If you developing the next Basecamp these are essential. However, I rarely see Rails succeeding in other aspects of web development. I spent some time on trying to make Rails work for use cases that are not the perfect match for this ecosystem and failed. Yet, it is quite possible that there are millions on web applications out there, running on Rails happily. It is just not a great fit for things I do.
- Lordarminius 7y agoI'd be interested in knowing what areas you found Rails lacking. Care to elaborate ?
- malloryerik 7y agoI might be wrong but aren't real-time areas like WebSockets not really strong points in Rails? I do see that Action Cable appears to have improved, and I don't know at what point performance issues would get in the way, and I also probably don't know about some potential solutions. Should one choose Rails for an application with significant real-time / reactive functionality?
- StreamBright 7y agoFor me the most important one is performance and the lack of trust in my code (run time errors). - https://blog.codinghorror.com/performance-is-a-feature/ https://blog.codinghorror.com/performance-is-a-feature/ - http://www.nicolas-hahn.com/python/go/rust/programming/2019/07/01/program-in-python-go-rust/ http://www.nicolas-hahn.com/python/go/rust/programming/2019/...
- gls2ro 7y agoI totally agree that app performance is important. But I really think there is a difference between framework/programming language performance and acceptance-level app performance. It is possible to have a good performance app (Github, Shopify ) even if you don't believe that Ruby is good enough in this category.
- t0mbstone 7y agoAnd how, exactly, are you differentiating a "Basecamp-like" startup from a "non-Basecamp" startup?
- hderms 7y agoBasecamp's problems seem particularly well suited to a batteries included CRUD framework. There are plenty of problems out there that aren't CRUD-centric
- StreamBright 7y agoExactly.
- StreamBright 7y agonon-Basecamp startups: - processing images - providing API for warehouse fulfilment for online retailers (peak load is 100x of base load, latency goes out of the roof before Rails just crashes with OOM) - real estate indexing with huge amount of data (we could not make the full text search work reliably with Rails) These were pre 6.0 and I am pretty sure many things changed since, I am just saying it is easy to run into these situations. The bigger your framework the more assumptions are built in that are hard to come by. It is good for Basecamp startups not good for non-Basecamp startups.
- t0mbstone 7y agoImage processing: Spin up sidekiq workers and do your image processing in parallel in background processes. Providing API for warehouse fulfilment with peak load 100x greater than base: Run your Rails APP in any number of possible auto-scaling configurations. Real Estate Full Text Indexing: Use ElasticSearch alongside Rails to provide highly performant full text indexing/searching
- StreamBright 7y agoAre you suggesting that there is more to it than just Rails and an amazing ecosystem? I agree.