Kyle McCall
Chasing the horizon.

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

Miwok 100k! I’m still celebrating this finish line and a magical day of racing on the local trails. One of the best parts of the day was seeing so many friends on the course either racing, spectating, crewing, or taking amazing photos. Huge thanks to @tonywithasony and @banta.visuals for these bangers!
I wrote a full race recap in my previous post (go check it out) so I don’t have that much more to say here. I think these pictures tell the story better than I ever could anyway! As I recover from this race I am already excited for the next big adventure on the horizon and am more motivated than ever to get out on the trails this summer 🏔️
. x . x .
@never.second @hoka @miwok100k

The last time I ran a 100k was at Canyons in 2022 and I had big dreams for Miwok. During long distance (over 50k) ultras I’ve always gone into survival mode, especially at the end. Usually I end up puking and power hiking. But my hope was with more conservative pacing (thank you UltraPacer.com) and better fueling (shout out @never.second) I could keep “running” all day.
Any race this long is going to have highs and lows, but yesterday I felt some real trail magic. Well-planned race strategy and a higher mileage training schedule paid off. But the mental game is huge too. This is a year of huge life changes for me and I spent a lot of time reflecting on those while I was out there. It puts everything into a new perspective and I am more grateful than ever to have a healthy body and the freedom to run.
My A-Goal for this race was to crack 12 hours which would have been a big PR on a difficult course. I picked up my pacer (also Kyle) with 13 miles to go and that goal was still within reach - but we’d have to work for it. The final 2 miles were a technical descent that’s treacherous on fresh legs and my quads/knees were screaming every time I jumped over a root or off a drop. Then, finally, we hit pavement in Stinson Beach, with less than 3 minutes to spare.
I would not have been able to run this amazing race without the support of the homies @redwoodroadrunners @seth_lareau and my accomplice in life @meganruble
And now, 🍔🍕🍨

The last time I ran a 100k was at Canyons in 2022 and I had big dreams for Miwok. During long distance (over 50k) ultras I’ve always gone into survival mode, especially at the end. Usually I end up puking and power hiking. But my hope was with more conservative pacing (thank you UltraPacer.com) and better fueling (shout out @never.second) I could keep “running” all day.
Any race this long is going to have highs and lows, but yesterday I felt some real trail magic. Well-planned race strategy and a higher mileage training schedule paid off. But the mental game is huge too. This is a year of huge life changes for me and I spent a lot of time reflecting on those while I was out there. It puts everything into a new perspective and I am more grateful than ever to have a healthy body and the freedom to run.
My A-Goal for this race was to crack 12 hours which would have been a big PR on a difficult course. I picked up my pacer (also Kyle) with 13 miles to go and that goal was still within reach - but we’d have to work for it. The final 2 miles were a technical descent that’s treacherous on fresh legs and my quads/knees were screaming every time I jumped over a root or off a drop. Then, finally, we hit pavement in Stinson Beach, with less than 3 minutes to spare.
I would not have been able to run this amazing race without the support of the homies @redwoodroadrunners @seth_lareau and my accomplice in life @meganruble
And now, 🍔🍕🍨

The last time I ran a 100k was at Canyons in 2022 and I had big dreams for Miwok. During long distance (over 50k) ultras I’ve always gone into survival mode, especially at the end. Usually I end up puking and power hiking. But my hope was with more conservative pacing (thank you UltraPacer.com) and better fueling (shout out @never.second) I could keep “running” all day.
Any race this long is going to have highs and lows, but yesterday I felt some real trail magic. Well-planned race strategy and a higher mileage training schedule paid off. But the mental game is huge too. This is a year of huge life changes for me and I spent a lot of time reflecting on those while I was out there. It puts everything into a new perspective and I am more grateful than ever to have a healthy body and the freedom to run.
My A-Goal for this race was to crack 12 hours which would have been a big PR on a difficult course. I picked up my pacer (also Kyle) with 13 miles to go and that goal was still within reach - but we’d have to work for it. The final 2 miles were a technical descent that’s treacherous on fresh legs and my quads/knees were screaming every time I jumped over a root or off a drop. Then, finally, we hit pavement in Stinson Beach, with less than 3 minutes to spare.
I would not have been able to run this amazing race without the support of the homies @redwoodroadrunners @seth_lareau and my accomplice in life @meganruble
And now, 🍔🍕🍨

The last time I ran a 100k was at Canyons in 2022 and I had big dreams for Miwok. During long distance (over 50k) ultras I’ve always gone into survival mode, especially at the end. Usually I end up puking and power hiking. But my hope was with more conservative pacing (thank you UltraPacer.com) and better fueling (shout out @never.second) I could keep “running” all day.
Any race this long is going to have highs and lows, but yesterday I felt some real trail magic. Well-planned race strategy and a higher mileage training schedule paid off. But the mental game is huge too. This is a year of huge life changes for me and I spent a lot of time reflecting on those while I was out there. It puts everything into a new perspective and I am more grateful than ever to have a healthy body and the freedom to run.
My A-Goal for this race was to crack 12 hours which would have been a big PR on a difficult course. I picked up my pacer (also Kyle) with 13 miles to go and that goal was still within reach - but we’d have to work for it. The final 2 miles were a technical descent that’s treacherous on fresh legs and my quads/knees were screaming every time I jumped over a root or off a drop. Then, finally, we hit pavement in Stinson Beach, with less than 3 minutes to spare.
I would not have been able to run this amazing race without the support of the homies @redwoodroadrunners @seth_lareau and my accomplice in life @meganruble
And now, 🍔🍕🍨

The last time I ran a 100k was at Canyons in 2022 and I had big dreams for Miwok. During long distance (over 50k) ultras I’ve always gone into survival mode, especially at the end. Usually I end up puking and power hiking. But my hope was with more conservative pacing (thank you UltraPacer.com) and better fueling (shout out @never.second) I could keep “running” all day.
Any race this long is going to have highs and lows, but yesterday I felt some real trail magic. Well-planned race strategy and a higher mileage training schedule paid off. But the mental game is huge too. This is a year of huge life changes for me and I spent a lot of time reflecting on those while I was out there. It puts everything into a new perspective and I am more grateful than ever to have a healthy body and the freedom to run.
My A-Goal for this race was to crack 12 hours which would have been a big PR on a difficult course. I picked up my pacer (also Kyle) with 13 miles to go and that goal was still within reach - but we’d have to work for it. The final 2 miles were a technical descent that’s treacherous on fresh legs and my quads/knees were screaming every time I jumped over a root or off a drop. Then, finally, we hit pavement in Stinson Beach, with less than 3 minutes to spare.
I would not have been able to run this amazing race without the support of the homies @redwoodroadrunners @seth_lareau and my accomplice in life @meganruble
And now, 🍔🍕🍨
The last time I ran a 100k was at Canyons in 2022 and I had big dreams for Miwok. During long distance (over 50k) ultras I’ve always gone into survival mode, especially at the end. Usually I end up puking and power hiking. But my hope was with more conservative pacing (thank you UltraPacer.com) and better fueling (shout out @never.second) I could keep “running” all day.
Any race this long is going to have highs and lows, but yesterday I felt some real trail magic. Well-planned race strategy and a higher mileage training schedule paid off. But the mental game is huge too. This is a year of huge life changes for me and I spent a lot of time reflecting on those while I was out there. It puts everything into a new perspective and I am more grateful than ever to have a healthy body and the freedom to run.
My A-Goal for this race was to crack 12 hours which would have been a big PR on a difficult course. I picked up my pacer (also Kyle) with 13 miles to go and that goal was still within reach - but we’d have to work for it. The final 2 miles were a technical descent that’s treacherous on fresh legs and my quads/knees were screaming every time I jumped over a root or off a drop. Then, finally, we hit pavement in Stinson Beach, with less than 3 minutes to spare.
I would not have been able to run this amazing race without the support of the homies @redwoodroadrunners @seth_lareau and my accomplice in life @meganruble
And now, 🍔🍕🍨
The last time I ran a 100k was at Canyons in 2022 and I had big dreams for Miwok. During long distance (over 50k) ultras I’ve always gone into survival mode, especially at the end. Usually I end up puking and power hiking. But my hope was with more conservative pacing (thank you UltraPacer.com) and better fueling (shout out @never.second) I could keep “running” all day.
Any race this long is going to have highs and lows, but yesterday I felt some real trail magic. Well-planned race strategy and a higher mileage training schedule paid off. But the mental game is huge too. This is a year of huge life changes for me and I spent a lot of time reflecting on those while I was out there. It puts everything into a new perspective and I am more grateful than ever to have a healthy body and the freedom to run.
My A-Goal for this race was to crack 12 hours which would have been a big PR on a difficult course. I picked up my pacer (also Kyle) with 13 miles to go and that goal was still within reach - but we’d have to work for it. The final 2 miles were a technical descent that’s treacherous on fresh legs and my quads/knees were screaming every time I jumped over a root or off a drop. Then, finally, we hit pavement in Stinson Beach, with less than 3 minutes to spare.
I would not have been able to run this amazing race without the support of the homies @redwoodroadrunners @seth_lareau and my accomplice in life @meganruble
And now, 🍔🍕🍨

The last time I ran a 100k was at Canyons in 2022 and I had big dreams for Miwok. During long distance (over 50k) ultras I’ve always gone into survival mode, especially at the end. Usually I end up puking and power hiking. But my hope was with more conservative pacing (thank you UltraPacer.com) and better fueling (shout out @never.second) I could keep “running” all day.
Any race this long is going to have highs and lows, but yesterday I felt some real trail magic. Well-planned race strategy and a higher mileage training schedule paid off. But the mental game is huge too. This is a year of huge life changes for me and I spent a lot of time reflecting on those while I was out there. It puts everything into a new perspective and I am more grateful than ever to have a healthy body and the freedom to run.
My A-Goal for this race was to crack 12 hours which would have been a big PR on a difficult course. I picked up my pacer (also Kyle) with 13 miles to go and that goal was still within reach - but we’d have to work for it. The final 2 miles were a technical descent that’s treacherous on fresh legs and my quads/knees were screaming every time I jumped over a root or off a drop. Then, finally, we hit pavement in Stinson Beach, with less than 3 minutes to spare.
I would not have been able to run this amazing race without the support of the homies @redwoodroadrunners @seth_lareau and my accomplice in life @meganruble
And now, 🍔🍕🍨

3 weeks to Miwok 100k! The hay is in the barn and I was able to get in some really solid mileage during my “funemployment.” This week I started a new job, so won’t be able to do 20 milers on a Tuesday 😂 I’m grateful to have had the chance to push the volume a bit and that my body handled it super well. Watching the Gorge 100k this weekend was a huge inspiration, getting to see some of the homies clock in some solid results (LFG @tonywithasony!)
Through all of these big life changes, running is always such a consistent and grounding practice. When I pin on the number in May, my biggest goal is to soak in the day, to not sweat the results, and to leave it all out on the course.

3 weeks to Miwok 100k! The hay is in the barn and I was able to get in some really solid mileage during my “funemployment.” This week I started a new job, so won’t be able to do 20 milers on a Tuesday 😂 I’m grateful to have had the chance to push the volume a bit and that my body handled it super well. Watching the Gorge 100k this weekend was a huge inspiration, getting to see some of the homies clock in some solid results (LFG @tonywithasony!)
Through all of these big life changes, running is always such a consistent and grounding practice. When I pin on the number in May, my biggest goal is to soak in the day, to not sweat the results, and to leave it all out on the course.

3 weeks to Miwok 100k! The hay is in the barn and I was able to get in some really solid mileage during my “funemployment.” This week I started a new job, so won’t be able to do 20 milers on a Tuesday 😂 I’m grateful to have had the chance to push the volume a bit and that my body handled it super well. Watching the Gorge 100k this weekend was a huge inspiration, getting to see some of the homies clock in some solid results (LFG @tonywithasony!)
Through all of these big life changes, running is always such a consistent and grounding practice. When I pin on the number in May, my biggest goal is to soak in the day, to not sweat the results, and to leave it all out on the course.

3 weeks to Miwok 100k! The hay is in the barn and I was able to get in some really solid mileage during my “funemployment.” This week I started a new job, so won’t be able to do 20 milers on a Tuesday 😂 I’m grateful to have had the chance to push the volume a bit and that my body handled it super well. Watching the Gorge 100k this weekend was a huge inspiration, getting to see some of the homies clock in some solid results (LFG @tonywithasony!)
Through all of these big life changes, running is always such a consistent and grounding practice. When I pin on the number in May, my biggest goal is to soak in the day, to not sweat the results, and to leave it all out on the course.

3 weeks to Miwok 100k! The hay is in the barn and I was able to get in some really solid mileage during my “funemployment.” This week I started a new job, so won’t be able to do 20 milers on a Tuesday 😂 I’m grateful to have had the chance to push the volume a bit and that my body handled it super well. Watching the Gorge 100k this weekend was a huge inspiration, getting to see some of the homies clock in some solid results (LFG @tonywithasony!)
Through all of these big life changes, running is always such a consistent and grounding practice. When I pin on the number in May, my biggest goal is to soak in the day, to not sweat the results, and to leave it all out on the course.

3 weeks to Miwok 100k! The hay is in the barn and I was able to get in some really solid mileage during my “funemployment.” This week I started a new job, so won’t be able to do 20 milers on a Tuesday 😂 I’m grateful to have had the chance to push the volume a bit and that my body handled it super well. Watching the Gorge 100k this weekend was a huge inspiration, getting to see some of the homies clock in some solid results (LFG @tonywithasony!)
Through all of these big life changes, running is always such a consistent and grounding practice. When I pin on the number in May, my biggest goal is to soak in the day, to not sweat the results, and to leave it all out on the course.

3 weeks to Miwok 100k! The hay is in the barn and I was able to get in some really solid mileage during my “funemployment.” This week I started a new job, so won’t be able to do 20 milers on a Tuesday 😂 I’m grateful to have had the chance to push the volume a bit and that my body handled it super well. Watching the Gorge 100k this weekend was a huge inspiration, getting to see some of the homies clock in some solid results (LFG @tonywithasony!)
Through all of these big life changes, running is always such a consistent and grounding practice. When I pin on the number in May, my biggest goal is to soak in the day, to not sweat the results, and to leave it all out on the course.
3 weeks to Miwok 100k! The hay is in the barn and I was able to get in some really solid mileage during my “funemployment.” This week I started a new job, so won’t be able to do 20 milers on a Tuesday 😂 I’m grateful to have had the chance to push the volume a bit and that my body handled it super well. Watching the Gorge 100k this weekend was a huge inspiration, getting to see some of the homies clock in some solid results (LFG @tonywithasony!)
Through all of these big life changes, running is always such a consistent and grounding practice. When I pin on the number in May, my biggest goal is to soak in the day, to not sweat the results, and to leave it all out on the course.

3 weeks to Miwok 100k! The hay is in the barn and I was able to get in some really solid mileage during my “funemployment.” This week I started a new job, so won’t be able to do 20 milers on a Tuesday 😂 I’m grateful to have had the chance to push the volume a bit and that my body handled it super well. Watching the Gorge 100k this weekend was a huge inspiration, getting to see some of the homies clock in some solid results (LFG @tonywithasony!)
Through all of these big life changes, running is always such a consistent and grounding practice. When I pin on the number in May, my biggest goal is to soak in the day, to not sweat the results, and to leave it all out on the course.

Another brick in the wall 🧱
Miwok training continues, along with California’s alarmingly beautiful March weather. Got in a couple of longer runs this week after forgoing my long run last weekend while I was supporting the Big Alta team. Feeling strong and durable as I’ve been building volume - aiming to get a couple more big weeks in before the race.
Another brick in the wall 🧱
Miwok training continues, along with California’s alarmingly beautiful March weather. Got in a couple of longer runs this week after forgoing my long run last weekend while I was supporting the Big Alta team. Feeling strong and durable as I’ve been building volume - aiming to get a couple more big weeks in before the race.
Another brick in the wall 🧱
Miwok training continues, along with California’s alarmingly beautiful March weather. Got in a couple of longer runs this week after forgoing my long run last weekend while I was supporting the Big Alta team. Feeling strong and durable as I’ve been building volume - aiming to get a couple more big weeks in before the race.
Another brick in the wall 🧱
Miwok training continues, along with California’s alarmingly beautiful March weather. Got in a couple of longer runs this week after forgoing my long run last weekend while I was supporting the Big Alta team. Feeling strong and durable as I’ve been building volume - aiming to get a couple more big weeks in before the race.

Another brick in the wall 🧱
Miwok training continues, along with California’s alarmingly beautiful March weather. Got in a couple of longer runs this week after forgoing my long run last weekend while I was supporting the Big Alta team. Feeling strong and durable as I’ve been building volume - aiming to get a couple more big weeks in before the race.
Another brick in the wall 🧱
Miwok training continues, along with California’s alarmingly beautiful March weather. Got in a couple of longer runs this week after forgoing my long run last weekend while I was supporting the Big Alta team. Feeling strong and durable as I’ve been building volume - aiming to get a couple more big weeks in before the race.
Wake up, babe. New Speedgoats are here.
My take on the new @hoka Speedgoat 7 - a welcome update to a legendary trail running shoe.

Highlights from covering The Big Alta with @runfreetrail! I was out in course managing the socials along with @tonywithasony and we had three of pic days of trail running. What’s so cool about these races is that @dylanbo has included so many hidden gems. Last year when I raced the 50k, it introduced me to the Marinwood loop. This year supporting the 100k for me out to some trails on the north side of Mt Tam that I’d never done, even after living here for a decade.
Huge amount of gratitude to @daybreakracing and @salomonrunning for hosting such a world class event in our backyard and to Dylan, Harmony, Ryan, Brett, and the rest of the Freetrail team for including me in their event coverage. Next year, I might have to toe the line for the 100k!
Highlights from covering The Big Alta with @runfreetrail! I was out in course managing the socials along with @tonywithasony and we had three of pic days of trail running. What’s so cool about these races is that @dylanbo has included so many hidden gems. Last year when I raced the 50k, it introduced me to the Marinwood loop. This year supporting the 100k for me out to some trails on the north side of Mt Tam that I’d never done, even after living here for a decade.
Huge amount of gratitude to @daybreakracing and @salomonrunning for hosting such a world class event in our backyard and to Dylan, Harmony, Ryan, Brett, and the rest of the Freetrail team for including me in their event coverage. Next year, I might have to toe the line for the 100k!

Highlights from covering The Big Alta with @runfreetrail! I was out in course managing the socials along with @tonywithasony and we had three of pic days of trail running. What’s so cool about these races is that @dylanbo has included so many hidden gems. Last year when I raced the 50k, it introduced me to the Marinwood loop. This year supporting the 100k for me out to some trails on the north side of Mt Tam that I’d never done, even after living here for a decade.
Huge amount of gratitude to @daybreakracing and @salomonrunning for hosting such a world class event in our backyard and to Dylan, Harmony, Ryan, Brett, and the rest of the Freetrail team for including me in their event coverage. Next year, I might have to toe the line for the 100k!

Highlights from covering The Big Alta with @runfreetrail! I was out in course managing the socials along with @tonywithasony and we had three of pic days of trail running. What’s so cool about these races is that @dylanbo has included so many hidden gems. Last year when I raced the 50k, it introduced me to the Marinwood loop. This year supporting the 100k for me out to some trails on the north side of Mt Tam that I’d never done, even after living here for a decade.
Huge amount of gratitude to @daybreakracing and @salomonrunning for hosting such a world class event in our backyard and to Dylan, Harmony, Ryan, Brett, and the rest of the Freetrail team for including me in their event coverage. Next year, I might have to toe the line for the 100k!

Highlights from covering The Big Alta with @runfreetrail! I was out in course managing the socials along with @tonywithasony and we had three of pic days of trail running. What’s so cool about these races is that @dylanbo has included so many hidden gems. Last year when I raced the 50k, it introduced me to the Marinwood loop. This year supporting the 100k for me out to some trails on the north side of Mt Tam that I’d never done, even after living here for a decade.
Huge amount of gratitude to @daybreakracing and @salomonrunning for hosting such a world class event in our backyard and to Dylan, Harmony, Ryan, Brett, and the rest of the Freetrail team for including me in their event coverage. Next year, I might have to toe the line for the 100k!

Highlights from covering The Big Alta with @runfreetrail! I was out in course managing the socials along with @tonywithasony and we had three of pic days of trail running. What’s so cool about these races is that @dylanbo has included so many hidden gems. Last year when I raced the 50k, it introduced me to the Marinwood loop. This year supporting the 100k for me out to some trails on the north side of Mt Tam that I’d never done, even after living here for a decade.
Huge amount of gratitude to @daybreakracing and @salomonrunning for hosting such a world class event in our backyard and to Dylan, Harmony, Ryan, Brett, and the rest of the Freetrail team for including me in their event coverage. Next year, I might have to toe the line for the 100k!

Highlights from covering The Big Alta with @runfreetrail! I was out in course managing the socials along with @tonywithasony and we had three of pic days of trail running. What’s so cool about these races is that @dylanbo has included so many hidden gems. Last year when I raced the 50k, it introduced me to the Marinwood loop. This year supporting the 100k for me out to some trails on the north side of Mt Tam that I’d never done, even after living here for a decade.
Huge amount of gratitude to @daybreakracing and @salomonrunning for hosting such a world class event in our backyard and to Dylan, Harmony, Ryan, Brett, and the rest of the Freetrail team for including me in their event coverage. Next year, I might have to toe the line for the 100k!

Highlights from covering The Big Alta with @runfreetrail! I was out in course managing the socials along with @tonywithasony and we had three of pic days of trail running. What’s so cool about these races is that @dylanbo has included so many hidden gems. Last year when I raced the 50k, it introduced me to the Marinwood loop. This year supporting the 100k for me out to some trails on the north side of Mt Tam that I’d never done, even after living here for a decade.
Huge amount of gratitude to @daybreakracing and @salomonrunning for hosting such a world class event in our backyard and to Dylan, Harmony, Ryan, Brett, and the rest of the Freetrail team for including me in their event coverage. Next year, I might have to toe the line for the 100k!

Highlights from covering The Big Alta with @runfreetrail! I was out in course managing the socials along with @tonywithasony and we had three of pic days of trail running. What’s so cool about these races is that @dylanbo has included so many hidden gems. Last year when I raced the 50k, it introduced me to the Marinwood loop. This year supporting the 100k for me out to some trails on the north side of Mt Tam that I’d never done, even after living here for a decade.
Huge amount of gratitude to @daybreakracing and @salomonrunning for hosting such a world class event in our backyard and to Dylan, Harmony, Ryan, Brett, and the rest of the Freetrail team for including me in their event coverage. Next year, I might have to toe the line for the 100k!
5 minute PR without anymore miles 🏋🏻
Example workout:
1️⃣ Barbell Squat
4 sets × 6 reps @ ~80–85% 1RM
2️⃣ Romanian Deadlift
4 sets × 6 reps @ ~80–85% 1RM
Rest for 2-3 minutes between sets
Avoid injury by feeling like you had 1-2 reps in reserve.
Source: Journal of Sports Medicine (2024) 54:895-932

The @miwok100k build continues with more beautiful days and banger runs. Been getting out to Marin almost every Saturday with the @sfrunco bunch. It’s always more fun with the group.
Sometimes when you’re in the middle of a long run it feels like a slog. You’re tired. Maybe you’re hungry. But it is always a blessing. These are the days, lads. These are the days.
The @miwok100k build continues with more beautiful days and banger runs. Been getting out to Marin almost every Saturday with the @sfrunco bunch. It’s always more fun with the group.
Sometimes when you’re in the middle of a long run it feels like a slog. You’re tired. Maybe you’re hungry. But it is always a blessing. These are the days, lads. These are the days.

The @miwok100k build continues with more beautiful days and banger runs. Been getting out to Marin almost every Saturday with the @sfrunco bunch. It’s always more fun with the group.
Sometimes when you’re in the middle of a long run it feels like a slog. You’re tired. Maybe you’re hungry. But it is always a blessing. These are the days, lads. These are the days.
The @miwok100k build continues with more beautiful days and banger runs. Been getting out to Marin almost every Saturday with the @sfrunco bunch. It’s always more fun with the group.
Sometimes when you’re in the middle of a long run it feels like a slog. You’re tired. Maybe you’re hungry. But it is always a blessing. These are the days, lads. These are the days.
The @miwok100k build continues with more beautiful days and banger runs. Been getting out to Marin almost every Saturday with the @sfrunco bunch. It’s always more fun with the group.
Sometimes when you’re in the middle of a long run it feels like a slog. You’re tired. Maybe you’re hungry. But it is always a blessing. These are the days, lads. These are the days.
Getting ready for Miwok 100k. About 250 cal/hour on this run at a solid pace chasing @_akcameron_ !#hoka #ultrarunning #trailrunning #CapCut

When I ran my first marathon in 2013, I was extremely undertrained and my goal was to just make it to the finish line. I didn’t care how long it took. That run was joyful as I clicked off the miles, passed through familiar Portland neighborhoods, and completed my longest run ever.
The next year, I ran the Portland Marathon again but this time with the goal of setting a PR by 10 minutes. I trained more; but still, in retrospect, inadequately. I went out hard and blew up at mile 20. I finished in almost exactly the same time as the previous year. And I was disappointed.
Since then I’ve had a complicated relationship with chasing personal bests, as many runners do. Between my first marathon and my second, I’d lost a little bit of the sense of wonder running 26.2 miles deserves. I’d decided to let the clock tell me how to feel about my race.
Going into CIM, I told people that my number one goal was to run with joy. I’d had a nearly perfect training block, including great workouts with friends. The clock at the finish line would tell me my finishing time. But I would define my results.
It turned out that the clock gave me something else to celebrate – a 4 minute PR and a time that will (hopefully) get me into Boston. But what I will remember most were running with Cole and Tim. Training with the Redwood Roadrunners. To paraphrase Semi-Rad, “You think 26.2 miles is far? I ran a couple thousand just to get to the start line.” The race, ultimately, is a single day of celebration. It’s running that keeps me going.
Photo: @acaurora

We’re going to Boston, baby! After 3 years of attempts, I feel confident this is the one (got 8+ min of buffer ✔️)
But more importantly, this day was an absolute gift from the marathon gods, a dream race from tape to tape. Went out at 2:55 with SUPER pacers @c0lewats0n and @timtollefson who ran like a pair of clocks. Felt goood going through half way and decided to open it up.
Got some massive inspiration from seeing so many friends on course: @meganruble , @spunkylilpip , @davidtlam , @redwoodroadrunners , and more. THANK YOU!
In the last few miles I had to take out the shovel and dig into the pain cave, got a nice new den in there now. It was all joyful suffering as the legs and stomach held together as best as I could as of them and I was free to search for the limits of my lungs and my heart and my mind.
One for the books friends. Thank you running ❤️

We’re going to Boston, baby! After 3 years of attempts, I feel confident this is the one (got 8+ min of buffer ✔️)
But more importantly, this day was an absolute gift from the marathon gods, a dream race from tape to tape. Went out at 2:55 with SUPER pacers @c0lewats0n and @timtollefson who ran like a pair of clocks. Felt goood going through half way and decided to open it up.
Got some massive inspiration from seeing so many friends on course: @meganruble , @spunkylilpip , @davidtlam , @redwoodroadrunners , and more. THANK YOU!
In the last few miles I had to take out the shovel and dig into the pain cave, got a nice new den in there now. It was all joyful suffering as the legs and stomach held together as best as I could as of them and I was free to search for the limits of my lungs and my heart and my mind.
One for the books friends. Thank you running ❤️

We’re going to Boston, baby! After 3 years of attempts, I feel confident this is the one (got 8+ min of buffer ✔️)
But more importantly, this day was an absolute gift from the marathon gods, a dream race from tape to tape. Went out at 2:55 with SUPER pacers @c0lewats0n and @timtollefson who ran like a pair of clocks. Felt goood going through half way and decided to open it up.
Got some massive inspiration from seeing so many friends on course: @meganruble , @spunkylilpip , @davidtlam , @redwoodroadrunners , and more. THANK YOU!
In the last few miles I had to take out the shovel and dig into the pain cave, got a nice new den in there now. It was all joyful suffering as the legs and stomach held together as best as I could as of them and I was free to search for the limits of my lungs and my heart and my mind.
One for the books friends. Thank you running ❤️

We’re going to Boston, baby! After 3 years of attempts, I feel confident this is the one (got 8+ min of buffer ✔️)
But more importantly, this day was an absolute gift from the marathon gods, a dream race from tape to tape. Went out at 2:55 with SUPER pacers @c0lewats0n and @timtollefson who ran like a pair of clocks. Felt goood going through half way and decided to open it up.
Got some massive inspiration from seeing so many friends on course: @meganruble , @spunkylilpip , @davidtlam , @redwoodroadrunners , and more. THANK YOU!
In the last few miles I had to take out the shovel and dig into the pain cave, got a nice new den in there now. It was all joyful suffering as the legs and stomach held together as best as I could as of them and I was free to search for the limits of my lungs and my heart and my mind.
One for the books friends. Thank you running ❤️
Instagramストーリービューアは、Instagramストーリー、動画、写真、またはIGTVを秘密に見たり保存したりできる簡単なツールです。このサービスを使用すると、コンテンツをダウンロードして、いつでもオフラインで楽しむことができます。Instagramで後でチェックしたいものを見つけた場合や、匿名でストーリーを見たい場合、このビューアは最適です。Anonstoriesは、あなたの身元を隠すための優れたソリューションを提供します。Instagramは2023年8月にストーリー機能を導入し、すぐに他のプラットフォームでも採用されました。このフォーマットは魅力的で、時間に敏感なため、ユーザーが写真、動画、または自撮りをテキスト、絵文字、またはフィルターで強化して、24時間限定で公開することができます。この限られた時間枠は、通常の投稿に比べて高いエンゲージメントを生み出します。今日の世界では、ストーリーはソーシャルメディアでつながり、コミュニケーションをとる最も人気のある方法の1つです。しかし、ストーリーを視聴すると、作成者は自分の名前を視聴者リストに見ることができ、プライバシーの懸念があります。もしストーリーを目立たずに閲覧したい場合、ここでAnonstoriesが役立ちます。これを使うことで、自分の身元を明かさずにInstagramのコンテンツを視聴できます。単に調べたいプロファイルのユーザー名を入力すると、その人の最新のストーリーが表示されます。Anonstoriesビューアの特徴:- 匿名閲覧:視聴リストに名前が表示されずにストーリーを視聴 - アカウント不要:Instagramのアカウントにサインインせずに公開コンテンツを視聴 - コンテンツダウンロード:ストーリーコンテンツを直接デバイスに保存してオフラインで使用 - ハイライト視聴:24時間を過ぎてもInstagramのハイライトにアクセス - リポストモニタリング:個人プロファイルのストーリーに対するリポストやエンゲージメントのレベルを追跡 制限事項:- このツールは公開アカウントでのみ動作し、非公開アカウントはアクセスできません。 利点:- プライバシー保護:Instagramのコンテンツを匿名で閲覧可能 - シンプルで簡単:アプリのインストールや登録は不要 - 独自のツール:Instagramが提供していない方法でコンテンツをダウンロードおよび管理可能
Instagramの更新をプライバシーを守りつつ、匿名で追跡できます。
プライベートプロファイルビューアを使用して、プロフィールと写真を簡単に匿名で閲覧できます。
この無料ツールでInstagramストーリーを匿名で閲覧でき、アクティビティがストーリーアップローダーに知られることはありません。
Anonstoriesを使用すると、作成者に通知されることなくInstagramストーリーを閲覧できます。
iOS、Android、Windows、macOS、ChromeやSafariなどの最新のブラウザで問題なく動作します。
ログイン情報なしで、安全かつ匿名で閲覧できます。
ユーザーは、ユーザー名を入力するだけで公開ストーリーを閲覧可能—アカウント登録は不要です。
写真(JPEG)と動画(MP4)を簡単にダウンロードできます。
サービスは無料で利用できます。
非公開アカウントのコンテンツはフォロワーのみがアクセスできます。
ファイルは個人または教育目的でのみ使用し、著作権法を遵守する必要があります。
公開ユーザー名を入力して、ストーリーを閲覧またはダウンロードします。サービスはコンテンツをローカルに保存するための直接リンクを生成します。