├── README.md └── process.md /README.md: -------------------------------------------------------------------------------- 1 | # Problem Solving 2 | 3 | Congratulations, you are one step closer to getting your issue resolved! Make sure you are familiar with the [PreCourse problem solving process](process.md) before proceeding. 4 | 5 | ## How to use this repo 6 | 7 | 1. Got to https://github.com/makersacademy/problem-solving/issues 8 | 2. Click on "New issue" button 9 | 3. Write your issue, following the guidelines 10 | 11 | ## Guidelines 12 | 13 | You're stuck, you want to become unstuck. To increase the likelihood of this, make sure your issue has: 14 | 15 | 1. **Descriptive title** 16 | * :x: Somebody please heeeeeeelp! 17 | * :heavy_check_mark: Git error when pushing to remote repository 18 | 19 | 2. **Descriptive message** 20 | * :x: I'm stuck on the thingy 21 | * :heavy_check_mark: Error logs, screenshots & links to your code 22 | * what’s the issue? 23 | * why did it happen? 24 | * what have you tried? 25 | 26 | ## Participation 27 | 28 | * DO post a solution to the problem if you figure something out 29 | * DO upvote/comment on an issue if you're also having it so issues can get prioritised by number of people it's affecting. It's likelier to be resolved faster 30 | 31 | 32 | ## Searching issues on Github 33 | 34 | Learn how to use advanced operators to help you to filter the issues to ones relevant to you. Remember that you can look at any previously closed issues for answers and even reopen them if they don't have a solution for your problem. 35 | For more information check out the Github guides: https://help.github.com/articles/searching-issues/ 36 | -------------------------------------------------------------------------------- /process.md: -------------------------------------------------------------------------------- 1 | # Problem solving process 2 | 3 | You're going to get stuck. And then, once you find a way to get unstuck, you'll find yourself stuck on something else. Welcome to the world of software development! Joking aside, it's normal to encounter problems that seem to difficult to solve. What you need to learn (and you WILL learn it) is how to get answers to your questions as quickly as possible and then move on. This is a crucial skill to develop and you should start now. So we have the following process within Makers Academy that we recommend you adopt. 4 | 5 | ### Step 1: Keywords 6 | 7 | 1. Try to gather some words about the problem, even in vague terms. "It's broken" is not a problem description. 8 | 9 | 2. *Isolate Keywords.* Gather a small group of keywords that describe the problem area, like `Array`, `merge conflict`, or `Terminal`. 10 | 11 | 3. *Isolate Error Keywords.* If you have an error message, identify and add these keywords to your results. 12 | 13 | ### Step 2: Google it! 14 | 15 | Research the problem using your keywords. Also use the keywords to identify relevant results (i.e. not just the first one) 16 | 17 | You're going to become an expert in googling things. 90% of the time, you'll find a solution to your problem somewhere in the internet. Think about it, it's VERY LIKELY that someone else out there has experienced the same question, error or mind-boggling issue as you. 18 | 19 | ### Step 3: Open a GitHub issue/Slack 20 | 21 | https://github.com/makersacademy/problem-solving/issues/new 22 | 23 | So couldn't find a solution to your problem or maybe you're unsure that you found the right one. That's fine, time to ask your cohort for help! Some of them might've stumbled upon something you haven't and maybe they'll have an answer for you. The way you go about it is to open a github issue here in this repo. Make sure you explain yourself clearly: 24 | 25 | - what’s the issue? 26 | - why did it happen? 27 | - what have you tried? 28 | 29 | **REMEMBER: show the *code* and *relevant output* (error messages, log, display, screenshots, etc.)** 30 | 31 | Then, *and this is important*, anyone who wants to help, whether to suggest an answer or to ask a clarifying question, should make a **comment on the issue**. Once the question has been answered, the person who opened the issue should say so and close the issue. 32 | 33 | Any opened issue and following comments will be posted instantly on your cohort's slack channel, so everyone is kept in the loop. 34 | 35 | ### Step 4: Reach out to mechacoach! 36 | 37 | If everything else fails, and only then, reach out to mechacoach. But a word of warning, don't be disappointed if the answer comes as more questions. 😉 38 | 39 | *How do I use it exactly?* Just write a normal message in your cohort channel and mention `@mechacoach` somewhere! 40 | 41 | *What does it do?* mechacoach is a slack userbot which listens for specifically `@mechacoach` mention events and then fires a request to our mechacoach app with the event data. The app then takes some of the data and forwards it to the channel #coaches where the coaching team will be monitoring it from **9:30am - 12:30pm.** 42 | --------------------------------------------------------------------------------