• So many trips to document! After a quiet January settling back in Sydney, in February I headed to Singapore to help deliver the opening and closing keynotes for AWS Innovate AIML edition.

    Me in a mask

    I headed into the office to meet with a few colleagues. The view is pretty nice…

    Working from the office

    For the keynotes, we were going to stream them live from a greenscreen studio. I headed over early in the morning for hair and makeup, where I found a special surprise waiting: my colleague Ethan had created a special t-shirt with me wearing my AWS dress!

    Me all made up

    How cute is that?? We spent a very long day of finalising the content, rehearsing, and pre-recording a dress rehearsal. That night, I headed out to Brewerks in Clarke Quay for dinner. Singapore is such a pretty city.

    Singapore

    I had a very early start the next day for the actual live stream. It went really well. Thanks to Ethan and my awesome co-host Dean for making everything so fun!

    Dean, Ethan, and me

    The weather wasn’t great in Singapore that week, but I did manage to work by the pool for a few hours.

    Sitting by the pool

    I also attended the AWS Singapore meetup one night, which we held in our offices. Massive turnout, and a really great evening of talks.

    AWS Meetup Singapore

    The next day, I met up with the two members of my team based in Singapore – Cathy and Donnie!

    Cathy, me, and Donnie

    We also hosted a dinner for some of the AWS Community members in Singapore: AWS Heroes, AWS Community Builders, and user group leaders.

    On my very last night, I went out for dinner with my good buddy Gabe and his wife Alex. They took me to a local place that was super crowded, insanely tasty, and so cheap. Singaporeans are spoiled for food, I tell ya.

    Gabe and Alex

    It was a quick trip – just a week – but it was great getting to catch up with all these folks!

    A couple weeks later, the Snook and I both flew to Melbourne where I’d be delivering the closing talk of ServerlessDays ANZ.

    Me and Rodd on the airplane

    We made it just in time to attend the speakers’ dinner that night, and then had a lovely walk back along the Yarra.

    Me and Rodd in Melbourne

    The next day was the conference. The venue at Federation Square was gorgeous! My buddies Lars Klint and Pete Hanssens were on the organising committee and kicked things off.

    Kicking off ServerlessDays ANZ

    Great crowd!

    Selfie with crowd

    Here are some of the amazing other speakers! The talks are all up on YouTube.

    Speakers

    My session was the last one of the day…

    Mic'ed up and ready to go!

    Thankfully it went realy well and I was happy that it was so well received! Thanks to my colleagues Paul, Stephen, Gregor, and Derek for all their help with the event.

    Me presenting

    Me from the audience

    After the conference, we all headed to a nearby bar for the afterparty…

    The next morning we headed out into the city to be tourists. We mooched around the Queen Victoria Markets and enjoyed the sunshine. The hot weather helped us justify stopping off at Brick Lane Shed for a sneaky beer!

    Me and Rodd

    We also had a late lunch of some very tasty bagels from Bowery to Williamsburg.

    Snooky with a bagel

    We had a plan to meet someone at ACMI but had some time to kill, so we decided to check out the “Story of the Moving Image” exhibition.

    Then we headed up to the lab to meet my friend J Rosenbaum and check out their fascinating new artwork Gender Tapestry. We took selfies that were uploaded and featured in some of the creepy generated faces.

    That night, the Snook – a notorious hater of musicals – gave me a lovely birthday present of attending & Juliet with me. (It helped that I told him all the songs were from the catalogue of Max Martin, Swedish Pop producer extraordinaire!)

    & Juliet

    I LOVED IT. It’s a retelling of Romeo and Juliet with loads of pop song mash-ups, a gay romance, great costumes, fantastic dancing, and Rob “Millsy” Mills as Shakespeare. I mean, WAS THIS WRITTEN FOR ME?!

    & Juliet

    Afterwards, we headed to trendy Bar Ampere for dinner and cocktails.

    Bar Ampere

    On our last day, we headed down to St. Kilda to enjoy the sunshine and check out the markets.

    Luna Park

    We were delighted to discover the nearby St. Kilda Community Gardens. Lovely place!

    We went for a walk along the beach. I always think of the line from the Paul Kelly song – “Where the palm trees have it hard.”

    St. Kilda beach

    We finished our trip with a spot of furniture browsing in Collingwood followed by beers at The Craft & Co.

    Beers

    And that’s where it would have ended, a nice ending to the weekend… except for a little accident on the way back to the hotel. Here’s how I described it to my sister:

    So Rodd and I were briefly walking back to our hotel in Melbourne so we could head to the airport. Down one of the busiest shopping streets, people everywhere.
    I walk over, like, a manhole or something.
    And my left foot lands crookedly
    And I start stumbling forward
    And I can’t get my feet under me
    And it’s like slow motion, and I’m like, yep, I’m going down. πŸ˜‚
    And rather than try to land on my knees or my hands, perhaps sensing that I could risk breaking something that way, instead I face plant.
    Literally belly flop on the pavement, taking the brunt of the fall on my boobs.
    The Asian couple in front of me were like horrified β€œARE YOU OKAY?!?”
    And Rodd helped me up and I’m okay
    Skinned my elbow a tiny bit
    But I suspect my chest is gonna hurt tomorrow.
    So that’s me. Still falling on my face, as a grown-ass adult.

    Over the course of the next week, my chest started to feel increasingly sore. I didn’t have any visible bruising, but sleeping on my left side was impossible and it got harder and harder to breathe. Finally I started to get worried that something was really wrong, so we headed to the hospital.

    In the hospital

    A few hours and a couple X-rays and an EKG later, they confirmed that I wasn’t having a heart attack. The doctor couldn’t rule out a cracked rib, but didn’t see one on the X-ray. The only thing I could do was wait until it stopped hurting, which took a few more weeks. In retrospect, seems likely that it was a case of costochondritis, where the cartilage between the ribs gets inflamed. I’m super grateful to the Australian health care system and the doctors for helping me rule out anything more serious! (Oh, and it didn’t cost me anything. πŸ˜…)


  • Minecraft SocksI think these socks win the prize for the longest time from start to finish, and they probably also set a record for the number of times I frogged and restarted! My initial cast-on was way back in April 2021 – back when I was still livestreaming my knitting – and I finally handed them over to the Snook yesterday.

    The yarn is Drover Self-Striping from Colagirl Collective that I bought from Convent & Chapel many years ago. I can’t find any record of the colorway name or number, but the lime/grey/black reminded me of Minecraft. My original plan was to do the Undulating Rib socks, but I realised after casting on that it was fighting with the self-striping. So eventually I frogged them and started over. I settled on a simple broken-rib pattern, which gave a sort of pixelation effect and kept me from being too bored. :

    Row 1: *K2, P2* repeat to end
    Row 2 & 4: Knit
    Row 3: *P2, K2* repeat to end

    I knitted them toe-up with a circular needle (using the Magic Loop technique). Normally I prefer to knit both at the same time, but the wool was pre-balled and I had no way to access the other end. That meant I had to knit them one-at-a-time, and of course I lost my notes during the long gap after finishing the first one. It was only really an issue on the heel, which I decided to knit using a traditional gusset and heel flap (but in reverse). I suspect that my numbers are slightly different on the two of them, but I was already knitting these as fairly baggy house socks so I figure a few stitches either way doesn’t really matter.

    The Snook was pretty happy to receive these, as the weather has turned decidedly Autumnal and the floors are feeling a bit cool in the mornings!

    Minecraft Socks


  • I spent a good twenty minutes today playing with the browser demo of Jane Austen’s 8-bit Adventure. It’s awesome! Can’t wait for the full version to drop.


  • Over at RoaldDahlFans.com, I finally wrote down my thoughts about the whole rewrite controversy over the past couple weeks. I was quoted in the Telegraph article that broke the story, and it was honestly a little scary to get pulled into a culture war. For the record, I don’t support the changes, but only because they let Dahl off the hook for his indefensible and wrong attitudes. Dude wasn’t a saint, and if society has evolved past his racism and misogyny, let’s leave his books in the past where they belong.


  • The Great Fruit and Veg Experiment – and app!

    Photo by IΓ±igo De la Maza on Unsplash

    A few months back, I read an article about how to be healthier that suggested you should eat 30 different plants (fruits and veg) a week. It’s not just about the vitamins you get from the food itself, but also about encouraging a healthy gut biome. “Holy moly,” I said. “I reckon 30 in a week would be tough.” Rodd was hyperbolic in his skepticism. “I don’t think there are 30 different plants in the world!” he joked.

    I kept seeing this advice over and over though, along with shocking stats like this one from a recent Guardian article:

    Of the 6,000 plant species humans have eaten over time, the world now mostly grows and consumes only nine, of which just three – rice, wheat and maize – provide about 50% of all calories humans consume. Add potato, barley, palm oil, soy and sugar to the mix, and you have 75% of all the calories.

    Well, this simply wouldn’t do. I made a New Year’s Resolution to start tracking the variety of plants I eat each week, and I began jotting them down in a Note on my phone. I set a few rules: the item has to be relatively unprocessed (no counting cocoa beans in a chocolate bar!), and there needs to be a decent mouthful of it (no tiny amounts of spices). To my surprise, getting 30 a week wasn’t as hard as I feared.

    A few things have helped. We’ve begun getting a box delivered from Box Fresh each week, which includes a wide variety of fruit and veg. So far we’ve been happy with the quality, though it does mean you have to plan your meals and eat at home so you get through it all. I’ve also been making a point of going into the office a couple days each week, and there’s always fruit there for a healthy snack. Overall we’ve been a lot more aware about getting variety, and I’ve consciously chosen options (like salad for lunch) that maximise my chance of getting new items for my weekly tally.

    Fruit and Veg appI’ve also moved on from the simple Note for tracking, and I’ve built myself a pretty spiffy app that uses a Google Form to collect data in a spreadsheet. That sheet automatically keeps track of the overall variety and the breakdown per week. It also creates the chart you see above, which should continue to update throughout the year as I add more items.

    So far this year I’ve eaten 79 different plants, and here’s a peek at the ones I’ve eaten most frequently:

    Plants I’ve eaten every week this year: Cabbage, Coffee, Lettuce, Rice, Tomatoes. (I’ve lumped all lettuce into one category, but I’ve actually had several different varieties in there.)

    Plants I’ve had nearly every week this year: Avocado, Capsicum, Carrot, Coriander, Cucumber, Potatoes, Red onion

    Let me know if you’re interested in setting up something similar for yourself! I’d be happy to share my Sheet with you so you can set up your own tracking form.


  • Architectural dreaming

    One of the things we promised ourselves when we left for Germany was that when we got back, we’d finally renovate and redecorate the house. We did up the kitchen in 2012, of course, and then the garden in 2013-2014 and the en suite bathroom in 2016. Before we left in 2020, we replaced the carpeting in our offices and the ceiling lights. But the rest of the interior is basically the same as when we moved in, and all our furniture was mostly cheap IKEA stuff we’d accumulated over the years. We saw the move as the opportunity to get rid of a lot of things, and to start to invest in actual interior design and “grown-up” furniture. We also have a few structural things we want to do, like refresh the main bathroom, redo the closets, pull down the ceiling cornice (if we can), and change the window treatments.

    So of course, I’ve started a Pinterest board. Rodd’s sister also brought us a giant stack of design magazines.

    Design magazines

    Here’s the thing – we both really like mid-century design. We’ve got a couple pieces that we know we want to keep: our bed, our vintage sideboard, Rodd’s Grandma’s cupboards and my rocking chair (both of which can be seen here), and these funky little shelves. We’ve also got some art for the walls. But other than that, everything else can go. We’ve set an arbitrary rule that we’re allowed IKEA things in the bedrooms and offices, but not in the main part of the house.

    I find myself scrolling through endless photos of mid-century shelving systems and conversation pits. (Did you know the conversation pit “is back”?) We spent hours today watching Architectural Digest videos on YouTube. But I don’t want to just create a pastiche of the Miller house, you know? I think it also needs to be more modern and us, and of course we’re limited by the concrete box floorplan that already exists.

    If you know of a good Sydney based interior designer, please let me know. We’ve put out feelers to a few, but always looking for more recommendations!

    PS – We did visit the Miller house back in 2019, and it’s amazing. (Rodd really, really wants that wall of built-in shelves.) If you’re into that type of thing, highly recommend you visit Columbus, IndianaΒ and watch the excellent John Cho film

    Us at the Miller House


  • Rodd and I have both had the same Australian mobile/cell phone numbers for more than twenty years, and we didn’t want to lose them when we moved to Germany. After investigating a few different options, Rodd set us up on a Hosted PBX plan with Aussie company MBit. We both ported our mobile numbers to them, and for $11/month the numbers remained active the entire time we were gone. Any SMSes we received were delivered to email, and they came through quickly enough that we could use them for two-factor authentication. (That was one of our main requirements.) We were also able to receive voicemails, which came through on email as attachments.

    Note: I’m not sure if MBit are still advertising this service, so if you’re looking to do something similar, you might want to talk to them directly.

    When we returned to Australia last month, we both needed to get new mobile plans so we could then port our old numbers to them. I figured this would be simple, but I ended up running into a few issues with mine that I thought I’d document for posterity’s sake.

    My employer covers my mobile cost (up to a cap) so I decided I’d upgrade my phone at the same time I got my plan. I don’t change my phone that often, and I’d had an iPhone 11 for a couple years at this point. After doing some research, I decided on an iPhone 14 Pro 512GB on a plan from Telstra. I went to the Telstra shop at Broadway the first weekend we were back but they were out of the 14 Pros. The guy told me that he thought the Apple Store might have them though, so I headed up there.

    Happily, the Apple Store had some in stock (in purple; I didn’t care) and they started the process of signing me up for my Telstra plan at the same time. We ran into some issues with my Telstra customer ID – I’ve had various Telstra plans over the last twenty years, and I was in their system multiple times. I ended up going back and forth between the Telstra shop and Apple to sort it out, but eventually we got there. The solution involved me reinstalling the My Telstra app on my phone and using my old login for it, and then creating an ID from that.

    Then as the final step of doing the order, the Apple Store guy asked if I wanted to use an existing number. I said yes. He went through the porting steps, and was a bit confused because he didn’t recognise MBit. Then he asked for my account number. We didn’t actually have this, and MBit had closed for the holidays. So here’s what I should have done: walked away and started the purchase again once I had that info. Instead the Apple Store guy told me we could still set it up with a new number, and then I could call Telstra once I had the MBit account number to switch it over. Reader, I believed him. He set up the plan with a brand new number, and I walked out of the Store with my new iPhone.

    Back at home, I transferred everything from my old iPhone to my new one. That process worked really well, and other than logging into some apps again, it was completely seamless. I didn’t bother to tell anybody about the new number, because I’d only have it for a few days, right?

    A few days after Christmas, MBit were able to provide us with our account numbers. Rodd went with a simple pre-paid Boost plan and bought a SIM at the supermarket, and he was able to port his number without issue.

    I called Telstra and explained what I wanted to do, and ran into an immediate roadblock. Telstra’s systems will allow you to port a number ONLY during the initial plan setup. Once you are on a plan, it’s impossible to port a number to it. The customer support person told me that I’d have to pay out the entire contract (LOL NO), so I resigned myself to just having to change to the new number. Then right before we hung up, they said:

    There’s no option for us to port in your number to an existing mobile service however, you can request to change the number to an old one.

    You just need to contact our voice team at 132200 and they will be the one who will process it for you.

    Intriguing. I called them the next day and after fighting through different levels of menus and waiting on hold for a while, I got through to a nice bloke in Brisbane. He confirmed that yes, you can change the number associated with a plan, but only if that number has already been ported to Telstra. He therefore came up with the solution – I’d have to sign up for another plan and port my old number to Telstra as part of that setup. Once it was active, they could do the switch between the two plans. Then we’d cancel the new extraneous plan, and he kindly offered to refund any charges associated with that new plan.

    It was complicated but my only option. So he went through the whole process of setting up my new plan (the cheapest post-paid we could do over the phone) and I gave him the info to port my old number to it. Then a few days later, I got a delivery with the SIM card. I had to put that into the phone to activate it, and within a few minutes of doing that, I got a notification that my old number was active on it. I had Rodd send me an SMS to test that it was working. Success! So now we just needed to swap the numbers.

    I put the SIM for the new number back in and called Telstra again. This time got a nice guy in Perth. It took him a while to understand the whole convoluted plan, but we got there. (If you are in a similar situation, make sure you write down the reference number each time you call.) He explained that to change the number on a Telstra plan, the number you’re swapping in has to be in their archive pool. When you deactivate a number in Telstra, they put it into an archive pool for six months in case you want to claim it back. So the next step was to deactivate the new plan with my old number, which he did. He then went to do the change, but the system wouldn’t let him immediately apply my old number. He tried a few different things, but ultimately we decided that we needed to wait while systems updated to show that my old number was available to be applied.

    That meant I had to call back again the next day. This time I got a nice lady in Brisbane. I again walked her through the whole saga. She then went to do the changeover, and to both of our surprise, it worked pretty much instantly. I didn’t have to change SIMs; my phone just automatically changed it to show the old desired mobile number. Success! She then applied the refund for the extraneous plan.

    Sidenote: I really can’t fault Telstra at all through this process. The guy in the shop was a bit clueless, but the folks on phone support were knowledgeable and helpful. I did have to wait probably 20+ minutes each time I called, but it was worth it. They do try to punt you out to using the support chat in the mobile app, and I tried that the first time. However, the support agent I got did not understand my issue at all and I gave up quickly. It was definitely worth the time to get an actual human being on the line.

    Right, so everything should be hunky-dory, right? Not so fast, friend. Even though my SIM had updated and I could receive calls and SMSes on my old number, I noticed that iMessage and FaceTime were still picking up the (now deactivated) new Aussie number. It took me several days to figure out how to solve this problem. I went through all the usual voodoo you find by googling: I turned the phone on and off; I took the SIM out and put it back in; I turned iMessage and FaceTime on and off multiple times too. I went into my iCloud settings and made sure the old number was showing there. Nothing worked. No matter what I did, I could not get my old number to appear as an option in Send & Receive. It would show my German number (which presumably had synced from my old phone) and the new Aussie number, but never my old Aussie number.

    iMessage settings

    Today in desperation I asked on Mastodon…

    Mastodon screenshot

    And @randolph@app.net came through! It turns out there are two places in System Preferences where you need to update your number – “Name, Phone Numbers, and Email” AND “My Number.” I had only done the first, mostly because it’s the first option you get when you search for “Num” in the System Preferences.

    System Preferencees

    Once I updated “My Number,” I turned off iMessage and FaceTime once more. Then I put the phone into Airplane mode and powered it down. I waited a few minutes and turned it on again. I took it out of Airplane mode and turned on iMessage. And it picked up the new number! I was finally able to select it for both services. πŸ˜…

    So thanks to Telstra and thanks to Randolph for solving my dilemma. I’ve got my old number back, and nobody needs to update their Address Book. Woohoooooo! πŸ™Œ


  • Keychron K8 Pro and a physical mute microphone button

    My home office in Sydney is still empty, but I’ve set up a workspace at the dining room table in the meantime. One of the Christmas presents I bought myself is a mechanical-switch keyboard. I’ve been wanting one for ages, and then I read this CNN Underscored rating guide that covered a lot of the best. I decided I didn’t need a full-sized keyboard as I’ve got my duckyPad I can use for a numpad. Based on the guide – and what’s available in Australia, and what I wanted to spend – I ended up getting a Keychron K8 Pro with aluminum frame, RGB backlight, and blue Gateron switches. (MSY has it for $179 AUD and had it ready for pickup in 3 days. The guy there was like, “I didn’t even realise we sold Keychron stuff!”) It’s pretty sweet.

    Keychron K8 Pro keyboard

    The first thing I noticed when I picked up the box was that it was heavy. This thing is seriously sturdy, which is great because I have been known to pound on keyboards. The K8 Pro can be used either wirelessly with Bluetooth or plugged in via USB. (I expect I will mainly use it plugged in, but it’s nice to have the option.) It comes with the Mac keys installed already, but they provide the corresponding Windows keys along with the tools to swap if you need to. I haven’t gone down the custom keycaps route yet, but believe me, I am tempted. (Why are so many of them white though? I remember back when I had a Mac keyboard with white keys it was a constant struggle to keep them from looking grimy.)

    I plugged in and started typing. And friends, the blue Gateron switches in this thing are gloriously clicky. I’m probably giving Rodd a migraine, but I love it. Everything feels very solid, including the space bar. Then I noticed there are a couple special keys in the upper-right corner…

    Keychron K8 Pro special keys

    With the default Mac layout, the little “crop” icon invokes a partial screenshot (i.e. the same thing you get by hitting Shift-Command-4). I’d long since built up the muscle memory for the shortcut, but since I usually move my right hand for it anyway, I reckon I could switch to the button.

    The middle button has a microphone on it, and I got excited thinking it was a physical mute-microphone button. Instead though it invokes Siri or Spotlight search (i.e. Command-Space), which is disappointing. I never really use Siri, and it’s much faster to just use the shortcut for Spotlight. Park that for a second.

    The third button has a lightbulb on it, and it controls the RGB lighting effects on the keyboard. When you click it, it cycles through the different options. If you hold down the Fn key while you click it, it turns them off/on. Okay, useful.

    Back to that microphone button. One of the best things about a keyboard like this is that it’s completely customisable. I decided to remap that key to become a mute microphone toggle. Of course, Apple still doesn’t have an OS-wide shortcut to mute the microphone, which means you have to get creative. Previously I used Mutify to create a shortcut for the duckyPad, but I decided to see if I could do it without installing anything new on my machine. It took me lots of trial and error, but I’ve finally got it working! Here’s how I did it.

    The first thing you need to do is set up a Quick Action using Automator. This extremely thorough article will walk you through every step of the process, including how to test that the integration is working. I decided on Shift-Command-0 for my shortcut, as I don’t use any of the apps that use that one. I tested it out, and I could see that it was working! But there was one problem. There’s no feedback when you invoke it, so it’s hard to remember whether you’ve engaged it or not. (Mutify had a little menubar icon that would turn red.) Then I realised I could use system notifications for that purpose…

    Mute notification

    Here’s the AppleScript I ended up using in Automator:

    on getMicrophoneVolume()
         input volume of (get volume settings)
    end getMicrophoneVolume
    on disableMicrophone()
         set volume input volume 0
         display notification "Microphone has been muted." with title "Mute Hotkey"
    end disableMicrophone
    on enableMicrophone()
         set volume input volume 100
         display notification "Microphone has been unmuted." with title "Mute Hotkey"
    end enableMicrophone
    
    if getMicrophoneVolume() is greater than 0 then
         disableMicrophone()
    else
         enableMicrophone()
    end if

    Then go to your Notifications & Settings pane in System Preferences and check that Script Editor is set to Allow Notifications.

    Notifications & Focus pane

    If you leave the style set to Banners, they will show briefly and then disappear. I decided it was more useful to change them to Alerts, which will remain on the screen until dismissed. That way I can tell at a glance whether my microphone is “hot” or not. The notifications end up stacking up in a little pile, and you can dismiss them all at once when you want to clean them up. (I might play with the wording a little bit to make it even more obvious what the current state is.)

    Stacked notifications

    So now you’ve got a system-wide shortcut that will turn your microphone input off and on. If you’ve got a configurable keyboard, you can then map that shortcut to a single key press. For the Keychron K8 Pro, there are a couple ways to do that but the easiest way is to use VIA, an open source keyboard configurator. I had to go to caniusevia.com in a browser (important note – has to be Chrome due to the extensions required) and click the “Start Now” button. (You need to be plugged in for this, not using Bluetooth.)

    VIA home page

    You’ll then click the Authorize Device button, and an alert will appear asking you to confirm which device you want to connect to.

    Authorise keyboard

    This is where I came unstuck the first few times, because I’d do that and then… nothing would happen. Then I realised I needed to RTFM. Keychron’s key mappings haven’t been approved by VIA yet, so you have to add them manually. This isn’t as scary as it sounds. I went back to the Keychron K8 Pro product page and scrolled down to “Get the keymap working on VIA.” Then I clicked the button to “Download K8 Pro ANSI RGB keymap JSON file” and unzipped the download.

    Keychron’s instructions are written for the desktop version of the VIA app, but as far as I can tell it works exactly the same in the browser. So head back to Chrome, click on Settings, and tick the option to “Show Design tab.”

    Show Design tab

    Then click on the Design tab, and you’ll see a place to upload that JSON you just downloaded. You’ll also want to make sure the “Use V2 definitions (deprecated)” option is ticked.

    Upload your JSON file

    If it worked, the screen will update to show a keyboard.

    Keyboard screen in VIA

    Now switch over to the Configure tab and you should see your actual keyboard layout. The “Layers” refer to different configurations, and the Mac configuration is Layer 0 by default. (You may need to switch to Layer 1 for Windows.) Click on the Macros link in the upper-left.

    Managing Macros

    Macros allow you to type multiple key presses at the same time, so that’s where we’re going to save our shortcut. I put mine in Macro 0, but you may want to use another number if you’ve already got some in there. For each key, you’ll enter the appropriate alias from the documentation. Here’s what mine ended up being for Shift-Command-0.

    {KC_LSFT,KC_LGUI,KC_0}

    Note that the keys are separated with commas, and I’ve wrapped the whole thing in curly braces. Make sure you click the Save button once your shortcut is in there. Now click back on Keymap in the upper left.

    Keymap

    This is where you’ll actually map your new Macro to the appropriate keypress. (Protip: take a screenshot before you do anything else. You’ll see why in a minute.) In the upper part of the screen, click with your mouse on the key that you’d like to remap. It will start blinking slowly. (You can see mine in the upper-right.) Then on the bottom part of the screen, click the Macro option and then select whichever one corresponds to the Macro you created in the previous step. I chose M0, which is why the keymap changed from “Siri” to “M0” on that key.

    And that’s it. It’s active pretty much instantly, so you should be able to try it out right away. You can also use the Key Tester tab; when you click the key on your keyboard, it will light up what you’ve mapped it to. Now here’s the warning: once you click an option on the bottom part of the screen to map a key, the selected blinking key will move to the next one on the upper keyboard. It’s really easy to not notice this, and to click another option on the bottom part (like if you accidentally hit the wrong one). This means you might be merrily going along and remapping heaps of keys without noticing. (I’ve done it a couple times already.) So just be careful! That’s why I suggested a screenshot, so you can repair any damage if you accidentally remap a key and can’t remember what it was before.

    The really awesome thing about keyboards like this is that the configuration is saved on the keyboard. It’s not tied to the particular laptop, like if you configured it with an app. You can plug it into other computers and it will still work. Really cool, huh? There are lots of other configuration options in there, including changing the lighting and invoking specific OS features. I’ve really only scratched the surface.

    So yay! I’ve got a very clicky keyboard and a physical button to mute the microphone across all apps, along with a visual reminder of the current state. If you have any suggestions or want to share how you’ve modded your Keychron, please get in touch.


  • Every New Year’s, there’s a happy moment when I remember that the latest Best of Bootie compilation is out! We’ve been listening to it for the last hour, and my favourites are definitely “We don’t talk about Backstreet” and “Take it as it was.”

    And OMG we just got to the last track and I did not expect that. πŸ˜‚


  • Huh. I just learned a new knitting technique from Reddit, of all places! Rather than weaving in all the ends from your fairisle colour changes, you leave them long and then you essentially French braid them down the seam on the inside.

    What the video doesn’t show is what happens at the end. Presumably you have some length of braid from your last few changes, and you… what? Put a rubber band on the end and have it hanging outside your sleeve? πŸ˜‚ I’m guessing it’s something like: “fold it back on itself and weave the last few bits back into the braid,” but it’s annoying that they didn’t cover that bit.