Posted 12 days ago. Visible to the public. Repeats.

Howto: Choose the right gems for your project

Adding a gem means you take over the liability towards the external code.

Checklist

Based on "To gem, or not to gem":

  • Gem is really needed (prefer writing your own code for simple requirements without many edge cases)
  • Gem is tested well (coverage and quality)
  • Gem has a good code quality
  • Gem's licence fits to the project requirement
  • Try to avoid gems that do much more than your requirement scope needs
  • Gem has a good maturity and maintenance
  • Gem has a good / familiar DSL
  • If it's hard to do right, choose a mature gem (e.g. Devise or Clearance for authentication) instead of building it yourself

Also see the chapter "Owning your Stack" in the book Growing Rails Applications in Practice.

Services

By refactoring problematic code and creating automated tests, makandra can vastly improve the maintainability of your Rails application.

Author of this card:

Avatar
Emanuel De
Last edit:
12 days ago
by Henning Koch
About this deck:
We are makandra and do test-driven, agile Ruby on Rails software development.
License for source code
Posted by Emanuel De to makandropedia