13 november 2022
My son, Wyatt Anthony, was born on September 8th, 2022 at 9:50AM.
He is now two months old. He's quite a handful. He has grown a lot in the
last two months. He was 6lbs 8oz when he was born and at his two month
checkup he weighed in at 11lbs 10oz. It's crazy to think that in just two
months, sixty days, he has almost doubled his weight. I thought it was wild
when, at his first checkup, he had put on 20% of his total body weight in just
two weeks. But having doubled one's weight is just crazy to think about.
That would be equivalent to my 200lb frame becoming 400lbs by January 2023.
It's no wonder he was able to roll over and now he can't; that's a lot of
extra chunk to move around.
I've enjoyed having time off work. It's, for better or worse, caused me to
re-evaluate what I want to do with my life. I think in an ideal world I'd
quit my job and start building furniture full time. At least, that's what I
say now... Trouble with that is two fold. First off, I prefer working with
hand tools and practicing the craft using the "old" ways. I feel more
connected to my work when I do things this way. Unfortunately, that means I'm
spending more time on every piece that I make and, in a world where time is
money, I'm spending a lot more money making a piece than I could ever hope to
get back from it in dollars. The second problem is that people no longer
value well made, though expensive, pieces of furniture. Fast fashion has
taken over society in more places than just clothing. I hope that one day
we'll see a return to sanity but until then, I think I'm stuck with it as a
04 july 2022
Entry 1 // 2022-07-04T16:58:44,780859151+00:00
Thought I'd document this somewhere. There's a weird issue with rtv and oauth.
You have to manually create an api token and then configure it to use the same
http://127.0.0.1:65000 url. Once you do that, put the secret and token in the
rtv.cfg manually. You can then login.
Entry 0 // 2022-07-04T00:59:06,750059042-04:00
OK, so two things to jot down real quick.
I've set up a gemini server. Check it out:
I had this wild brain dump on Signal earlier with a friend of mine.
I had set up my gemini server and I got thinking "how cool would it be if
there was some service that could host arbitrary markdown, hosted on IPFS,
on gemini, gopher and http all at the same time.
I think this spawns from an itch I've wanted to scratch for a long long
time; how do I make my content as accessible as possible regardless of the
A rough sketch of this would look something like HAProxy, or nginx proxy.
I've seen some projects which can render markdown both in to hugo and
gemini, but these are all pre-render type programs. My idea would render
pages in real time from the source markdown. There would be a caching layer
to improve performance. The part I've yet to figure out is how to stream
page contents directly in to a service that would then service it to the
client. All of the clients I've seen expect the files to be read from disk.
I'm sure that there's a way to stream html to nginx but I think I'll have to
write something for gopher and gemini. Thankfully, it looks like there are
pretty good python and go libraries for each of these protocols so I've got
plenty of support for writing the handlers.
Anyway... that was a longer ramble than I intended for it to be.
TL;DR: I have some crazy ideas on how to provide content across multiple
29 june 2022
Entry 0 // 2022-06-29T10:07:58,048760151-04:00
Been playing around with options to make my old laptop feel more responsive
and came across AntiX. Maybe I've written about it already, I honestly don't
remember... but, in any case, I'm now using it almost exclusively.
As mentioned in an earlier post, my wife and I have decided to disappear in to "the woods"
for a while in our camper. This doesn't mean I've left all technology behind, but it means that
my use is more intentional and I'm not spending all day behind a screen, per usual.
Part of how I do this is I choose to bring older tech with me. No fancy laptops, no fancy phones.
Just something that can access a terminal and, maybe, the web for occasionally looking something up
(this has come in handy, helping us look up new card games to play... Kings Corner has been our new favorite).
In any case, I noticed the install of Ubuntu that I had on this laptop was starting to struggle... I'm guessing
it was some new feature in an update I did that really just tipped it over the edge of usability for me.
Someone over on the sdf.org bboard recommended AntiX, so, seeing that it was "only" about 1GB, I set off to find
a coffee shop and download the ISO.
Upon returning to the camp sight, I set to work figuring it out. It's Debian
based, so, not a huge learning curve. The biggest "hurlde" was "remembering" how to
work in a sysv init world. I've adapted so judiciously to working inside of
systemd because of my day job that sometimes I forget SysV stuff... Or even x11 stuff
for that matter...
So, anyway, I got it set up and boy howdy, this thing screams now. I'm glad to see
that there is still a community focused on keeping these old dinosours kicking.
Now, if only websites would stop getting bigger, maybe I could keep it around even longer.
27 june 2022
Entry 0 // 2022-06-27T15:07:29,082363662-04:00
Writing today from the road. Current near Spartanburg, SC, USA. We've taken
the camper and the dogs and gotten out of the city for a bit. It's times like
these when I'm thankful for services such as tilde.town and sdf.org. Their
dedication to keeping the web simple and useable, even to those who are
connectivity challenged has allowed me to keep up my usual means of
communication despite existing on the fringes of the cellular coverage area.
Going to try to stay mostly disconnected this week. The extent of my digital
presence will, hopefully, remain contained within a few blog entries here as
well as checking my email and messages once or twice a day (or maybe less if
I'm feeling particularly content with offline existence.
25 june 2022
Entry 0 // 2022-06-25T10:04:08,982270545-04:00
I've recently had the itch to explore alternative operating systems again.
It's been a while, but the new employer has much tighter controls over our
work computers than previous. Trying to breath new life in to this old girl.
Ubuntu runs fine but I want options. Personally, I hate dual booting, it just
feels dirty. I've acquired a small USB flash drive which barely extends past
the outside of the USB port. I'm going to try to find a "live" distro with
persistent storage that I like for it. The advantage being that I can choose
to boot straight to the USB stick or provide it as a target disk for a vm and
use it without rebooting.
Entry 1 // 2022-06-25T10:32:59,937515565-04:00
This quote amused me:
The footprint is very big as MX Linux needs 5GB of hard disk space
The idea that an operating system is considered "small" at "only" 5GB is
absurd to me. I remember using DSL (Damn Small Linux) and it only needd a few
MBs of space. I understand that storage is cheap now but I'm looking for
something that can go on a small flash drive, ever byte counts!
Entry 2 // 2022-06-25T12:17:35,644713276-04:00
I've installed Antix on the little 32GB USB drive
and set it up with persistence and told it to load itself to ram. This thing
is really quite slick. Booting it up takes a few seconds longer than Ubuntu
but once the system is up, everything feels so much faster.
26 february 2020
Starting with my new team next week. I'm really looking forward to
the change. My current team focuses on the systems; mainly keeping
them running. The team tried to pivot in the last year in to a
provider of "service APIs" which is an admirable goal but one which
has not really come to fruition, mainly because there's so much
technical debt with the existing systems that we can't get our heads
above water long enough to make any meaningful progress.
The new team focuses mainly on internal tools. I'll be focusing more
of my time on writing code; creating tools to improve productivity
of our internal engineering teams. My hope is to bring my experience
with my current team over with me and provide insights in to how we
can make a meaningful impact on the toil work that these other
frontline teams have to deal with. Until recently, the new team's
focus has mainly been on supporting developers but I'll be working
primarily on supporting our operations teams. Hopefully I'll be able
to make a dent in the main time sinks for these other teams,
allowing them to spend more time with their heads above water.
This whole things started when I introduced Terraform to the company
about 8 months ago. The company started using a cloud provider and
our internal provisioning system, being designed only for deploying
and managing systems in our datacenter, was not up to the task. I
took the opportunity to "ask forgiveness" and make a thing. Well,
they liked the thing and I've been pretty much focused 100% on
writing terraform modules and other sorts of meta automation around
cloud provisioning and infrastruction management.
That's today's update. Thanks for reading
19 february 2020
I really hate Slack. As an accessible chat application, it's fine.
It works 99.9% of the time for 99.9% of the use cases in the world.
The problem is that for those of us in the 0.1%, the power users,
the actual tech people, the people it claims to really market to,
it's terrible, and it's getting worse.
Recent updates to the applicatino have added this notifcation that
pops up every time I declare bankrupcy and mark all messages read
informing me that I've done this and providing a button to undo this
if it was in error. OK, great... for the first time, that's fine.
Provide me with the option to undo the action and inform me of the
appropriate keyboard shortcut to do so again in the future if it
happens again. At least, this is how it should be done. Instead,
this notificatin pops up EVERY DAMN TIME I mark messages as read. As
if to say, "hey, stupid, you probably didn't mean to do the thing
you just did, click here to undo that little oopsie doopsie
mistakie-poo". No, fuck you. I know EXACTLY what I just fucking did.
I'm not a child, get off my lawn. At the very least, they should
provide an option to disable this annoying "reminder".
The worst part of all this is I had a perfectly working solution for
avoiding the Slack desktop application all together. Wee-Slack is a
Python plugin for Weechat, my IRC client of choice, which provided
Weechat access to the Slack messaging API.
It. Works. Perfectly.
Or it did until Slack, in their clear infinite wisdom, deprecated
their V1 API; the API that supported accessing the API with a user
generated token. Now, you have to register any application wishing
to use the API as a Slack integration. To do this, you have to be an
admin of the Slack "server" for your organization... which I am,
thankfully, not. Unfortunately, the administrators of our server are
a bit overbearing and consider this a non-essential application
providing "little to no benefit" to the organization while creating
"unecessary security holes" in our Slack instance. In other words
"We're too lazy to really understand what this plugin does for us
because you're the 0.1% use case and we don't care about you".
So, now, I'm forced to live with this horrid excuse for a "desktop"
(yes, airquotes, I see you Electron... you're just a webpage)
application and be treated like a child.
26 january 2020
I got piCore Linux (the Raspberry Pi fork of TinyCore Linux) running
on my Raspberry pi 3B+ this past week. TinyCore is interesting.
Everything is run from RAM. This makes it boot really fast and also
reduces the writes that are done to the SD card (good because SD
cards don't have as many write cycles as hard drives or SSDs). My
goal in setting this up was to run a gopher hole from my house. I've
succeeded in this goal. It's not accessible from the public net just
yet but it's all working locally.
I'm running gophernicus as the gopher server. This is a very popular
and powerful gopher server software. Turns out it's not available as
a pre-built package for TinyCore Linux yet, though. I had to compile
it from source and figure out all the config options necesary for
TinyCore to start the thing up at boot. Well, I've figured all of
that out and decided it would be really nice of me to provide the
extension to other piCore users. I've packaged up what I've put
together and will be submitting the package upstream. Guess I'm a
piCore extension maintainer now...
This post is a promise to both get the server on the public net soon
and also to actually get the gophernicus extension published. If I
don't have a follow up post sometime in the next few weeks and
you're reading this. You should email me and shame me for not
following through on this promise ;)
10 august 2019
Things in Open Source that piss me off:
The attitude in this thread:
20 july 2019
Mozilla is slowly corrupting Firefox with crap. Recent update broke my
a small change I make to hide my tab bar using a userChrome.css file.
They claimed that they retained support for the file by allowing folks
still using it to enable set a flag in about:config but even after
doing so, it was still busted. Turns out I had to change this line:
to this line
Would have been nice to document that somewhere along with this change, no?
01 july 2019
I finished off my 1000 mile bike challenge yesterday. I rode 1000 miles in 30
days. This started as me just checking my stats for the month and realizing
I'd done almost 800 miles and there was still about a week left in the month.
I decided that the extra 200 miles was something I wanted to push for. Since
Thursday I have ridden those 200 miles. Thursday I rode a little over 60
miles, Friday I rode right around 50, Saturday I took off as I was traveling
and then yesterday (Sunday) I rode 89 miles to finish off the challenge.
Yesterday was the hardest day of riding I've done in a while, and that
includes the 450 mile week I had at the beginning of June. While a lot of the
places I ride have hills, where I am now is completely flat and going South
had a tremedous, nearly steady, headwind. To top that all off, we're currently
experiencing a heat wave that's set to get worse as the week goes on. The
temperature approached 95F and the humidity was over 80%, just terrible.
I'm going to take a day to rest at the beach and do as little as possible. I
also brought my speed skates with me this week. I hope to log some miles there
25 june 2019
Working from home today. Finally had teh motivation to go to the pool this
morning and get an hour of laps in. Been hard doing that recently. I think
it's somewhat burnout but also my lack of discipline. I like to do what I want
to do. One of the things I want to do is race and be competitive at what I do
but what I like doing changes so it's hard to focus and get really good at any
On another note, the lack of swimming has lead to me biking more. I'm nearing
800 miles logged for the month of June. This will be a new record for me. I
want to see if I can squeeze in 1000 before the end of the month. That'll be
tough, though, with work this week. I'd have to have a couple of 50 mile days
which I don't really have time for right now.
I also put my skates back on for the first time in a month last night. That
was fun. It was raining so it wasn't great conditions but it was nice to get
wheels back on my feet again. I miss that sport sometimes but it's very
difficult to train for it where I live as the roads are just not that great
and the drivers, while mostly friendly to cyclists, aren't so kind to skaters,
even though I'm going roughly the same speed. IDK.
Enough rambling, time to get back to work
21 june 2019
So, I realized when I posted my feels entry for yesterday that I had previously
posted about going on a week long bike trip across the state and that I would
provide updates to the world during my trip. Well, as you can tell from the lack
of updates, this did not go as planned. I originally had planned on making a
short post every day, updating where I was, how the ride that day went and what
I had been up to. Unfortunately, my plans changed on day one. My plan was to use
my smart phone to make a brief post every day. On the first day, however, my
phone leapt from my pocket while my body was in motion. This put a quick end to
my plans as well as any hope of communicating with the outside world with more
than 144 characters (now relegated to my dumb backup phone).
Unfortunately, I can't spend much time retelling all the stories of the week
on the bike but I can summarize the week. It was AMAZING. I haven't really
spoken about my passions outside of technology here much. Cycling is definitely
one of them. I happened to look at my Strava stats the other day. I ride, on
average 12 hours a week over an average of 5 days. My average weekly distance
is right at about 200 miles per week. The week of my bike trip, I averaged 73
miles or 4 hours and 30 minutes each day. The total distance for the week came
to right about 450 miles with my longest single day at 104 miles. It was an
Beyond just the bike riding itself, though, the experience of hanging out with
people and being in the middle of nowhere with nothing to do but talk and read
was just, wonderful. My friends and I described it like summer camp. Back
before we all grew up and got jobs, when we still had summers off. We went to
summer camps and got to do really cool stuff all day and just hang out; new
experiences every day. This was very much how we felt about our bike trip.
I think it goes without saying at this point but I'll be doing this trip every
year from now on. We'll go to different places, but a week long bike vacation
is now a must do for my mental sanity.
20 june 2019
My boss told me the other day that my job title now has an adjective in front
of it. I am now a Senior Engineer. Apparently this comes with more money and
an expectation of something called "higher level" work. I think that means I'm
supposed to do more fun stuff and less grunt work. We'll see if that is right
or not in the coming months.
31 may 2019
So, I'm on this "low energy" kick. I've kind of been here before but this time
it's more than just a nifty tech experiment. I want to start to be more
intentnional with my uses of computer technology. One thing led to another and
well, it's also kind of a neat tech experiment, so... more fun for me!
I'll be leaving tomorrow for a week long bike trip. During the treck we won't
have a lot of access to the power grid. In preparation for this, I swapped my
smart phone's SIM card over to a BLU Zoey II  feature phone. In addition to
having an outrageously good battery life, it has a very small battery and a very
small power input requirement for charging which means I can charge it using a
small solar panel during the day if I want.I changed over a few days early
because, well, my Google Pixel 2 has been giving me some trouble recently. The
battery has been "dying" with 25% left and the phone starts to frequently crash
when the battery drops below 70%. I've ordered a replacement LiPo for it and
will be replacing it but it kind of got me thinking again about my reliance on
the thing. Could I actually stop using it? This was two days ago. I've now been
using the "dumb" phone almost exclusively. I've managed to find a workable
system that allows me to keep my "smart" device usage to a minimum. The goal is
not to totally remove it from my life but to help reduce the mindless use as a
distraction from more important things (reading, family, hobbies, work, etc.).
So far I've been able to reduce my reliance on mobile smart devices by about
95%. Due to the nature of my work as a computer systems engineer, I almost
always carry my laptop bag with me. In addition to my laptop I have taken to
carrying an old Android tablet and my Google Pixel 2 in teh bag, all turned off.
This allows the battery life to be greatly expanded and provides a bit of a
barrier to usage (allowing time to power up the device before I use it). In
time, I think I'll reduce the device count down from three to just two by either
removing the tablet or the phone. It will probably be the phone that gets cut. I
read ebooks almost exclusively and find reading on small phone screens more
difficult than on e-ink or tablet devices. Almost all use of these smart devices
is completely optional. There is, however, one exception. My employer requires
multi-factor authentication for several online properties including the employee
portal, VPN and ssh authentication. I was able to switch most of these over to
using a physical token. Four of them, however, require the use of an app and do
not support the physical token. This is the 1% use case where I need to power up
my Pixel 2, open the app, get a code, and then shut it down again. Thankfully,
this only has to happen once or twice a day in most cases.
This long winded story leads me to this final thought. My new side project; My
"casual" project, if you will. A personal challenge. How can I be more
intentional about my digital life in other areas. Not just with regards to my
use of mobile devices but also at home, my use of my desktop computer, my use of
the power grid, my use of television, media consumption in general. More
generally, how can I LIVE more intentionally. Not in the philosophical,
religious sense, but just in the living sense. My time is limited, I should do
meaningful things with the time I'm given and the resources I hvae, don't waste
time and energy on things that don't being me joy or meaning. I started looking
around my life to identify the low hanging fruit I could tackle first.
The next most obvious place was my desktop computer. I have a big, hulking
gaming PC. I used to play a lot of video games but in the last year I picked
up some new hobbies that take up most of my time and I haven't played anything
seriously in over a year. I decided to turn the desktop PC off to save some
electricity and heat generation (it's really hot here in the summer). But I
still want to have a desktop PC in my office to use for looking up information,
listening to music, checking email or watching Youtube tutorials on while I
build and paint my models. For this, I said "Ah, a Raspberry Pi is more than
enough". I have a couple of Raspberry Pis (ok, a lot of Raspberry Pis) sitting
around, once used for this project or that, and I decided to repurpose one for
this endeavour. In about 30 minutes I had it up and running and connected to my
desktop monitor. I'm still getting the software setup completley but it's
already been a more than acceptable solution. My office is now cooler and
quieter, but I can still do everything I need to 99% of the time. For that 1%
when I do want to play a video game, I can turn the big hulking desktop PC on.
I think my first goal is going to be:
Run my home office off of 99% solar
This goal, in theory, seems achievable. The main energy consumers in that room
are the window mounted A/C unit, my homebrew router and my desktop PC. With the
desktop PC "solved" (it's "trivial" to run a Raspberry Pi exclusively off solar
power with a battery backup system for nights and cloudy days). The router
"problem" is solve-able. I will need to potentially buy something that consumes
less energy (maybe a Raspberry Pi, who knows!?) but the software stack (PFSense)
is fully capable of a "lift and shift" to some other device without much work.
The A/C problem may proove to be the most difficult to overcome. The location of
the office is not ideal for insulation from the elements. It's located above my
garage and has very little insulatable space between the ceiling and the roof
of the house. In addition, the windows are old and poorly insulated. The ideal
situation would be to completely remove the need for the window mounted A/C
unit but the costs involved in doing so may prove prohibitive. Running such a
power hungry device off of solar seems impractical as well, likely increasing
the power draw on the system by several orders of magnitude requiring larger
panels and bigger batteries. This will probably require more thought, but I
have confidence I can come up with something.
So, anyway, I've rambled enough for now. I'll try to post one more entry before
I leave for my trip tomorrow and, if conditions permit, I'll try to post some
trip updates during the week as well.
30 may 2019
Spent the day reading Kubernetes release notes. They sure did change a lot
from 1.12 to 1.13. Maybe 1.14 won't be as long of a novel.
24 may 2019
I rode my bike to work today for the first time since my friend was killed on
his bike almost two years ago. It's weird how those things can spook you. I've
known people killed in car crashes and it didn't stop me from driving. Why then
did this take me off my bike for so long? Things to think about...
18 april 2019
Been a while since I wrote anything here. I'm doing a lot of writing on my
blog these days over at https://platfrastructure.life.
A few updates for here:
- I'm super busy with training. I decided to try my hand at triathlon this
year and it's beating my butt.
- I went to Google Next the other week. Conference is a little too enterprise
focused for me. I do a lot of work with Google cloud but the stuff that I
work on is mostly plumbing not the fancy machine learning or big data stuff
so they don't talk about anything interesting to me most of the time.
- I competed in my first speed skating meet the other week. Got a few medals,
it was fun.
- My personal blog over at https://platfrastructure.life is now running on
gitlab pages, it's using their CI system which is kind of cool.
- Work is going well, I'm on track (apparently) for a promotion to senior
engineer. We'll see if that happens or if it's just smoke.
I think that's it for now. Peace!
18 january 2019
Got a couple of project ideas running around in my head. I am going to try to
start one of these this weekend:
- RaspberryPi handheld video game console
I've always wanted the ability to play my classic video games on the go. Over
the Holiday break I bought a Nintendo Switch and have absolutely fallen in love
with it. The form facter is perfect. I see so much potential not only in the
console itself but, more generally, the form facter. This has reinvigorated my
portable game emulator idea. I've found some people online who have 3D printed
"Nintendo Switch" clones. These all want you to build a custom controller
interface that only looks like the Nintendo Joycons. I'm going to see if I
can use my experience with getting other uncommon bluetooth devices working on
Linux to get the actual Joycons working with the RaspberryPi.
- Video camera for 3D printers at work
We have a handful of 3D printers at the office which we use for prototyping.
We're a small shop so we use consumer 3D printers, nothing fancy. Occasionally
prints fail. To avoid wasting material and time, I set timers at my desk to
remind me to get up and check the print every 30-60 minutes. Today I thought it
would be really neat if I didn't have to get up. I'd heard of Octoprint but it
does more than I need so I have never tried setting it up. Instead, at least at
first, I'm going to try using a RaspberryPi Zero W connected to a RaspberryPi
camera to buid a site containing a list of video streams for each camera. I can
then keep a small window up in the corner of my screen for the duration of the
print both improving my ability to quickly react to a failed print, further
reducing material waste, and helping me be lazier.
Anyway, that's probably it for today. I'll post any updates over the weekend if
I come up with anything worth sharing.
12 january 2019
Why does it always have to rain?
09 january 2019
Saw a vehicle on the road the other day with a bumper sticker "townie"
It was not related to ~town. I was sad
From IRC today:
Christian shitpost - Cool Camp Counsellor: ...and so kids, just as God yeeted
the angel Lucifer out of heaven, so too must you yeet the devil from your
05 january 2019
I setup a weechat relay today for tilde.town's irc server. I have a handful
of shell accounts around The Internet for various use cases and one of them
is for maintaining ssh tunnels for various other applications, sort of like
a poor mans VPN. Anyway, I've got one of those tunnels now going to tilde.town
and also running a weechat irc relay in a screen session connected to
localhost. This combination allows for me to have a persistent connectoin to
the tilde.town irc server. This is nice because my primary computer is a laptop
that is regularly put to sleep during transport. This would typically cause my
IRC session to come and go, potentially causing missed messages. The relay now
allows my laptop to come and go while my connection to the IRC server stays
persistent. When my laptop re-connects, I'm forwarded all missed messages.
04 january 2019
Frustrated. That's today's feeling. Spending the day trying to make crappy
software less crappy. Instead of being given the resources to actually fix
the problems, though, I'm told to make it work. Then I tell them it won't work
and fix the problem through policy reform. I guess that's good enough for now
but I wasted way too much time.
25 december 2018
Pocket Gopher on android is really nice. I've never used the F-droid app store
before. The experience was great and the Pocket Gopher app has been fantastic.
19 december 2018
Today was crazy. Discovered we have a really interesting bug with one of our
k8s clusters. Turns out the kernel version we are running has an old and not
so great Ceph module. This module causes the block device to hang when
(I think) terminating a pod using an RBD for storage. The consequences of this
RBD getting stuck are many. For starters, the docker API begin to slow down and
causes a significant increase in docker api timeout errors. The second observed
problem is that some pods won't start back up if others in the deployment
haven't yet finished terminating, causing deployments to fail and finally
causing our monitoring system to lose it's mind because it's trying to scan
disks and getting stuck trying to read block devices that are hung.
Today, I feel a combination of amused and exhausted.
18 december 2018
I've logged in to my tilde.town account for the first time today. It's been a
while since I requested it. The main reason for the delay was that the ssh key
I submitted was on a laptop I rarely use. All boring details. I finally got the
ssh key for my "real" laptop published to tilde.town, though and I'm happy to
be here. I guess that's my feels right now, happy.