Traversing the DOM tree with jQuery

jQuery traversal methods move a selection through the DOM tree to find descendants, ancestors, parents, children, or matching elements efficiently.

How to grep through the DOM using the Capybara API

Capybara can search page HTML in Ruby when CSS or XPath is awkward, but DOM changes can cause stale element errors.

Rails: Reverse Lookup a Fixture Name by it's id and table name

Find a Rails fixture name from a table and numeric id when the record label is unknown. ActiveRecord::FixtureSet can search loaded fixtures and return the matching key.

Speed up JSON generation with oj

Use oj to generate JSON much faster for large Ruby hashes, but account for symbol handling, Rails compatibility, and HTML escaping to avoid XSS.

Cucumber.yml was found, but could not be parsed.

cucumber fails because cucumber.yml cannot be parsed; removing rerun.txt in the Rails directory often fixes the invalid rerun state.

Error "undefined method last_comment"

RSpec loaded by Rake can fail with NoMethodError: undefined method 'last_comment' when Rake 11 removes a method required by older rspec-core.

Online tool to convert tables between different formats

Online table conversion helps move data between JSON, Markdown and CSV, with transpose support for rotated tables. Not suitable for sensitive data.

Resources for working with the Youtube API

Working with the YouTube Data API requires API keys and quota awareness; request costs vary by query type, so testing requests and understanding the domain model helps.

How to fix: Microphone recording levels are too quiet (or get lowered automatically)

Low microphone input makes calls hard to hear, and Skype can silently reduce recording gain. Adjusting the input level and disabling automatic mixer changes keeps speech audible.

Capybara 'fill_in': Ambiguous match for different input names

Capybara fill_in can raise Capybara::Ambiguous when visible field labels overlap. match: :prefer_exact or a global exact matching strategy avoids substring conflicts.

During deployment: "You are trying to install in deployment mode after changing your Gemfile"

Deployment can fail with a misleading Gemfile error when the server uses a newer Bundler than the version recorded in Gemfile.lock. Matching Bundler major versions on both sides prevents the install mismatch.

About the HTML and the BODY tag

html and body behave differently from normal elements, making them poor choices for layout, sizing, and positioning; use them mainly for global defaults.

RubyMine crashes Ubuntu 11.04 window decorator on exit

Java GUI apps can crash Ubuntu 11.04’s window decorator on exit, leaving missing title bars and requiring a temporary restart of the decorator.

Accessing Rails config in webpack(er)

Rails secrets and other configuration values can be read inside webpack bundles with rails-erb-loader, enabling environment-specific client-side settings without hardcoding them.

How to open a new tab with Selenium

Browser popup blocking prevents window.open from Selenium; injecting a clickable temporary link opens a new tab reliably in Chrome.

Fix "subprocess installed post-removal script returned error exit status ..." when installing/removing/updating a package with apt

APT package operations can fail when maintainer scripts return exit status 78, often because postinst, postrm, or prerm scripts hit leftover files or mounted directories.

Selenium: How to close another tab (popup)

Closing a Selenium pop-up requires switching to its window handle and then pointing the driver back to another tab to avoid broken subsequent steps.

Take care of existing users when upgrading Clearance

Upgrading Clearance can break existing logins when password hashes change from SHA1 to BCrypt, causing BCrypt::Errors::InvalidHash for legacy users.

randym/axlsx · GitHub

Create XLSX spreadsheets in Ruby with charts, images, styling, auto column sizing, and schema validation; handles large files and eases migration from spreadsheet.

Request a non-HTML format in controller specs

Controller specs can exercise non-HTML responses such as PDF, Excel, XML or JSON by setting :format or the HTTP_ACCEPT header. The format value must be a String, not a Symbol.

Puppet: Could not evaluate: Field 'device' is required

Puppet mount failures can stem from a malformed /etc/fstab; rewriting the file can resolve missing device field errors during catalog runs.

How to pair a Bose Quiet Comfort 35 with your Ubuntu computer

Bluetooth on Ubuntu can pair with Bose QC35 but still lack audio output; disabling low-energy mode and enabling the PulseAudio Bluetooth module restores sound.

Linux: How to add a task bar to VNC displays

VNC sessions often lack window switching and a visible task list, making Selenium debugging awkward. A lightweight panel such as lxpanel restores task switching on the remote desktop.

Colcade is a lightweight Masonry alternative

Lightweight grid layouting for mixed-size items with smaller footprint and no dependencies; performance is better than Masonry, but column spanning and built-in transitions are missing.