why is key academic software not open source?
Because people do the minimum required to get publications (and/or money), and cleaning up source code (so it can be exposed to the world) is a lot of work. This is especially the case if the code depends on other libraries with various different software licenses.
One of the ways to help fix this problem is to place restrictions on publication, so that open source licences are required for software. F1000 Research has just changed their policy to do this:
We recently strengthened our stance on software availability to better align with our Open Science principles. Now, the source code underlying any newly presented software must be made publicly available and assigned an open license. We strongly encourage the use of an OSS approved licence, but will accept other open licenses including Creative Commons. Software papers describing non-open software, code and/or web tools will be rejected.
The current situation demonstrates that forcing these licenses is required in order to get people to use them. BMC Evolutionary Biology already had a recommendation for open source licenses in its policy:
BMC Evolutionary Biology recommends , but does not require, that the source code of the software should be made available under a suitable open-source license that will entitle other researchers to further develop and extend the software if they wish to do so. Typically, an archive of the source code of the current version of the software should be included with the submitted manuscript as a supplementary file. Since it is likely that the software will continue to be developed following publication, the manuscript should also include a link to the home page for the software project. For open source projects, we recommend that authors host their project with a recognized open-source repository such as bioinformatics.org or sourceforge.net