Getting Help

Revision as of 00:21, 12 January 2021 by A.heerdegen (talk | contribs) (Added best practice stuff and user expectations)

Introduction

Part of the role of the CMS team is to support members of CLEX with computational isues such as those arising with running models, accessing data and analysising data.

The CMS team supports a range of models (listed in the navigation bar on the left\ hand side of the page). We can provide assistance for other models, but this will be limited in scope and dependent on the availability of team resources. We also support analysis and other general conputing tasks on NCI machines. We can provide general advice for activities undertaken at other sites, or on home machines, but this is necessarily limited as we have no control over, or familiarity with other systems.

There are a number of different ways to contact the CMS team to get support:  

The slack workspace is a good way to contact other CLEX members as well as the CMS team. It is best suited to shorter less complex queries in general. There are a number of channels focussing on different topics. When asking for help it may be that someone else from the Centre will have some useful feedback.

The help desk email is the preferred method for requesting help, as the CMS team members take turns to monitor the helpdesk and triage any queries to allow time for other activities. We also cover for team absences.

Guidelines for help requests

When seeking assistance there are some steps that should be taken to make the most efficient use of everyone's time:

  • Include all relevant information, for example if a command produces an error make sure to include the exact command run, including all arguments, or the path to the script being run, the directory where the command was executed and if relevant, the modules that were loaded, or environment variables that were set
  • Please check to make sure any specified directories and/or files have group permissions set such that they can be accessed
  • Where appropriate reduce your query to a minimal reproducible example (Stack Overflow has a nice description of what this means, note that the formatting requirements are redundant)
  • Upload any code to gist.github,com or for more complex examples create a GitHub repository 
  • Please do not send code or error messages as screenshots or poorly formatted text 
  • Please submit new help requests for substantially new queries and not just append to existing queries. This makes sure any new query is visible to all team members, and can be triaged appropriately. We also have the satisfaction of completing a task rather than have it drag on interminably

To foster best practice software developement for code housed in a GitHub repository (or similar) the following steps are preferred: 

  • Create an issue in the repo for the bug/problem
  • Add a test for the specific bug where appropriate
  • Document solution in the issue and refer to commits/pull requests: this creates a tight link between discussion of the problem and potential solutions with the code changes made to address points raised in the discussion
  • Resolve issue through a pull request mechanism
  • Close issue when fix has been committed

What can users expect

Users can expect:

  • to receive a reply to a query within 2 hours during normal business hours
  • have their problem solved if it is within scope, or a work-around suggested, and if not then an explanation of why their problem is currently not solvable
  • where an update is required for a current ticket to wait no longer than a week during a non-holiday period

If any of the above expectations are not being met contact the CMS team.