Pi-hole Operations Spotlight: Jacob Salmela
Jacob Salmela is the original creator of Pi-hole and continues to work on it to this day. Below is a summary of things.
- Name: Jacob Salmela
- Location: Minneapolis, MN
- Current full time job: Systems Engineer
- Current computer: Space gray 2017 MacBook Pro, 16GB RAM
- Hours spent on Pi-hole per week: 5-30
- Favorite Linux command or utility: netcat
- Favorite video game: Metal Gear Solid
Tell us about your background and experience:
I worked in retail for over a decade. Then I went to school for a Bachelor’s degree in Networking. I worked in the public sector for many years and now I work for a bank. I’ve focused on macOS and Linux throughout my career. I have a lot of Apple certifications–no Linux ones, but I’ve certainly learned a lot over the years.
I started Pi-hole as a project for the Raspberry Pi because I was disappointed with the AdTrap and thought I could build something better (I discuss this on this podcast). Little did I know, it would soon be a full-blown project with a fleet of devoted developers who consistently work on it. As Pi-hole began to gain popularity and I was managing the entire project by myself, I relied on a lot of things to keep my workload as light as possible. This meant anything from automation to services that handled infrastructure for me. I used Digital Ocean for everything, automated as much as I could with Ansible and other tools, and basically didn’t use something unless it was easy for one person to operate.
We still operate on a similar premise, but the scale is much larger and we now have to make sure apps and services are up and running for both our developers and end users of our product.
How is your workspace setup?
I have dual monitors with green backlighting so I can feel like I’m on a Borg Cube. I usually have Mattermost open on one monitor, Terminal and Atom on another, and Star Trek playing in the background. My office also doubles as a board game room for game night.
Walk us through one of your typical days:
- Wake up at 04:30
- Eat breakfast and work on Pi-hole while sitting on a recliner watching Star Trek
- Realize suddenly that it’s 07:00 and I have to get my son ready for daycare
- Arrive at work
- Check on Pi-hole Mattermost during lunch
- Leave work
- Deliberate for several hours what to make for dinner and then just end up eating out somewhere
- Watch TV with the family
- Get my son ready for bed
- If I don’t fall asleep at the same time as he does (around 22:00), I’ll come back downstairs and work on Pi-hole some more
- Otherwise, I just wake up at 4:30 and start all over again
What’s your favorite part of Pi-hole?
The spirit of the project. It’s the kind of thing I wish would happen in my “real job,” where a talented team comes together in their own way and makes something cool. We’re all friends here and have worked together for years even though most of us have never met in real life.
It’s very cool to see people working on Pi-hole after working their full time jobs. Even when Pi-hole wasn’t making money, that same devotion was always there. That tells me we have something special with our project and it’s something we shouldn’t let die out. I think it’s also part of the secret to making something amazing–working with people who are interested and passionate and allowed to do what interests them.
What process takes up most of your time?
Reading everything that happens in a day with Pi-hole. With my full time job, it’s a lot of work just to read everything that happens and stay up-to-date on it; there is a lot of activity some days. Since we’re a 100% remote team, there’s no better way to stay in the know than physically reading everything. It’s not a burden or anything, just something I need to do on a daily basis to keep things running.
What do you specialize in doing for the Pi-hole team?
- I act as the “voice” of the project by writing the blog posts and official communications
- I compile most of the art and pictures/screenshots in the blog posts
- I handle shipping and ordering of supplies, stickers, etc.
- I deal with legal crap
- I’m responsible for the finances and making sure there is enough money to keep the project alive and keep people motivated
- I remove impediments for the team so they can focus on what they want to do
- I help out with user support (way less that I used to, but I usually will at least stay up-to-date on what issues users are running into or features they want)
- I commission the custom art for our patrons
- I’m learning Kubernetes to move as much of our backend stuff there as we can
- All in all, I’m more of a background role now–keeping the cogs spinning so no one else has to deal with any of it and they can just have fun and focus on Pi-hole as a product. I think they do their best when they have no roadblocks and they can choose freely what they want to work on.
- While I did all the original coding for the project, it’s been some time since I’ve contributed anything of substance–really, without the Pi-hole team, you wouldn’t be seeing any updates to the software, so I’m very thankful for all of them (and they are way more skilled at coding than I am now, ha!)
What process(es) have you automated or improved?
The installation script. It’s evolved considerably since I first wrote it, but I think the ease of install is really what made Pi-hole gain some attention. Nothing I did with Pi-hole was “new.” DNS based blocking has been around for sometime–I just made it easy for less-technical people to setup by slapping a nice little GUI installer on it that did all the hard work for you. To me, that will always be the best process you can improve. It helped the software reach more people and lowered the entry barrier.
I’ve also done lots of little things with Ansible that save time–nothing of consequence, but I’m a big fanboy of that software and use it a lot at work. I guess most notably, I used it to ship merchandise to patrons (until I made a mistake and cost us some money), but it also brought to light some other issues, so we now have a new vendor for our swag.
What’s a problem you are still trying to solve?
The Pi-hole installer. The bash install script works fine, but is very unwieldily to maintain, especially when we want to make significant changes. We’ve often discussed different install methods, but the install script is still working well.
What Emoji Have Been Coined (Internally On The Pi-hole Team) To Your Name And Why?
Besides the obvious Star Trek ones, I have an Apple logo because I’m a major fanboy. And then I have a sloth because I am very slow to do things sometimes, especially when my real life gets busy.
What apps, gadgets, or tools can’t you live without?
- tactical pants and shirts with many pockets
- polarized sunglasses
What’s your favorite open source project (besides Pi-hole?)
Kubernetes and Ansible.
What do you do when you’re not at your job or working on Pi-hole?
Usually, I’ll be plastered to the recliner watching TV. I used to love video games, but I thought if I put as much effort into Pi-hole as I used to put into video games, it would turn into something–although, I do still find myself playing FTL before bed.
I guess it’s no secret where the thematic elements of Pi-hole get their influence from…
Does Your User Logo/Icon Have Any Sort Of Significance?
It’s based on the Starfleet logo (I know, I know, you’re probably sick of Star Trek references already). Instead of the little flags around the circle, it’s little command prompts and then the colors are just the typical LCARS scheme. I didn’t like a ton at first, but now it’s really grown on me and shows two of my favorite things: Star Trek and the command line.
Do you have a favorite artist?
Icon For Hire
What about a favorite TV show and/or movie?
Star Trek Voyager and The Matrix.