Capybara - The missing API

Capybara node methods for locating elements, filling forms, clicking controls, and checking page content from Cucumber steps.

Ubtuntu: "FATAL: Could not load /lib/modules/...-generic/modules.dep: No such file or directory"

Kernel modules cannot load because /lib/modules/.../modules.dep is missing for the running Ubuntu kernel, often after apt-get autoremove removed an older image.

One cause for "iptables: No chain/target/match by that name" on Ubuntu

iptables commands on Ubuntu can fail with “No chain/target/match by that name” when required kernel modules such as xt_multiport and xt_comment are missing.

Geordi 1.0 released

Geordi 1.0 consolidates Rails project commands into a single CLI with command lookup, dependencies, and new setup, update, console, shell, and test workflows.

How to set up database_cleaner for Rails with Cucumber and RSpec

Reliable test isolation for Rails with Cucumber and RSpec requires cleaning the test database up front and switching strategies for JavaScript-driven examples.

Github: How to find the Readme for a certain version of a gem

Gem releases are usually tagged in GitHub, letting you switch to a version tag to inspect the README from that release.

Piro: Pivotal Tracker Rocket

Open-source Chrome extension and app for tracking assigned stories across multiple projects in Pivotal Tracker.

Unobtrusive jQuery to toggle visibility with selects and checkboxes

jQuery can show or hide form sections based on select values, radio buttons, checkboxes, blank values, and _checked or _unchecked states.

Debug Ruby code

Interactive Ruby debugging lets you pause execution, inspect variables and stack frames, and step through code from a shell or RubyMine.

Heads up: LibreOffice Calc AutoCorrect will change characters when pasting multi-line text

Pasting multi-line text into LibreOffice Calc can unexpectedly capitalize the first character of the last line because AutoCorrect is enabled.

Refile: Ruby file uploads, take 3

Refile is a Rails gem for file uploads with better direct-to-S3 support than CarrierWave, but on-demand image rendering can increase server load and require caching or a CDN.

Spreewald 1.2.0 released: new "select field should be sorted" step

Bugs in select-field ordering can make form choices appear in the wrong sequence; a sorting check helps verify ordered and unordered dropdowns behave correctly.

Rendering: repaint, reflow/relayout, restyle

Browser rendering performance can drop when style or DOM changes force costly repainting and layout recalculation across large parts of the page.

Materialized views with Sequel

Materialized views in PostgreSQL provide precomputed query results for faster reads; Sequel can map them cleanly for ORM-based applications.

Github: Search for a repo you've starred

Find a starred GitHub repository again when the name is forgotten. Astral offers split-screen browsing with README previews for starred repos.

How to circumvent Firefox's "Document expired" page in Selenium tests

Firefox blocks back navigation to POST results with a “Document expired” page, which can disrupt Selenium tests that need to verify recovery from this browser protection.

ImageMagick: Cropping images

ImageMagick cropping can preserve aspect ratio by default, and ! forces exact dimensions when a fixed-size image is needed.

flag-icon-css: Scalable country flags

Country flag icons for inline and block display with CSS classes, useful for language selectors, location labels, and compact visual markers.

Falsehoods programmers believe about addresses

Address data is full of edge cases that break naive assumptions about location, format, and identity. Postal and street addresses often vary by country, purpose, and delivery system.

Jasmine 2 cheat sheet for RSpec lamers

Quick RSpec-to-Jasmine 2 reference for matching expectations and mock assertions when switching test style; Jasmine 1.x uses different syntax.

Jasmine: Reset the location when testing code that uses pushState / replaceState

Browser navigation during pushState or replaceState tests can leave Jasmine on the wrong URL and break test reruns. Saving and restoring the location keeps the suite on the spec page.

velesin/jasmine-jquery

Jasmine DOM testing is easier with matchers like toBeVisible() and toHaveCss(css), plus fixture loading for temporary HTML setup and cleanup.

Installing the typhoeus Rubygem on Ubuntu 14.04

Native Ruby HTTP client setup can fail when the libcurl development package is missing. Installing the curl headers on Ubuntu 14.04 allows typhoeus to build and install.

Cucumber: More patience for Selenium features

Parallel Selenium features can time out when Capybara waits too little for browser-server interactions; a support file increases patience for @javascript scenarios.