Skip to content

Bang-Bang Servo Diet (aka Steve Ward Diet)

Here is my version of the Bang-Bang Servo Diet (Excel Spreadsheet, 51Kb)

Via this article on linking an article by Philip Greenspun where he talks about The Steve Ward Diet:

In the 1980s Steve Ward, a professor of electrical engineering and computer science at MIT, described a sure-fire dieting scheme. “All that you need for my diet is graph paper, a ruler, and a pencil,” Steve would explain. “The horizontal axis is time, one line per day. The vertical axis is weight in lbs. You plot your current weight on the left side of the paper. You plot your desired weight on a desired date towards the right side, making sure that you’ve left the correct number of lines in between (one per day). You draw a line from the current weight/date to the desired weight/date. Every morning you weigh yourself and plot the result. If the point is below the line, you eat whatever you want all day. If the point is above the line, you eat nothing but broccoli or some other low-calorie food.”

The hand-drawn version would look something like this:


I like this “diet” because it’s not really a diet per-se.  There’s only one rule – if you’re on target, eat what you want.  If you’re above your goal for the day, eat light (although he doesn’t mention it, I assume I can add “and/or exercise more” to the equation).  Every day you get feedback on how you’re doing, and you can adjust your daily routine as needed.

Of course now there’s an iPhone app that can help you track your progress in place of the graph paper and pencil, which looks pretty sweet.  I also came across this Excel spreadsheet that will help you plot your progress.

That spreadsheet didn’t quite do everything I’d wanted it to, so I went ahead and created my own.  I’m not much of an Excel guy, but I like to play when I get a chance, so I’ve included it below in case anyone else would find it useful.

One thing I added is a field that gives you your instructions for the day – pretty straight forward, if you’re under your target it says “EAT NORMAL”, if you’re over your target it says “EAT LIGHT.”  I didn’t really know what to do when you’re right on target, and I presume for simplicity’s sake it should probably just say “EAT NORMAL,” but I thought it deserved slightly different treatment for some reason, so it shows up in a different colour and says “MODERATE.”  That may or may not be useful, but whatever.

I’ve also made it printable.  My thinking is that in the mornings I get out of bed and head straight for the scale.  I need to record that number right then or else it won’t get recorded, so I like to keep a printout of this chart and a pen on my nightstand.  This way I can record it and even without plotting it on the graph, I can see if it’s above or below my target for the day and figure out the instructions myself.  Later on I can go record the numbers in excel for posterity, and to see the pretty lines that get drawn.

Feel free to grab the spreadsheet below, and if you have any suggestions or improvements, throw them in the comments.

Bang Bang Diet (Excel Spreadsheet, 51Kb)

UPDATE: I made a Google Sheets version of the Bang Bang Diet

UPDATE:  Also check out The Line Diet – a web-based version that looks great!

Published inDieting


  1. armageddon

    Would be nice if you supported metric as well…

  2. Actually you can enter any value in it. It does work even if your weight is expressed in kilos. 🙂

  3. that’s right – the daily target weight calculations will work fine if you punch your Start Weight and Target Weight in kilos.

    Only thing you’d have to change is the scale on the graph to get the datapoints to plot correctly. To do this, Unprotect the sheet and then right-click on the Weight axis, select Format Axis, and then select the Scale tab. You can then set the minimum and maximum values to an appropriate range in kilos.

  4. you would also need to make this change if your start weight or target weight fall outside the range I’ve pre-set.

  5. There is also an iPhone app called bang bang diet. It is very easy to use. I just need to follow its recommendations better.

  6. […] the data from multiple locations, so I’ve set up a Google Spreadsheet (based on this Excel version). The chart from the data is […]

Comments are closed.