crying_at_computer.jpg

Coding is hard.

Especially when you’re just starting out. It can daunt you when there sits a blinking, unmoving cursor staring at you as the error messages pile up. Making progress is tough, however many resources exist on the internet to help you. This post covers some tips for evaluating your problems and a couple of sites you can refer to for assistance.

Before Asking for Help

Before You Start Coding

When you begin to learn a coding language it benefits you to learn about the language before you start. Each language holds its own quirks with how it relays its error messages. Understanding what the language is trying to tell you with the error message goes a long way with tackling problems as they arise.

It helps to create a plan for what you hope to code before you actually code it. This simply involves writing out your code on paper instead of on the computer. Doing this helps you think through your process and lets you see what the entire project requires for completion.

Before Looking for Help

It is tempting to immediately start frenetically googling for your salvation. The results found will often not help you or even be useful. Asking the correct questions make all the difference when seeking answers.

But first, you should take a small break. Go on a walk, eat a snack or watch a small video just to clear your mind. Fresh eyes can evaluate the problem easier than when you are frustrated. Ideally this would lead you to the answer right away but in case that it still eludes you, this can at least let you see the problem more clearly.

One thing that helps here as well is if you commented on your code. Writing what your code does with the “#” character will help you and anyone else looking at your code. Especially if your small break becomes a long one. Forgetting what you were doing will only make it harder.

# print to write hello world
print(Hello World!)

Looking for Help

Using Google for Error Messages

Let’s begin with the obvious: Google.

Google has revolutionized the way we look for information. After all, “googling” is now a common verb used to look things up on the internet.

google.png

However, casting a large net gets a large amount of answers so using the search engine properly is important. It’s not uncommon to find the remnants of a long abandoned thread. When using google try to search for the error message you got from the program. Or if you are trying to find a technique include the coding language you are using like “r” or “bash” to narrow the results. This not only helps your ability to get coding help online but also your ability to research effectively.

xckd

Utilizing Online Communities

stack overflow.png

Joining an online development community can make finding answers easier since you get access to other people who may help you. Stack Overflow dominates the minds of many programmers as a resource. Here people can ask questions under specific tags and receive answers from other programmers. Users rate the answers based on usefulness and the question-asker selects the best answer for themselves.

reddit.png

Another option is Reddit. The subreddit r/learnprogramming contains many resources that can lead you where ever you might need to go to figure out your issue. These sites feature real, live people and they want their time and expertise respected so if you use them, use a professional tone, read the FAQs and search for your problem first as there is a good chance it has already been answered. Youtube.png Less of a community and more of a well of information; there is Youtube. People upload free educational videos all the time. Searching “programming tutorials” plus a language or technique might show you what you wanted. These videos address certain problems more readily than others; more difficult ones require more effort and resources.

Discord.jpg

One last addition is Discord. Here people form their own communities much like Reddit. But you need an invite or link in order to join. Once again, since people work on Discord servers in their free time you should respect that and follow any rules they have in place.

Student Resources

As a student, you are granted some benefits to your education. You have a professor, and sometimes TAs, to help guide you through your programming class. Take advantage of any office hours available when offered. The library has a wealth of resources itself and may provide programming books that can expand your options. Books appear like the worst option but often they prove themselves to be one of the greatest. Use the textbook from the class and seek out others that might interest you for future topics you might encounter. These books can prepare you for future challenges and help you if you find yourself struggling. Your peers can often be a resource as well since they can ask questions you want to know as well or may offer to help since teaching others enforces their own knowledge. This works the other way around as well. You paid for these resource so you might as well use them.

Wrap Up

Running into a wall feels bad but getting around that wall is an important skill every coder needs to learn. While it can often seem daunting, we improve from our struggles and there is no shame in asking for help.