Coder Social home page Coder Social logo

wtsi-software-policy's Introduction

wsi-software-policy

WSI software policy and boilerplate headers.

How to use boilerplate headers

  1. Clone the git repository, either from Github or from the internal git server (e.g. git clone git:/repos/git/ic/wtsi-software-policy.git).
  2. Change to the boilerplate directory (e.g. cd wtsi-software-policy/boilerplate)
  3. Type make to build boilerplate headers for a variety of languages (sed is required to be in the path for this step)
  4. Copy the appropriate header into your project and customise as required.

wtsi-software-policy's People

Contributors

jmarshall avatar jrandall avatar mcv21 avatar sersorrel avatar tcutts avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

wtsi-software-policy's Issues

Intended meaning of "Author: PROGRAM-AUTHOR <EMAIL>"

The prescribed boilerplates in Appendix A all include the following line:

Author: PROGRAM-AUTHOR <EMAIL>

The appendix notes that PROGRAM-AUTHOR and EMAIL should be "substitut[ed ...] as appropriate", and that "including the email address (EMAIL) is optional". The second-to-last paragraph of §1 perhaps also refers to this Author line (as emphasised):

The standard boilerplate header for each of these licenses is given in Appendix A, which in the case of LGPL, GPL and AGPL includes a link to the primary web site documenting the full license. Any of these licenses is acceptable as satisfying requirements above, so long as the copyright is assigned to Genome Research Limited and the author(s) names are given.

Searching the document for "author" suggests that the sort of substitutions that are intended to be made for PROGRAM-AUTHOR and EMAIL are not further described.

I can think of at least two possibilities for what this Author line might be intended to signify:

  1. The name (and optionally email address) of the particular person who did the creative work of inventing and writing the code in the particular source file. (Or where several people have contributed over time, the original author or the author of the majority of the code or perhaps several authors.) This would serve as a form of academic credit --- similarly to authorship on papers, and potentially useful to the individual for the advancement of their career --- and perhaps also relate to the idea of moral rights in European copyright tradition.
  2. To provide a contact name and address, so that the eventual recipients of the code can contact the maintainers of the program. For example, this might be a group or helpdesk address, to maintain a point of contact when the original individual contributor has moved on.

(The email address being optional would seem to make (2) a less likely interpretation. And perhaps there are other possibilities...)

It would be useful if the document explained how this Author line is to be used. Some questions that an explanation would ideally provide answers for are:

  • Whether PROGRAM-AUTHOR is to be the name of an individual person
  • The circumstances under which it would be appropriate to remove an Author line and PROGRAM-AUTHOR from a source file (perhaps when the entire contents of the file have been substantially replaced by new code)
  • The circumstances under which it would be appropriate to add a new PROGRAM-AUTHOR to a source file (perhaps when a new individual has added substantial new code)
  • Whether there should ever be more than one PROGRAM-AUTHOR in a single source file's boilerplate --- §1's penultimate paragraph's "author(s) names" suggests that there may be, but the appendix gives no examples of how this should be formatted.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.