-
📺 The Computer Programme (1982)
Discovered from reading this Ars Technica article about the history of ARM. Was commissioned by the BBC in the early 1980’s to teach the British public about home computers. Found it to be quite charming.
-
Back home from Canberra. But only for a few days and then I’m off to the US. Should be good but I’m not looking forward to that 14 hour flight across the Pacific.
-
I hate days that involve airports or air travel in any capacity. Not so much the actual flying part; that’s all fine. It’s just all the things around timing or rendezvous that give me such anxiety. Very tricky thinking about anything else.
Actually, you’re right about that. Once you’ve checked in and passed security, it can be kind of nice to hang around the airport. I’m actually at the gate now and I’m feeling quite relaxed (although it could be the IPA I had at dinner 😀).
-
Typing in “graze” into Google Photos returned this photo. Conveniently, this was taken six months ago to the day. #mbnov
-
Nee Audax Toolset
I’ve decided to retire the Audax Toolset name, at least for the moment. It was too confusing to explain what it actually was, and with only a single tool implemented, this complexity was unnecessary.
The project is now named after the sole tool that is available: Dynamo-Browse. The site is now at dynamobrowse.app, although the old domain will still work. I haven’t renamed the repository just yet so there will still be references to “audax”, particularly the downloads section. I’m hoping to do this soon.
Continue reading → -
Oof, scrum ceremonies really take it out of me. 3.5 to 4 hours of meetings, usually hosted by me and with me doing all the talking. Really kills my voice.
-
Rocking my super cool hat and jacket ensemble this morning. We’re a couple of weeks from the high UVs of summer so I wear the hat whenever I’m outside. But it’s really cold this morning and the wind feels like ice so the jacket had to come out as well. Trendy. 🤓 #mbnov
-
GitHub Actions and the macOS Release
I’m using Goreleaser to build releases of Audax tools, since it works quite well in cross-compiling a Go program to various OS targets in a single run. I use this in a GitHub actions. Whenever I create a tag, the release pipeline will kick-off a run of Goreleaser, which will cross-compile Dynamo-Browse, package it, and publishing it to GitHub itself.
Recently, I found a bug in the MacOS Brew release of Dynamo-Browse. When the user tries to press c to copy the current item, the entire program will crash with a panic. I tracked the cause to the clipboard package that I’m using. Apparently, it requires Cgo to be usable on Darwin, and it will panic if CGO is not enabled1. But the GitHub action I was using was an Ubuntu runner. And since the package required some symbols from Foundation, which was only available on Darwin, I couldn’t just enable CGO.
Continue reading → -
Enjoyed another trip to Tuggeranong this morning. Went to the same cafe, ordered the same breakfast. I think I even sat in the same seat. It’s almost like a repeat of last time. #mbnov
-
🎙 The Talk Show: Grand Scale Foot-Shooting
A fascinating episode of the Talk Show. Couldn’t put it down, metaphorically speaking.
-
The view from Mt. Ainslie.
-
I got nosteligic for O’Reilly Books Online a few minutes ago. No novels there, just tech books. But wow, was it a great service. Large range of titles, decent prices, usually a sale going on, and no DRM. Shame that they shut it down. #mbnov
-
Free idea for anyone interested in building an Obsidian plugin: a calendar picker which will open up an arbitrary daily note, either in the past or future. Would be useful for making notes on upcoming events.(There may already be a plugin for this, I haven’t actually looked).
EDIT: Thanks to @jayeless for sharing this Calendar plugin which does exactly what I was hoping for.
-
What the fridge happened to Tumblr?! It took me 15 minutes to find the RSS feed of a blog there.
To save everyone the pain from trying to find the answer by browsing crappy websites full of ads, the RSS feed of a Tumblr blog is:
https://<user>.tumblr.com/rssThis also works with profiles in the form
tumblr.com/<user>. -
Nearing the end of the week and I’m starting to tire. Can’t retire just yet though: got to look at a clean-up task caused by a release I was part of. 🤦 #mbnov
-
Half Measures
I’m coming to realise that one of my shortcomings is not completely following through on a task. I’ve got a habit of only doing enough to get it done quickly, knowing that the work has cracks in it and just hoping that things won’t fall through them. There are a few reasons for this and there the one’s that you expect: laziness, boredom, pressure to get something finished, wanting to move onto something else, etc.
Continue reading → -
You know, the whole point of having standup-free Thursdays is that we would have the morning to get work done. It wasn’t intended to have a blank calendar for others to start filling in with meetings. 😫
-
A couple of hours away from where I am right now is a town called Bowral, with a pronunciation reasonably close to barrel. We stayed there one easter a few years ago. The house we stayed in was shocking, but the town itself was absolutely lovely. #mbnov
-
A defining feature of the cafe culture in Melbourne that I absolutely love is that most cafes are independently owned and I think preferred. Well known coffee franchises have not taken a large enough hold to push them out of the market. #mbnov
-
Now, I know what you’re thinking: watching cab-rides on YouTube is great, but there aren’t any of the Melbourne and Victorian rail network. Well friends, if you’re tired of the Shinkansen and TGV, this is for you. 😀
-
It’s interesting to think how many products made of aluminium are actually referred to as tin. Alfoil, sometimes called “tin foil”, is one such example. #mbnov
-
Oof, what a day. It was not my intention to leave this Microblogvember post to the last minute, but it’s been really hectic at work. Things are coming due and nothing is working. Seems like it’s just before the release of something when the bugs show up. 😮💨 #mbnov
-
I’m starting to suspect that Slack might not be the productivity magic-bullet it’s touted to be. That is, unless your job is getting distracted every 30 minutes. In that case, Slack works great!
-
Ivy and Archie show their affection by preening elements of my face; usually the eyelashes, ears, and nose. And while I appreciate the sentiment, their beaks act like a pair of tweezers and it’s a little painful.
-
Most of what’s going on with Audax and Dynamo-Browse is “closing the gap” between the possible queries and scans that can be performed over a DynamoDB table, and how they’re represented in Dynamo-Browse query expression language. Most of the constructs of DynamoDB’s conditions expression language can now be represented. The last thing to add is the
size()function, and that is proving to be a huge pain.The reason is that the IR representation is using the expression builder package to actually put the expression together. These builders uses Go’s type system to enforce which constructs work with each other one. But this clashes with how I built the IR representation types, which are essentially structs implement a common interface. Without having an overarching type to represent an expression builder, I’m left with either using a very broad type like
any, or completely ditching this package and doing something else to build the expression.It feels pretty annoying reaching the brick wall just when I was finishing this off. But I guess them’s the breaks.
One other thing I’m still considering is spinning out Dynamo-Browse into a separate project. It currently sits under the “Audax” umbrella, with the intention of releasing other tools as part of the tool set. These tools actually exist1 but I haven’t been working on them and they’re not in a fit enough state to release them. So the whole Audax concept is confusing and difficult to explain with only one tool available at the moment.
I suppose if I wanted to work on the other tools, this will work out in the end. But I’m not sure that I do, at least not now. And even if I do, I’m now beginning to wonder if building them as TUI tools would be the best way to go.
So maybe the best course of action is to make Dynamo-Browse a project in it’s own right. I think it’s something I can resurrect later should I get to releasing a second tool.
Edit at 9:48: I managed to get support for the size function working. I did it by adding a new interface type with a function that returns a
expression.OperandBuilder. The existing IR types representing names and values were modified to inherit this interface, which gave me a common type I could use for the equality and comparison expression builder functions.This meant that the IR nodes that required a name and literal value operand — which are the only constructs allowed for key expressions — had to be split out into separate types from the “generic” ones that only worked on any
OperandBuildernode. But this was not as large a change as I was expecting, and actually made the code a little neater.
-
Dynamo-Browse was actually the second TUI tool I made as part of what was called “awstools”. The first was actually an SQS browser. ↩︎
-
-
I usually make small adjustments to photos before I post them here, like small crops to emphasise the subject. I’ve tried cropping them as squares, but it feels like one adjustment too far. I may go back to keeping the original aspect ratio. #mbnov
-
I had my suspicions that today’s Microblogvember post would be difficult to write. Well, my suspicions turned out to be correct. #mbnov
-
The National Carillon, on the banks of Lake Burley Griffin. Music was being played on it this morning, although I didn’t recognise the tune. It wasn’t Tubular Bells, though.
-
Ugh, I just completely screwed up the test deployment of something just now. Missed a service that needed to be in place before rolling out a config change. The config change updates a DynamoDB table, and the stream of updates from that would be picked up by this service and pushed onto an SQS queue. Because the service wasn’t there, these events were completely missed.
I don’t think there’s any way to replay the original events from DynamoDB, so I tried cleaning this up by rolling back the config change. I ended up making the whole situation worse, and it was pointless in the end as it would have completely invalidated the test anyway. Now I have to go to the tester and ask him to reset.
Oof, is it clock-off time yet?
-
I prefer to have my phone in my pocket with the display facing my leg. But with the Pixel 6 Pro I had to switch it around because the display was always getting phantom taps. This would pause music and podcast playback, and it actually called 000 once. Not ideal. 😕 #mbnov
-
It feels a lot like I’m rubbernecking but I just cannot look away from the slow moving trainwreck which is the Twitter takeover. Laying off people who know how things work; all the imposter Twitter Blue accounts with the blue checkmarks. Really something to behold.
-
Google Photos came up with this amusing suggestion today.
Just to be clear: it was the birds that were rotated, not the camera. 😀
-
A few months ago I decided to try a different approach with working on personal projects. Instead of having many projects running in parallel — where I duck in and work on each at a time — I decided to cut back and focus on only one. I thought I’d struggle with this: that I would get bored with it and would want to move to something different. But I think I ended up getting more satisfaction out of seeing something finished and usable, something that I can actually share with others. It’s a little embarrassing sharing something that is half-baked.
So I think I’ll stick to this mode of working. The question now is when to put the current project aside and try something different. I figured I’d work on something new while I was in Canberra, but I found this harder to do than I thought. The current project has just got a lot more inertia at the moment.
Maybe I’ll try again in the summer.
-
State election coming up in a couple of weeks. My parents, who have recently signed up as paid members of the Labor party, has put up a yard sign for the Labor candidate, who is the current minster for their district. Best of luck to her re-election. #mbnov
-
One thing is certain: humans are fallible. They forget, or do not follow through sometimes. So if you find yourself at a crossing with someone else, don’t feel bad about pushing the button yourself. #mbnov
-
Half-implemented micro-services are the worst. It can really slow down your development velocity to the point where you feel like you’re walking through syrup. You’ve got several teams making changes to systems they’re responsible for. In theory these services are independent of each other, and the work is organised in such a way that they do not require any work on behalf of those using them. But unless you go all Amazon, and enforce impenetrable boundaries between the various systems, this never works out in practice.
Eventually you find yourself needing to do some manual thing just to get your development environment stable again so you can get your stuff done. An hour or two goes by and when it comes time to start work on the thing you actually wanted to do, you’ve forgotten what it was or got distracted by Slack or something.
Then you complain about it on your blog. 😛
-
The consensus seems to be that it’s preening time. #mbnov
-
For today’s Microblogvember post, I would like to make a shout-out to the blog of Jodie Cook. I find pretty much every one of her posts’ insightful in some way, even if the subject matter does not directly apply to me. Worth a follow. #mbnov
-
Since finding out that echo was today’s Microblogvember word, Pink Floyd Echoes has been playing in my head all afternoon. It’s one of my favourite tracks from them. #mbnov