Skip to main content

Asking Questions

Often trainees at Code Your Future find it difficult to get help. This is because we are dealing with complicated questions that people need lots of details about to be able to answer. To debug code, mentors need to be able to see and work with the exact code you are running. To help solve problems, mentors need to understand the exact problem you are working on. So when you ask questions, to get proper help quickly, put as much context into your question as you can.

In order to make it possible for people to answer your questions when asking for help, it's important that you give, at minimum, the following information:

  • The homework that you're working on
  • What isn't working in your code, or what you don't understand
  • What you expect to happen
  • A link to your pull request or Gist or Replit (not a screenshot)

Use this template:

Request for help

Coursework:

Problem:

Expected:

Code:

For example

Request for help

Coursework: HTML-CSS Module Project (Karma Clone)

Problem: The headings on my website don't look right.

Expected: The heading should be much bigger than the other text on the page. I've tried to use a H1 tag but it doesn't seem to do anything.

Code: https://github.com/CodeYourFuture/HTML-CSS-Module-Project/pull/1234

Question Check List

Before asking a questions make sure that you've completed all of these steps

  • Have you done some research before asking the question?
  • Have you explained what you’ve already tried to solve your problem?
  • Have you specified which language and platform you’re using, including version number where relevant?
  • If your question includes code, have you written it as a short but complete program?
  • If your question includes code, have you checked that it’s correctly formatted?
  • If your question doesn’t include code, are you sure it shouldn’t?
  • If you get an error message, have you included the exact error message?
  • If your program throws an exception, have you included the exception, with both the message and the stack trace?
  • If your program produces different results to what you expected, have you stated what you expected, why you expected it, and the actual results?
  • Have you checked that your question is formatted so it is readable and clear?
  • Have you checked the spelling and grammar to the best of your ability?
  • Have you read the whole question to yourself carefully, to make sure it makes sense and contains enough information for someone coming to it without any of the context that you already know?

After you've asked your question you should check

  • Are you monitoring your questions and replying to people giving their time to help you?
  • Have you been asked for a Minimum Reproducible Example?
  • Have you posted an easy to understand answer to your questions that includes everything you learnt

By completing all of these steps you make it really easy for other students to learn from your question and for you to get help quickly. Together, you and your colleagues will build up a shared knowledge base you can search and share.

You also make yourself a better developer. Describing problems clearly and systematically is an important skill for a developer.