Skip to content
Browse files

minor improvements

  • Loading branch information...
1 parent 32c6e49 commit 4e3a0e44e564f4cbb7d2bbab7c85b2b0409ff4eb Bozhidar Batsov committed Oct 24, 2011
Showing with 27 additions and 4 deletions.
  1. +27 −4 README.md
View
31 README.md
@@ -5,8 +5,8 @@ prescriptions for Ruby on Rails 3 development. It's a complementary
guide to the already existing community-driven
[Ruby coding style guide](https://github.com/bbatsov/ruby-style-guide).
-While in the guide the section **Testing Rails applications** is after
-**Developing Rails applications** I truly believe that
+While in the guide the section [Testing Rails applications](#testing) is after
+[Developing Rails applications](#developing) I truly believe that
Behaviour-Driven Development (BDD) is the best way to develop
software. Keep that in mind.
@@ -33,6 +33,8 @@ Some of the advice here is applicable only to Rails 3.1.
* [Assets](#assets)
* [Mailers](#mailers)
* [Bundler](#bundler)
+ * [Priceless Gems](#priceless)
+ * [Flawed Gems](#flawed)
* [Managing processes](#processes)
* [Testing Rails Applications](#testing)
* [Cucumber](#cucumber)
@@ -42,6 +44,7 @@ Some of the advice here is applicable only to Rails 3.1.
* [Models](#rspec_models)
* [Mailers](#rspec_mailers)
* [Uploaders](#rspec_uploaders)
+* [Further Reading](#reading)
* [Contributing](#contributing)
* [Spread the word](#spreadtheword)
@@ -435,6 +438,7 @@ specific gems to a `linux` group:
some randomly generated file - it makes sure that all of your team
members get the same gem versions when they do a `bundle install`.
+<a name="priceless"/>
## Priceless Gems
One of the most important programming principles is "Don't reinvent
@@ -512,12 +516,21 @@ This list is not exhaustive and other gems might be added to it along
the road. All of the gems on the list are field tested, have active
development and community and are known to be of good code quality.
-## Gems to avoid
+<a name="flawed"/>
+## Flawed Gems
+
+This is a list of gems that are either problematic or superseded by
+other gems. You should avoid using them in your projects.
* [rmagick](http://rmagick.rubyforge.org/) - this gem is notorious for its memory consumption. Use
[minimagick](https://github.com/probablycorey/mini_magick) instead.
* [autotest](http://www.zenspider.com/ZSS/Products/ZenTest/) - old solution for running tests automatically. Far
- inferior to guard and [watchr](https://github.com/mynyml/watchr).
+inferior to guard and [watchr](https://github.com/mynyml/watchr).
+* [rcov](https://github.com/relevance/rcov) - code coverage tool, not
+ compatible with Ruby 1.9. Use SimpleCov instead.
+* [therubyracer](https://github.com/cowboyd/therubyracer) - the use of
+ this gem in production is strongly discouraged as it uses a very large amount of
+ memory.
This list is also a work in progress. Please, let me know if you know
other popular, but flawed gems.
@@ -1130,6 +1143,16 @@ Here is a sample spec of a [carrierwave](https://github.com/jnicklas/carrierwave
```
+<a name="reading"/>
+# Further Reading
+
+There are a few excellent resources on Rails style, that you should
+consider if you have time to spare:
+
+* [The Rails 3 Way](http://tr3w.com/)
+* [Ruby on Rails Guides](http://guides.rubyonrails.org/)
+* [The RSpec Book](http://pragprog.com/book/achbd/the-rspec-book)
+
<a name="contributing"/>
# Contributing

0 comments on commit 4e3a0e4

Please sign in to comment.
Something went wrong with that request. Please try again.