Upgrade to Pro — share decks privately, control downloads, hide ads and more …

StackOverflow 101

StackOverflow 101

Related to the session conducted at Faculty of Information Technology, University of Moratuwa on 2021/06/24, focusing on raising awareness among undergrads regarding stackoverflow.

Nishan Chathuranga

June 24, 2021
Tweet

More Decks by Nishan Chathuranga

Other Decks in Programming

Transcript

  1. NISHAN WICKRAMARATHNA Software Engineer 99X (Pvt) Ltd. University of Moratuwa

    Faculty of Information Technology [email protected] @NishanTheDev NishanChathuranga
  2. TABLE OF CONTENTS INTRODUCTION The basics IN DEPTH Going beyond

    basics 01 03 02 04 05 06 GOOD PRACTICES Right way to do it HOW TO ASK Guidelines on how to ask question HOW TO ANSWER Guidelines on how to answer questions Q/A Any questions? CLICK ON ICONS FOR ADDITIONAL INFORMATION
  3. Founded in 2008, Stack Overflow’s public platform is used by

    nearly everyone who codes to learn, share their knowledge, collaborate, and build their careers. WHAT IS STACKOVERFLOW? “Helping developers and technologists write the script of the future.”
  4. ASKING QUESTIONS ! “At Stack Exchange, we insist that people

    who ask questions put some effort into their question, and we're kind of jerks about it. That is, when you set out to ask a question, you should … o Describe what's happening in sufficient detail that we can follow along. Provide the necessary background for us to understand what's going on, even if we aren't experts in your particular area. o Tell us why you need to know the answer. What led you here? Is it idle curiosity or is this somehow blocking you on a project? We don't need your whole life story, just give us some context here. o Share your research on your problem; what have you found so far? Why didn't it work? And if you didn't do any research … should you even be asking? If you're inviting us to spend our valuable time helping you, it's only fair that you put in a reasonable amount of your valuable time into crafting a decent question. Help us help you!”
  5. Ask a question on Stack Overflow when you have a

    problem, not when you need help. "Help" means that you need someone to guide you through something, what you might get out of a book or a well-written tutorial. When you need to engage in a dialog with someone about the matter before you can understand it. Stack Overflow is ultimately for problems, not for getting "help" in this regard. Ask us a question when you have an actual problem in your source code. As a beginner, you're inclined towards needing help a lot more than problems. Ask when you have actual code that isn't working, not when you need to "get started".
  6. LET’S BREAKE IT DOWN Step 1: If applicable, research any

    core documentation + tutorials associated with your problem. Step 2: Research your question on Stack Overflow (questions, answers, and comments if you can). Step 3: If no results return from step 2, do enough extra research to formulate a specific, well-written, on-topic, and objective question. Step 4: Ask. If you have a question about , ask on
  7. ALSO KEEP AN EYE OUT FOR FOLLOWING.. Don’t ask already

    answered questions (duplicate questions) - the fundamental goal of closing duplicate questions is to help people find the right answer by getting all of those answers in one place. If your question is not related to computer programming, don’t ask it on stack- overflow, go to that specific site - each community decides which specific topics are and are not allowed on their site. Don’t ask opinion based or broad questions: this question is likely to be answered with opinions rather than facts and citations. It should be updated so it will lead to fact-based answers.
  8. WHAT IF I DON’T FOLLOW THOSE GUIDELINES? Questions that need

    additional work or that are not a good fit for this site may be closed by experienced community members. Closed questions cannot be answered, but can be edited to make them eligible for reopening. If your question is closed, you will receive private feedback on the reason why it was closed.
  9. SO WHAT IS REPUTATION? Reputation is a rough measurement of

    how much the community trusts you; it is earned by convincing your peers that you know what you’re talking about. The more reputation you earn, the more privileges you gain and the more tools you'll have access to on the site - at the highest privilege levels, you'll have access to many of the same tools available to the site moderators.
  10. Reputation is entirely optional The three most important activities on

    Stack Overflow are Asking, Answering and Editing - none of which require any reputation at all!
  11. NOTABLE PRIVILEGE MILESTONES 10 Remove new user restrictions Post more

    links, answer protected questions 15 2,000 500 20,000 Access review queues Access first posts and late answers review queues Trusted user Expanded editing, deletion and undeletion privileges Edit questions and answers Edits to any question or answer are applied immediately Vote up Indicate when questions and answers are useful
  12. +10 +10 +15 Question is voted up Answer is voted

    up Answer is marked “accepted” (+2 to acceptor) +2 Suggested edit is accepted (up to +1000 total per user) You gain reputation when: You lose reputation when: Your question is voted down: −2 Your answer is voted down: −2 You vote down an answer: −1
  13. PUT WHAT YOU HAVE TRIED OUT Clearly explain what you

    have tried out/ your research on the question… ..and what you want as output.
  14. ASK DESCRIPTIVE QUESTIONS Provide a good description, don’t just post

    code samples, provide background/ steps to reproduce if applicable. • Tables • Proper formatting • Runnable code sample (both for Q/A) • Use tags properly
  15. DIFFERENT QUESTIONS > ONE ANSWER Do this when you come

    across two questions that looks different but you think the same answer can solve both issues. Do this only if the two questions are not duplicates. [Example duplicate question] Q Q A
  16. DIFFERENT ANSWERS > ONE QUESTION Q A A Most common

    case, a single question can have multiple answers in different environments/ different contexts.. Sometimes there can be different ways to do the same thing in the same environment as well.
  17. OPPOSITE QUESTIONS Sometimes you might have a question which is

    the opposite of an existing question, If that is the case you can link the existing question and ask your question.
  18. OLD QUESTIONS > NEW ANSWERS Due to change of versions/

    new updates/ changing technologies, there could be new answers to old questions.
  19. FEW MORE THINGS.. ✓ Use proper formatting (code): clean questions/

    answers are always easy to read and understand. ✓ Start with your specialty: be an expert in one area, so you have a good understanding on how to ask/ answer ✓ Watch tags: keep an eye out for tags ✓ Have few example projects ready to go on your PC. ✓ Use JSFiddle/ .NetFiddle/ Google Colab like online compilers/platforms for demos ✓ Provide links where versions/documentations are important ✓ Give detailed explanations when answering without just posting code
  20. At the end of the day, your end goal should

    be to help others and build a better community, not reputation. It could either be one of your batch mates, one of your team member, a friend or a stranger, help everybody as best as you can, without expecting anything in return, not only on StackOverflow, in real life as well, and you will be rewarded for sure.
  21. Does anyone have any questions? [email protected] @NishanTheDev linkedin.com/in/nishanchathuranga THANK YOU

    © 2021 StackOverflow 101 by Nishan Wickramarathna is licensed under CC BY 2.0
  22. “You can't wait until life isn't hard anymore, before you

    decide to be happy..” Nightbirde on AGT Stage Jun 9, 2021