Advertisement
Perspective

Current Practice in Software Development for Computational Neuroscience and How to Improve It

  • Marc-Oliver Gewaltig mail,

    marc-oliver.gewaltig@epfl.ch

    Affiliation: Blue Brain Project, École Polytechnique Fédérale de Lausanne, Lausanne, Switzerland

    X
  • Robert Cannon

    Affiliation: Textensor Ltd., Edinburgh, United Kingdom

    X
  • Published: January 23, 2014
  • DOI: 10.1371/journal.pcbi.1003376

Reader Comments (2)

Post a new comment on this article

Have any heroic projects actually become public tools?

Posted by jbednar on 28 Jan 2014 at 12:43 GMT

Thanks for the excellent, informative, and insightful article!

I agree that many projects do fit your definition of a "Heroic Model" for software development, where "A researcher begins writing software to address a particular problem. Over time, the software accumulates features and the researcher decides to share it with others".

And I also agree that very few such projects ever become true public tools, usable by others in a variety of contexts. However, of the two exceptions mentioned as having momentum and activity (Brian and Topographica), at least one doesn't really fit the Heroic Model.

Topographica was originally developed using funding from the NIH Human Brain Project, with the explicit goal of making a public tool to replace existing limited, special-purpose tools that had been developed using the Heroic Model. From the start, Topographica was a completely independent implementation focusing directly on making a general-purpose, widely usable tool to solve a broad class of problems. Moreover, it was developed by a (small) team of paid developers, not as part of any single-person research project. Even today, I as "lead author" mainly review code and polish code rather than writing any from scratch; I integrate rather than heroically develop.

So, even though I've been driving its development for long after the initial NIH funding, I don't think it's accurate to consider it an example of an initial heroic effort gradually becoming a public tool by accumulation of features.

One could actually argue the opposite: it was a public tool from the start, possibly even in the dreaded "Capability-driven" category :-), that has been heroically polished and extended to the point where it finally delivers real-world solutions to problems that specific researchers have in their daily work, but based on general solutions (due to its original broad design) rather than ungeneralizable solutions to individual research questions.

So, you may have to look even harder to find a good example of Heroic Model computational neuroscience software becoming a useful public tool!

Competing interests declared: Lead author of the Topographica project (topographica.org).