POP3 and SMTP via SSH Tunnels
Code: email, privacy, ssh, tunnel
Comments Off on POP3 and SMTP via SSH Tunnels
I use Fetchmail to retrieve my email. I have an account that still doesn’t support SSL, but at least I also have an SSH account that on the same network. Here’s the fetchmailrc config to optionally tear down, then build and use an SSH tunnel:
Chicago Code and Coffee
Code: code and coffee, meetups
Comments Off on Chicago Code and Coffee
A quick note for folks who don’t follow me on twitter: I’ve created a homepage for Code and Coffee, the weekly development meetup. Hope to see you soon.
Finished Libraries
Code: TeX, version numbers
Comments Off on Finished Libraries
When I evaluate a software library, I typically look first at how recently it’s had a release. Is it being updated, or has it been abandoned? There’s an assumption, here.
Deleting Spam From sup Maildirs
Code: email, spam, sup, yak shave
Comments Off on Deleting Spam From sup Maildirs
A quirk of the sup email client is that it doesn’t sync back changes like deletes to mail sources. “Deleted” messages are only flagged and hidden from the user.
The Harmful Consequences of Postel’s Maxim
Code: Postel's Maxim, standards
Comments Off on The Harmful Consequences of Postel’s Maxim
Be liberal in what you accept, and conservative in what you send.
Postel’s Maxim, RFC 1122
There’s a short draft called The Harmful Consequences of Postel’s Maxim that reads:
Against Tedium
Code:
Comments Off on Against Tedium
As a web dev, I often feel like a ridiculous percentage of my day is spent converting between FooBar and foo_bar in the Ruby server code, foo-bar in the CSS class, fooBar in the JavaScript, and Foo Bar in the documentation. There’s so damn much repetitive plumbing.
Sizing Up My Queue
Code: media, podcasts, Ruby, yak shave
Comments Off on Sizing Up My Queue
I have a folder named “queue” that I download podcasts, videos, and books to. It occurred to me that it hasn’t been empty for years. That’s OK, the world is a very interesting place, and I care that I produce things, not just consume them.
But I wondered how big the queue is. Not in terms of disk space, that doesn’t tell me much because the different encoding rates and formats result in very different file sizes. (The disk space command is df -h
, if you need it.) In terms of time.
Installing You Need a Budget 4 (YNAB) on Arch Linux
Code: Arch Linux, Wine, yak shave, YNAB
Comments Off on Installing You Need a Budget 4 (YNAB) on Arch Linux
We only want to advertise YNAB for platforms that we can enthusiastically proclaim, “This will work great for you! We promise! If it doesn’t, we’ll work until it does.†The fact is, we can’t do that for Linux anymore.
YNAB & Linux, 2011
Life events have me experimenting with You Need a Budget, software for planning and tracking budgets. I like that it has an opinionated plan that balances prudent buffers and real-world complexity. Unfortunately YNAB 4 was built on Adobe AIR, which no longer runs on Linux.
What Comes After MVC
Code: presentation, RailsConf
Comments Off on What Comes After MVC
Rails apps start out quickly and beautifully, but after a year features are a struggle, tests are slow, developers are grinding, and stakeholders are unhappy. “Skinny controllers and fat models” hasn’t worked, and “use service objects!” is awfully vague.
This talk explains how to compact the “big ball of mud” at the heart of your app into a bedrock of reliable code. It gives the steps to incrementally refactor models into a functional core and gives explicit rules for how to write light, reliable tests.
The Two Kinds of Integers
Code: abstractions, assembly, Haskell, Ruby, values
Comments Off on The Two Kinds of Integers
A small thing I see tripping up developers is that there are two kinds of integers: numbers and identifiers.
We don’t know what the integer 4 means unless we know what it’s for. Are we counting things, or identifying them? It’s really easy to slip between the two, like this real code snippet I found: