JD Huntington: July 2008 Archives

A Different Kind of Experience

| | Comments (1) | TrackBacks (0)
Very few people like going to the doctor, myself included. So you can imagine my frustration when I found myself needing to making a doctor's appointment this week. I expected to have an appointment at an inconvenient time, sit in a stuffy waiting room with old magazines for an hour, only to be followed by sitting in a stuffy exam room for another hour. We've all been there.

Thankfully, I happened to look into Zoomcare's website, mostly on a whim. It sounded good, so I figured I'd make an appointment and see how it went. Turns out it went well. Very well. I made an appointment at 9:30am for 11am, and got an email back almost immediately that I was confirmed for said time. I showed up at 10:55am, waited for literally 1 minute, and left with a prescription in hand by 11:07am. 

They have earned themselves a happy new customer.

gem install punch for drop-dead easy time tracking

| | Comments (2)

While at cabooseconf last month, I found out about one of the coolest time tracking tools ever: punch. (Thanks to cardiod from OG)

According to its own description, it's a

k.i.s.s. tool for tracking the hours spent on various projects. it supports logging hours under a project name, adding notes about work done during that period, and several very simple reporting tools that operate over a window of time.

I find this to be a much easier method of tracking time than many alternatives, including the zillions of time tracking/billing web 2.0 sites. In fact, an hour or two of hacking could leave someone with a pretty decent time tracking AND invoicing tool.

And wouldn't ya know it, it's as simple as gem install punch.

OmniFocus Hack - the mobile list

| | Comments (0)

For those of you who use OmniFocus and won't be getting an iphone, this one could really come in handy. It's a ruby script that talks to OmniFocus via OSA, grabs all the items in a given context, then writes them as poorly-formed html over ssh to a predefined destination. Cheap and dirty, but it's the quickest way I've found to get stuff like this available anywhere, especially in a mobile phone browser.

#!/usr/bin/ruby

require 'rubygems'

require 'rbosa'

require 'net/ssh'

of = OSA.app 'OmniFocus'

shopping_list = of.default_document.contexts.collect { |x| x if x.name == 'Errands' }.compact.first.contexts.collect { |x| x if x.name == 'Shopping' }.compact.first

items = shopping_list.tasks.collect { |x| x.name unless x.completed? }.compact

def post_file( shell, file, datum )

shell.touch(file)

shell.send_command("echo \"#{datum}\" > #{file}")

end

def build_html(items)

"<ul>#{items.collect{|item| '<li>' + item + '</li>' }}</ul>"

end

Net::SSH.start( 'myserver.dreamhost.com' ) do |session|

shell = session.shell.sync

post_file shell, "~/shoppinglist.mydomain.com/index.html", build_html(items)

shell.exit

# session.loop

end


About this Archive

This page is a archive of recent entries written by JD Huntington in July 2008.

JD Huntington: June 2008 is the previous archive.

JD Huntington: November 2008 is the next archive.

Find recent content on the main index or look in the archives to find all content.

Pages

Powered by Movable Type 4.1