MySQL: "LOAD DATA INFILE" says "file not found"

This might be due to AppArmor denying the MySQL server access to most of the filesystem. You can instead use
LOAD DATA LOCAL INFILE ...
to pipe data through the MySQL client, which can read everything the executing user can.

Releasing geordi

geordi bundles handy makandra note scripts into one gem for production database dumps, remote gem installs, and running rake tasks across environments.

mysql-master-master - Google Code

MMM (MySQL Master-Master Replication Manager) is a set of flexible scripts to perform monitoring/failover and management of MySQL Master-Master replication configurations (with only one node writable at any time). The toolset also has the ability to read balance standard master/slave configurations with any number of slaves, so you can use it to move virtual IP addresses around a group of servers depending on whether they are behind in replication.

Debugging Apache's mod_rewrite

Troubleshooting broken RewriteRule and .htaccess behavior in Apache is easier with RewriteLog and high rewrite logging.

Fix capistrano errors: "no such file to load -- net/ssh/authentication/agent/socket" or "uninitialized constant Net::SSH::KnownHosts::SUPPORTED_TYPE"

Capistrano can fail with net/ssh load errors or an Net::SSH::KnownHosts::SUPPORTED_TYPE constant error when paired with net-ssh 2.5.1. Upgrading to 2.5.2 restores compatibility.

How to fix zero-byte downloads with Rails 3 and Apache / Passenger

Zero-byte downloads in Rails 3 behind Apache/Passenger often come from missing X-Sendfile support, leaving file responses empty.

Mac OS X Lion (10.7.2) screws host resolution

Mac OS X Lion 10.7.2 can ignore /etc/hosts and break local name resolution, so Apache virtual hosts and Passenger settings stop working as expected.

Manually purge binary logs on MariaDB

Old binary log files consume disk space and can be removed safely after retention needs are met. PURGE BINARY LOGS deletes archived logs older than a chosen cutoff.

List of :status symbols for rendering in Rails

Rails render accepts HTTP status symbols such as :bad_request, making responses more readable than numeric codes.

Keep Pidgin up to date

If your pidgin IM fails to connect to ICQ, you may need to update it. The ubuntu default sources are usually outdated.

Just follow the instructions 1-4 and 1-3 on the page linked below.

Making SSL connection work

If you can not connect using SSL, open up the account settings and enable "clientLogin". Also, your Server should be set to slogin.icq.com.

Web Operations 101 For Developers

Web application developers increasingly need operational knowledge beyond coding, testing, and deploying. Traditional development workflows now overlap with running and maintaining production systems.

High Performance Browser Networking: HTTP/2

HTTP/2 reduces HTTP/1.1 workarounds and shifts optimization into the transport layer, improving application speed, simplicity, and robustness while enabling new performance gains.

Force net/http to verify SSL certificates

Ruby's net/http is setup to never verify SSL certificates by default. Most ruby libraries do the same. That means that you're not verifying the identity of the server you're communicating with and are therefore exposed to man in the middle attacks. This gem monkey-patches net/http to force certificate verification and make turning it off impossible.

HTTP/2 push is tougher than I thought - JakeArchibald.com

Browser HTTP/2 push support is inconsistent and can hurt performance instead of improving it, despite a useful model for integrating push with browser APIs.

Latency Numbers Every Programmer Should Know

Common I/O operations differ by orders of magnitude, making hardware latency easy to underestimate and performance bottlenecks hard to diagnose.

httpbin: HTTP Client Testing Service

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

HTTP/2 is here, let's optimize!

HTTP/2 changes long-held optimization rules, making some common performance tricks counterproductive for modern web delivery.

The Heartbleed Bug

A flaw in OpenSSL and SSL/TLS can expose protected data to attackers and leak secrets from encrypted internet traffic.

PDF Generation in Rails

Generating PDFs in Rails often means choosing between text-based reports, HTML-to-PDF rendering, and different trade-offs in layout control and browser fidelity.

Redis Desktop Manager

Cross-platform open source Redis administration GUI for managing databases, replacing slow, clunky tools with a desktop client.

RailsPanel chrome extension

Chrome panel for inspecting Rails log data, including parameters, response times, view rendering, and database requests.

How I Explained REST to my Wife

A friendly introduction to the web and HTTP’s purpose, using REST as a simple mental model for understanding request and response behavior.

Phusion Passenger 4 Technology Preview: Out-Of-Band Work – Phusion Corporate BlogPhusion Corporate Blog

Out-of-band work lets long-running tasks run outside the request/response cycle without blocking clients, reducing request latency and avoiding garbage-collection pauses.

Updated: Puppet 2.6.x on Ubuntu lucid 10.04

Installing a specific Puppet release on Ubuntu Lucid avoids distro package drift and keeps configuration management behavior predictable.