Heads up: Ruby implicitly converts a hash to keyword arguments

Ruby may treat any object with to_hash as keyword arguments, so methods with optional and keyword parameters can receive the wrong value or raise ArgumentError.

Enhanced error messages when hash keys are missing

Missing hash entries raise vague KeyErrors; a custom decent_fetch can include the full hash content for easier debugging of parsed API responses.

ExceptionNotification gem will only show application backtrace starting on Rails 4

Rails 4 exception emails from ExceptionNotification may lose gem and library lines because the default backtrace cleaner filters them out.

OR-ing query conditions on Rails 4 and 3.2

Rails 4 and 3.2 lack ActiveRecord::Relation#or for combining query conditions; activerecord_any_of provides any_of and none_of for cleaner disjunctive filters.

pgAdmin has a "graphical EXPLAIN" feature

pgAdmin can present PostgreSQL EXPLAIN output in a readable graphical form, making query plans easier to inspect than raw console text.

Rarely say yes to feature requests

Feature requests can trade long-term product focus for short-term satisfaction. A simple yes/no check helps decide whether new roadmap items are worth the cost.

Terminal escape sequences – the new XSS for Linux sysadmins

Terminal escape sequences can hide malicious shell script content, making a file look harmless in cat while executing different commands when run.

Regain unused disk space from OpenStack instances

Reclaim wasted storage from oversized OpenStack qcow2 instance disks by shrinking the image after zeroing free space and recreating the file.

httpclient: A Ruby HTTP client for serious business

httpclient is more than a thin net/http wrapper: it reuses persistent connections across threads, manages cookies, and supports asynchronous requests and debug output.

Error installing gem with native extension (collect2: error: ld returned 1 exit status)

Native gem builds can fail with collect2: error: ld returned 1 exit status when required development headers or libraries are missing, such as libgmp on Debian-based systems.

Install PhantomJS under Ubuntu

PhantomJS lacks Linux binaries, making manual builds cumbersome; installing it globally with npm provides a simpler way to get the command running on Ubuntu.

Install Bower under Ubuntu

Bower can be installed on Ubuntu through npm after Node.js is available.

Installing Node.js / npm under Ubuntu with nvm (with yarn)

Node.js on Ubuntu is easier to manage with nvm, avoiding sudo for global packages and enabling per-version npm and yarn setup.

natritmeyer/site_prism

SitePrism adds a semantic Page Object Model DSL for Capybara acceptance tests, making site interfaces easier to model and query with reusable page and section objects.

Migrating legacy jQuery code to .on() and .off()

Legacy jQuery event code using bind, delegate, live, unbind and die needs upgrading to on() and off() for modern event handling.

httpbin: HTTP Client Testing Service

Generic endpoints for testing HTTP clients with slow connections, redirects, and compressed responses, useful when debugging timeout issues.

Bootstrap 4 is coming

Bootstrap 4 switches from Less to Sass, adds flexbox-based layout options and cards, and modernizes customization, JavaScript, and browser support.

Retina revolution

High-resolution JPEGs can deliver sharp images on low- and high-DPI displays while keeping compression artifacts small enough to stay unobtrusive.

DevDocs is your API Hub

Fast, searchable access to multiple API references with fuzzy matching, keyboard shortcuts, offline use, and browser installation support.

Pitfall: has_defaults on virtual attributes are nil when loaded from database, of course …

Virtual defaults disappear on persisted records, so combining them with database-backed values can raise nil errors. Model design or explicit initialization avoids the nil surprise.

Creating spheres with CSS

Using border-radius and gradients, flat circles become sphere-like shapes; animation can add a more lifelike effect.

How to update RubyGems binary for all installed rubies

Keeping RubyGems current across multiple installed Ruby versions avoids security issues, but Ruby 1.8.7 needs the last compatible release.

Native app install banners in Android, iOS

Mobile Chrome and Safari can show native install prompts for related apps, boosting app discovery through the phone's built-in UI with platform-specific requirements.

Continuous Security Testing with Devops - OWASP EU 2014

Automated security testing integrated into a BDD workflow reduces gaps between development and security review for teams shipping software continuously.