As you may remember we dedicated one week to use RubyMine as you would use it and work on Exception Browser application. In addition to the “dogfooding” we wanted to improve the process of tracking issues reported from RubyMine and IntelliJ IDEA. Well, I guess now is a good time to share some of our experience of working with RubyMine.
So let’s start. We took our laptops and occupied one of JetBrains conference rooms (see the photo) to concentrate on Rails development instead of our daily Java work.
Most of our team, including me, is not too experienced in writing real-life Ruby and Rails applications (book examples is obviously not quite enough). So the first days I personally was getting into Rails development. At that time I really appreciated the navigation features of RubyMine. ‘Rails aware navigate’ as well as ‘partial declarations’ and ‘overriding elements’ navigation helped a lot.
We had to work with an already defined database of the existing application. And its table names did not follow the Rails naming conventions, so some of the nodes in Rails Project View were not enabled. We had fixed it by renaming models according to Rails conventions and everything went OK. This allowed us to write migrations in Rails 2.2 style.
Of course we`ve faced other problems during the development week. Most of them were kind of usability issues: some bugs on editing code, parentheses typing inside a comment or a string, some exceptions, etc. Totally, we’ve added over 50 issues to our JIRA and some of them were even IDEA core issues.
Apart from the bugs we had also noticed some lack of functionality. I was really missing the ‘find usages’ for partial views, named routes support and support of set_table_name inside Models. Anyway, what really rocks is our support of Rails calls (paramdefs notation) like
hide_action in controllers of
belongs_to, etc. in Models. It smartly completes the parameters available for a given call with resolve and automatic inspections.
Many of the usability problems we had found then are already fixed and available in the latest RubyMine EAP and Ruby plugin for IntelliJ IDEA. We’ve also significantly improved the performance of background code analysis tasks by completely rewriting some parts of the code.
At the moment we put lots of our effort to improving the overall usability of RubyMine (new rake run action, enhancing Ruby Quick documentation layout, etc).
I think it was a great experience and I’m sure we will do it again!
As for the Exception Browser, there are still some things to finish: improve the layout, add some minor features. Once it is ready, we will deploy it to let you track you exception reports and help us make RubyMine even better!
But now we have the Beta release to concentrate on.
To finish, the project code navigation features that I really love in RubyMine:
Navigate to Rails
Go to overridden class
Go to partial view from Controller
Subscribe to Blog updates
Thanks, we've got you!
The RubyMine 2023.3 Early Access Program Is Open!
Hello everyone, The third RubyMine Early Access Program of 2023 is underway! The key change in the first EAP build is an important indexing optimization. By refactoring our code base, we’ve doubled RubyMine’s indexing speed compared to v2023.1. This is particularly noticeable when working wi…
Performance Improvements in RubyMine 2023.1
Hello everybody, The new release is fast approaching, so it’s time to unveil the performance enhancements you can expect from RubyMine 2023.1. Faster code completion When developing and supporting RubyMine, we analyze a great load of anonymized usage data. A lot of recent data pointed to the fact t…
RubyMine 2023.1 EAP5 Is Out!
Hello everyone, RubyMine 2023.1 EAP5 is now available! Below you can find the most notable features in this build. We encourage you to try them out and share your feedback in the comments or in our issue tracker. Migration of Ruby code to the Symbol API In order to improve code insight actions such…
The RubyMine 2023.1 EAP2 Is Out!
The RubyMine 2023.1 Early Access Program recently started and EAP2 is already here! You can get the new build from our website or via the free Toolbox App. In this post, we’ll highlight some of the most important updates included in the new EAP version. Rails 7: support for turbo-rails complet…