Back to all posts

Ctrl + Alt + Parent

March 29, 2025
Ctrl + Alt + Parent

Hello World : Family Edition

I've always been into tinkering with tech and problem-solving, but actually diving deep into developing didn't happen until recently. The real push came from a personal project: setting up my own home server. I wanted to build and host my own microservices for all sorts of tasks — media management for our family photos and videos, a central logging solution to keep track of events on our network, some automation tools to streamline home chores — and even create my own website. To make all that happen, I realized I needed to sharpen my coding skills (and learn a bunch about servers too!). Setting up that home server was both exciting and intimidating. I found myself learning everything from basic Linux commands to a bit of networking. I use Portainer (its all containerised with Docker) to manage those microservices. There were moments I felt stuck or overwhelmed, especially when a configuration wouldn't work or a service wouldn't talk to another. But each time I solved a problem, it was incredibly rewarding. That little home server became my coding playground and the spark that ignited my programming journey.

The most challenging bugs I solve aren't in my code - it's figuring out how to balance my passion for building and learning with family life. Both need debugging.

What my day looks like

So how do I actually squeeze coding into a busy day with two kids? It definitely takes planning, flexibility, and a good sense of humour. Here's what a typical day might look like for me:

Early Morning: I try to wake up before the kids do to grab a quick coding session (or at least read about code) while sipping my first cup of coffee. This quiet time doesn't always happen—sometimes I hit snooze, or one of the kids decides 6 AM is playtime—but when it does, it gives me a head start on the day and a little personal victory right off the bat.

Daytime: Once the kids are awake, the house bursts into activity. From making breakfast and doing school drop-offs to focusing on my day job (and countless snack requests in between), my coding brain goes on standby during these hours. If I'm lucky and the stars align (hello, nap time or a generous screen-time break), I might steal a few minutes to brainstorm a feature or jot down a solution that popped into my head. But generally, daylight hours are family and work first, dev later.

Evening: After dinner, it's family time and the kids' bedtime routine. Storybooks, bath time, and goodnight hugs come first—code can wait. By the time the little ones are tucked in, I'm usually pretty tired. Some nights, I'll admit, I collapse on the couch and my plans get pushed aside. Other nights, though, I'm still excited about what I'm building, and that excitement gives me a second wind.

Late Night (Building Time): This is when I dive into code. The house is finally quiet, and I can truly concentrate. I often spend an hour or two writing code, debugging a tricky issue, or learning something new online. It's my dedicated me-time to immerse myself in programming. I do have to be careful not to lose track of time—those early school mornings come around fast, and more than once I've looked up to see it's past midnight!

My Computer Setup

Blog image

My main workspace where I spend most of my time

Blog image

I've got a small home office setup—nothing too fancy, but it's my space.

How I Stay Motivated

Some days, sitting down to code feels impossible. I'll finally get a quiet moment, open my laptop, and then… my brain just refuses to function. It's frustrating, but I've learned that motivation isn't about feeling inspired every day—it's about showing up, even when it's hard.

Here are a few things that keep me going:

  • Building things I actually use. Every project I work on serves a real purpose in my home—whether it's automating tasks, improving security, or just making life a little easier.
  • Small wins. Even if I can only fix one bug or add one new feature, that's still progress. And progress, no matter how small, keeps me moving forward.
  • Community & learning. I stay connected with other tech enthusiasts through forums, blogs, and Discord groups. Seeing what others are building inspires me to keep pushing my own skills further.
  • Taking breaks. When I feel stuck, I step away. A quick gaming session or even just a walk outside helps reset my mind so I can come back with fresh energy.

Little Features with Big Meaning

One of my favourite small projects was a simple color picker I built for my website. Originally, it was just for me—I wanted to play around with CSS variables and theming. But one day, my four-year-old saw me working on it and said, "Aw, Daddy, I want it to be pink!"

Instead of just setting it to pink, I thought, why not let visitors pick their own colors?

What made this project special:

  • It made my daughter feel like she was part of it.
  • I got hands-on experience with dynamic theming in CSS.
  • It added a fun, interactive touch to my site.

Now, every time she watches me work on my site, she clicks through the colors, "helping" me pick a new theme. It's a small, simple feature—but it reminds me why I love coding.

Current Projects

I always have a few projects on the go, but right now, I'm focused on:

  • Rebuilding my Cloudflare homepage, I want it to be cleaner, faster, and easier to manage.
  • Improving my home server automation, Automating more tasks so I can spend less time maintaining things and more time building.
  • Learning n8n.io for workflows, Automating integrations between services I use, like pulling logs from my home server and sending alerts to Telegram.

Blog image

My personal website - built using Bootstrap framework and AI assistance through Cursor IDE

Tools I Use

Every coder has their favourite tools—here are mine:

  • ChatGPT & Cursor IDE – AI-assisted coding has been a game-changer for learning and debugging.
  • Daily.dev – My go-to source for developer news.
  • Docker & Kubernetes – Managing microservices on my home server efficiently.

Biggest Challenges

The hardest part isn't the coding—it's the constant context switching.

One moment, I'm troubleshooting a broken API on my home server, and the next, I'm making dinner or looking for a missing toy. Just when I get into deep focus mode, I might hear a shout from the other room: "Dad! I need help!"

Then there's the guilt. When I'm coding, I feel like I should be spending more time with the kids. When I'm with the kids, I'm thinking about the project I want to finish. It's a constant balancing act, and I haven't mastered it yet. But I'm working on it.

What's Next?

I'm taking it one step at a time. My goal isn't to become a developer overnight—that's just not realistic with family life. Instead, I'm focusing on steady progress.

One day, I'd love to build something useful, especially in security, but I also want to make sure it's fun to work on. After all, if I don't enjoy the journey, what's the point?

Want to Share Your Story?

If you're also balancing coding and family life, I'd love to hear your story. How do you make it work?

Connect with Me

I'm always interested in connecting with fellow developers and tech enthusiasts. Feel free to reach out if you have questions or just want to chat about tech!