Promoting transparency in science
- Berkes, P. (2006).
Test suites in scientific research.
Tea talk given at Gatsby.
- Berkes, P. (2005).
Risks and benefits of an open-source science: is it possible to make research freely available?
Talk given at the Institute for Theoretical Biology, Berlin.
- Sonnenburg et al. (2007). The Need for Open Source Software in Machine Learning, Journal of Machine Learning Research, 8, 2443-2466.
- A recent issue of Nature has an editorial and four articles in the News Feature section that comment on the future role of web tools (blogs, wikis) and data sharing in science. The editorial suggests to make scientific data publicly available under the Creative Commons licence. Nature 438 (7068)
- "Recommendations of the Commission on Professional Self Regulation in Science - Proposals for Safeguarding Good Scientific Practice", Januar 1998, Deutsche Forschungsgemeinschaft. (pdf)
- "Guidelines for good scientific practice", Danish Committees on Scientific Dishonesty, 1998.
- Guidelines for Data Documentation, "Annual report 1994", Appendix 4, Danish Committees on Scientific Dishonesty, 1994.
- The annotated bibliography on professional ethics for scientists has a section dedicated to computer science and software.
- "On begin a scientist" is a booklet for graduate students and beginning researchers published by the National Academy of Sciences (1989). It contains some basic reflections about publishing and sharing scientific data.
- David Goldberg (1991). "What Every Computer Scientist Should Know About Floating-Point Arithmetic", ACM Computing Surveys (CSUR), 23(1), pp. 5-48.
- Appendix on Floating Point Arithmetic: Issues and Limitations from a Python perspective.
- Numerical Recipes homepage.
Data and code management
- Introduction to scientific data management, with many useful links.
- Wikipedia article on the Extensible Markup Language (XML).
- HDF5 is a file format for storing scientific data. PyTables is a Python interface to the HDF5 libraries.
- CVS and Subversion are widely used version control systems.
- Wikipedia article on unit testing.
- List of unit testing frameworks for most programming languages.
- py.test is a new python unit testing framework. It seems to be more flexible than unittest.
- Pair programming is one of the twelve Extreme Programming practices. It has been shown to lead to code with less errors and more structure. It's a lot of fun as well, although quite uncommon in a scientific environment.
Open-source scientific software tools
- SciPy is an open source library of scientific tools for Python.
- Octave is an open-source clone of Matlab.
- The VISIOME platform is an ambitious project focusing on neuroscience and the visual system. The repository contains reprints, software, and data.