Meeting Stack Overflow

Stack Overflow is a powerful tool and, thankfully, learning how to use it is quite straightforward. This book is obviously focused on coding and data science, and so will be this introductory guide, but keep in mind that Stack Overflow can help you solve matters from practically any field of knowledge— cooking, grammar, literature, job interviews, chemistry... the list goes on and on. 

There are basically three ways you can use Stack Overflow:

  • You ask others for help—queries you may have or things that are troubling you
  • You help others by solving their problems—answer their queries or overcome their bugs
  • Seek a job

This book has a clear goal to teach practical machine learning with R; the next tips will be more directly related to programming and data science but can be generalized to other fields with some minor adjustments. If you are not registered yet, signing up is a good start: https://stackoverflow.com/.

It's also possible to log in using a Google or a Facebook account.

Answering and asking questions might yield you reputation points—this is a real metric there. Try always to use the same account so you will gain a reputation and make a portfolio for yourself.

Let's say you have been experiencing a bug while you're coding. You have tried several solutions for many days now, and nothing seems to work. In this scenario, troubleshooting is giving you a hard time, so Stack Overflow is very likely to help you, right? That is accurate. Should you go out there and fire a question? The answer is maybe.

The very first thing to do is to check whether someone had already asked a similar question. Figure out what are the keywords related to your problem and search for those; warnings and errors are usually, but not always, helpful. Complement your search with the use of tags. Is your problem related to R? Add [r] to your query. Is it related to an external package, maybe rvest? Add [rvest] to your search.

Tags can be indicated using brackets: [ ].

If you find a similar question, and the question is well displayed so the problem is easy to understand, upvote the question to reward whoever wrote it and to make the question more visible. Next, check whether someone already answered the question in a satisfactory way. Upvote the answers/comments that really helped you.

You have limited upvotes per day, so don't waste them by just giving them one away to anyone.

During this stage, you may develop an even better solution. Don't be shy about posting it. Do not forget to link sources that may have helped you to come up with such a solution. Also, for questions, answers, and comments, it's very important to format it well. HTML and Markdown can help you through this. You can go to the following link to get tips about it: https://stackoverflow.com/help/formatting.

Sometimes, questions will remain unanswered because they were poorly written. There are mainly two ways out of this. The first one consists of editing the question for clarity, objectivity, and understandability. The ability to edit questions requires a lot of reputation points, which a new user may not have. Also, the question may be so badly written and/or downvoted that the effort outweighs the expected results, which leads us to the second way out.

The course of action for very badly written questions and/or highly downvoted ones is very close to the action for an as-yet non-existent question: ask a question. The only difference would be that for the former, you may get a feeling about what to avoid by reading the replies.

Click the Ask Question button to get started with yours. It may seem a trivial task, but asking really good questions takes time and effort. Doing it the right way will greatly increase the chances of you being answered while helping you to earn upvotes and reputation along the way.

Asking the right question is so important that Stack Overflow made several guides for it. I recommend you to at least visit the following link to have a look at one: https://stackoverflow.com/help/how-to-ask.

Nonetheless, based on this guide, I will sum it up in seven points:

  • Pretend to be talking to a busy colleague; you usually are.
  • Pay attention to spelling, punctuation, and grammar.
  • Leave the title for last.
  • What were you trying to do actually? Start with an intro.
  • Produce an easily reproducible example.
  • Include relevant tags.
  • Read your question, and try out your sample code before actually posting.

These seven points will help you ask the right question. Make sure only to ask a question after ensuring there is no similar one around. Additionally, you can be on the other side answering other people's questions. By doing this you will most likely be dong the following:

  • Exercising your communications and coding skills
  • Gaining reputation points, and by doing so gaining more privileges under the platform
  • Gaining badges, and by doing so growing a portfolio to show off your skills to employers

Search for questions using tags. My advice is to separate some time during the week to search and answer questions. Search especially for themes/packages/libraries that you are either using or studying a lot in your daily routine. Don't worry if you cannot answer any questions at first. Try to read and understand the proposed solutions.

By earning badges and points, a user grows their a portfolio, but this is not the only way Stack can help with the job thing. Stack Overflow actually has a job section that can be accessed through the menu on the left side or through the following link: https://stackoverflow.com/jobs.

Searching for a job then is very easy. You can use tags based on your skill set. It's also possible to adopt different filters—remote, location, background, and so on.

Taking the next on to data science may be difficult and as I mentioned before, there is no right or wrong. Still, growing some habits—participating in Kaggle's competitions, discussions, kernels, visiting blogs, listening to podcasts, reading journals, and using Stack Overflow—can help you on your path.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.220.53.93