Unclaimed: Are are working at Ruby On Rails ?
Ruby on Rails, often referred to as Rails, is an open-source web application framework written in Ruby. It emphasizes convention over configuration (CoC) and the don't repeat yourself (DRY) principle, aiming to simplify and accelerate web development by providing default structures for a database, a web service, and web pages. Rails enables developers to use a model-view-controller (MVC) pattern to organize application programming. Its rich ecosystem of gems (libraries) allows for rapid development of complex web applications.
( 1 )
| Capabilities |
|
|---|---|
| Segment |
|
| Ease of use |
|
| Deployment | Cloud / SaaS / Web-Based, N/A, On-Premise Linux, On-Premise Windows |
| Support | FAQs/Forum |
| Training | Documentation |
| Languages | English |
Some of the first things I liked coming from PHP frameworks were the Ruby language and the "convention over configuration" paradigm. Once you get that into your mindset and with the help of the Ruby on Rails guides and scaffolding tools you will have a solid base structure to focus on building the features that matters. Having tests as a first class citizen also allows you to learn really productive/agile stuffs such as BDD and red/green refactor cycle. At first it might seem too much rigid about its conventions but after using Rails for a while you will be able to note that you can apply different conventions and design patterns to achieve different purposes, for example use Service Objects to avoid super fat models, render server side Javascript instead of HTML/ERB, connect to non SQL database or use PostgreSQL jsonb datatypes, background jobs. What's even better is that Rails is incorporating new technologies with each new version. For example, web sockets will be included in Rails 5 via ActionCable and Rails 4 included ActiveJob which was something you have to do "manually" before to have support for async jobs. And something really important when having code in production is the Rails security reports google group that is constantly reporting security issues with patches and/or instructions to mitigate vulnerabilities.
There are not too many things I dislike about Rails but despite one of the things I like best are conventions, some of them I don't like too much like concerns. Perhaps another thing I don't like too much is the level/length of the component stacks but maybe that's something that is improving over time. I mean, for a given point in code execution there is in my opinion a long stack before it. Most of the times those are part of tools/gems you're using but IMHO some things could be a little more flat. Anyways, I'm not a Rails contributor and I have to agree with the tradeoff between productivity and code execution efficiency.
In our agency Iporaitech, we've solved different problems in the past 4-5 years, being the most important the following: - Web app for a battle of rock bands contest with integration to Soundcloud to play tracks in contest and Facebook to like each track, band and the whole site as well as Facebook polling in that time. - Web app for presidential voting in Paraguay 2013 allowing users to compare candidates side by side, with information gathered with a Rake created to navigate other websites using Nokogiri and some other tools. - e-commerce websites with Spree - Web service API for retail store to be used by client apps running on tablets allowing offline processing and distributed creation of resources based on UUIDs. - Web service to provide financial reporting of people and companies to clients such as banks. - Web management system for small/medium sized retail companies. - In www.tweetandlove4g.com our most recent project we've implemented an idea of an agency company, a web app to convert tweets into MP3 audio tracks getting notes from tweets, in Spanish such do (C), re (D) and so on (don't know how long is going to stay in there). In this project we leverage Rails template and layout system to create a 2 pass algorithm to render staff as partial layout first and then to place the notes in the staff in the view.
How easy it is to generate documentations. How human readable the code is. How easy it is to keep your code organized. How fast it can be to build solutions and measure results. How it encourages the user of needy practices and take advantage of software engineering principles.
While Ruby and Rails work on Windows, a significant number of gems were developed with Unix in mind without being tested on Windows. This force the developer with a Windows system to either install a Unix vm or find away to deal with incompatiblities.
- Build a unified interface that integrate various systems together. - Develop modern front end for legacy software. - Provide an API to access a closed system. -
Just faster and essay web development...
Nothing but ya if it is provide virtual environment like python it would be great for us...
Less time conjunction with it and essay and faster to deploy my apps
Its simplicity using principles like DRY and convention over configuration, enabling you to achieve great products very fast.
The absence of the inclusion of a superset of HTML like Haml or Slim instead of ERB to simplify the creation of views.
Core principles help organize code from day-one helping to construct my products with confidence.
The speed that you can develop a product.
sometimes I think that the frond-end could be more flexible.
I'm creating my own project, now I'm in creating the MVP yet, and it's my first commercial project.
Been using RoR for the last few years in 2 different companies and for a few side projects. Ruby on Rails is a great platform for rapid application development. It has a great ecosystem and different deployment options. Lately we use it via JRuby so we have access to the entire Java ecosystem as well. Ruby is a great language. Allows you to do a lot of complex things very easily. Ruby on Rails was a very influential framework. It has led to the importance of ReST and platforms like ASP.net MVC, Groovy on Grails and a few PHP clones too.
Rails has stagnated a bit lately. The problems with business logic are deep and need to be handled separately from Rails. The "Rails way" has deep problems with maintainability because REST is really not sufficient for complex apps. I find the Trailblazer approach great. In addition there are moves towards single page javascript apps and using Rails for only APIs. For a simple API Java might be a better choice for pure API's.
Any custom logic can be put into Rails. I have worked on appointment scheduling, sales systems for custom home builders, purchase order distribution, custom payments. There are no limits. Only super high performance stuff could use a better platform.
It's written in Ruby. I like principles such as convention over configuration, don't repeat yourself, using MVC and ORM. It's easy to find libraries (gems). It's open source and has a significant community.
I don't like turbolinks and problems with assets pipeline.
I make prototypes in a fraction of time compared to other ways/implementations.
The mapping with the database and the easy integration
The rendering performance is a little slow
ecommerce, cms, saas
Easy to read, loaded with gems (libraries), and very active community. A game changer when you develop somethings new. It also quite easy to maintain if you follows best practices.
In some situation performance can't match with other framework and of course, big stack came with great RAM responsibility.
We are doing all sort of the impossible things and Rails help us to archive that in a very short time.
It's a great tool for creating MVPs. It's fast and beautiful. Rails code is clean and effective. I also can use free heroku server and it's great. Rails is opensource framework. Documentation is also almost perfect and you don't need to read something else to start coding. There is also some good rails content management systems, e-commerce engines etc.
Dependencies management (but it's mb because i've used php before). What was also important for me is Windows compability, but i know that it's more likely my problem, not rails's :) (I used railsinstaller and sqllite on windows). There are not so many junior dev job offers, so it's hard to find a job, if you are junior developer. Especially if you are not in USA (but it would be fair to say that the ratio of remote work to office work is the best).
Fast testing of hypotheses. I think it's one of the best tools for startups. And also it's secure (most of the times). Also rails developers salary is high, so you don't need to think about finace issues, you can just do what you like to do.