Vishnu's Pages

12 Weeks of “One Solution Every Week”

I have been solving problems and writing code for over a decade. In recent years, I’ve been spending more time on the management side of things, which doesn’t require hands-on coding. I occasionally write code in my free time for my personal pleasure, but I wanted a way to stay consistent and committed. So this year, I started a little streak called "One Solution Every Week" (or "1SeW" for short).

One Solution Every Week

The idea is to solve one small problem every week and commit it. These problems can be from anywhere—math, science, history, algorithms—anything that involves some interesting thinking, and it doesn’t need to be a complex at all. There's no fixed language or technology I have to use, but I’ve been going with Kotlin just because I enjoy it. Along with each solution, I write a short README talking about the problem and what made me pick it that week.

I’ve just wrapped up 12 weeks of this streak, and I thought it’d be fun to share how it’s been going. Here's a quick look at the solutions I worked on during the first 12 weeks:

Weeks 1-12 (missed Week 9)

You can check out the GitHub repo here and explore the solutions. If this inspires you, why not start your own streak too?

Consistency is the Key

Staying consistent is the key—but it’s not always easy. If you look at my activity graph, you’ll notice most of them happened in the last 2–3 days of each week. That’s usually when the weekend nears, my FOMO kicks in, and I get the urge to solve something and stay on track.

GitHub Activity Graph

Finding the Right Problems is a Challenge

Finding simple, interesting problems is also a challenge. Sometimes they show up in daily life—like Week 3’s phoneword-to-number conversion. I see phonewords all the time in ads around me, so it felt natural to try it out. Other times, I stumble upon unusual ideas—like Week 7’s Boustrophedon text, something I had never heard of before but found by chance and decided to explore.

I could always ask ChatGPT for suggestions, but discovering and solving real-life problems feels more meaningful and fun than working through random puzzle-like ones it might suggest. That real-world connection makes the process more satisfying.

And of course, there are weeks when I run out of fresh ideas and fall back on classic problems—like Week 8’s Benford’s Law, which I’d explored before but wanted to revisit with a different approach. Or Week 12, where nothing particularly interesting came to mind, so I went back to basics and hand-coded a simple Linked List in Kotlin.

Solving the problem, writing a small README, and committing everything doesn’t take more than an hour out of the whole week. But the process gives me a surprising amount of joy—and enough motivation to keep going week after week, hunting for new problems and staying committed.