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.