Weekend Trip to Denver

A post about things happening on the sidelines of my 2025 annual college reunion: flights, rocky mountain national park, and AI agents playing poker.

Deer Grazing in Rocky Mountain National Park


Deer Grazing in Rocky Mountain National Park

Having exhausted our roster of major cities with hosts for our annual college reunion, we conducted a survey and settled on Denver for this year’s gathering-a city that was proposed by me. Among the three-day itinerary, we would spend one day in Rocky Mountain National Park, another with card games in line with our tradition, and the third some random city walk.

Southwest Airlines Flight 814 from Boston to Denver

Not much to talk about.
I employed the typical Southwest trick, bought Wanna-Get-Away-Plus for an evening flight and then same-day confirm changed to this mid-day flight that suited my schedule better.
Once onboard, I found that Southwest had kept pace with modern conveniences by offering 60W type-c outlets (it was a 737 Max8 with new hardware).
About halfway into the flight, the captain mentioned there was a storm system over Ohio that we couldn’t climb over, hence we took the Great Lakes route which was very turbulent over Lake Michigan. Later that day, it turned out that my friends arriving from Chicago had all encountered significant delays, a testament to the very weather system I had experienced during the flight.

Southwest Airlines 814
Boston, MA (BOS) – Denver, CO (DEN)
Boeing B737-Max8 (N8928Q)
Seat 25C
Scheduled Departure – 11:40am
Actual Departure – 12:00pm
Scheduled Arrival – 2:10pm
Actual Arrival – 2:02pm
4 hours and 2 minutes

Rocky Mountain National Park

A primary reason I proposed Denver for this year’s reunion was its proximity to Rocky Mountain National Park—a mere 1.5-hour drive away. Our plan for Saturday, July 26, was to undertake a trimmed version of my visit to Rocky Mountain National Park three years ago, exploring the Bear Lake area in the morning before venturing along Trail Ridge Road in the afternoon.

Bear Lake Area

Given that several members of our party would arrive quite late in Denver the previous evening, we opted for a relatively late timed-entry slot of 10am–12pm to allow for adequate rest. Surprisingly, by the time we reached the Park & Ride along Bear Lake Road at 11:10am, it was completely full. Our three-car caravan then resorted to various parking strategies:

  • aggressively shadowing visitors disembarking from the shuttle bus to claim their parking spots
  • parking on the shoulder of Bear Lake Road and praying (successfully) that it wouldn’t get a citation
  • driving up to Bear Lake, which—rather unexpectedly—had a few available spots as early arrivals (who had entered before the timed-entry system took effect) began departing
Product Catalog at Bear Lake


Product Catalog at Bear Lake
Interestingly, the trail mixes were among the first to sell off.

After reconvining, our plan in the Bear Lake Area was to explore the popular Bear Lake, Dream Lake and Emerald Lake trail. We started out 11 strong, but upon leaving the level path around Bear Lake and commencing the uphill walk toward Nymph Lake, 2 of us turned back. At the picturesque and iconic Dream Lake, 2 more elected to rest, leaving just 7 of us to complete the journey to Emerald Lake. Fortunately, Emerald Lake marked the trail’s terminus, precluding any further attrition.

  • Hallett Peak from Nymph Lake
    Hallett Peak from Nymph Lake
  • Longs Peak
    Longs Peak
  • Hallett Peak from Nymph Lake
  • Longs Peak

Click here to display photos of the slideshow
Hallett Peak from Nymph Lake


Hallett Peak from Nymph Lake

Longs Peak


Longs Peak


Since I previously visited the area three years ago, I didn’t take a lot of photos this time.

Trail Ridge Road

Since we wished to make the most of our day, we chose a quick lunch at a McDonald’s in Estes Park. (Nonetheless, a few communication mishaps delayed us a bit.) After that, we headed back into Rocky Mountain National Park along Trail Ridge Road, stopping at various turnouts along the way.

  • Overlooking Moraine Park and Beaver Meadows
    Overlooking Moraine Park and Beaver Meadows
  • Twin Sisters Peaks
    Twin Sisters Peaks
  • Longs Peak and Pagoda Mountain
    Longs Peak and Pagoda Mountain
  • Deer Mountain
    Deer Mountain
  • Overlooking Moraine Park and Beaver Meadows
  • Twin Sisters Peaks
  • Longs Peak and Pagoda Mountain
  • Deer Mountain

Click here to display photos from Many Parks Overlook
Overlooking Moraine Park and Beaver Meadows


Overlooking Moraine Park and Beaver Meadows

Twin Sisters Peaks


Twin Sisters Peaks

Longs Peak and Pagoda Mountain


Longs Peak and Pagoda Mountain

Deer Mountain


Deer Mountain


Mountains from Many Parks Overlook


Mountains from Many Parks Overlook

Hayden Spire across Forest Canyon


Hayden Spire across Forest Canyon

From “Forst Canyon Overlook”. Compared to my visit three years ago, we arrived much earlier in the day, allowing the mountain profiles to emerge less shaded and with greater clarity.

Despite the clouds growing thicker and more tumultuous as the day progressed, with occasional raindrops spattering our windscreens, we were fortunate never to encounter a shower lasting more than a few fleeting seconds. Even more delightful, the dynamic interplay of sunlight and clouds yielded a spectacular display of god rays at “Rock Cut”.

  • Mountains across Forest Canyon
    Mountains across Forest Canyon
    Lovely God rays.
  • Mountains across Forest Canyon
    Mountains across Forest Canyon
    A patch of land in the center being lit up by the sun.
  • Mountains across Forest Canyon
    Mountains across Forest Canyon
    A patch of land in the center being lit up by the sun.
  • Forest Canyon
    Forest Canyon
  • Longs Peak and Keyboard of the Winds
    Longs Peak and Keyboard of the Winds
  • Mountains across Forest Canyon
    Mountains across Forest Canyon
    Arrowhead Lake visible in front of the mountains.
  • Mountains across Forest Canyon
  • Mountains across Forest Canyon
  • Mountains across Forest Canyon
  • Forest Canyon
  • Longs Peak and Keyboard of the Winds
  • Mountains across Forest Canyon

Click here to display photos of the slideshow
Mountains across Forest Canyon


Mountains across Forest Canyon
Lovely God rays.

Mountains across Forest Canyon


Mountains across Forest Canyon
A patch of land in the center being lit up by the sun.

Mountains across Forest Canyon


Mountains across Forest Canyon
A patch of land in the center being lit up by the sun.

Forest Canyon


Forest Canyon

Longs Peak and Keyboard of the Winds


Longs Peak and Keyboard of the Winds

Mountains across Forest Canyon


Mountains across Forest Canyon
Arrowhead Lake visible in front of the mountains.


Unfortunately, the weather system had nonetheless brewed formidable winds, which, combined with the considerable elevation along Trail Ridge Road, greeted us with a penetrating chill the moment we stepped from our vehicles. While our excitement at spotting several wild deer at Lava Cliff was sufficient to propel us from the cars for a few photographs, we found ourselves rather less inclined to linger at “Gore Range Overlook”. There, confronted by what felt like gale-force winds, we beat a hasty retreat to our cars and pressed onward.

  • Deer
    Deer
  • Lava Cliffs
    Lava Cliffs
  • Ypsilon Mountain across Fall River Valley
    Ypsilon Mountain across Fall River Valley
  • Deer
  • Lava Cliffs
  • Ypsilon Mountain across Fall River Valley

Click here to display photos from “Lava Cliffs”.
Deer


Deer

Lava Cliffs


Lava Cliffs

Ypsilon Mountain across Fall River Valley


Ypsilon Mountain across Fall River Valley


Fortunately, once we descended from the top of Trail Ridge Road, we found welcome respite at Medicine Bow Curve, where the surrounding mountains offered shelter from the relentless wind. Better still, we discovered a small herd of deer grazing just beyond the turnout. We lingered there for a time, observing them with the quiet fascination one might experience at a zoo, though here the animals roamed free.

  • Deer Grazing in Rocky Mountain National Park
    Deer Grazing in Rocky Mountain National Park
  • Deer
    Deer
  • Deer
    Deer
  • Deer
    Deer
  • Deer
    Deer
  • Deer
    Deer
  • Specimen Mountain over Cache la Poudre River
    Specimen Mountain over Cache la Poudre River
  • Mountains from Medicine Bow Curve
    Mountains from Medicine Bow Curve
  • Deer Grazing in Rocky Mountain National Park
  • Deer
  • Deer
  • Deer
  • Deer
  • Deer
  • Specimen Mountain over Cache la Poudre River
  • Mountains from Medicine Bow Curve

Click here to display photos of the slideshow
Deer Grazing in Rocky Mountain National Park


Deer Grazing in Rocky Mountain National Park

Deer


Deer

Deer


Deer

Deer


Deer

Deer


Deer

Deer


Deer

Specimen Mountain over Cache la Poudre River


Specimen Mountain over Cache la Poudre River

Mountains from Medicine Bow Curve


Mountains from Medicine Bow Curve


Further down the road, we came upon another herd of deer grazing. It was then that I noticed something curious: the deer here, like those we’d observed earlier at Lava Cliff, were without antlers, whereas the ones at Medicine Bow Curve had been adorned with them. It appeared that outside of mating season, deer of different sexes tend to keep to their own separate groups.

  • Deer
    Deer
  • Deer
    Deer
  • Deer
    Deer
  • Deer
  • Deer
  • Deer

Click here to display photos of the slideshow
Deer


Deer

Deer


Deer

Deer


Deer


Shortly thereafter, we arrived at Milner Pass / Continental Divide. After a very inbalanced group photo with people from both coasts positioned on their respective watersheds—we faced a choice on how to get back to Denver: either following Trail Ridge Road back the way we came from, or heading towards Granby, Berthoud Pass for a giant loop on the map. The decision was nearly unanimous in favor of the latter.

As we descended from Milner Pass, the scenery along Rocky Mountain National Park’s roadway, while still pleasant, proved less dramatic than what we had witnessed earlier. We made just one additional stop in the park at Farview Curve Viewpoint, where the vistas toward the Never Summer Wilderness were somewhat obscured by trees. The pause served primarily as an opportunity to deliberate over our route ahead.

  • Valley
    Valley
    Which Colorado River flows through.
  • Mountains of Never Summer Wilderness
    Mountains of Never Summer Wilderness
  • Mount Cumulus
    Mount Cumulus
  • Hill
    Hill
    An unnamed one to the east of Lead Mountain.
  • Valley
  • Mountains of Never Summer Wilderness
  • Mount Cumulus
  • Hill

Click here to display photos taken at Farview Curve Viewpoint.
Valley


Valley
Which Colorado River flows through.

Mountains of Never Summer Wilderness


Mountains of Never Summer Wilderness

Mount Cumulus


Mount Cumulus

Hill


Hill
An unnamed one to the east of Lead Mountain.


Leaving Rocky Mountain National Park, we made an additional stop at Lake Granby (Rainbow Bay Picnic Area). Much like our previous stop, this was primarily to determine our dinner arrangements, now that we were out of the national park and back in cellular coverage. Nevertheless, the views of soaring mountains bathed in the warm hues of the setting sun provided a most welcomed backdrop against the expansive waters of Lake Granby. The decision proved relatively straightforward, as the two-hour drive back to Denver meant that only a handful of restaurants would still be open by our arrival.

  • Mountains across Lake Granby
    Mountains across Lake Granby
    Mount Ida appeared pretty prominent in the background left.
  • Indian Peaks
    Indian Peaks
  • Mt Adams and Twin peaks
    Mt Adams and Twin peaks
  • Byers Peak
    Byers Peak
  • Mountains across Lake Granby
  • Indian Peaks
  • Mt Adams and Twin peaks
  • Byers Peak

Click here to display photos by Lake Granby.
Mountains across Lake Granby


Mountains across Lake Granby
Mount Ida appeared pretty prominent in the background left.

Indian Peaks


Indian Peaks

Mt Adams and Twin peaks


Mt Adams and Twin peaks

Byers Peak


Byers Peak


Lake Granby


Lake Granby

The following day, Sunday, July 27, was largely devoted to card games at our Airbnb, as many of my friends felt they needed some rest from yesterday’s excursion. One of such games that had become our yearly tradition was Gong Zhu (拱猪, Wikipedia link). With the advent of LLMs, we wondered whether these systems might play the game more skillfully than humans. More intriguingly, we thought it would be rather entertaining to watch them compete against one another. Thus, a few of us crafted a prompt that outlined the game’s rules (along with some common strategies, as we discovered the models weren’t quite adept enough to devise tactics from the rules on their own). We then volunteered to serve as human agents for a few leading models by replaying other players’ actions.
TLDR:

  • Gemini 2.5-pro proved the most capable of all models, performing roughly on par with a seasoned casual human player.
  • GPT o3 was, meh. Okay-ish, but didn’t rack in as many points as Gemini 2.5-pro.
  • Deepseek was, just like GPT o3, mediocre. However, as a “deep”-thinking model—true to its name—it often left all four human agents waiting for its response, which at times was questionable.
  • Claude Sonnet 4.0 was the worst of all models (it could be due to that its human agent, aka, I, forgot to turn on thinking mode). It frequently lost track of which cards it held and made several moves that were ill-advised.

Red Rock Amphitheatre, Dinosaur Ridge and downtown Denver

After checking out of our Airbnb on Monday morning, July 28th, we found ourselves with several hours to spare before our evening flights. We decided to spend the time sightseeing in and around Denver. The most celebrated site in the area is undoubtedly Red Rocks Amphitheatre; however, since I had already visited it three years ago, I won’t elaborate here.

Next to Red Rock Amphitheater was Dinosaur Ridge, featuring several dinosaur fossils displayed throughout the area as its name suggested. It was a hot day and for most of our party, the 200m (600ft) walk from the parking lot to the first exhibit was about all we could manage. A shuttle bus service was available, though we arrived precisely during its lunch break. After capturing a few photographs of the dinosaur bones, we made our way back to the car and headed into town for lunch.

  • Dinosaur Bones
    Dinosaur Bones
  • Dinosaur Bone
    Dinosaur Bone
  • Dinosaur Bone
    Dinosaur Bone
  • Dinosaur Bones
  • Dinosaur Bone
  • Dinosaur Bone

Click here to display photos of the slideshow
Dinosaur Bones


Dinosaur Bones

Dinosaur Bone


Dinosaur Bone

Dinosaur Bone


Dinosaur Bone


After lunch, we checked out another “attraction” of Denver, the big blue bear outside its convention center. As it happened, the comfort of the air-conditioned interior proved far more alluring than the sculpture itself. We lingered inside for quite some time until the security guards, having finally ascertained that we were not convention attendees, politely ushered us out—the building not being open to the general public.

Big Blue Bear outside Denver Convention Center

 Big Blue Bear outside Denver Convention Center
Big Blue Bear outside Denver Convention Center

Having lost our refuge from the heat, we decided to explore the nearby 16th Street, a pedestrian mall that came recommended as another local attraction. However, given the oppressive warmth of the day, we found ourselves rather disinclined to do much walking. Before long, we opted to make our way to the airport and wait there for our flights instead.

Southwest Airlines Flight 3499 from Denver to Boston

Among the handful of carriers serving the Denver-Boston route, Southwest turned out to be the cheapest, offering $102 for this one-way flight on Monday afternoon that aligned perfectly with our schedule. Given Southwest’s recent elimination of free checked bags, which has considerably diminished the airline’s appeal to me, this presented an ideal opportunity to offload some of my accumulated Southwest credits.

The principal disappointment of this flight stemmed from an operational peculiarity: the aircraft assigned to our flight (N8324A) arrived from Cancún and was parked at Concourse A, the only concourse at Denver International Airport equipped with customs and immigration facilities. However, as Southwest operated all departures from Concourse C, the aircraft required towing across the airport. (Given Denver airport’s layout, the tow took quite some time.)
Curiously, once the towing operation commenced, Southwest’s flight information system registered the flight as “departed.” Since the tow began punctually, the flight status displayed as “on time” until the scheduled departure hour (then the flight disappeared off the system completely), despite the aircraft not yet having reached the departure gate. This created an unfortunate information gap that masked what was, in reality, a significant delay.

Under different circumstances, this delay would have been merely a minor inconvenience. I was reasonably prepared for such contingencies: I could have remained comfortably ensconced in the Capital One lounge (in Concourse A), or I might have extended my leisurely conversations with friends departing on other flights that evening—either option would have largely mitigated any frustration. However, because the delay was never formally acknowledged in the flight information system, I was under the assumption that departure remained on schedule. Consequently, I hastened from the lounge to the gate, only to find out the plane was half an airport away and almost put on a scene there.

Ultimately, the flight crew attributed the situation to a last-minute equipment substitution necessitated by maintenance concerns—suggesting more misfortune than incompetence on Southwest’s part. The flight eventually departed approximately one hour behind schedule. Befitting the modest fare, the cabin was only half occupied.

Here’s a video of the takeoff:
PLACEHOLDER (hopefully I will upload that before the end of 2025)

Southwest Airlines 3499
Denver, CO (DEN) – Boston, MA (BOS)
Boeing B737-800 (N8324A)
Seat 9A
Scheduled Departure – 6:40pm
Actual Departure – 7:49pm
Scheduled Arrival – 12:40am + 1
Actual Arrival – 1:09am + 1
3 hours and 20 minutes
Here’s GPS tracking:

The flight itself wasn’t very remarkable. It was very similar to my flight from Denver last year: both departed around dusk and touched down late in the evening, and both traced a similar path over the expansive Midwestern farmlands and the glittering nocturnal lights of Chicago and Detroit below.

  • Southwest Airlines B738 (N8324A)
    Southwest Airlines B738 (N8324A)
    My plane to Boston.
  • Flying over Chicago at Night
    Flying over Chicago at Night
  • Flying over Chicago at Night
    Flying over Chicago at Night
  • Flying over Detroit at Night
    Flying over Detroit at Night
  • Flying over Detroit at Night
    Flying over Detroit at Night
  • Southwest Airlines B738 (N8324A)
  • Flying over Chicago at Night
  • Flying over Chicago at Night
  • Flying over Detroit at Night
  • Flying over Detroit at Night

Click here to display photos of the slideshow
Southwest Airlines B738 (N8324A)


Southwest Airlines B738 (N8324A)
My plane to Boston.

Flying over Chicago at Night


Flying over Chicago at Night
Flying over Chicago at Night

Flying over Detroit at Night


Flying over Detroit at Night
Flying over Detroit at Night


END

CC BY-NC-SA 4.0 Weekend Trip to Denver by Huang's Site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Leave a Reply

Your email address will not be published. Required fields are marked *