## SectionA.3Feature Requests and Reporting Problems

We welcome feature requests and of course problem reports. The best way to make Runestone Academy better is to listen to the people who are using it every day.

We use the Github issue tracker extensively for proposing and discussing new features as well as for reporting and investigating bugs. This is the place to report problems. Github is well known and trusted and it is free to sign up. Please do not use personal email to report problems.

• It is not that we do not like to engage with people one-on-one it is simply a matter of trying to optimize our time. Many many bug reports are duplicates, for which there are already documented workarounds on Github if you just take the time to search.

• Part of being an open source project is that we do our work in the open, and try to leverage the efforts and knowledge of the entire community. Sending a personal email to me may be satisfying or easy for you, but in many cases there are others who can help and fix the problem just as fast or faster than I can.

• For every problem that can be fixed by someone else that leaves me more time to work on the really hard problems that other people cannot.

When reporting a problem please please take the time to give us some context and some details. Telling me that X does not work doesn’t really help. The truth is runestone.academy gets over 500,000 page views a day from people around the world. So most of the time when someone says “X does not work” it does in fact work fine for most people. This does not make it your fault, it just means I need more information to try to make sense of what is going on. Here are a few tips.

• What Task are you trying to accomplish? Understanding your goals is really important as sometimes its not obvious how to do something on Runestone

• What steps did you take to try to accomplish that task? Walking me through the steps gives me valuable context and saves me TONS of time in trying to recreate what went wrong.

• Specifically what went wrong? What error message did you see? What exactly did happen that you think should not have happened. You can speculate about what you think is broken, but often you will be wrong and misleading. Just the facts is a great policy.

• Give some context about your environment. What course are you in? What is your username? What page of the course? Specifically what exercise does not work? Each activity has a unique identifier. please include that. What browser are you using? What version of the browser. (Runestone relies on many modern features of Javascript that are only present in new-ish browsers) We can not test every browser so if you are using something outside of Chrome, Firefox, Safari, or maybe Edge it is likely that I have not tested it there.

• If there is a traceback on the page, please copy it and include it in your Github Issue. Many many errors can be quickly diagnosed from the Javascript Console error log.

• Chrome: View --> Developer --> Javascript Console

• Safari: ⌥⌘i or Develop --> Show Web Inspector

• Firefox: Tools --> Web Developer --> Toggle Tools

Please note, I'm not trying to be rude, but years of observation have taught me that CS teachers are pretty bad bug reporters! Imagine if a student sent you the following email:

Hey,

You know problem 2 for the homework next week.
My program just doesn't work.  I'm pretty sure
I've done everything right.  Can you tell me how
to fix it?

Thanks,

Student


You wouldn't be able to help this student very much, in fact you probably wouldn't have any idea what program that student was even asking about without spending your own valuable time figuring it out. Sadly, It is a pretty good representation of thousands of bug reports I've received. So please, take a few seconds and read or re-read Filing an effective bug report. Thanks.