Posts published by: Ryan Tracey

Do They Fit?

Do you want to know if the MP3s in that folder will fit on a CD?

No problem.

#!/usr/bin/env python

import audioread
import sys

try:
    files = sys.argv[1:]
except:
    print('Usage: %s <files/glob>' % (sys.argv[0],))
    sys.exit()

total_length = 0.0
for file in files:
    f …

Commandline Completion for Fabric

To get a list of functions in a Fabric file you use fab --list. I use Fabric frequently so I thought I'd save myself some time by using bash completion to render fab --list obsolete.

Being a learn-from-example type of person I immediately consulted Google for some precedence. After a …

MySQL Over an SSH Tunnel

The Problem-ette

I need to access a number of MySQL servers which are only accessible via ssh jump boxes, ie. I have to ssh to Box A in order to connect to Box B via SSH or the MySQL client.

This can get a bit tedious.

The Solution

Being able …

Bind, GeoIP, and Python a Beautiful Soup doth make

The week that was

This past week saw me get a tooth implant. Ouch. You know its bad when the dentist says “close your eyes, we don’t want you blinded by flying tooth fragments”! OMG WTF!

This past week also saw me doing something just as painful as having …

Keeping IT Simple With Web.py

The web framework shootout

There are many Python based web frameworks out there waiting to be discovered, tested, set aside, and even used for something useful. Some argue that there are too many and that what Python needs is a Rails-style killer app. One app to rule them all… Like …

SQL Converter

The Problem

I had a text file containg MS SQL Server database table definitions and I needed to make it compatible with MySQL. Here’s an example:

GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Blecchs]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo …