Skip to content

Instantly share code, notes, and snippets.

Cable management in the living room

Attach two cable hooks to the back of each table leg. Run all cables through these, signal on one side and power on the other.

Get an end table for next to the couch and give it the same treatment as the table, except for the cable modem, router, mac and drive. Get a UPS for the mac so it doesn't keep dying in the middle of the day.

# command-line calorie tracker
# - everything is a recipe
# - recipes can contain other recipes
# - resolve recipes as far as possible
# - if a recipe doesn't resolve, report it as the given name
# - unit conversions via recipes
# - each dated entry has one or more recipes
# recipe: count unit label(?) equivalent(?)
# equivalent: '=' recipe(s /,/)
#!/usr/bin/env perl
use strict;
use warnings;
use Try::Tiny;
use IO::File;
use JSON::XS qw/ decode_json /;
use File::Slurp qw/ read_file /;
#!/usr/local/bin/perl58 -w
use strict;
my @replacements = qw/
alter
table
add
# <-Foo> => random singular element from @Foo, hyphenated
# <^Foo> => random singular element from @Foo, capitalized
# <&Foo> => random singular element from @Foo with the first word capitalized
# <.Foo> => random singular element from @Foo, with the first word lowercased
# <!Foo> => random singular element from @Foo, ALLCAPS
# <*Foo> => random singular element from @Foo with articles stripped
# <,Foo> => random singular element from @Foo with spaces replaced with underscores
# <+Foo> => random singular element from @Foo with spaces replaced with plusses
select (
select
date_trunc('day', date_page_requested)
from
ua_user_page_requests
where
page_request_no = x.page_request_no
) as day,
@peterkeen
peterkeen / balance_sheet.pl
Created December 31, 2010 05:52
Calculates month-over-month and year-over-year balances using ledger and SQLite
#!/usr/bin/env perl
use strict;
use warnings;
use DBI;
my ($year, $month, $day) = get_date();
my @balances = (
@peterkeen
peterkeen / gist:808562
Created February 2, 2011 22:10
Add this to your [aliases] section in ~/.gitconfig
alias = "!sh -c '[ $# = 2 ] && git config --global alias.\"$1\" \"$2\" && exit 0 || echo \"usage: git alias <new alias> <original command>\" >&2 && exit 1' -"
@peterkeen
peterkeen / gist:840678
Created February 23, 2011 16:40
transcript
$ cat run
cat run
#!/bin/sh
nohup bash -c 'while true; do sleep 10; done' </dev/null &> sleeper.log &
echo $! > /tmp/sleeper.pid
;
$ sudo ./run
sudo ./run
[sudo] password for pak:
@peterkeen
peterkeen / gist:1025209
Created June 14, 2011 15:59
SQLAlchemy Session from DBAPI Connection
def session_from_connection(conn):
def passthrough_conn():
return conn
# note that the url here doesn't matter, but it has to parse correctly as a url
engine = create_engine('postgresql://foo@bar/abc', creator=passthrough_conn)
session = Session(bind=engine)