5 Tips for Debugging Your Life

5 Tips for Debugging Your Life
A collection of beetles of various sizes, shapes, and colors sits in a glass container at a museum.
Beetle collection at Buffalo Museum of Science in Buffalo, New York, 2017

One of my first lessons as a new programmer was to learn how to debug code. Debugging means to review your code to find errors and correct them accordingly. Entire programs can be thrown off by one stray keystroke. This made me think about how minor, or major, habits and mindsets were holding me back from achieving my full potential. Here’s some advice for how I edited my personal life to learn code on my own terms.

1. Be patient with yourself and embrace failure.

Messing up code is inevitable, so don’t take it too personally when it happens. This took me a few weeks to learn because my entire life I’ve always thought failure was unacceptable. I recommend being overwhelmingly patient with yourself because every mistake presents an opportunity to learn a valuable lesson. When you get to the point where your code is clean and runs properly, the feeling of accomplishment will overshadow struggles along the way.

2. Learn to say ‘no’ more often to things that no longer serve you.

Get comfortable with saying ‘no’ because it can keep you from wasting time doing things you don’t wholeheartedly want to do. Take a moment to see exactly where your time is going if you’ve got too much on your plate and want more time to code. I started to learn how to code last year when I was unemployed and did not have a job lined up. I was dedicating at least 40 hours a week to learning, but some of my peers still saw this as a vacation. I began to say ‘no’ to certain activities in order to spend more time improving my programming skills and less time with people who made me feel awful. It may take some careful revision to eliminate excess drains of your time to create a more refined schedule that will ultimately benefit your mental state.

3. Don’t be afraid to ask for help online or attend local events.

Programming communities are abundant both online and in person, depending on your location. There are online resources like Stack Overflow for asking questions. I’ve also used the live chat assistance feature on Codecademy multiple times when I had a problems that forums could not answer. Don’t be afraid to turn to virtual support networks when you need help because someone will probably be able to help you.

For in-person events, Meetup is an awesome way to find interesting talks and events for local developers. I was nervous before attending a coding meetup in my area for the first time. Ultimately, I was grateful I worked up the courage to attend because I got to meet some wonderful mentors. I also use Women Who Code to keep an eye out for chapter events and conferences in major cities. Depending on your specific interests, there are a number of organizations that can help and encourage you as a programmer.

4. Create a work environment that encourages productivity.

Your work space can easily influence your level of productivity. Recognize your habits and common sources of distraction, then tailor your work area to these considerations. For me, this means having a clutter-free work desk, a comfortable chair, and a room free of outside noises. I also get easily distracted by my phone, so I try to keep it on silent and out of reach. Additionally, I think it’s helpful to have some sort of physical notebook or online system for random notes and ideas you think about while programming. This can keep ideas organized but separate from specific class or project notes. I use Google Keep to jot down quick ideas, but there are other similar alternatives like Evernote.

5. Remember that there are many potential routes to reach the same destination.

There are multiple ways to program. People can write code differently and still yield the same end result. Similarly, there is not one singular route to success and personal fulfillment. Take pride in your ability to creatively problem solve and celebrate and respect diverse ideas when collaborating with others. There are many ways to learn and grow in programming but you ultimately get to decide what methods work best for you.