Updated on December 18, 2025
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.
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
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.
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.
Click here to display photos from Many Parks Overlook
Hayden Spire across Forest Canyon
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”.
Click here to display photos of the slideshow
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.
Click here to display photos from “Lava Cliffs”.
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.
Click here to display photos of the slideshow
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.
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.
Click here to display photos taken at Farview Curve Viewpoint.
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.
Click here to display photos by 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
seasonedcasual 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.
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.
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.
Click here to display photos of the slideshow
END
Weekend Trip to Denver by Huang's Site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.