Categories
Learning Personal Growth Programming

Stop Doing What You’ve Always Done

If you keep on doing what you've always done, you'll keep on getting what you've always got.

W. L. Bateman

This quote has been on my mind lately, and it perfectly captures something I've been experiencing in my programming journey.

The Comfort Zone Problem

We all have our comfortable patterns. That language we know really well. That text editor we've mastered. That framework we can use without thinking. That approach to solving problems that's worked for years.

There's nothing wrong with having preferred tools and methods. But there's a trap: when we stick exclusively to what we know, we stop growing. We become really good at solving a specific set of problems in a specific way, but we miss out on better approaches, new ideas, and expanded capabilities.

In Programming

I see this pattern everywhere in software development:

Language loyalty – "I'm a Python developer" becomes an identity rather than just a skill. We avoid learning other languages because Python has always worked fine. But then we miss out on the functional programming insights from Haskell, the metaprogramming power of Lisp, or the systems programming perspective from C.

Tool stubbornness – We've invested hundreds of hours mastering our editor. Learning a new one feels like going backwards. But maybe that new tool has features that could make us more productive, or a different approach that changes how we think about editing.

Pattern repetition – We solve problems the same way every time because it works. But "works" isn't the same as "optimal." That design pattern we learned in college might not be the best approach anymore. That algorithm we memorized might have better alternatives.

Breaking the Pattern

The quote isn't saying our current methods are wrong. It's saying that if we want different results—more skills, better solutions, faster development, deeper understanding—we need to do different things.

This means:

Try new languages – Even if you don't use them professionally, learning a new language teaches you new ways to think. Every language embodies different philosophies and approaches to solving problems.

Explore new tools – That editor, version control system, or build tool you've been curious about? Try it. You might go back to your old tools, or you might find something better. Either way, you'll understand more.

Question your patterns – When you reach for your standard solution, pause and ask: is this still the best approach? Are there newer, better ways to solve this problem?

Learn from other domains – That web developer might learn something valuable from game programming. That systems programmer might gain insights from machine learning. Cross-pollination of ideas happens when we venture outside our comfort zones.

The Growth Mindset

This quote embodies what's called a "growth mindset"—the belief that abilities can be developed through practice and learning. The opposite, a "fixed mindset," assumes we're either good at something or we're not.

In programming, a growth mindset is essential. Technology changes too fast to rely on what we've always done. Languages evolve, frameworks come and go, best practices shift. The developers who thrive are those who continuously learn and adapt.

Where I'm Applying This

Right now, I'm pushing myself to try tmux instead of sticking with GNU Screen. It's uncomfortable—I have to look up commands, my muscle memory doesn't work, I make mistakes. But that discomfort is growth happening.

I'm also exploring new programming languages, trying different approaches to problems, and questioning assumptions I've held for years. Not everything I try will stick, but the process of trying makes me a better developer.

The Takeaway

If you're satisfied with where you are, keep doing what you're doing. But if you want to grow, improve, and expand your capabilities, you have to be willing to step outside your comfort zone.

Try that new language. Learn that unfamiliar tool. Challenge your assumptions. Do something different.

Because if you keep doing what you've always done, you'll keep getting what you've always got. Last modified: 2011-07-12 WordPress ID: 911

By Shishir Sharma

Shishir Sharma is a Software Engineering Leader, husband, and father based in Ottawa, Canada. A hacker and biker at heart, and has built a career as a visionary mentor and relentless problem solver.

With a leadership pedigree that includes LinkedIn, Shopify, and Zoom, Shishir excels at scaling high-impact teams and systems. He possesses a native-level mastery of JavaScript, Ruby, Python, PHP, and C/C++, moving seamlessly between modern web stacks and low-level architecture.

A dedicated member of the tech community, he serves as a moderator at LUG-Jaipur. When he’s not leading engineering teams or exploring new technologies, you’ll find him on the open road on his bike, catching an action movie, or immersed in high-stakes FPS games.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.