Former 2:24 marathoner, now in my late 40s and hoping to maximally flatten the curve of my slide into senescence and mediocrity • Magazine writer, book editor and author, and commentator on the sport of distance running since 1999 • Adviser and confidant of other perambulators • Paradoxical hater of exercise fanatics • Chihuahua whisperer Sentence-fragment impresario

Sunday, June 25, 2017

Training, week of June 19 through June 25 (Speaking-in-code edition)

I ran 54 miles this week in nine runs. I did one "workout" -- 1 x 400m and 8 x 200m -- on the track Saturday, and also farted with some faster running on the same track on Sunday. This is a fairly new track in Boulder, and it amazes me that more people aren't out there on warm and cloudless weekend afternoons like the two we just enjoyed. And I still haven't missed a day of running in 2017.

But this "training" I'm doing is really more what most people would simply call "cardio." I'm not sure whether this nomenclature shift means that I'm downgrading my physical activity from "jogging" or whether it's a slight promotion. More likely it's just a lateral move somewhere within the lowest echelons of the quasi-athletic command structure.

Fuck that for now, though; I don't blog much outside of these weekly updates, and since I rarely have anything interesting to say about my training, I am going to start loading the weeklies with stuff that might be marginally more entertaining.

So, a "tune" from the '80s:

When I was in 5th grade, in 1981, I was sucked into an after-school computer-programming class for "special" kids at Broken Ground School in New Hampshire. I was "special" in the sense that I was good at math, sported a magnificent bowl cut, and was already messing around with the earliest versions of personal computers (although they weren't called that then) because my dad was a programmer by profession. I learned my way around BASIC (about the only scripting-style language that existed at the time) and for my class project I wrote the code for a knock-off of Pac Man. It worked well, and I wrote the program largely, though not entirely, without help.

Buoyed by this, I wrote a few games of my own in subsequent years. Well, most were simulations, not games. An early fan of the original Zork, I wrote a text adventure game I thought was the bee's elbows until my dad error-tested it and uncovered a shitload of bugs that infuriated me to the point where I fantasized about smashing to pieces every computer I physically had access to. Instead, having graduated from the family Atari 400/800 to an IBM PC Jr. as a high-schooler -- this would be 1986 through 1988 -- I then created some track and cross-country simulations that were fairly jazzy.

For the cross-country "game," I decided to create a four-team high-school league comprising schools named Alpha, Beta, Gamma and Delta. (Solve that riddle, whydoncha.) Each had a fourteen-kid roster, so that seven could be on the varsity squad and seven on the JV squad. Each team would compete in a total of five meets in the course of a season: a dual meet against each of the other teams, an invitational (or "pre-states") after the first dual meet featuring varsity and JV races, and a state championship that may or may not have included a JV championship. Each team had, initially, four seniors, four juniors, three sophomores and three freshmen.

Miraculously, no one ever got injured or otherwise missed a meet in the entire storied history of this private league. This is because it would have disrupted the whole scheme tremendously, not because the coaching was sublime. Which is might have been.

The critical element involved establishing a baseline performance level for every runner. In the first season, I had to make sure the seniors were, on average, faster than the juniors, who in turn were faster than the sophs and so on, I cannot remember now what scheme I used exactly to assure this, but I do remember the randomization scheme I established for incoming freshmen in subsequent years. I would run each name (more on those later) though two steps, each of which would assign anywhere between 8 minutes and 12 minutes to the runner. Therefore, each runner would, on average, start out as a 20:00 5K kid. There was a tiny but non-zero chance he would start out as close to a 16-flat prodigy and a similarly small chance he's begin as a high-23's type.

I also had to figure out what sort of improvement curve made sense. As I recall, I made it possible for a runner to improve by as much as 30 seconds from race to race or backslide by as much as 15. This implied that each kid would speed up by 7.5 seconds, on average, from race to race, and therefore the average runner would start his freshman year at 20:00 and end it at 19:30. The kid would start the next season where he'd left off the previous one, so a typical senior would be running 18-flat at the end of his high-school career.

Not super-sophisticated, but not exactly primitive, And a did this for 12 or 13 "seasons," the record of which I kept on lined paper. I of course kept records of the fastest times, overall and by class and team. There was obviously no Internet in those days, so I had to find some way to waste a ton of time seated in front of a computer in the absence of Facebook, Twitter, blogs, and porn. This, along with a few adventure games, was it.

The names I came up with were a mixture of whatever popped into my head and whatever I saw when I looked around the room. The family IBM was next to the open kitchen, and so runners had names like Shannon Hotpoint and Bill Maytag. There was a Mike Rayburn (named after a Supreme Court justice) who was talented but tailed off badly in his senior year, costing Delta the team title. (I used to root for certain guys I'd assigned really cool names, but like them I was at the cold mercy of a randomization scheme.)

Shane Tabley was the fastest kid in the history of the league. He started out as a low-16's guy, so it wasn't a shock that he wound up in the high 14's as a senior. A few other kids made the sub-16:00 club.

Given that I did this for about 12 seasons (and I obviously didn't wait long in real time between each one), started with 56 names, and lost and replaced about 14 names a season, I came up with a total of around 210 names doing this crap. I miss it. If nothing else, writing programs in BASIC helped me later on when I would swipe and adapt segments of similar languages (JavaScript, Perl) but for the most part it was one of the few things I did as a teenager that stood absolutely no chance of getting me in any sort of trouble with higher authorities.

No comments:

Post a Comment