Still running, eight months in

Post four of a series. Previous here.

Eight months later, still running strong. Latest stats:

  • 936 – total miles this year.
  • 201 – days run this year.
  • 126 – total miles in August.
  • 5.24 – Average running distance (miles) per run in August.
  • 21:02 – 5K PR time on August 25.

My 5K time there is a bit flimsy, as it was part of a longer run in the 2017 Hood to Coast relay, and the run was mostly downhill. But still!

Speaking of Hood to Coast, this was my 6th time in the race, and my overall pace across the three segments was 7:31/mile. Way, way faster than ever before. Joe joined the team this year, which was awesome.

Oh, and I’m now down 44 pounds since the beginning of the year. Hit my weight loss goal of 43 pounds a few weeks ago, and now I’m in maintenance mode. Feels great. Considering a new goal of an additional 5 pounds, we’ll see.

Running update, day 181

This is the third post (see previous) on my running progress so far this year. 

Six months in, no sign of slowing down yet! My running pace is now regularly below 8:00/mile. Some numbers:

  • 645 – total miles this year.
  • 8:00 – average mile pace during the month of June.
  • 131 – total miles in June.
  • 27 – days run in June.
  • 147 – days run this year.
  • 37:27 – PR 5-mile time on June 28.

The only days I missed in June were days where I was in all-day business travel and literally couldn’t find an hour to run.

Combined with careful eating habits (but not too careful), I’m also down 40.0 pounds as of this morning. Feels great.

Running update, day 110

Following up on my last post about becoming a runner, I’ve made quite a bit of progress in the last 35 days:

  • I ran 33 out of 35 days.
  • Total distance: 153.25 miles.
  • Average distance: 4.64 miles.
  • Average pace: 8:23 / mile.

During this time, I set personal records in the 5K (22:18 = 7:19/mile pace) and 10K (47:29 = 7:39/mile pace). This is soooooo much faster than when I started, which was roughly 10:00/mile pace over three miles. This kind of improvement was … unexpected.

And my weight is still moving in the right direction: down 6.4 more pounds, for a total of 31.4 pounds since the beginning of the year. Less than 10 pounds to go. Yeah!

75 days, 25 pounds, 204 miles

I decided at the beginning of 2017 to become a regular runner, and lose the beer belly in the process. Today is the 75th day of the year, and my progress has been even better than I had hoped. I still have a bit of work to do, but I’m over halfway to my weight loss goal, and I have the running habit locked in. Feels great to run, and I look forward to my run each day.

I’ve been using a few apps on my phone to measure and gather data:

  • LoseIt. I track all food and meals here.
  • Nike+ Run Club. My phone is always in my pocket, and I’m tracking every run live.
  • Apple Health. Mostly as a step counter, but it also provides good integration between the Nike+ app and LoseIt, so LoseIt can give me calorie credit for my workouts.

Some stats:

  • I’ve run 53 times for a total of 204 miles (328 km) since January 6th. That’s 3.85 miles on average each time. Minimum 3 miles, longest 6.2 miles.
  • I’m eating an average of 1824 calories per day.
  • I’ve lost 25.0 pounds (11.3 kg).
  • My comfortable 4-mile running pace has dropped from 10:00/mile to 8:34/mile.
  • I’m earning an average of 649 calories per day with exercise. Which brings my net daily calories to 1175.
  • I’m averaging 11634 steps per day, including my running steps.

I try to be super-accurate with all my data entry in LoseIt. But even assuming I’m underreporting by, say 20%, I know I’m still way below what I used to eat on a daily basis. LoseIt is great. I know there are many apps like this, but this is the one I use, and it works well for me.

It’s winter here, so I’m running outdoors on roads and trails when the weather doesn’t completely suck and indoors on a treadmill when it does. About 60% of my runs have been indoors. Can’t wait for spring! I’ve played soccer a handful of times this year, but pretty much all my exercise is from running. I had an international business trip in February which limited my running for a week, but I was able to get lots of steps in on most of those days. I’ve been fortunate to avoid any injuries, although a mildly strained calf muscle slowed my running pace down a bit for a few runs. I’m not focused on running terribly long distances. Maybe later.

Going into this I was most concerned about my ability to keep the calories down. This has been surprisingly easy to do. I eliminated most calorie-rich carbs (potatoes, fries, chips, rice, etc.), got in to the habit of weighing foods to understand how much I was really eating, and just generally ate less. But I’m still eating three meals, having a small snack at some point during the day, and having a drink or two at night. Usually whiskey, but some beers like Guinness are pretty low in calories, so I mix those in too. IPAs have pretty much disappeared from my diet.

In the end, none of this is complicated. Eat less, and exercise. I hope to report even more progress soon.

Turn your old or broken Android phone into a home security camera

What to do with that old Android phone sitting in your drawer? You know, the three-year-old Moto G with the broken screen. That one. Here’s an easy plan: turn it into a home security camera on the cheap.

  1. [optional] Make sure you have anything of value copied off to a safe place, and clear off all personal data by resetting the device to factory settings. You probably should have done this before putting it into the drawer in the first place. Restart the device, get it set up, connect it to your wi-fi, and add a Google account so you can download stuff from the Play Store. If this is a real Google account that you use for email and such you might want to turn off all syncing.
  2. Install the IP Webcam app. There are other apps out there as well, and this has a Pro upgrade version for a few bucks which looks to have some nice features.
  3. Run the app and mount the camera in a place where:
    • it shows what you want
    • can be reached by a charging cable connected to a power outlet
    • isn’t going to be attacked by weather, kids, pets, etc.
  4. Note the IP address of the phone (the app will show you this), and play with the settings a bit. I turned on motion detection and video recording on motion. Consider enabling security features if that makes sense for your network.
  5. Access the video stream on the same wi-fi network. You can view it in a browser at http://phone-ip-address:8080. I’m using the VLC app on an old Android tablet to view the stream from my family room, connected to the stream at http://phone-ip-address:8080/video.

I mounted my camera in a window in a detached garage that has a good-enough wi-fi signal an a good view of the driveway. With blue painters tape and some cardboard. It’s not pretty, but it works!

 

ASP.NET vNext : on a Mac!

I use a MacBook Pro (currently running OS X, 10.9)  as my primary work machine, even though my company builds software for Windows Server. This means VMs (VirtualBox) and Remote Desktop for all Visual Studio work (as well as Visio and other necessary evils). BootCamp isn’t an option, for various company-specific reasons.

I read Scott Hanselman’s ASP.NET vNext announcement a few months ago, and while Mac support isn’t the main thrust of the project, the prospect of shifting even more of my daily work to the native Mac interface is appealing.

I never took the time to play with the vNext tooling for Macs until today. I like where this is headed, even though it’s at the duct-tape stage.

Getting set up is a pretty straightforward exercise, using the instructions here. Which boil down to:

  1. Install mono.
  2. Install homebrew.
  3. Install the K version manager. (Project K being the old code name for the ball of wax).
  4. Grab the samples, pull in package dependencies (via kpm restore), and run ’em. If done right, you get a shiny hello world:

It's alive!

Next on the to-do list:

  1. Write some custom code, following the samples.
  2. Sublime Text 3 integration. With detail here.

Find all NuGet references in your source tree

I have a source code repository with a bunch of Visual Studio 2012 projects. I just had a need to find all NuGet references in that repo. PowerShell to the rescue! This script walks the directory tree and spits out an array of strings containing the names of all NuGet package names, with duplicates removed.

# Given the directory tree at the current location,
# search recursively for all files named "packages.config"
# and select the ID of each package. Assumes that packages.config
# is an XML document with a top-level <packages> element with a nested
# collection of <package> elements underneath.

$result = @()
ls -r packages.config | foreach {
  [xml] $data = get-content $_.fullname
  $data.packages.package | foreach {
    # Brute-force shove into an array, we'll sort it out later.
    $result += $_.id
  }
}
# It's later! Sort, and unique-ify.
$result | sort -unique

SSD upgrade for 2011 iMac

I picked up a Crucial m4 256GB SSD as a second internal drive for my 2011 iMac 27″ with 12GB of RAM, the factory 1TB hard drive, and OSX 10.8.3. The SSD is now my boot drive, with all my applications and user folders on it as well. Performance is excellent — apps (Pages, Word, Excel, Photoshop, iPhoto, iMovie, etc.) all start immediately, and I can run whatever apps I want simultaneously. It just works.

Before installation, I made sure I had a Time Machine backup (on a Synology NAS) and a backup on CrashPlan’s servers. I used the SATA cable and installation tools from OWC, and followed OWC’s awesome installation video, below. The SSD mounts inside the machine using foam sticky tape just behind the DVD drive.

After installing this drive, I used SuperDuper to replicate the stock “Macintosh HD” volume to the SSD, then used System Preferences –> Startup Disk to change my startup disk to the SSD. I also picked up the app TRIM Enabler, and turned on TRIM support. Upon rebooting, I also unmounted the Macintosh HD volume using Disk Utility, just to make sure I wasn’t accidentally using files on that volume. After a few days of using the new SSD and verifying I have no problems, I will erase the original Macintosh HD volume and use it for whatever.

256GB is plenty for the OS, my apps, and docs. But it is not sufficient to include my photos, music, and movies. All that stuff is on external drives anyway, so I didn’t have to worry about that.

This is also posted as an Amazon review.