Setup ODBC for R on OS X

Hi Folks, Please do not follow this advice, its an old article that somehow has stayed way past its welcome in the search engines. Use the RPostgresSQL package that connects directly using the C drivers, its a lot faster to set up and run. ~Hilton. At work, we use R to analyze data and calculate risk. The data is in a PostgreSQL database, so we use the RODBC package to access the database from R.

Read on →

A Reliable Script File Layout

I write a surfeit1 of Ruby scripts that I use every day at work, everything from sending, transforming and retrieving files to monitoring systems to glueing platforms together. Keeping these under control, forgettable2 and maintainable is very important to me. So over the past few years, I have migrated to a file layout and programming pattern that enables me to spin these up quickly, forget about them and yet get back and maintain them when things change.

Read on →

Not the Clicky Keyboard

It’s pretty popular these days for popular bloggers, writers and programmers to use mechanical-switch, or clicky, old-school keyboards like the DAS Keyboard, old IBM keyboards or the original Apple Extended Keyboard. So much so that Jeff “Coding Horror” Attwood went as far as to design the CODE Keyboard with Weyman Kwong of WASD Keyboards which looks droolworthy. To be fair, these keyboards are amazingly good, reliable, feel great and are the best you can get.

Read on →

BBEdit lives long and prospers

On Twitter today: Celebrating back to school? Most of today’s undergraduates have never lived in a world without BBEdit. @bbedit https://twitter.com/bbedit/status/374280198336028672 All our attention is focussed on the race-to-the-bottom, in-app purchase rip-offs or the current fad app, but we forget that software, well-built and well-maintained software, has no shelf life. I still use BBEdit every day. It still doesn’t suck! Kudos to Rich Siegel (@siegel) and his team at BareBones for consistently making such an amazing and useful application.

Read on →

Intentional Complexity

John Duns Scotus’ (1265-1308) book Ordinatio: “Pluralitas non est ponenda sine necessitate”, i.e., “Plurality is not to be posited without necessity” William of Ockham’s Razor, modern science version: “The simplest solution is often the best.” Intentional Complexity is a manufactured situation where product configuration and operation are intentionally made difficult. It occurs when a software vendor exposes all the innards of their products to systems operators and end users.

Read on →

ChronoSync Back to My Mac

TL;DR: You can use ChronoSync to access a remote ChronoAgent if Back to My Mac is turned on for both computers. Which means you can sync from anywhere! I have been using the excellent ChronoSync for years to ensure that the Documents and Projects folders on my personal laptop are kept in sync, and therefore backed up, with my home OS X server. These days I have two laptops, the personal one that lives at home and is used for Noverse work, and the work one for my day job at the fund.

Read on →

The Little Touches

It’s the little touches that turn ordinary products into great products. For years I have been using Power2000 NiMH batteries and their chargers that I get in Japan for use in my camera’s Flash. I use these because they really hold a charge and can handle the burst heat from a Nikon flash unit. And they store a lot of energy so they keep on flashing. So when I moved to an Apple Wireless Keyboard and Magic Trackpad, I naturally pulled one of these sets out to use.

Read on →

Gist TextMate 2 Bundle Updates

New updates to the Gist.tmbundle for TextMate 2: Changed the launch key from ⌃⌘G to ⇧⌃⌘J as it interferes with the Find and Replace All (the TextMate 2 defaults changed) Am now having GitHub guess the language of a “Gist from Selection” by taking the file extension from the source file you copied from and using that in the pushed file name. Was hoping to use the scope language but could not figure how to get that and map the right extensions for GitHub.

Read on →

Unreasonable

There are two ways to deal with “the ways things are” in an environment where one can change them: Find some way to justify or meekly accept them, however twisted and delusional they may be; and try to get on with things within those perceived constraints. They call this being reasonable as if it were a good thing. Or find a better, considered, simpler way for things, which requires effort, argument, time, and sometimes blood; enabling one to actually get on with things with fewer constraints.

Read on →

Quick Process Search

I am forever starting and running background UNIX tasks, either manually or via cron jobs. And I am forever checking to see if they are running or not. The usual command I used to use see if a process was running is ps ax | grep bash Where bash is the process that may or may not be running. It gives (headers added): PID TTY TIME CMD 411 ttys000 0:00.04 -/bin/bash 615 ttys001 0:00.

Read on →