NetCDF
Status Report: September 2013 - April 2014
Russ Rew, Ward Fisher, Dennis Heimbigner
Strategic Focus Areas
The netCDF group's activities support Unidata's strategic goals in the
following ways:
- Enable widespread, efficient access to geoscience data
by developing netCDF and related cyberinfrastructure solutions to
facilitate local and remote access to scientific data.
- Develop and provide open-source tools for effective use of
geoscience data
by supporting the use of netCDF and related technologies for
analyzing, integrating, and visualizing multidimensional geoscience
data; enabling visualization and effective use of very large data
sets; and accessing, managing, and sharing collections of
heterogeneous data from diverse sources.
- Provide cyberinfrastructure leadership in data discovery, access,
and use
by developing useful data models, frameworks, and protocols for
geoscience data; advancing geoscience data and metadata standards
and conventions; and providing information and guidance on emerging
cyberinfrastructure trends and technologies.
- Build, support, and advocate for the diverse geoscience
community
by providing expertise in implementing effective data management,
conducting training workshops, responding to support
questions, maintaining comprehensive documentation, maintaining
example programs and files, and keeping online FAQs, best practices,
and web site up to date; fostering interactions between community
members; and presenting community perspectives at scientific
meetings, conferences, and other venues.
Project and Issue Tracking
We use a project tracker tool to manage bug reports, track issues, plan releases, and make our development process more transparent to users. Between 25 September 2013 and 13 March 2014, we created 24 new issues, updated 11 issues, resolved 23 issues, and we currently have 77 open issues. (Note: issues vary greatly in size and effort required to resolve, so number of issues is not a useful measure of amount of work to do.)
The migration to a CDash-based test dashboard has proved successful. It has provided a large amount of flexibility with regards to the types of systems we perform our tests on. This has lead to the squashing of a number of bugs which only manifest on particular platforms or architectures.
Releases
The netCDF-C 4.3.1 release was made available on 2014-02-05, following 6 release candidates (three of which were made after presenting the last status report). Since then, a bug-fix release (4.3.1.1) was made to address several DAP-related issues in the 4.3.1 release. The 4.3.1 release included various bug fixes, as well as portability, performance, and documentation enhancements, as described in the latest Release Notes. Evidence for improved collaboration includes several git "pull requests" from community developers contributing fixes, as well as increased incidents of issue reporting via the github
issue-tracking system.
We are currently preparing for the upcoming 4.3.2 release.
Collaborations
Jeff Whitaker (NOAA/ESRL) has developed netcdf4-python, a widely used Python interface to netCDF-4. In February, Unidata agreed to help migrate and host netcdf4-python on Unidata's GitHub site. This has already encouraged new contributions and collaborations that are leveraging the efforts of other Python developers to improve and extend the software.
Planned Activities
With Russ having gone to half-time on 1 October, the C-based netCDF project
(which includes Fortran and C++ libraries, as well as netCDF utilities)
is working with reduced resources, from 2.5 FTE to 2.0 FTE.
Ongoing Activities
- Respond to support questions and help requests from netCDF users.
- Improve support for netCDF on various platforms.
- Incorporate successful features of netCDF-Java into C-based libraries.
- Respond to needs of a growing user community for representing
observational data, satellite products, and geoinformatics data.
New Activities
During the next six months, we plan to continue efforts to
- finish CMake support on Linux for netCDF-Fortran
- expand Windows support and implement Doxygen-generated documentation for netCDF-Fortran
- improve Python example programs for netCDF-4
- decide whether and how to continue maintenance of netCDF-4 C++
- work on backlog of other unresolved issues entered into Jira for netCDF-C and netCDF-Fortran
Metrics
During the last 8 months, there were 65,300 downloads from 134 countries of the C-based netCDF software from Unidata, in addition to downloads from mirror sites, package management systems, and incorporation into other software packages. Detailed metrics, including for netCDF-Java/CDM, are available.
Other metrics, with comparisons from 6 months ago, include number of
- Google hits for "netcdf-3": 828,000 (638,000 in October 2013)
- Google hits for "netcdf-4": 759,000 (605,000 in October 2013)
- Blog mentions of netCDF: 22,100 (22,800 in October 2013)
- Google scholar entries for "netcdf": 11,000 (9,960 in October 2013)
- Books containing the term "netcdf": 7,610 (8,330 in October 2013)
- Mentions of netCDF in patent applications: 1,110
- Free software packages that can access netCDF data: 82
- Commercial software packages that can access netCDF data: 23
- Coverity estimate, defects per thousand lines of code: 0.87 (1.18 in October 2013)
Prepared March 2014