• Found a service this morning which was sending HTTP requests with a timeout of 1 second. This was causing problems in the service it was calling, which was unable to satisfy the request in that time. Who sets the HTTP request timeout to 1 second? Seems pretty low to me.

  • You can tell I’m bored at work when I spend time building stupid little utilities for myself instead of actually doing the task I should be doing. Today’s stupid little utility: a TUI tool to list merge requests I’ve posted for review. Saves a trip to the browser.

  • Thinking About Scripting In Dynamo-Browse

    I’ve been using the scripting facilities of dynamo-browse for a little while now. So far they’ve been working reasonably well, but I think there’s room for improvement, especially in how scripts are structured. At the moment, scripts look a bit like this: const db = require("audax:dynamo-browse"); const exec = require("audax:x/exec"); db.session.registerCommand("cust", () => { db.ui.prompt("Enter UserID: ").then((userId) => { return exec.system("/Users/lmika/projects/accounts/lookup-customer-id.sh", userId); }).then((customerId) => { let userId = output.replace(/\s/g, ""); return db. Continue reading โ†’

  • Some Things I Found Out While Browsing a Substack Newsletter in The Wayback Machine

    I did a quick search for that blog post in the the Wayback Machine. I couldn’t find the post but the Substack newsletter was there. I guess Substack does allows archiving of newsletters with the “substack.com” domain after all (if it’s something that they can even control). Anyway, here are a few things I’ve found out while browsing through a Substack newsletter in the Wayback Machine: Clicking “Let me read it first” works: it slides away and the most recent posts show up. Continue reading โ†’

  • Over the weekend, I wanted to revisit a Substack post I read several months ago. Unfortunately, the newsletter was shutdown and the post is no longer available. With a bit of luck it will be available in the Wayback Machine. I’m hoping that works for Substack domain.

  • Can’t believe it took me this long to get a headset. Knowing that a mic is only a couple of centimetres from my lips makes a huge difference in how I speak. Saved me from killing my voice today after 4.5 hours of online meetings.

  • Follow-up on my phone issue. I think the problem relates to 5G connections. The drop-outs seem to have stopped after I’ve switched 5G off. Still not sure if the problem is the phone or the SIM, but I’m not sure if I’ll pursue it further. 4G seems to be fast enough for now.

  • Rebinding Keys For Quickly Resolving Conflicts in GoLand

    I’m dealing with a lot of conflicts today as I try to clear a backlog of Git rebases in my to-do pile. I’ve been using GoLand to do this, as my current Git “mergetool” is configured to Vimdiff for some reason1 and I’m not really bothered to find some other tool, at least not yet. GoLand does a pretty good job. Unfortunately, the default key-bindings for resolving conflicts in GoLand is far from good. Continue reading โ†’

  • Those “Accept Yours” & “Accept Theirs” buttons in GoLand’s conflicts dialog are a bit of a tease. Might be that I’m missing something (which is possible) but I though a file appearing here means that I manually need to review it. Would anyone blindly accept changes like this?

    Accept Yours, Accept Theirs & Merge buttons in Conflict resolution dialog
  • Oof, spent all morning updating and rebasing out-of-date pull requests. Only got through half of them so far. This project is pretty fast pace at the moment, so conflicts are expected. But many of these are PRs I been neglecting until now, so it’s still mostly my own doing. ๐Ÿ˜ฎโ€๐Ÿ’จ

  • Here’s today’s instalment of Why Didn’t I Think of This Soonerโ„ข.

    I’ve got into the habit of squashing commits before I push them as part of a pull request. In order to run the command I use to do this โ€” git rebase -i HEAD~n โ€” I need to know the number of commits I want to squash (this will be the value of n).

    Fortunately, I’ve got into the habit of prefixing each commit message with the Jira task number. For example, I may write a commit message with the first line being ABC-123: fixed a bug in the thing, followed by a more detailed list of changes. I do for every commit, even for those “checkpoint commits” I make before changing branches.

    So all I need to do to get the number of commits I need to squash is to simply count up all the commits that start with the Jira task number. For all this time, the way I do this is to run git log to open up the history in Vim, and manually count the number of commit messages that began with the particular Jira task number.

    Today, I remembered that I could use a shell pipeline to do the same thing:

    git log | grep ABC-123 | wc -l
    

    which would save me stack-loads of time and potential mistakes.

    Wish I thought of this sooner. ๐Ÿคฆ

  • I’m moving the posts I had on my wiki to this blog and I’m shutting the wiki down.

    I never really used the wiki a lot โ€” in fact, the last two posts were the only pages that were on there (the rest were all links). This was partly because I never got around to setting up backups (this was a pretty big reason why I didn’t put anything I wanted to keep there), but also because I found other places to document things. Anything related to software development I found myself just posting it here. Things that related to projects that I wanted to keep private, I wrote in Day One. So nothing really went into the wiki at all.

    I did use the wiki a lot to keep bookmarks to guides and resources I occasionally need to lookup. I think, going forward, I’ll just keep these links as a page on this site. I’m in Micro.blog almost every day so I imagine the amount of extra effort needed to keep this page up-to-date will be low. One less site to visit and maintain. ๐Ÿ™‚

  • ๐Ÿ”— A delightful reference for HTML Symbols, Entities and ASCII Character Codes

    A great reference site I stumbled along when I was trying to find the perfect arrow to include in a webpage. Nice, clean, and quite comprehensive. No awful ads either, which is a breath of fresh air.

  • Dynamo-Browse: Using The Back-Stack To Go Forward

    More work on Audax toolset. Reengineered the entire back-stack in dynamo-browse to support going forward as well as backwards, much like going forward in a web-browser. Previously, when going back, the current “view snapshot” was being popped off the stack and lost forever (a “view snapshot” is information about the currently viewed table, including the current query and filter if any are set). But I’d need to maintain these view snapshot if I wanted to add going forward as well. Continue reading โ†’

  • Second breakfast time.

    Sulphur-crested cockatoos feeding outside a different house.
  • Breakfast time.

    Sulphur-crested cockatoos feeding outside someones house.
  • One thing I miss about working in Java is that the JVM comes out of the box with an interactive debugger. With just a few switches, you can enable a remote debugging session without having to do anything special with your build.

    As far as I can tell, such a thing is not possible in Go, at least by default. This means that if you need to debug something running in something like Kubernetes, you either need to bundle something like delve in your container โ€” which might not be possible if you don’t control the entire build pipeline โ€” or you’re out of luck and need to resort to print-level debugging.

  • I wonder if people who say they hate bagpipes are actually saying they don’t like the music traditionally played with bagpipes. I’m not one that likes that sort of music either. But Mike Oldfield is a favourite artist of mine, and he’s not afraid of using a fair bit of bagpipe.

  • Went to the Union Club Hotel, in Collingwood, with a few friends for dinner tonight. Apparently quite popular with footy fans, which I did not know: there was a group that was quite roudy when I arrived. Fortunately things settled down when we ate dinner, which was pretty good.

  • Off to breakfast this morning.

    Track running through forest

    Met some locals on the way.

    Rainbow lorikeets and a galllah sitting on a fence
  • Day One needs a โ€œthis time one day agoโ€ section, where you look at the entries from yesterday, realised youโ€™ve made all these spelling and grammatical errors, and you go ahead and fix them. I sure know I can make use of such a feature.

  • Adding Copy-To-Clipboard And Layout Changes In Dynamo-Browse

    Spent some more time on dynamo-browse this morning, just a little bit. Got one new feature built and merged to main, which is the ability to copy the displayed item to the pasteboard by pressing c. This is directly inspired by a feature in K9S, which allows you to copy the logs of a running pod to the pasteboard (I use this feature all the time). The package I’m using to access the pasteboard is github. Continue reading โ†’

  • Turning Off Shared Command History in Oh My Zsh

    TL,DR: add “unsetopt share_history” to your .zshrc file I’ve been using Oh My Zsh at work for a few months. As far as terminal config managers go, this one works pretty well. But the default configuration does include something which I found quite annoying. First, a few words on how I use the terminal. I’m in the terminal constantly in my day to day. At the start of the day, I’m creating terminal tabs and running commands to do things like build the project I’m working on, start a testing session, etc. Continue reading โ†’

  • The last hold-out.

    Deciduous tree with yellow leaves
  • Discovered something cool on the ATP website. If you play old shows while logged in as a member, you actually get those from the members feed instead of the public one. Not sure if I’m the last person to find this out, but chalk me up as someone delighted by this little feature.