software engineer desperately trying to help build a way out of our impending climate apocalypse

Arch Journal

Arch Linux Journal

A journal/log for my arch install on the Framework laptop

  • Kernel 5.13.13
  • Gnome 40
  • /boot is 15gb of efi (The framework bootloader is UEFI)
    • It's NOT LUKS encrypted yet
  • / is ~900gb of ext4
  • /swap is 32gb of swap space (frame.work linux has some problems with high battery drain upon hibernation/sleep)
  • Bluetooth is broken for the A210 Wifi 6 Chip on 5.13.13, but it worked in 5.13<13, so I imagine it'll get fixed soon
  • Wifi works great throught NetworkManager
  • Gnome Desktop Manager (gdm) works natively with libfprintd to provide fingerprint support at login
  • I've modified /etc/pam.d/sudo to include fingerprint auth, too


Today I got a bunch of things accomplished. I

  • Switched from iwd to NetworkManager for better integration with the Gnome gui
  • Installed Improved Gestures Gnome Extension to get proper 4-finger macOS style trackpad gestures
  • Installed pop-shell from System76
  • Learned about the Arch Linux Archive, which preserves and makes available older versions of Arch packages for easy downgrade
  • Noticed my personal cloud-hosted instance of $SaaS was down, so hopped into a shell and unstuck it

Mental Models #1 : Guitar

(i'm a right-handed amateur guitarist)

The Left and Right hands are connected in the mental model used to play the guitar.

The right hand slaps strings and passes a vibration down to wherever the left hand rests.

When first starting out, the two hands operate from independent silos, but every practice session thickens the neural pathway between them.

Developing proper coordination between the two hands to create rhythm relies on the instantaneous predictive signalling from picking hand to fretting hand, immediately followed by analytical signals from the fretting hand back over to the picking hand.

When I attempt to consciously observe my experience, I visualize the process as a complex game of ping pong; also can think of the left hand shape as preparing to catch the vibration - different shapes produce different tones.

A Fresher Start

I've started building a microblog app again. Trying not to overthink why I should make something and just make something. What is it? I don't know. What does it do? I don't know. The only question I want to answer, which will change slightly each week, is "Can I do X?". I'll collect the little "yes"es each week and use them as fuel.

Thinking of making it space-themed and inspired by google+. Yes, google+. It had some good ideas, despite being late to the party, neglected, and ultimately chucked into the Google woodchipper.

Some goals are:

  • learn and explore managed backends
  • see if React + Typescript is any more intuitive
  • start building momentum developing anything

I have written up a simple app with a unified frontend + backend in nextjs, using supabase as a managed database.

I'll likely deploy to Netlify.


I've had the PineTime open source smartwatch from Pine64 for 2 days and it is already cooler than the expensive android smartwatch I own.

Connecting via GadgetBridge was super easy, upgrading the firmware took ~15s , and it controls media playback as well...pretty great device for $30.

Maybe I can write something to fire Tasker commands.

Blog Roadmap

Hey. You've reached another engineering blog from a budding engineer with more compute power than interesting things to talk about! I don't have a lot to offer in the realm of cutting-edge technical prowess - I likely won't be discussing compiler optimization or distributed system architecture or re-implementing low-level libraries in Rust to shave precious milliseconds off of your application's function calls.

I won't be talking about those things because I don't do those things. I work as one member of a tiny informatics team at an ecological sustainability nonprofit that in recent years has specialized in energy efficiency consultancy. The work done there is ultimately in service of reducing carbon emissions and mitigating the effects of climate change. Typing that sentence feels like a dream - there are few other mission statements I would feel comfortable supporting, given the absolute urgency of the impending climate apocalypse.

But life isn't a dream - and a mission statement isn't the same as de-facto evidence that you are making a tangible difference with your day-to-day accomplishments. You have ego and you want that evidence! Being a part of such a small group means you don't have access to an established community of like-minded builders to learn from. You have the open web at your fingertips! Working at a not-a-tech-company that doesn't sell a software product also means properly architecting a system looks a lot like over-architecting. You LIKE over-architecting.

Since it'd be irresponsible to choose personal growth over business growth on the company's dime, I'd like this blog to be a repository for my explorations in developer self-improvement, a realtime frustration log, and a sketchpad for how individual contributors with engineering experience can learn, adopt, and evangelize sustainable practices.