We want to continually improve the quality and reliability of our software.

We love coding… and want to have fun!

If you have any thoughts or ideas for improvement, then please create a pull request here:

Our current method of working is as follows:

Daily Meeting

Before starting work each day, please send a daily meeting email. The email should have three headings:

  1. Yesterday. What did you do yesterday (or what was the last piece of work you did for us)?
  2. Today. What do you expect to do today?
  3. Concerns. Are there any impediments in your way? We will review your email and see if we can do anything to help.


Code snippets for a fix or update to be installed in the Private folder for the client in a folder or rst file e.g. for ticket 706, Shop, make a file 706-stop.rst.


As of 20/10/2016, we don’t have a simple way to sync changes to our Private folders.

Record Time

Please fill in a daily time sheet and submit each week. We will pay your agreed hourly rate based on the time-sheet.


If you have access to our CRM system, then please record time against the project ticket.


Unit Testing

We practice test-driven development using We aim for a minimum level of coverage.

See Code Standards for the percentage.

Preventing regressions

Tests must be written when a bug is found and used to prove it has been fixed.

Pull Request

Please make changes to the code by creating a branch and then a pull request.

We create a branch as follows:

git checkout -b 488-time-management


In this example, 488 is the ticket number and time-management is a short description of the feature.

We aim to create short-lived branches and merge them quickly back into the master branch. Another member of the team will review the work before merging the code back into the master branch.

Commit early, commit often

Please code in small units of work and commit after each change. For more information, see Workflow.

After each section of work is complete, it should be committed to the code repository.

At a minimum, the code will be committed at the end of each morning, afternoon or evening irrespective of whether it is complete or not.