Saturday, February 21, 2009

Weight Loss And The iPhone

I had a few extra pounds after the holidays. OK, a few more than a few. But not as many as some previous times. I'll leave my efforts to get off the diet roller coaster for another post (current thinking), but suffice it to say that I have once again managed to shed some poundage.

In late December I realized that I was going to have to buy a new wardrobe if I didn't do something. Sure, I used to have clothes one size up (and two sizes up and three sizes up...), but I got optimistic and threw them out after the last time I lost weight.

So my plan was to do the diet journal thing again. Set a goal, calculate a calorie budget, write everything down in a Moleskine Cahier and generally keep myself on track.

Then it occurred to me that I have a shiny new iPhone. Like a Moleskine Cahier and Space Pen, it can always be with me. Unlike a Moleskine it has the potential to do portion size calculations and easy numerical tracking. Plus since I am a gadget freak using the iPhone adds considerably to my motivation.

So I downloaded most of the apps in the App Store that I thought might do what I want. What I want is:
  • Ability to track calories by meal
  • A database of foods to replace my trusty Calorie King book
  • Ability to track weight over time
  • Ability to add my own foods to the database
  • Ability to track just calories (so I don't always HAVE to add something to the database)
I eventually settled on iShape. It does all of these things except that the database isn't complete by any means and doesn't replace Calorie King. It has some other nice features too. You set a goal weight and activity level and it calculates a target calorie limit for you and estimates when you will meet your goal. You can customize many elements (like set your own daily calorie target) and you can add in the effects of exercise and track your waist measurement and BMI. Plus tons of features that I never used (track water, fat, protein, exercise, etc).

I also added WeightBot for some additional weight tracking because I really like the user interface. And the sounds. Slick. But it lacks the one graph view I really want (start to finish), so it ended up not being quite what I wanted. iShape does it all.

Anyway the iPhone is a pretty good system for the diet journal approach. I always had it with me. I always had the ability to google for things that weren't in the database. I could snap a photo of a meal if I didn't feel like estimating it right that moment. It is slower than a notebook to add new foods, but much faster to deal with your favorites. The calorie tracking graph in iShape kept me honest and allowed me to try to make up for some bad days with some good days. The weight tracking (in both apps) kept me motivated as I saw the changes.

If you are a nerd and you have an iPhone and you are overweight (are those three things completely redundant?), give it a try. I guarantee calorie tracking works if you commit to it.

I hit my goal this morning. I have officially been under the "overweight" line for a few days, but it feels really nice to actually hit the target.

I hit my goal just in time to absorb the extra calories from my fresh homemade doughnut breakfast this morning. Did I mention that I got a deep fryer? All things in moderation.

David


(for anyone reading this who has never met me, those numbers are correct - I'm 6' 7")

Friday, January 30, 2009

A Sign of the Times


Grand Opening Sale/Store Closing

This store is a couple doors down from the Apple store in the Natick Collection mall.

Saturday, January 24, 2009

Programmer's View of Self Checkout

Jeff Atwood has a blog post up comparing the open source software model with self-service check out lines at the supermarket.

But as a developer, that is not what I think about when I use the self-service lines (which I almost always do).

I think about how farking awful the software is.

I shop at one of several local Super Stop and Shop stores that have mobile scanners. You scan your Stop and Shop card at the entrance on a rack of mobile scanners. This presumably identifies you as a trusted (or at least registered) customer. A mobile bar code scanner lights up, you pull it off the rack, and away you go to do your shopping.

This is great (even with the software complaints) because I can bag my groceries into sturdy reusable bags as I go and push my whole cart through at checkout. In effect this lets me parallelize bagging/checkout with my shopping, which saves me huge chunks of time. When you are usually shopping with a tired 3-year old, you seriously want to spend the minimum time possible in the store. This process is made even more attractive by the fact that they have let go almost all of their dedicated baggers, so normal checkout is now considerably slower than it used to be.

Every once in a while you get "audited" by a clerk who enters a special code and scans several items to make sure that you didn't slip anything in to your bags. Even this doesn't take too long if the clerk wasn't halfway across the store when they get the page to audit you.

I have three major problems with the software:
  1. The scales are slow
  2. The checkout is slow
  3. There is huge disparity between stores
First the scales. The way the store deals with the problem of having to weigh produce is you weigh it at a special scale, then print a bar code, attach it to your bag of broccoli, scan the bar code, then drop it in your bag. Elegant and simple.

OK, but how do you look up "broccoli"? Well, there is a search screen and you can start typing "b-r-o" and as you type a set of icons will appear that match your input. This is a nice UI design. But you have to wait 4-5 seconds between each letter typed. It does not cache your typing so it won't catch up, and there is no feedback that your typing is pointless.

Think about this problem space for a moment. There are at most a few hundred items in the produce section. Even on most embedded systems you should be able to fit the whole searchable database in RAM. Even if you store it in a horribly inefficient way. How on earth can this be so slow? I am reasonably confident that I could write a vastly superior search implementation on my 2002 era java enabled phone. My blackberry and iPhone could both do this without breaking a sweat.

Fortunately there is a shortcut. If you know the PLU code you can enter that. I occasionally skip purchases if I can't easily find the PLU code, though. It's just not worth the pain.

OK, on to the checkout. When you are done shopping you go to one of several special lines and scan a special barcode that signals that you are done shopping. This triggers the unit to start downloading data (or notifies the central system if the downloading happens as you shop - whatever). You place the scanner in a holder by the checkout stand and scan your Stop and Shop card at the register.

The register then starts ringing up your order. One. Item. At. A. Time. At about a second or a second and a half per item. What? They have all this data for what you purchased at their finger tips and it has to go this slow? Think about this problem space for a moment. Is this a different problem from recalculating a spreadsheet? No, it isn't. How would you feel if your spreadsheet took 1-1.5 seconds per line to recalculate? You would throw your computer through the window - that's how you would feel.

OK, now my last problem - disparity between stores. A little over a year ago I went to a different local Stop and Shop and used the same system. It isn't as close to me, but it is near a favorite liquor store and a Starbucks so I find myself in the neighborhood from time to time needing to do some shopping.

Well, imagine my surprise and delight when I got to the register and my entire shopping cart rang up instantly. Not. One. Item. At. A. Time. Sweet! They fixed the bug.

It has been over a year and my store still hasn't updated their system. What? Who does Stop and Shop hire to do IT project management? What are they thinking? If you have a known bug that is likely to drive people nuts and you have fixed it, for goodness sake put it out there for your users. You look like a total idiot if you don't.

David

Wednesday, January 14, 2009

Cinnamon Scones

I experimented with a cinnamon variant of my basic scone recipe for a group meeting today and it seemed to go over fairly well. I was again asked for the recipe.

I used just the basic recipe, but substituted these cinnamon chips (Cinnamon Flav-R-Bites from the Baker's Store) for the dried fruit and sprinkled cinnamon/sugar on the top instead of raw sugar.

They were pretty tasty. If you are a fan of cinnamon scones, I highly recommend this approach. Do not attempt with the basic store bought cinnamon chips that are the consistency of chocolate chips - you won't be happy.

David

Thursday, January 1, 2009

My New iPhone

Everything interesting about the iPhone has probably already been written, but I got a new iPhone for Christmas and I am going to make a few comments anyway.

I am totally hooked on my iPhone and I wish I had gotten one sooner. I didn't because I couldn't convince myself that I wanted an iPod on my phone or a phone on my iPod.

I had it all wrong. The iPhone is the best mobile computing platform ever and it just happens to have a phone and an iPod. They are almost incidental.

I owned my iPhone for two days before I even plugged in the earphones. It is a great iPod, but doesn't hold a candle to my 120g classic for capacity and variety. I don't really like the idea of sucking my phone's battery with music, either.

But I am doing most of my personal email, most of my RSS reading, and most of my web searching/surfing and social networking on the iPhone.

The keyboard took a little getting used to, but I type almost as fast on the iPhone as I do on my blackberry now. I typed this entry with it. (iBlogger)

It is also a great gaming platform. Fieldrunners isn't just a "great game for the iPhone." It is a great game. Period.

It isn't a replacement for a sketchbook, but one can do simple doodles and contour drawings on it. (No. 2)

It is a brilliant calculator. Sci-15c and i41CX+ are both excellent apps. The fact that I feel the need for both probably says a lot about me - but I'd rather not examine that too closely. :-)

I have been spoiled for a while by having a blackberry with GPS and Google Maps and I am no longer willing to live without that functionality. The iPhone is better.

It is a great Twitter client - I am using Tweetie for almost everything Twitter.

It is a brilliant wifi locator (WiFinder).

Plus there are lots of totally new things you can do. Mobile Pandora is cool. As are SnapTell and midomi.

And in a pinch it is even a kitchen timer, diet aid, eBook reader, white noise generator, binaural beat machine, clock, flashlight, level, or a ruler.

I use my computers less now.

David

Saturday, December 6, 2008

Best Soup Ever

I don't really know why I have never made Split Pea Soup With Ham before. I guess I thought it would be hard or something. But I had a big ham bone and a bunch of spiral sliced ham that needed to get used and I wasn't up to doing a ham stock to be used for something else (like Jambalaya).

So when I was at the store I picked up two pounds of green split peas, some onions, celery heart, and carrots to go with my ham bone + an approximately equal volume of ham meat.

I chopped up a big pile of onions (3 medium large), thinly sliced 5 or 6 outer stalks from the celery heart + 3 medium large carrots, and cut the the ham meat small bites.

I sautéed the onions a bit and dumped them in the soup pot. Then I did the same for the ham. Threw in everything else (including the split peas), topped with water, brought to a boil, stirred a couple times, and tossed on the cover for a slow simmer. I checked it and stirred it a few times to make sure it didn't dry out. A couple of hours later when the peas had basically vanished it was done and I fished out the bone.

There are no missing ingredients here. I didn't add any salt, or pepper, or a bay leaf or anything. Just the three aromatic veggies, the ham, and the peas.

It is the best soup I have ever tasted. Far and away the best split pea soup I have ever had. My wife, who claims to hate split pea soup, ate a huge bowl of it for dinner. It is so good that I may never buy a boneless ham again.

David

Wednesday, November 19, 2008

Conversations with Genius on my iPod

I finally upgraded my iPod. I've been needing more space for ages, but when the Classic came out it had user interface issues (stutters) and the price point for the 160GB version was a tad high. I played with one of the new 120GBs, though, and they fixed both the stutter and the price point, so I bought. This iPod has built-in Genius playlist building. I thought that would be fun to play with. It went like this...

Me: "OK, let's see what you've got. I figure if I start with 'Escape (The Pina Colada Song)' you should hit Jimmy Buffet within 3 songs. Go"

iPod: "Steve Miller Band - The Joker"

Me: "That works."

iPod: "Gary Wright - Dream Weaver"

Me: "Umm, OK."

iPod: "Jimmy Buffett - Margaritaville"

Me: "There it is. Well done."

iPod: "Joan Jett & The Blackhearts - I Love Rock and Roll"

Me: "What? That's not even close. Are you insane?"

iPod: "Me insane? You're the one having a conversation with an iPod."

Me: "Bite me. New genre. Coal Chamber - Fiend. Go."

iPod: "Korn - Wake Up Hate, then Kittie - In Winter, then Dope's cover of You Spin Me 'Round."

Me: "Whoa. That last one I never would have thought of, but it totally works. Well done."

iPod: "Well, I am a Genius."

Me: "OK Genius, try this. Jocelyn Pook - Masked Ball."

iPod: "WTF is that?"

Me: "It's that really cool dark brooding music from the masked ball in Eyes Wide Shut."

iPod: "Like that helps. You do know that I don't watch movies, right? Anyway, not only does it not sound like anything else in your collection, I don't think it sounds like anything else period. So here, have a list of completely random songs."

Me: "Sigh. OK, another new genre. The Crystal Method - Murder. Go."

iPod: "Leftfield - Song of Life, then Propellerheads - Bang On!, the Goldfrapp - Hairy Trees."

Me: "Nicely done."

iPod: "Thanks."

Me: "Another new genre. In-Grid - Pour Toujours. Go"

iPod: "French electronic? Seriously?"

Me: "Why are you being judgemental?"

iPod: "I'm not. You do know that you are having this conversation with yourself, right? Anyway, how about Bond - Hungarian, then Bond - Samba, then Aurora - Real Life."

Me: "OK, that works, I guess. But do you have something against French music or something? Edith Piaf - L' Homme A La Moto. Go."

iPod: "Genius is unavailable for the selected song."

Me: "Ha! Got you. At least that's better than random songs. OK, let's try something different. Alien Ant Farm's cover of Smooth Criminal. Go."

iPod: "OK, how about System of a Down - Chop Suey!, then Disturbed - Land of Confusion, then Dead or Alive - You Spin Me 'Round."

Me: "Another cover of You Spin Me 'Round? It works I guess, but why?"

iPod: "Why? It's your music, Bub."

Me: "Sigh. Chris Thile - Stealing Second."

iPod: "Sheryl Crow - Steve McQueen"

Me: "Huh? I give you instrumental bluegrass and you give me Sheryl Crow?"

iPod: "R.E.M. - Rockville"

Me: "Still not even close."

iPod: "Neil Young - Sugar Mountain? The Grateful Dead - Franklin's Tower? Kings of Convenience - I'd Rather Dance With You? You know - it's not my fault if you don't have any similar music."

Me: "I have a dozen instrumental bluegrass albums and a couple dozen instrumental celtic albums that would be way closer than anything you've shown me."

iPod: "Yeah, whatever."

Me: "OK, one more. Yo-Yo Ma - Elgar Cello Concerto."

iPod: "Yo-Yo Ma - Gershwin Prelude #1, then Jian Wang - Suite No 2 in D Minor, then Hayley Westenra - Wuthering Heights."

Me: "The first two are great, the last one though? That's a cover of a Kate Bush song."

iPod: "By a classical musician."

Me: "That's the tie? That's stupid."

iPod: "Whatever."

Note: The idea of turning this into a conversation with my iPod was totally stolen from Wil Wheaton's twittering.