Our 2025 Twin Ports Athlete of the Year: C.J. Ham
When C.J. stopped and dropped to one knee, we captured every second from twenty feet away, giggling like kids on a prank. Steph didn’t spot us until after she said yes and C.J. waved us over. All four of us cracked up at how covert it all felt.

DULUTH – Nobody else was ever in the running.
Our 2025 Twin Ports Athlete of the Year is a guy I’ve been lucky enough to know since long before he ever strapped on an NFL chinstrap. C.J. Ham — Minnesota Vikings fullback, West End kid to the core, forever a Denfeld Hunter — has given this town more reasons to cheer than we could possibly count. But for me, this honor’s personal. It’s built on snapshots most folks never got to see.
I still remember the afternoon I took C.J.’s graduation photos. We wandered around the West End, chasing the right light, the right brick, eventually ducking inside Clyde Iron Works. His late mother was with us that day — a moment I’ll keep forever. Those were simpler times, before any of us knew he’d carve out an NFL career that would make our city grin from ear to ear.

Then there was the morning he called me out of the blue. A Tuesday, foggy and lightly snowing, drizzle hanging in the air. Visibility was lousy. “What are you and Beth doing right now?” C.J. asked.
“Nothin'. Why?” I shot back.
“Because I’m about to propose to Steph in Canal Park. Could you and Beth come down and snap some pictures? Try to be low-key so she doesn’t catch on.”
Beth and I threw on raincoats — we even joked about sunglasses to look like clueless tourists before realizing we’d stand out even worse. We parked down by the lake and waited, tucked warm in the car, Nikon hidden under my coat. When they finally showed, strolling hand-in-hand toward the Aerial Lift Bridge, we slipped out and trailed them like undercover paparazzi.
The weather was so miserable we might’ve been the only other souls on the canal. Perfect. When C.J. stopped and dropped to one knee, we captured every second from twenty feet away, giggling like kids on a prank. Steph didn’t spot us until after she said yes and C.J. waved us over. All four of us cracked up at how covert it all felt. Those photos? Still unpublished, locked away except for the one you see here above. They’re some of the favorite frames I’ve ever taken.
Not long after that, C.J. signed with the Vikings as an undrafted free agent. Spent a year grinding on the practice squad. Switched from college tailback to NFL fullback — because that’s what the moment needed, and because he was humble enough to do the hard work. It turned out to be the perfect move. He became a starter, a silent leader, and by any measure one of the league’s very best at what he does.

I’ve still got a casual shot from his grad session — him in his Denfeld football jersey, standing in front of this old wooden garage door we found in the West End, close to home. Even back then, he carried himself with a quiet confidence that told you he’d be fine wherever life took him.
And through it all, he’s never stopped being Duluth’s own. Every offseason, he’s right back here running youth camps, teaching kids the same humble approach that got him nominated for the NFL’s Walter Payton Man of the Year. This spring, he even dropped double figures in a local celebrity basketball game at Denfeld — because, of course, he did.
Now, as his playing days inch closer to winding down, C.J.’s showing no signs of slowing up when it comes to giving back. He’s already one of the greatest ambassadors the Vikings have ever had. My money says he might make that official when the cleats come off for good.
So yeah, we’re proud to call him our Twin Ports Athlete of the Year. But honestly? I’m more proud he’s one of us. Cool as a cucumber, same as ever. Thanks, C.J., for every memory — and for all the ones still waiting down the road.
Comments ()