Quad Rock recap

I was anticipating a good day at Quad Rock and instead I flopped. I finished in 8:14:46. 186th out of 209 finishers, my poorest place at this race by a big margin. And I'd expected to match, if not exceed, my previous best. What explains this fiasco? My major problem was acute leg muscle cramping, but there were some minor issues as well.

In the week before the race I did my mobility and core routine every day and ran 15-30 minutes per day. I ate and slept normally, which is to say, well. Instead of feeling fresher and fresher, I started to feel stiff and irritated all over. My right Tibalias Anterior and Peroneus Longus, the muscles on the shin and outside of the lower leg, were particularly tight and tender starting on the Thursday before the race and continuing into the eve of the race. I did a small set of 20 second hill sprints on the street around the corner from home on Thursday and felt okay. My shakeout run on Friday afternoon, however, sucked. I never got very comfortable and the strides I attempted were a chore. I was a little dismayed by this, but let that feeling go, figuring that I was likely to feel better on Saturday.

Saturday morning I ran the first mile very easy, then picked up the pace in the second to jump some places before we hit the first single track. In the first half mile of the single track I made about five short bursts to pass slow groups and find people who were running at my target pace. Soon after this, we started uphill and I started to get negative feedback from my legs. Not cramps yet, but a lack of energy, like I'd felt on Friday. I'd felt better on the same climb a week before in my last uphill workout.

I kept a steady enough pace up Towers, and wasn't passed by anyone, but began to go backwards on the first descent. My legs felt tight and fragile. I lost contact with the folks with whom I'd climbed Towers and a few places heading down to the 10-mile mark, Horsetooth Mountain Trailhead.

The next seven miles after the aid station were a complete disaster. I experienced calf cramps that stopped me cold, and shin and foot cramps that made it hard to stand at all. I was passed by 54 runners, about 2 runners per minute, before I reached the Towers aid station. I tried salt. I tried stretching. I had to lie on the dirt at Towers for 15 minutes before I could continue. 3:22 of that was spent listening to "Rock Me Amadeus" on the aid station's sound system, which gave me life and saved my race.

I fumbled my way down Mill Canyon to Arthur's Rock aid station at mile 17, three hours after leaving the Horsetooth aid station. I laid down in the shade to stretch and slowly put myself back together. After 15 minutes, I felt like I could continue, if not quickly. The cramps were fading, but my legs were shot from the involuntary contractions. As if I'd done squats and deadlifts to the point of muscle failure.

During the last seven miles of the race, I caught up with runners who were in their first Quad Rock, or first trail race of this distance, and it was fun to pre-celebrate with them, pump them up, share stories, and remind them that we were going to be finishers, if only because there was nowhere to drop out before the finish. I was feeling a lot better at this point. The last climb up Howard was hard but not the end of the world. I managed a good amount of easy running on the last descent to the finish.

The cramps reminded me of my experience at the Bear 100 in September 2025, except that they hit me sooner at Quad Rock, at 10 miles instead of 17 miles. I've been analyzing my data, memories, and notes to find things about the races that were common or different. And, now that I think about it, it was calf cramps that brought me down at mile 21 at Never Summer 100K in July 2023. I've got a problem with cramping that hasn't been solved by physical therapy or judicious amounts of hard running. It's going to be an interesting problem to work out.

In the end, I did finish, and feel pretty satisfied about that. I haven't crossed a race finish line since July of 2023, almost three years ago. Breaking a streak of three DNFs (2023 Bear 100, 2025 Never Summer 100K, 2025 Bear 100) felt good. The weather was good, the trails were fine. I ran with friends for a while and saw other friends at aid stations. It wasn't all torture. I smiled and laughed quite a bit.

Biggest thanks to Ruthie for driving me and Stefan to the start, taking our drop bags to Horsetooth, and for picking me up at the finish. Thank you, everyone who offered me help on the painful cramping trip. And thanks to Nick and Brad, and all you race volunteers. Everything about this race was top notch, except my legs.

Quad Rock training week 16

Week 16 is over. It's six days to Quad Rock.

  • 10 hours, 11 minutes all training

  • 18 miles running

  • 2,385 ft D+ running

I did a small set of hard running intervals, some steady running, and one last hilly run on the Quad Rock course with a friend on Friday. We pushed the pace on the upper half of the first climb, going up Towers Trail, and I was just a few seconds off my personal bests on those segments. 10/10 effort on Saturday won't be sustainable, but it was fun and a useful check on my fitness before the race. I'll completely recover from that by the end of the week, no problem.

Week 17, race week, will be so easy that I expect to go a little stir crazy. A winter storm is arriving tomorrow, so I'll be inside, running on a treadmill and sitting in a sauna, until Thursday. I'm curious to see how much snow we get, whether it's going to stick on the mountains through race day, and how muddy it will be.

Kyle Kingsbury's bullshit about bullshit machines

You've probably seen links to "The Future of Everything is Lies, I Guess" already. I've just finished the last installment. This is an excellent series of posts with many references. If we meet to talk about the industry, I'm almost certainly going to ask if you've read it.

This is bullshit about bullshit machines, and I mean it. It is neither balanced nor complete: others have covered ecological and intellectual property issues better than I could, and there is no shortage of boosterism online. Instead, I am trying to fill in the negative spaces in the discourse. “AI” is also a fractal territory; there are many places where I flatten complex stories in service of pithy polemic. I am not trying to make nuanced, accurate predictions, but to trace the potential risks and benefits at play.

I've already come to some of the same conclusions, so I admit to confirmation bias.

Quad Rock training week 15

Week 15 was my peak week before Quad Rock on May 9. I didn't run a lot, but it was all high quality running.

  • 14 hours, 23 minutes all training

  • 24.8 miles running

  • 6,020 feet D+ running

Tuesday I hiked and ran up and down Green Mountain in Boulder, my first time on that mountain. I went up the steeper east side and down the more runnable west side. The trail is ridiculously steep: in the first mile I gained 1,300 feet of elevation. There's a ladder at one point, that's how steep it is. The second mile has a short runnable section and averages only 19%. I went steadily to the top and ran the downhills of Ranger and Gregory Canyon as fast as I could while sight-reading. Green Mountain is fun, easy to access, and loved almost to death by Boulderites. The Amphitheater and Saddle Rock trails are in sad shape.

The geology of Boulder's Mountain Parks and Lory State Park are similar, but because the Green Mountain intrusion of the Boulder Creek Batholith is broader and 1,000 feet higher than at Horsetooth Mountain and Arthur's Rock, there is no schist or gneiss to be found on Green Mountain. It was shoved aside a billion and a half years ago. The red Fountain Formation sandstone that provides Boulder's striking Flatirons backdrop is immediately adjacent to igneous grandiorite and pegmatite.

Thursday I ran Quad Rock's second climb and first descent from the Horsetooth Open Space trailhead. I went hard for half of the climb and got some personal bests on a few segments. I was close to a personal best on the descent as well. Some parts of Spring Creek are in such bad shape that I rode my brakes to stay safe. Hopefully we'll get some moisture before Quad Rock, that would keep the rocks and gravel a little more glued down.

Saturday I went out for 13 miles on the Quad Rock course with other local runners. I pushed on the climbs again, got a few PRs, and a near PR on the Mill Creek climb pretty easily.

The other half of my week 15 training time was spent on my bike, on my yoga mat, or moving weights. Daily crunches, calf raises, and eccentric heel drops are keeping my hips and Achilles tendons, perennial sources of pain, in great shape. My knees are the only things bugging me now, and they'll be okay once I'm warmed up and racing.

Speaking of heel drops, I got a great tip recently from Dr. Tonya K. Olson on the Trail Runner Nation podcast: unless your heels touch down on a surface below your toes, your body may not adapt as effectively as it could. I'd been doing heel drops into space, standing on a stair step, but have switched to dropping from a thick book (Sunset Magazine's Western Garden Book, specifically). I believe it's making a difference.

Week 16 will be fine tuning, not tapering. I will run hard, but in smaller doses.

https://live.staticflickr.com/65535/55235381216_b959de51b0_b.jpg

The many high summits of the Indian Peaks Range, with a modest snowpack, viewed from the top of Green Mountain (2.477 meters).

Laid off

Welp, I'm joining the ranks of the unemployed tech workers again.

As before, I'm in a good situation. I don't depend on my former employer for health insurance. I've got some severance and savings, my family is in good health, we have a roof over our heads, and I have good connections. I don't feel afraid.

But maybe I should? The job market is worse than last time this happened to me. I've seen experienced and talented people go for weeks and months without offers, and read some harrowing stories about what under-employment looks like for older tech workers these days.

After a little detour into the biomedical field, I'm looking to get back into helping to solve important geospatial problems. If you've got them, please let me know.

Station identification

Hello, my name is Sean Gillies, and this is my blog. I write about running, cooking and eating, gardening, travel, family, programming, Python, API design, geography, geographic data formats and protocols, open source, and internet standards. Fort Collins, Colorado, is my home.

Email me with questions or comments on any of my posts: sean.gillies@gmail.com.

Update: I'm currently looking for work in the geospatial field, remote or in Colorado. Please check out my CV.

Quad Rock training week 14

I needed my training to begin to peak in week 14. Quad Rock is in 20 days (at this writing), and I won't get much adaptation to workout loading in the last 13 days. Weeks 14 and 15 would be my last opportunities to get faster and stronger before the race. Fortunately, a return to good health and favorable weather helped make this my best week yet.

  • 13 hours, 8 minutes all training

  • 42.7 miles running

  • 8,550 feet D+ running and treadmill

The first block of my training was dedicated to power and pure speed, The second to intense aerobic efforts. This last block is about going up and down technical mountain trails at my race pace or a bit faster. In practice, I push pretty hard for half of each climb, run the downhills as fast as I can, and otherwise keep it easy, but not slow.

I did three workouts like this, plus two shorter tempo runs at Pineridge Open Space, which is flatter than the Quad Rock course. Five days of comfortably hard to just plain hard running, a recovery ride on Tuesday, and a full day off to recover on Friday.

Today I went for a loop in Lory State Park that I did five weeks ago. The loop includes the last seven-mile stanza of the 25-mile QR poem: a 1,000 foot climb up from the Arthurs Rock aid station, some rolling terrain, and a 1,100 foot descent to the finish line. I did the loop in the same time as I did in March, but at a noticeably lower level of effort. I'm counting on being able to run at an even faster pace at a higher level of effort in May.

Thursday I ran at elevation for the ffirst time this season, a loop around Lumpy Ridge in Rocky Mountain National Park that begins just below 8,000 feet and tops out just above 9,000 feet. There is no snow to speak of at Lumpy Ridge. If the aspen in the Cow Creek drainage on the more remote north side of Lumpy Ridge had more leaves, you might think it was mid-summer.

https://live.staticflickr.com/65535/55216331884_c8a56e2e40_b.jpg

A row of tall white aspen stems with just a few leaves, backed by dark green Douglas fir and blue spruce.

I loved seeing water in Cow Creek, even if it was only a July-level flow. At least the birds and mammals have something to drink.

https://live.staticflickr.com/65535/55216331879_53d6fe3815_c.jpg

A footbridge made of rough-hewn timbers spans a small mountain creek. Much local rock appears yellowish when wet, and our shallow mountain creeks appear golden.

Quad Rock training week 13

Week 13 started out pretty strong. I returned to my favorite Monday evening yoga class, did a fun run with strides at Pineridge on Tuesday, and then a hard running interval workout on Towers Trail in Horsetooth Open Space on Wednesday. Thursday I had cold symptoms again and shifted to dog walking and bike riding for the rest of the week. The running numbers for the week are nothing much.

  • 11 hours, 35 minutes all training

  • 14.6 miles running

  • 2,041 feet D+ running

By Saturday afternoon I felt much better, which gave me hope for a solid week 14.

Quad Rock training week 12

In week 12, I started to get things back on track after being sick. I ran five days, biked one day, and took Saturday off to take my family to a Nuggets game in Denver.

  • 12 hours, 9 minutes all training

  • 34.8 miles running

  • 5,800 ft D+ running (and treadmill)

My energy level was low to mid until Friday, when I rallied for a good interval workout on a 12% incline treadmill indoors and a sauna session after. My fitness didn't advance much in week ten, but I didn't lose a step. According to the machine, I went "up" beyond any of the Quad Rock climbs, and at a pace that I'd love to hit on race day.

Saturday, as I mentioned previously, I sat on my butt in a car and in Ball Arena, with Ruthie and our kids, and then we all met my folks in Denver for an early dinner. It was a wonderfully easy and sociable day. Some days I think we should be living in Denver instead of Fort Collins, and this was one of those days.

Sunday I went out for three hours on the rolling and punchy dirt trails east of Horsetooth Reservoir, intending to get 90 minutes of Z2-Z3 running. It was a great run. My legs felt lively during miles 2-12, and I pushed my gas pedal with enthusiasm. If I'd brought another two gels, I could have avoided bottoming out at mile 14. I'm hoping to feel that good and pain free at Quad Rock.

https://live.staticflickr.com/65535/55194044783_1d2c216c79_b.jpg

A dry, yellow-brown landscape under a blue and partly cloudy sky.

Quad Rock training week 11

I had big plans for week eleven and then came down with a cold. My Wednesday workout's mediocre feeling was the first indication. The rest of the week I shifted into recovery rides and easy runs.

  • 10 hours, 23 minutes all training

  • 19.2 miles running

  • 2,306 ft D+ running

It wasn't a terrible week, to be clear. I didn't fall apart physically, or anything like that. My concern is that it was the first week where I didn't progress very much in my Quad Rock training season.