• Read and understand the Architecture overview
  • Follow the guidelines for Error handling
  • Use OpenTox methods get, post, put, delete instead of RestClientWrapper or RestClient
  • Define gem dependencies (and versions if necessary) in the *.gemspec file (not in the Gemfile, otherwise gems won't install properly without bundler)
  • Add tests to opentox-test for your new features
  • Make sure that all tests in opentox-test pass before committing to an official branch (development, master)

Try to reduce complexity in order to keep the system maintainable and stable:

  • Follow the DRY principle
  • Avoid dependencies (e.g. gems, backends), but don't reinvent the wheel
  • Implement only required/requested features, avoid features that “might be needed someday”
  • Avoid workarounds imposed/requested by other webservice developers. Get in contact with them and convince them to adhere to agreed API standards. Make recommendations to improve APIs if they lead to overly complicated implementations.
  • Revise design decisions and refactor if you observe that code is accumulating due to former decisions
  • Write clear, self documenting code


blog comments powered by Disqus

Published

07 February 2013