Whether they appear in a terminal prompt, or an in-browser web page crash, we have all seen errors while programming. These errors usually include a stack trace that tells us what went wrong and where in our code the error occurred. Maybe everything you need to fix your bug is listed in the error message, but we often need to dig deeper to determine the real issue. When you have to look deeper, what are the best resources to get unstuck and continue developing?

Types of Resources

Before we examine resources, let us talk about what is out there. One of the best things about software engineering is the low barrier to entry. Most resources cost little to no money, as the development community emphasizes group growth over individual enrichment.

While there are paid courses and blogs that teach skills, we will discuss free resources that can help solve specific bugs or errors. Because of this, this article will not contain resources such as Udemy or Coursera. All resources discussed here are those that would naturally show up in a Google search.

Stack Overflow

Stack Overflow is one of the most well-known and respected programming knowledge-sharing websites. It was purchased for 1.8 billion dollars in 2021 to expand and support tech learning. The monetary value of the service is undeniable, but how it provides support value is just as important.

This domain is part of Stack Exchange, a network of learning forums focused on server faults, command line and network administration, mobile and web development, and even broad items like mathematics and the sciences.

These other forums are popular, but Stack Overflow is the most popular website supporting free software engineering discussions. The basis of a Stack Overflow post is someone asking a question, then the community offering responses. Other community members review and endorse the responses through an upvote and downvote system. Based on the upvotes and downvotes, the best answer is determined, and the remaining answers are ordered by their perceived correctness.

This is a great way to crowdsource problem-solving and collect diverse understandings and views. Stack Overflow's questions usually get picked up by search engines as keywords making it very easy to search for solutions to specific issues.

One of the most valuable parts of getting unstuck with Stack Overflow is that the questions stay open for further discussion and review even after they have been answered. Sometimes you will find questions getting new answers years after the initial question. New answers help keep solutions fresh as they may offer solutions that are framework or library version dependent and have changed as the technology has been updated.

GitHub Issues

You may already use GitHub to manage version control for your team's code, but did you know that GitHub also has a repository-based forum for resolving development issues? GitHub Issues is a repository-based forum that focuses on bringing awareness to and solving problems for different versions of apps and frameworks.

The platform uses a ticket-based approach where users can open tickets for a specific issue targeted at the app or framework. They can build lists of these issues to create support ticket backlogs and propose solutions to the code owners. This a great way to not only raise and document issues but also give back by creating permanent fixes for the tech you are working with.

GitHub Issues will not teach you how to code but will expand your understanding of the apps and frameworks you are working with and their underlying technology.

Medium

Medium is a free blogging website that removes common hurdles for writers looking to start a blog. While some articles cover topics from social and political items to economics, the website mainly focuses on software and tech development.

Many writers use this free platform to cover topics that excite, interest, or have frustrated them. With writer-payment programs, writers can earn money based on their articles' popularity. This leads to many software development articles covering how to perform basic procedures for languages or frameworks, more advanced best practices and patterns, and even bug and error solving for common or elusive issues.

The amount of people that write on Medium allows it to cover many possible topics. Another perk of having all these writers is that they all have different voices and views. Where an API's documentation is written with a single voice and may be very dry, Medium offers writing variety to help you learn. This variety could be in writing tone, offering you a very formal, technical tone or maybe a conversational tone that treats the article as a pairing session.

Two main drawbacks of Medium are the lack of correctness checking for content and potential paywalls. Anyone can write and share articles on Medium which can lead to some issues with learning if the author does not fully understand what they are writing about. If they are writing a how-to guide, you may encounter problems with missing or incorrect steps or guides written using incompatible software versions. Both of these issues limit the value of the article.

Incorrect information or incomplete explanations are to be expected from free blogs but become annoying when they are not free. Medium adds paywalls to some articles to allow writers to monetize their content. This perk rewards authors who spend time creating valuable content but becomes annoying for developers trying to solve a problem. The main issues with Medium are the paywalls and potentially unhelpful articles.

MDN Web Docs

If you want consistently accurate articles, MDN Web Docs is an excellent resource to help you get unstuck. A community of professional software engineers manages this article and tutorial-based platform.

The content is mainly the front-end technologies HTML, CSS, and JavaScript.

Instead of taking an issue-based approach to articles, MDN does full write-ups on the theory and application of everything from styling and web page structure to API calls, JSON object ingestion, and some networking. It is a fantastic guide to getting the practical knowledge to get unstuck and the theoretical knowledge to know why you were stuck and how to avoid the same issues in the future.

Other Common Websites

We will not examine these websites in-depth, but I wanted to mention other resources that often appear during problem-solving. Any of the following websites offer accurate answers and explanations for your more basic software engineering questions:

Free Code Camp

W3 Schools

Geeks for Geeks

Tutorialspoint

Reddit and Discord

Let’s include these as possible problem-solving aides but do not expect to use these every day. Reddit and Discord allow sharing of ideas across software-focused subreddits and servers. These groups focus on computer science, software development, and specific language frameworks.
There is not a lot of structure for these mediums, which requires you to know what you are looking for.

You will likely find these threads in search results without regularly visiting these websites. If this is the case, these communities usually offer a lot of depth and knowledge on topics and are worth investigating for solutions.

If You Want to Go Beyond the Stack Trace

You should check out software engineering bootcamps if you are beginning to program or looking to expand your understanding of the field. Bootcamps take care of searching for the correct information to learn by compiling a comprehensive software development curriculum, so you do not have to.

Instead of figuring out what to learn, you can focus on learning the content with the help of mentors and professional instructors. If you want to learn to become a professional developer, Thinkful has a great 5-month coding bootcamp that will take you from novice to professional!

Share this article