Archive for the ‘Uncategorized’ Category

GMap Pedometer to Google Route

Monday, June 11th, 2012

I wanted to draw running routes in google maps that I could follow during the legs of the Ragnar Chicago relay race I was part of this past weekend. However, it was not intuitive to me how to do this with Google Map Maker. Fortunately, I am an avid user of gmap-pedometer. So, I drew my routes using the “draw route automatically” feature for runners and bicyclists. This is a tremendous time savings feature. The only problem is that gmap-pedometer is not a mobile-friendly website, and I would be running with my iPhone. So, I really wanted the routes to show up in a mobile-friendly app. Google Maps works well on the iPhone, so I simply had to export the gmap-pedometer data into Google Maps.

I exported the routes from gmap-pedometer as GPX files (using the great bookmarklet script from http://www.elsewhere.org/journal/gmaptogpx/#).  Google maps expects KML files though, not GPX files.

So once I saved the GPX file, I uploaded it to the very helpful and detailed GPS Visualizer and was able to create a KML file.

Using the KML file, I was able to import the route into Google Maps (within the My Maps section, after logging into Google). One note: turn off Waypoints on the GPS Visualizer. Select “None” in the “Waypoint Options” section of the form.

Large JS Application Advice

Wednesday, November 23rd, 2011

“The secret to building large apps is never build large apps. Break your applications into small pieces. Then assemble those testable, bite-sizes pieces into your big application” – Justin Meyer
“The more tied components are to each other, the less reusable they will be, and the more difficult it becomes to make changes to one without accidentally affecting the another” – Rebecca Murphey

SSH UserKnownHostsFile

Monday, November 14th, 2011

Ahhh, how awesome is it that you can set the UserKnownHostsFile property for ssh connections to /dev/null for specific host connections in your ~/.ssh/config file? Fabulous!

Every so often, we have to migrate application resources from one of the nodes in our cluster to another node, or migrate services from one cluster to an entirely different cluster. As a result, the CNAMES we used to access those application resources get registered to different hostnames. This causes ssh to burp when trying to connect:

The RSA host key for xxxxxx has changed,
 and the key for the corresponding IP address aaa.bbb.ccc.ddd
 is unknown. This could either mean that
 DNS SPOOFING is happening or the IP address for the host
 and its host key have changed at the same time.

Yes, yes I know we moved the services around, now stop being paranoid and connect me already! I used to either wipe out the known_hosts file, or delete the offending line from it. Now, for hosts that match a specific pattern, I can just configure the ssh client to not track those hostnames:

Host xxxx
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no

That should save me 13 seconds every few days 🙂

Shoveling Snow in October

Monday, October 31st, 2011

20111031-180959.jpg

After church yesterday Peter and I shoveled snow for the first time this season. Usually we would be raking leaves at this time of year, but Saturday’s snow storm was quite a surprise and even took out power in Ewing for several hours on Saturday night.

Facebook Down

Saturday, March 26th, 2011

Facebook was not responding this morning. We were receiving socket timeout errors in chrome.

I wanted to post the fact that facebook was down, but facebook was down. So I’m posting it on this older-style web technology called a blog 🙂 That’s sooo early 2000’s.

Jan 12 – Triathlon Swimming Workout #2

Tuesday, January 12th, 2010

Warm Up
300 Free: 100 kick, 100 pull, 100 swim
Workout
6 x 50 kick board with fins  :15 rest
2 x 100 swim free style
6 x 50 pull with buoy and paddles
2 x 50 swim free style  :15 rest

Swim Down
200 Free style swim

Nate’s ATC Week Four

Tuesday, December 22nd, 2009

Stretching
Warm up run – 5 mins

1) Routine 1: Sprint combos
– Sprint across the soccer field and back to the white line
– From a squat position (feet apart) standing on an elastic band (thick blue one), rise into an overhead press with the bands (repeat reps quickly for 60 seconds – approx 35 reps)
– Sprint across the soccer field and back to the white line
– Again, squat into an overhead press, stretching the blue elastic band overhead.
– Sprint across the soccer field and back to the white line, repeat the sprint again.
– Bicep curls for 30 seconds (approx 25)
– Repeat bicep curls for 30 more seconds (20 more)
– Sprint across the soccer field and back to the white line.
– Skater jumps in place (jump side to side, tuck right leg behind left knee and right hand touches the group outside the left foot, jump to right foot switching position)
– In push-up position, draw right knee to chest, then extend right leg behind and into the air, toward the ceiling, then switch legs. continue for 60 seconds
– Sprint across the soccer field and back to the white line, repeat the sprint again.
– Again, push-up position, draw right knee to chest, then extend right leg behind and into the air, toward the ceiling, then switch legs. continue for 60 seconds.
– Sprint across the soccer field and back to the white line
– For a third time, push-up position, draw right knee to chest, then extend right leg behind and into the air, toward the ceiling, then switch legs. continue for 60 seconds.

2) Routine 2: Repeat two times total
– Across the width of the soccer field, perform a squat jump immediately followed by a burpee, repeat until you reach the other end of the field.
– Once we reached the other end of the field, hold a squat position with arms out to the side for 60 seconds
– Side to side shuffle suicide: shuffle in a low squat side to side (without crossing feet) to the first cone and back, then to the second, then the third, then to the other end of the field.
– Once at the other end of the field, hold a squat position with arms out to the side for 60 seconds

3) Repeat three times
– We broke into four teams, one in each corner of the soccer field. Teams in opposite corners did the first exercise, other teams did exercise #2
– Exercise #1: ski jumps across the width of the soccer field, side to side across the yellow line, when we reached the other end, we dropped into a push-up position and held for about 20 seconds
– Exercise #2: holding a push-up position, quickly raise the right arm out in front, then quickly raise the left arm out in front; repeat for 90 seconds

4) Abdominal work
– Crunch pulses: crunch up and hold for 2 seconds, then come down half way (NOT to a resting position; stomach is tight the whole time), repeat x 25
– Right side crunch pulses: legs bent at 90 degrees and on the ground; crunch and hold for 2 seconds, then come down half way; repeat x 25
– Left side crunch pulses: legs bent at 90 degrees and on the ground; crunch and hold for 2 seconds, then come down half way; repeat x 25
– Stretch in yoga up-dog
– Legs straight up in the air, lift legs and hips into the air; hold for 1 second then through the count of 3 to 1, lower the hips to the ground; repeat x 25
– Stretch in child’s pose, switch to up-dog, and repeat stretch

5) Stretch and cool down
– Stretch routine
– Run around the soccer field five times

Finished.

Nate’s ATC Week Two: The Leg Shredder

Tuesday, December 8th, 2009

My friend Bill Yorke managed to get the day off from his night-shift job tonight and was leading the warm-up run as I arrived about two minutes past 7:00, thanks to holiday traffic on US Route One. I jumped right in and warmed up. Tonight’s class was about as challenging as last weeks, maybe slightly less because it felt like we had more rest between the routines.

– Warm up: Jog in single file in reverse-eight figures across half of the soccer field, criss-crossing the tail end of the line of runners.

– Routine 1: Break up into groups of four and sprint to the 1/4 field mark to begin.
1) While attempting to count off into groups of four, one of my fellow trainees barked out “5” instead of 1, 2, 3 or 4. So, we all had to do push-ups. I was liking this already, but heard a call of moans and groans from others as we settled into the position on the fake grass field to pay for that mistake.
2) Another attempt to count off, into groups of four was successful, and we sprinted to the 1/4 mark on the field.
3) One Jumping Jack
4) One set of high-knees (one leg at a time)
5) One squat thrust
6) Repeat steps 3-5 at Nate’s count, but increase the count of each exercise with each set, until we reach 10 jumping jacks, 10 sets of high-knees and 10 squat thrusts. 10+9+8+7+6+5+4+3+2+1 = 55

– Routine 2:
1) Sprint to 1/4 field: drop down to push up position; spin body clockwise, pivoting on hands, then reverse direction
2) Sprint to half field: drop down to push up position; spin body clockwise twice, pivoting on hands, then reverse direction twice
3) Sprint to 3/4 field: drop down to push up position; spin body clockwise three times, pivoting on hands, then reverse direction and spin three times
4) Sprint to the end of the field: drop down to push-up position; spin body clockwise four times, pivoting on hands, then reverse direction and spin four times
5) Jog back to other end of field

– Routine 3: Ahh, the leg shredder. We repeated this routine twice.
1) Sprint as fast as possible the width of the soccer field
2) Jog back to start
3) Squat jumps across the width of the soccer field, KEEP hands on ears (don’t cheat)
4) Jog back to start
5) Sprint the width of the soccer field
6) Jog back to start
7) Warrior lunges across the width of the field
8) Jog back to start
9) Sprint the width of the soccer field
10) Jog back to start
11) Side to side skater jumps the width of the soccer field (I’ve never done these before, but you essentially jump forward onto the left foot, and reach down outside the left of the left foot with your right hand, then jump to the forward to the right foot, reaching down outside the right side of the right foot with the left hand).
12) Jog back to start
13) One last sprint across the field
14) Jog back to start
15) Jog around the field 3 times
16) Repeat steps 1-15 once more.

– Routine 4: This was a fun team exercise and requires two teams of people: red and blue shirts.
1) Red shirts line up at center field
2) Blue shirts lines up on the white line at one end of the field
3) Nate blows the whistle and blue shirts runs toward red shirts, attempting to tag them, BUT the red shirts don’t run yet. Nate blows the whistle a second time and red shirts can then run to try to reach the “base” at other side of field to avoid getting tagged. If tagged, the player must drop down and remain in a plank position until one of their own teammates frees them by tagging them.
4) At random intervals, Nate would blow the whistle again, and the hunters would become the hunted, switching direction.

– Routine 5:
1) Hold a plank while half the group sprints up and jogs back the width of the field (about 60 to 90 seconds)
2) Sprint up and jog back the width of the field after the plank.
3) Return to plank position (90 seconds) (but this time raise one leg in the air and raise the opposite arm in the air) while half the group does the side shuffle (sort of a dance, crossing the legs in front then behind)
4) Run the cross legged routine up and back across the field
5) Sprint up and back across the field
6) The two teams cross paths for a final series of squat jumps across the width of the soccer field, keeping hands on ears the whole way. I definitely felt this – being 20 pounds lighter woudl have made this easier.

Finished. Great training!

Nate’s Advanced Training Camp: Week One

Tuesday, December 1st, 2009

Trail running with a group of fellow runners from the Hamilton Township area has introduced me to many new people. One of those is Nate Ribiero, who is a physical fitness trainer/instructor, and has worked at local area gyms. He invited me, along with many other people, to attend a special “training camp” he is hosting. The agenda is simple: meet for an hour each week over five weeks to train as a group, and train HARD. His mantra: “Bring your inner monster”. The class meets 7pm on Tuesday evenings at the Robbinsville Indoor Soccer Field (with an exception that the first week’s meet was at 4:30pm due to a scheduling conflict).

One of Nate’s rules that must be kept: Everyone must either jog or run from place to place during training. No walking is permitted.

The first week was indeed challenging, but I found the inner strength to complete it in style. Here is the routine we followed:

– Warm Up: Jogging in circles on the soccer field, followed by a few minutes of thorough stretching.

– Routine 1: We repeated this routine ten times
1. Sprint at top speed across the width of the soccer field.
2. Jog back to start
3. High-knees across the width of the soccer field (not to be confused with skipping across the field).
4. Jog back to start
* Nate didn’t like the intensity of some people’s sprints, so we repeated a few here and there. (I’m growing to like Nate more and more.)

– Routine 2:
1. Sprint to 1/4 field
2. Hot feet in place for about 30 to 60 seconds (I’ve never done this before, and noticed it becomes more and more difficult to keep your legs in a wide stance while doing this)
3. Drop and roll to left into a push-up position
4. Mountain climbers for about 60 seconds
5. Crab crawl to half-field, making sure to keep the back parallel to the ground.
6. Push ups until entire group arrives at the line (approximately 15 push-ups)
7. Hot feet in place again for another 30 to 60 seconds
8. Drop and roll to the right into push-up position
9. Mountain climbers for about 60 seconds
10. Sprint to 3/4 field
11. Drop down into push up position and hold, waiting for the entire group to get on the line.
12. 25 push ups
13. Jog back to the start

– Routine 3: (we repeated this routine three times)
1) Side to side ski jumps to 1/4 field, using the while line to zig-zag across (don’t land on the line)
2) A low side-to-side shuffle across 1/4 field (with your back to the starting line)
3) Warrior lunges to 1/2 field (a very low lunge, holding your hands above your head the whole time)
4) Another low side-to-side shuffle in back to the line where ski jumps were done.
5) Sprint back to the center line, turn abruptly at the first cone, and repeat making sharper and sharper turns around the cones, shortening the sprint distance each time (zig zag)
6) jog back to start

Finished.

Training: June 1, 2009

Monday, June 1st, 2009

At lunch today, I repeated the circuit I first tried last Wednesday. I ran through it three times, each time completing it in under 15 minutes.

– 0.5 mi sprint on the treadmill (at a 6:58 pace)
– 10 plyometric push-ups on a step with two risers
– 15 star hops (aka squat jumps)
– 500 meters on the rowing machine
– 1 length of frog hops (down the long hallway)
– 1 length of walking lunges with two 35lb dumbbells
– 1 mile on the bike (~135 rpm)
– 10 step-ups with each leg on the large metal stand.

In the evening, I went to the gym 40 minutes before the pool closed and did part of my swim workout. Unfortunately the workout wasn’t very good because I felt rushed and had just eaten dinner an hour before the swim:
– Warm-up freestyle for 6 minutes
– 3 x 100 kicks: freestyle with fins and board
– 1 x 100 freestyle, rest 10 seconds
– 1 x 100 freestyle, rest 20 seconds
– 1 x 100 freestyle, rest 30 seconds
– 100 more meters freestyle