Archive for the ‘personal’ Category

Simplenote, TextExpander, and the scale

Losing weight was not going to be one of my New Year’s resolutions. I just wanted to keep myself from gaining weight over the winter when I can’t ride my bike to and from work. But when I got on the scale a few weeks ago and found myself grazing the 200-pound mark, I knew that I’d already failed at keeping my weight steady and needed to start losing.

There are as many weight loss strategies as there are dieters. My plan is to simply think more carefully about what and how much I eat, and let the scale tell me how well I’m doing. I know that many people are dead set against weighing themselves every day; their theory being that your day-to-day weight fluctuation is too noisy to be a good measure of your progress. But for me, going a few days between weighings is just a license to lie to myself about my intake. I’m going to weigh myself every day and record it to keep myself honest.

I will not, as a general rule, be making the results public. I won’t be putting my weight up in the sidebar of the blog, nor will I set up a Twitter account for my weight as Leo Laporte has.1 This is not about shaming myself into losing; it’s about me keeping score for myself.

I’ll be using my iPhone to keep track of my weight. This is not just some nerdy love of technology, the phone is my most practical recording device. I keep my phone in the bathroom overnight to have it ready when I get dressed in the morning, so it’s already right where the scale is. And, like my car keys, my phone is something I have to pick up and pocket every morning. If I’m going to establish a habit of recording my weight, doing it on the iPhone seems like the easiest way to do it.

I’m sure there are dozens of iPhone apps that will help me track my weight. They’ll probably also graph it, calculate my BMI, and generate an autoregressive integrated moving average model. But I don’t want a new app, I just want to enter the date and weight as efficiently as I can. So I’ve decided to record my daily weight in Simplenote, an app that

  1. launches quickly,
  2. I’m familiar with, and
  3. can be streamlined with TextExpander.

Here’s what my note looks like so far.

I have to put three spaces between the date and the weight, otherwise the iPhone will interpret each line as a phone number and will turn it into a link—underlined and in blue.

I’m typing in the weight exactly as it’s displayed on my scale. It weighs to the nearest half pound, so eventually I’ll have some values that end with “.5” instead of “.0.”

I enter the date quickly via this TextExpander snippet:

The abbreviation is meant to indicate “date stamp”—I put a “z” at the end because “ds” is a combination that can appear in real words. I have TextExpander set to ignore the case of the abbreviation, so “Dsz” (which is what I’ll get at the beginning of the line because of the iPhone’s auto-capitalization) works the same as “dsz.”

The content uses the standard strftime format. Using two digits for the months, days, and years ensures vertical alignment.

There will, no doubt, come a time when I’ll want to graph my weight or do some sort of regression analysis. That’s when Simplenote’s automatic syncing will come in handy. I’ll copy the data from my Simplenote web page, paste it into a local text file or spreadsheet, and analyze to my heart’s content. For now I’m happy just to get into the daily routine of recording my weight.


  1. I know he’s an internet celebrity and all, but doesn’t it strike you as odd that Leo’s scale has almost 1500 followers? 


Tweets for November 29, 2009

12:12 am
Dam poor construction in a cartoon: http://xrl.us/bgeczm.

5:48 pm
Prince is in the Hump Dome!

7:14 pm
Tweetie’s picture-in-picture way of showing icons in retweets is cute and informative. Not sure about the red turned-down page corner.

This post was generated automatically using the script described here.


Tweets for November 28, 2009

5:56 pm
Outdoor Xmas lights up. As usual, more profanity in one 2-hour stretch than in the entire rest of the year.

This post was generated automatically using the script described here.


Tweets for November 27, 2009

9:35 am
First time I’ve ever gone out shopping on Black Friday. Luckily, the muffler shop isn’t crowded.

4:58 pm
Can buy 1 more song on an expiring Amazon MP3 coupon. Strangely drawn to “Tell Me Something Good” by Rufus/Chaka Khan.

This post was generated automatically using the script described here.


Tweets for November 25, 2009

10:43 am
The little rocketship that appears in the Dock when Python runs with appscript is really starting to piss me off.

3:36 pm
Many of my commands broke with the latest TextMate update. Had to add ~/bin to its internal PATH variable to get things back to normal.

3:53 pm
Nearing the end of the 3rd day of a UPS 2-day delivery and still no package. What’s your whiteboard say about THAT, Mr. Stringy Hair?

4:53 pm
Stringy Hair comes through and UPS arrives right at closing time.

9:04 pm
After backing out of a parking spot, reached toward the steering column to shift to D. Haven’t had a car with a shift lever there since 197x

This post was generated automatically using the script described here.


Tweets for November 24, 2009

8:22 am
My phone forgot the office wi-fi password and so did I.

12:21 pm
Always meant to watch “Standing in the Shadows of Motown.” Now it’s a 99¢ rental at ITS, so…

1:16 pm
The four apps I upgraded today were deleted from my iPhone at the next sync. Is this part of the iPod halo effect?

5:34 pm
Grilling pork chops in the rain.

This post was generated automatically using the script described here.


Tweets for November 23, 2009

9:35 am
Yes, I left my lunch packed neatly on the kitchen counter at home. But I remembered to bring everything else.

10:25 am
Three seasons of a small pond I pass on the way to work: http://xrl.us/bgdhug.

10:29 am
And a tree, http://xrl.us/bgdhv6, which I didn’t start shooting until June.

3:34 pm
TextMate just updated itself. I am shocked, SHOCKED, that the update isn’t Version 2.

This post was generated automatically using the script described here.


Tweets for November 19, 2009

8:47 am
I didn’t realize until just now that this morning’s @1Password update was to the released version instead of a beta.

8:53 am
If you tell me that it may take a week to 10 days to get off your “courtesy email” list, it’s quite unlikely that I will buy from you again.

10:05 am
The new retweet is not for people with something to say. It’s aimed at the lowest common denominator, those who follow every trending topic.

11:53 pm
For better or worse, the new retweeting is out of beta and Dr. Twoot is ready for it: http://xrl.us/bgcy6w

This post was generated automatically using the script described here.


Tweets for November 18, 2009

8:29 am
On the platform at the Naperville train station, wondering at the guy with the slicked-back hair and the cigarillo.

2:28 pm
Now leaving a great Lincoln exhibit at the Newberry Library, Chicago. Guards didn’t see me taking this photo. http://twitpic.com/q0p5x

This post was generated automatically using the script described here.


Tweets for November 17, 2009

9:17 am
Inbox 15. Down from a number too large to mention.

9:57 am
The QuoteFix plugin for Mail (http://xrl.us/bf7bis) makes bottom-posting the default for replies. Thanks to Hawk Wings for the tip.

This post was generated automatically using the script described here.