Restangular: How to remove an element from a collection without breaking restangular

Removing an item from a Restangular collection with _.without drops custom collection attributes like route, breaking later parent-based requests. splice keeps the array object intact.

Help me, there is a zombie process!

Zombie processes appear when child processes exit but the parent never waits, leaving defunct entries in ps; fixing or restarting the parent removes them.

Howto: Select2 with AJAX

Load large choice lists on demand with AJAX in Select2 to avoid huge HTML and support paged, infinite-scrolling results.

Rails 4 introduced collection_check_boxes

Rails 4.0 adds collection_check_boxes for rendering checkbox groups from a collection and handling multi-value form params safely.

Postgres: How to force database sessions to terminate

PG::ObjectInUse blocks dropping or resetting a PostgreSQL database when other sessions stay connected. Find the backend PID and terminate the process when needed.

Using Apache Benchmark (ab) on sites with authentication

Authenticated pages can be benchmarked with ab by supplying the right session cookies; otherwise login-protected requests fail or measure the wrong content.

Vortrag: Elasticsearch Grundlagen und Rails-Integration mit searchkick

Elasticsearch liefert Volltextsuche, Mappings, Shards und Aggregationen per REST-API; in Rails übernimmt searchkick Indizierung, Reindexing und Suchabfragen.

Paperclip: Move attachements from local storage to AWS S3

Migrating Paperclip attachments from local disk to Amazon S3 avoids manual reuploads and keeps existing files available through the S3 storage adapter.

Show MySQL process list without sleeping connections

Filter MySQL connections to hide idle sessions and focus on active or slow queries, with flexible sorting and column selection via information_schema.processlist.

Fixing "Lock obtain timed out: SimpleFSLock" for Solr

Solr update requests can fail with 500 errors when a stale Lucene write lock remains in the data directory, often from incorrect file ownership.

Ubuntu: Share internet connections with other computers

Set up an Ubuntu computer as a gateway to share one internet connection over a local network, including WLAN or tethering sources.

Don't use Ruby 1.9.2

Ruby 1.9.2 loads files very slowly, making Rails startup and test runs painfully long. Upgrading to 1.9.3 removes the bottleneck.

xip.io: wildcard DNS for everyone

Wildcard DNS maps hostnames to any IP address, making local development sites reachable from phones, tablets, and other devices on the network.

How to silence thin boot messages

Thin prints startup messages that clutter parallel test output. Logging can be silenced with Thin::Logging.silent = true or redirected to a custom logger.

Implementing social media "like" buttons: Everything you never wanted to know

Embedding social widgets can expose cookies, trigger background tracking, and slow pages; privacy-friendly two-step buttons and async loading reduce the impact.

Geordi 1.9 released

Cleanup commands for leftover dump files and unneeded local MySQL, MariaDB, and Postgres databases, with whitelisting and flexible authentication methods.

How to create giant memory leaks in AngularJS (and other client-side JavaScript)

AngularJS client-side code can steadily accumulate unreclaimed objects until the browser process crashes. Common causes include forgotten listeners, timers, plugins, scopes, and unbounded caches.

Getting started with Chef

Chef setup depends on curl, sudo access to gems, and running commands inside the chef-repo directory to keep configuration files available.

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.

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.

Rails 3.1 error message: Could not find a JavaScript runtime

Fresh Rails 3.1 apps can fail on boot when ExecJS cannot locate a JavaScript runtime, and adding a runtime gem to the Gemfile removes the error.

Sprites with Compass

CSS sprites can reduce image requests by bundling small backgrounds into one sprite; Compass and compass-rails automate sprite generation in Rails apps.

Performance analysis of MySQL's FULLTEXT indexes and LIKE queries for full text search

MySQL text search performance differs sharply between LIKE and FULLTEXT; LIKE stays surprisingly fast on medium datasets, while FULLTEXT benefits from larger vocabularies.

Using local fonts with Webpack / Webpacker

Using self-hosted or purchased fonts with Webpack or Webpacker requires either bundling them from assets or packaging them locally for clean imports.