Skip to content

Latest commit

 

History

History
executable file
·
111 lines (92 loc) · 3.91 KB

developer-info.md

File metadata and controls

executable file
·
111 lines (92 loc) · 3.91 KB
layout title
default
Developers

Information for developers: Standards, guidelines, and tools

Code


Mailing lists

To join the developers mailing list, send an email to majordomo@lists.llnl.gov with the following in the body:

subscribe esgf-devel	

(For the users mailing list, see the mailing list page.)

Other Mailing lists for developer Working Groups


Standards

  • NO TABS; instead use 4 spaces

    • For background behind this issues check out this or that site
  • Java

    • For Java code please follow the Java Style Guide

    • For those of us special enough to use emacs, here is the .emacs entry to enforce space standards:

        (setq c-basic-offset 4)
        (setq tab-width 4)
        (setq indent-tabs-mode nil)
        (setq-default c-basic-offset 4)
        (setq-default indent-tabs-mode nil)
        (defun my-java-mode-hook ()
        (setq c-basic-offset 4)
        (setq indent-tabs-mode nil))
        (add-hook 'java-mode-hook 'my-java-mode-hook)
      
  • Python

Guidelines

  • Do not javadoc with @author tag.
  • Never commit into the repo what can be generated

Tools

Manifesto

Described here the inspiring principles according to which ESGF software modules should be developed:

  • Modularity
  • API, loose coupling
  • Open source
  • Open development
  • Configurability, interfaces, plugins
  • Layered applications
  • Support for multiple languages (Java and Python)
  • Agile: rapid prototyping, frequent demos and feedback, iterative development, reponsiveness