Doing some changes for a hobby software project I’ve made for a few friends. The whole “software is never finished” can be a drag sometimes: you’re forever on the hook to make changes. But I guess the flip side of that is that your friends find value in what you built. Otherwise, they wouldn’t ask.

Doing some web UI development at work. It’s actually kind of nice doing complex UI work again: fussing about colour and layout, playing with apps like Sip and xScope. You don’t get to do that when you’re working with servers and AWS.

Of course, it’s only nice because someone took the time to setup a working React development environment. I probably would be enjoying it half as much as I am if I had to do all that as well.

For anyone else that needs to know, if you need to look at the API docs for Deno, you’d want to go to Docs → API. Don’t go to Modules → Standard Library. That has the docs as well but arranged by the source file they appear in, which is useless to you unless you need the import statement.

Now that in-person events are happening again, tech meetups are beginning to cross my radar once more; and so too is the tension between feeling I should go to them to, you know, “make connections” vs. being a shy introvert that rather stays away from others. Fun.

🔗 The Command Line Is the GUI’s Future

It has always been a truism that what we have gained in ease of use by switching from the command line to the graphical user interface, we have lost in efficiency.


What Microsoft just showed completely changes this calculation. Their LLM-based user interface is both incredibly powerful and incredibly easy to use. In fact, it’s so easy to use that there almost seems no point in even having a traditional GUI.

Swings and roundabouts. 😏

Honestly, it’s kind of exciting to see the two UI styles married this way. Point and click is fine, but sometimes, when I know what I want, I just want a way to “tell” the computer what to do, rather than go through the motions “guiding” it to my desired state. This is why I prefer the command line over a GUI for certain tasks. And yeah, Office has scripting but unless you’re in there constantly, you find yourself relearning it every time. Having a prompt like this might be where the sweet-spot lies.

Having an AI write code for you is less interesting than having an AI that ingests all the code across an entire organisation, then allows you to describe a problem you’re experiencing (this service times out when taking to that service) and it suggests a fix. Really could’ve used that this morning.

In today’s look at the Spam folder: some emails from Amazon’s Alexa Dev. Rel. team. Given all the recent layoffs in that division, I’m surprised I’m still getting these. They can’t completely shut it down, true, but are they still serious about keeping it alive that they’ll try get new developers? 🤷

Reheating Chicken Schnitzel in a Microwave

Some tips for heating up chicken schnitzel that you had for dinner in a 1.1 kW microwave for lunch the next day. This is something I occasionally do, and today I found a process that works that I’d like to document for the future.

First, don’t use the high setting on the microwave. A minute at high will heat the schnitzel up, but would also harden the crumbling, making it rubbery and unpleasent to eat. Even worst is using a plate instead of a container. That would ruin the meat even more and make a mess of your microwave.

Instead, put the schnitzel in a microwave-safe container and heat it up twice, one minute each time, at medium. This will heat it up without making it rubbery. If still not warm enough, do it a third time for about 30 seconds (this I haven’t tried, but it seems like a good approach to getting the meat slightly warm while giving you time to make sure it’s still nice to eat).

Doing something different1 at work this morning. I’d figured that instead of working on tickets or doing team-lead stuff, I’ll hit my head against a brick wall trying to get user authorisation working in a test. Feeling super productive at the moment. 😭

  1. It’s actually not that different. [return]

Getting some pretty strange spam emails sent to my Gmail address (which I still use). It’s the same badly formatted multi-MIME message body with different From and Subject lines. They’re trying to get… something from me? Logins, maybe? Worst phishing attempt ever!

Screenshot of a spam email with a bad multi-MIME message body asking for login details (I think)

A better peacock photo (well, just).

Peacock walking across a decked area towards the right side of the frame.

One of the photos I was going to use in my last post was this photo, which was modified using Google’s Magic Eraser. You can compare this with the original photo in that post (it had two people in it). It’s far from perfect, but it’s still quite impressive.

A photo of a tree, modified using Google’s Magic Eraser

Photos Of Churchill Island

Yesterday, my parents and I went to Churchill Island for afternoon tea and a walk around the homestead. Here are a few photos of that outing. Apologies that some of them are not great — they were taken in a bit of a hurry.

Rode an eBike for the first time today. Can definitely recommend. Even with the assist engaged at the lowest level, it made a huge difference going up hills. Great fun.

Greetings from Cowes, Phillip Island.

Roundabout at Cowes, Phillip Island.

The amusing thing about the Go gopher mascot is that you’ll find it in various projects that are implemented in Go but have nothing to do with developing in Go. I’m not aware of any other language mascot that has this property (hmm, maybe Python?).

My first experience with a distributed SCM systems was Mercurial. Running hg branch created a new branch and automatically switched you over to it.

When I moved to Git, I occasionally fell into the trap of typing git branch and expecting to change over to the new branch. I fell for this quite often for a long time, for several years at least. It was happening frequently enough that I actually hacked Git to tell me that I haven’t actually changed branches yet:

$ git branch xyz-123
Branch 'xyz-123' created, but you're still on 'develop'

I’m using OhMyZSH now, which shows the current branch in the prompt. This has helped a great deal, and I fall for this much less often than I used to.

And yes, I know about git checkout -b, but typing checkout to create branches was a bigger change to me than simply learning that git branch doesn’t change branches.

Using tools I’ve built to help me at work and all I see are features not implemented. Never-mind that the tool didn’t even exist a year ago. It exists now, so why doesn’t it do the thing I need it to do at this exact time? A person’s expectation is just insatiable, I guess. 😏

It’s amazing what a difference going to the gym can make. This afternoon I was feeling so lethargic, like all I wanted to do was crawl into bed. But I decided to crawl to the gym instead. I really didn’t want to, and I usually don’t go Mondays so I had an excuse not to. But I’m so glad I did because afterwards I got my energy back and I was eager to just do stuff.

Partial credit goes to coffee. It also helped with getting over the slump.

Photos of Fitzroy Gardens, while we play our bocce comp. grand final. Perfect weather for it. Also lots of weddings going on.

Fitzroy Gardens

Fitzroy Gardens

Fitzroy Gardens

It took me a while to get use to it but I’ve grown to like The Verge homepage redesign. Having the micro-posts there seems to work well, especially considering that certain microblogging services have effectively cut off API access.

I know UI designers like using either Sketch or Figma — and after signing up to Figma this week, I can see why. But I’m going to give a shout-out to Balsamiq Wireframes (nee Balsamiq Mockups). I’ve found it to be a great tool for demonstrating a proposed layout for a UI without worrying too much about the details. It’s so quick to put together and the hand-drawn motif makes it clear that the drawn UI is just a concept.

I also love how they use text to represent visual content. An example is items in a table-view: instead of using the mouse to draw each row by hand, you configured it by effectively typing out a CSV with some Markdown. Use commas to separate the columns, use [ ] to indicate a column should have checkboxes. Such a great idea.

Do sites that just load their articles with (video) ads, pop-overs, requests for emails, etc. see any improvements in their metrics after doing this (more clicks, longer visit times, more ad revenue)? Or are the just in a cycle of diminishing returns and think that adding more crap will help?

🔗 After 6 long months, an Android phone finally cloned the iPhone 14

The screen-shots of this “mini capsule” are hillarous. The animated waves that appear when the capsule is expanded; the fact that the only thing it can display is the battery level since there’s nothing like Live Actions. The capper is the “90%” on the right side of the capsule, right next to the 90 in the battery indicator. You know, just in case you need reminding that the battery is at 90%. Champions indeed!

Hilarity aside, it’s a little sad seeing these Android OEMs doing everything they can to rip off Apple’s design. And it’s not just those in the long tail of OEMs either. Seeing Samsung half-arse features months after they debut on the iPhone, just to abandon them months later is really cringeworthy (anyone remember “AR Emoji”, their rip-off of Animoji). It’s past time they developed some taste on their own.

Hiding Your Attachment Folder In Obsidian's Outline

A useful little CSS snippet for anyone using Obsidian that wants to hide their attachment folder from their outline.

.nav-folder.mod-root>.nav-folder-children .nav-folder>.nav-folder-title[data-path^="Attachments"],
.nav-folder.mod-root>.nav-folder-children .nav-folder>.nav-folder-title[data-path^="Attachments"] + .nav-folder-children {
        display: none;

To use:

  • Go to the directory $VAULT/.obsidian/snippets where $VAULT is the directory of you vault. If the snippets directory doesn’t exist, create it.
  • Copy the CSS snippet into a new CSS file.
  • Open you vault settings and go to Appearance.
  • Scroll to the bottom to where you see CSS snippets.
  • Click the reload button. You should see the CSS file you’ve just created appear in the list. Turn it on to apply it.

This’ll work if you’ve configured Obsidian to store attachments in a folder called “Attachments” located at the root of your vault, like I do. But I suspect the data-path attribute holds the folder’s path so you could use whatever CSS attribute selector you need based on how you’ve configured attachments. For example, [data-path*="/Files"] selector will probably work if you’ve configured attachments to be in folders called “Files” that sits alongside your notes (I haven’t tested this so YMMV).

Source: Scribbles_some_words on this Reddit response