As we close the chapter on the summer of ‘22 I’m left dealing with the feelings
that hit me every year at this time. “Summer’s over. School’s here. Stoke up the
As a grown man who hasn’t been in school for more than half his life, yes. I
realize this makes no sense. Very well. Tell that to my brain.
In any case, I can look back on this summer and consider it a success. G had a
great time at his day camp. We’d made it to the Cape more than a few times to
enjoy some sun and water. I may have read a few books, and comics, that I very
much enjoyed. I saw a few movies that I also enjoyed - Nope, and Top Gun: Maverick
at the top of that list.
A year or so ago I bought a Synology NAS and started to consolidate some of the disparate cloud storage services
into one single physical box that I knew I could (theoretically) control myself. It worked out well. I liked it!
I could install some packages, I could run Plex, I could back up docs, photos, mp3’s, movies, etc.
Then I started branching out a little bit and messing around with using docker to host some services that didn’t
already have Synology-related package installers. With docker-compose, this was all pretty straightforward and
didn’t give me too much headache.
Over time this has grown into a full-on “homelab” situation where I’ve migrated most services onto a small Dell server
that sits in the corner of my office plugged into a UPS. Ultimately this has turned into the sweet spot and I am
thrilled with the workflow. It looks a little something like this:
Does this service I pay for (Dropbox) have a decent alternative? Is there a docker image? Give it a shot.
Does this service which I DON’T pay for but serve as data points for a machine-learning algorithm (Google Anything) have a decent alternative? Is there a docker image? Give it a shot.
Does something look cool on /r/selfhosted that I want to try? Is there a docker image (almost 100% of the time: “Yes”)? Give it a shot.
So what has been good for me?
Dashy - A dashboard that serves as my homepage. Links to all of my self-hosted services, in their logical groups, go here.
Nginx Proxy Manager - An nginx configuration front-end. Makes setting up services and LestEncrypt certs a cynch.
Linkding - Bookmarking app a la “Pinboard” and “Del.icio.us”
Whoogle - “A self-hosted, ad-free, privacy-respecting metasearch engine “, AKA “Google front-end”. No google ads. No tracking.
Umami - A privacy-focused website analytics package. No more Google Analytics for me.
AdGuard & Pi-Hole - Both! DNS servers for local, in-house, ad blocking.
This is the tip of the iceberg. There are more, but these are good starts.
If you’re in the “tech” business you can imagine this is a potentially dangerous hole to drop down into. I
recognize this, but there’s not a chance in hell I end up like the people in /r/homelab.
Most weekday mornings I will walk G to the bus stop near Brookline High School
for his trip to his day camp. We’re out the door at around 7:53AM and arriving just
about at 8:00AM. The past week or so has been brutally hot so if I was going to get
any time outside it’s going to be right after his drop-off. I’m not built for that
90+ degree stuff.
Thankfully, luckily, our town is pretty well stocked with parks and areas to walk
in the shade. Shade is at a premium with this heat so I kept walking until I found
a nice spot to take a break, and in this case, have a coffee. Brothers and
Sisters (formerly the KooKoo Cafe) in the Village has been that little oasis
thanks to the decent cold-brew, and copious seating & shade just outside.
Don’t know if it’s necessarily a spot to make the trip for, but for me it’s been
a welcome break and spot to get my brain to slow down a bit.
Having lived on the Agency side of this equation for a large hunk of my career
there is a lot here that rings familiar and true. As I look back on those days,
my freelancing days, I realize how profoundly underestimated and under-served
the customer engagement and management portion of the equation is. I can look
back and clearly pick out the spots where I done F’d up and wish I was more
mature and better at that part of the job. Live and learn.
After finishing a recent book – Mouth to Mouth (verdict: “meh. ⭐⭐”) – I picked up
Michael Ian Black’s “A Better Man: A (Mostly Serious) Letter to My Son” and dived in. I figured, hey it’s
almost Father’s Day, so let’s see what this funny guy has to say. And as the title of the book says, yes - this really is a mostly serious piece of writing. He gets
into the heavy stuff pretty quickly.
But that’s not why I’m writing this. There’s a bit in the first 10 or 20 pages where he explores the feeling of when he crossed into the realm of “manhood”:
Before I sat down to write this, I couldn’t have told you the moment I felt I’d crossed, irrevocably, into manhood.
It was when I drove my family home from the hospital for the first time.
I’ve never been more terrified than the moment I turned out of the parking lot.
This statement stopped me, and I let out a quiet, “heh”, chuckle.
Because this has been, almost verbatim, what I have shared with first-time
parents through the past 7+ years that I’ve been a father. “No one prepares you for
the moment you strap your child in that car-seat, and drive away. There was
‘you before’, and ‘you now’, there is no manual, so go figure it out.”
Happy Father’s day to all you Dads out there. I trust, and hope, that you are
navigating those waters successfully. ❤️
A couple weeks ago I noticed there were some style-related issues here, so I
reached for the CSS to make the necessary fixes. Easy enough.
But when I did so - I paused, confused, then realized I had no idea how to edit and
rebuild it(?). It had been a long, long, while since I last adjusted the styles.
Side note: remember Compass? This website was using Compass! I loved it!
Shout out to a real OG, author of compass and co-founder of Sass, Chris Eppstein.
The small issue here was that, as it pertains to Compass,
I just didn’t recall the conventions around mix-ins, building, file locations,
etc. So, like every “good” (air-quotes) writer of software I decided to go the
long-way ‘round and re-implement all of the styling with TailwindCSS,
the current CSS Belle of the Ball.
Stripped the site of any and all CSS-related code, assets, dependencies, etc.
Installed with their instructions,
except for the npm dependencies, which they instruct that you install via
npm i -D postcss postcss-cli. If you are using Netlify to build and deploy
your website (as I do), then make sure to omit the -D because if and
when you set JEKYLL_ENV to production then npm won’t install whatever
is inside the devDependencies key of your package.json.
The process was pretty straightforward and relatively painless if you run your
local Jekyll server with jekyll serve --livereload, and have your editor,
work in progress in one browser window, and your source/reference in another
browser. The Tailwind docs workflow
for Alfred also came in handy for all of the documentation reference.
Final thought part 1: while doing this bit of work I took the opportunity to examine the
blog’s performance via Lighthouse
and made some further changes to improve its score. I’ll add some details
related to that in a follow-up post.
Final final thought: additional shout-out to Dan
for the original design and CSS for this website. Literally couldn’t have done
this without you, Dan. Thank you 😄.
Hello, I'm Joel. Hi! 👋
An engineering manager in Boston.
Lapsed "tweeter" at @jayroh.
Here I write about my family, my (bull)dogs, code and technology, and working on a little passion project named