Read the following chapters from The Pragmatic Programmer, anniversary edition (in our library): Chapter 1, Topic 3: Software Entropy...
Understand at least the following CSS concepts: Classes Selecting elements for styling Basic styling (color, typography, spacing)
Understand why we test: Low defect rate without a QA department. Customer acceptance testing can concentrate on new features...
Rails is our web framework. Goals Be able to write a simple Rails application. Understand how Rails talks to the...
makandra is responsible for maintaining about 75 Ruby projects. These projects use a large number of different versions for Ruby...
When using ORDER BY "column" in PostgreSQL, NULL values will come last. When using ORDER BY "column" DESC, NULLs will...
SmartUnderline is an open-source JavaScript library which uses clever tricks to draw underlines in a more beautiful and readable...
Today I ran into this: Invalid gemspec in [/usr/local/rvm/gems/ruby-1.9.3-p194/specifications/ZenTest-4.9.3.gemspec]: Illformed requirement ["< 2.1, >= 1.8"]. You need a newer Rubygems version. Try...
Rails comes with grouped_collection_select that appears to be useful, but isn't. As an alternative, consider the flat...
Note: ActiveRecord::Base#becomes has a lot of quirks and inconsistent behavior. You probably want to use ActiveType.cast instead.
Starting from 4.1, Rails automatically detects the inverse of an association, based on heuristics. Unfortunately, it does not seem to...
There is no such thing as a "default order" of rows in database tables. For instance, when you paginate a...
ActiveModel supplies an errors object that behaves similar to a Hash. It can be used to add errors to a...
Capistrano 3 is a major rework of the framework and requires several adjustments to your deploy configuration files. The biggest...
Please don't use the horrible datetime_select helper. It has a terrible UI. Always prefer to use a visual...
You might wonder about this request in your test.log: Started GET "/__identify__" for 127.0.0.1 at 2015-04-29 18:00...
Re-creating a complex ActiveRecord scenario quickly without setting up a full-blown Rails app can come in handy e.g...
When you want to UPDATE a table with information from an associated table, you can JOIN the associated table into...
Several Rails migration methods accept index: true as an option to create an index. In some cases (like #add_column...
When using send_file (for example for attachments of any kind), make sure your application knows the correct mime types...
You can freeze any Ruby object to prevent further modification. If you freeze an ActiveRecord and try to set an...
Rails comes with a Rake task notes that shows code comments that start with "TODO", "FIXME", or "OPTIMIZE".
Starting from Rails 4.0, you can use a special form options helper called #collection_check_boxes. It behaves similar to...
When using threads, you must make your code thread-safe. This can be done by either locking (mutexes) all data...