The view from the top of Mount Rogers Reserve.

Auto generated description: A scenic landscape showcases grassy fields and shrubs in the foreground, with a backdrop of rolling hills, distant mountains, and a clear blue sky.

To get to Bundanoon from Canberra you have to drive past Lake George. I’ve always seen it empty but yesterday I saw it with water, so I had to stop and take a photo.

A calm, expansive body of water stretches towards a distant shoreline with rolling hills under a clear blue sky, with a rocky shoreline and some vegetation in the foreground.

Day Trip to Bundanoon

Decided to go on a day trip to Bundanoon today. It’s been five years since I last visited and I remember liking the town enough that I thought it’d be worth visiting again. It’s not close, around 1 hour and 40 minutes from Canberra, but it not far either and I thought it would be a nice way to spend the day. Naturally, others agreed, which I guess explains why it was busier than I expected, what with the long weekend and all. Fortunately, it wasn’t too crowded, and I still had a wonderful time.

The goal was to go on a bush-walk first. I chose to do the Erith Coal Mine track, for no particular reason other than it sounded interesting. This circuit track was meant to take you to a waterfall by an old coal mine. However, the track leading to the actual mine was closed, thanks to the recent rain. In fact, if I could describe the bush-walks in one word, it would be “wet”. The ground was soaked, as were the paths, and although conditions were lovely, the paths were still very slippery.

I assume the mine was across these rocks, but there was no way I was going to cross it.

After completing that circuit in probably 45 minutes, my appetite for bush-walking was still unsatisfied, so I tried the Fairy Bower Falls walk next. This was not as steep as the first one, but it turned to be a much harder track due to how wet and slippery everything was.

I stopped short of the end of this one too, as it seems the path was washed away. But I did manage to get a glimpse of the waterfall, so I’m considering that a win.

After that, I returned to the town for lunch and some train spotting. The train line to Goulburn runs through Bundanoon, and the last time I was there, there was probably a freight train every hour or so. So I was hoping to get a good view of a lot of freight traffic. Maybe shoot a video of a train passing through the station I could share here.

Auto-generated description: A quaint train station platform with a sign that reads Bundanoon is shown, surrounded by trees and blue skies.
Bundanoon train station.

I had lunch outside and walked around the town a little, always within sight of the railway line, hoping for at least one train to pass through. But luck wasn’t on my side, and it wasn’t until I was on my way home that I saw what I think was a grain train passing through Wingello. I pulled over to take a video, and while I miss the locomotive, I got a reasonable enough recording of the wagons.

Stopping by the side of the road to film these grain wagons passing by.

Being a little more hopeful, I stopped at Tallong, the next town along the road. I bought a coffee and went to the station to drink it and hopefully see a train pass through. Sadly, it was not to be. So I decided to head back home.

Auto-generated description: A quiet train station platform is shown with tracks stretching into the distance and surrounded by trees.
Tallong train station.

So the train spotting was a bust, and the bush-walks were difficult, but all in all it was quite a nice day. I look forward to my next visit to Bundanoon. Lets hope the trains are running a little more frequently then.

I enabled notifications on Vintage Logo as I wanted to be notified when new logo designs were release. Today I got two nusience notifications prompting me to open the app, the last one raise mere hours after I last launched it. So now I’ve turned off notifications. Why do apps do this to themselves?

Photos of the poor patient, sitting next to the clumsy human. Rest assured, she’s getting a course of pain killers, plus a lot of apology head scratches.

Auto-generated description: A small white and gray bird is nestled between the cushions of a dark leather seat next to one leg of a pair of tanned trousers. Auto-generated description: A small white and gray cockatiel with a prominent crest is perched on a dark leather couch between two cushions next to one leg of a pair of tanned trousers.

Bit of a stressful morning, involving injuries and unplanned visits to the vet. Things are well now, and the tension is starting to dissipate. But what a way to spend the morning. 😮‍💨

Yellow tea-towel on a display with the phrase 'I need a hug' in large letters, followed by 'huge margarita' in small letters. The first three letters of 'huge' were borrowed from the word 'hug'.

Working with PostgreSQL is an absolute joy. Such an amazing database. Just goes to show that the fun tech out there is not always the new and shiny. The battled hardened, featureful, bread-and-butter tools that tends to get overlooked can be just as good (Linux falls into that category as well).

Created using Vintage Logo: a poster with a vintage car and the headline ‘PostgreSQL’ and sub-headline ‘Still Effin’ Amazing’.

👨‍💻 New post on AWS over at Coding Bits: AWS Secrets Manager Cached Credentials Error

Attempting to give head scratches while recording video is more difficult than it looks. 🦜

Speaking of bad UIs, volià: my first attempt at building something with Gio:

A screenshot of a window with the title Gio, a connection header, a left pane showing a NATS message to send, and a right pane showing messages that can be received

It doesn’t do anything now, but I’m hoping this will be something I can use to test NATS. I will say Gio shows promise. Not a huge range of controls to use, but having everything run in a single memory address is nice.

An Unfair Critique Of OS/2 UI Design From 30 Years Ago

A favourite YouTube channel of mine is Michael MJD, who likes to explore retro PC products and software from the 90s and early 2000s. Examples of these include videos on Windows 95, Windows 98, and the various consumer tech products designed to get people online. Can I just say how interesting those times were, where phrases such as “surfing the net” were thrown about, and where shopping centres were always used to explain visiting websites. I guess it was the best analogy one could use at the time.

A staple of Michael MJD’s channel is when he installs an old operating systems onto old hardware1. Yesterday, I watched the one where he installed OS/2 Warp 4 onto a 98 PC. We were an OS/2 household back when I was growing up, thanks to my dad using it for work, and I can remember using OS/2 2.1 and thinking it was actually pretty good. Better than Windows 95, in fact. I can’t remember if I ever used Warp 4, though.

Anyway, while watching this video, and I was taken aback on how bad the UI design of OS/2 Warp 4 was. And really, I probably shouldn’t be throwing stones here: I’m not a great UI designer myself. But I guess my exposure to later versions of Windows and macOS matured my tastes somewhat; where I got exposed to the idea of interaction systems and user experience design (and generally just growing up). Obviously given how new the GUI was back then, many of these concepts were still in their infancy, although if you were to compare these UIs to the classic Mac or even Windows 3.1, I do think there was something missing in IBM’s design acumen. Was it ability? Interest? Care? Not sure. But given that it’s been 30 years, I’m not expecting the OS/2 devs to be able to defend themselves now. That’s what makes this critique wholly unfair.

Anyway, I’d thought I share some of the stills from this video that I thought contained some of the more cringeworthy UI designs2, along with my remarks. Enjoy.

I found this video on the failure of the Star Wars Hotel by Jenny Nicholson to be absolutely fascinating. A great example of Disney enshittification and promising more then they can deliver. Many of her other videos are great as well (I actually went on a binge session over the weekend). 📺

👨‍💻 New post on Go over at Coding Bits: Disabling Parallel Test Runs In Go

My Pile-Up Poker result for today = $840.00. Decent result for a first game.

Pile-up poker result screen

Also, I’m not sure if sharing my actual “solution” is consider a spoiler, so click through to see that.

Some More Thoughts On Unit Testing

Kinda want to avoid this blog descending into a series of “this is wrong with unit testing” posts, but something did occur to me this morning. We’ve kicked off a new service at work recently. It’s just me and this other developer working on it at the moment, and it’s given us the opportunity to try out this “mockless” approach to testing, of which I ranted about a couple of weeks ago (in fact, the other developer is the person I had that discussion with). And it’s probably no surprise, but I’m finding writing tests this way to be a much nicer experience already.

And I think I’ve come to the realisation that the issue is not so much with mocking itself. Rather, it’s the style of testing that it encourages. When you’re testing against “real” services, you’ll left with treating them as a black box. There’s no real way to verify your code is working correctly other than letting it interact with these services as it would, and then “probing” them in some way — running queries, waiting for messages to arrive at topics, etc. — to know whether the interaction worked. You can’t just verify this by intercepting the various calls made by the service (well you can, but it would be difficult to do).

There’s nothing about mocking that inhibits this style of testing. You can use mocks to simulate a message broker by storing the messages in an in-memory list, for example. What it does do, however, is make it easier to write tests that simply intercept the calls of the service and verify that they were made. It’s less upfront work than setting up a real client, or simulating a message broker, but now you’ve tied your tests to your implementation. You may feel like you’ve saved time and effort now, but really you’ve just deferred it for later, when you need to fix your tests when you’ve change your implementation.

I know this is stuff I said before, so I’ll just stop here, and end by saying that I’m excited to seriously try out this approach to writing unit tests. Is it a better approach than using mocks? I guess time will tell. It’s been my experience that it’s when you need to refactor things in your service when you find out how good your tests are. So I guess we’ll check back in about six months or so.

I’m not on Threads but I do click through sometimes to post shared on Mastodon, and I’m a little confused by the web-based video player. It auto-plays, which is annoying enough, but it does so with the sound off and there’s no way to pause or scrub back to the beginning. Is that by design? Do I just have to always refresh the page whenever I want to watch something just so I don’t miss the beginning? Very strange.

Must say I’m really enjoying M. G. Siegler’s new blog Spyglass. I’ve liked pretty much every post I’ve read so far. Definitely worth subscribing to.

“What about your Savoys, Mrs. D?”

Auto generated description: A supermarket shelf displays various brands of crackers, including Arnott's Jatz, Ritz, and Clix, with a price tag indicating $5.50 for one of the products.

A black swan event.

(And yes, I took this photo just so I can use this caption).

Auto generated description: A black swan with a red beak is swimming in a body of water near a concrete step.

Returned to Tuggeranong this morning for breakfast and a walk around the lake. Really enjoy going to “Tuggers” when I’m in ACT. I can’t quite explain it, but I always get New Zealand vibes whenever I visit.

Auto generated description: A tranquil lakeside scene features autumnal trees, still waters reflecting the landscape, and a backdrop of rolling hills under a cloudy sky.