Yes, Open Source software can be published. What's required varies depending on the venue.
There are general journals that focus on the software process. The idea is to encourage better software development gets the credit it deserves. Examples of journals with this approach are the Journal of Open Research Software and the Journal of Open Source Software.
There are about as many approaches to citing software (and making software citable) as there are software packages.
One way is to create a DOI for your software via Zenodo. This DOI can then be updated for each version of the software. Another way is to write a paper about the design and features of your software and see that it gets published somewhere. ...
Yes. Software can be published as an open source tool with a peer review process. Several tradition-styled academic journals exist. Given the OP's profile, here are some journals that publish R packages, genetics tools, or environmental software:
The R Journal
Journal of Statistical Software
Environmental Modelling and Software
Molecular Ecology Resources
The point of research is the production of knowledge. If, after you take away all the code you’ve written and the datasets you’ve collected, there’s nothing left, then you’re not doing research, you’re doing development.
So, if you want to do artefact-oriented research like this, the question you have to ask yourself is this: what is the new knowledge you’...
One perspective is from the Journal of Open Source Software, which explicitly establishes reviewer guidelines that cover these questions (http://joss.theoj.org/about#reviewer_guidelines).
A (slightly edited) quote of the demands:
There should be an OSI approved license included in the repository.[...]
There should ...
As the discussion underneath this post shows, there is no set of established guidelines within a single subfield, let alone across all academia, as to where to draw the line.
A different, not unrelated question: what are you trying to achieve with this paper?
If it's about trying to properly apportion credit for the work done in producing the software, ...
I have never reviewed an article but as someone that produces software (in bioinformatics) this is what I would like to know from a reviewer, expanding from your list:
Is it downloadable and has a license?
I modified your first point because the code should be available for others and should have a license to known what other users/developers can do with ...
Write a manual and release it as a technical report.
how to deal with the different versions?
Put the version number in the manual's title and have a different version of the manual for every release. (Alternatively, revise the manual every major release or ...)
I don't think it's possible to write just some "changelog"
You could have a CHANGELOG ...
There is no bright line threshold for such things and the answer should be the same as for any scientific paper, hinging on questions of novelty and extension of knowledge. If it doesn't have that, then it probably isn't a good candidate, though the standards of different journals vary widely.
But you seem to describe a small-if-any advance with little ...
You are mistaken in your assumptions. Scientific software is valued and there are now in fact a number of journals dedicated to exactly this -- I know this among other reasons because I happen to be the Editor-in-Chief of the ACM Transactions on Mathematical Software (ACM TOMS). There is (actually: was) also the Computational Science and Discovery journal, ...
I am not sure what field you are in, but to me, this question almost doesn't make sense.
Nothing is equivalent to a paper ... except a paper.
You may as well ask why doing research without publishing it isn't equivalent to a paper. That's just not the model we have.
In my fields, if you publish a library/toolbox, you write a paper on it. If you put up an ...
It can and has been done.
Consider PonyGE2, a Python framework for Grammatical Evolution. It has presented at GECCO '17, a leading conference on genetic and evolutionary computation.
It's not strange that it was accepted; it was devised as a research tool, allowing other researchers to also experiment with GE using a common framework. So while it's perhaps ...
You don't need to drop out of the normal first-person-plural way of academic writing. You can write something like:
Bob e.a.  theorize that (something you disagree with), but we are skeptical because (reasons you disagree). In this paper we offer an alternative hypothesis (your own ideas) and propose experiments to support it.
It doesn't matter ...
There might be research that leads you to build such a library, but coding itself, isn't research. But compilers, for example, were built on a ton of research prior to any coding beyond the experimental.
One often, in CS, does some research first and then builds something to validate the conclusions of the research. But the paper produced is about the ...
Software is a research product has value and is seen as valuable, but you as a researcher need to ensure that you extract the value out of it. Extracting value out of any research product requires doing some kind of formal write up and distributing the ideas among the relevant audience. For software, this is many times in the form of a software publication. ...
This is going to depend a lot on your discipline. Some disciplines are very good at keeping papers and preprints publically available. For example, most math and physics papers get papers put up on the arXiv but this is rarer in other fields. Some other fields put papers up on SSRN, but some fields don't up up almost any preprints.
It isn't clear from your ...
I'm going to accept Buffy's answer, because even if it is not the "here's how
to make it easy on you" answer I'd hoped for, it seems to be the
generally-agreed correct answer.
That said, after a lot of thought (and considering feedback from here) I've
come up with a list that pretty much satisfies me. I guess that everything
after the first two points is ...
As long as the demo paper is not peer-reviewed and not published in any kind of proceedings, this should not count as self-plagiarism because it does not count as a proper publication. I would put it more in the same section as giving a talk about your results.
You should however check the regulations of the conference you originally submitted to. The ...
In my opinion, the right thing to do is to publish a paper to clarify what could have been wrong in the previous work. This adds to the knowledge and invalidating previous results/beliefs is part of the science.
It is a good practice to inform the authors of your findings if you want to make sure as you said:
We also don't have any reason to believe ...
There are different kinds of value. And different people measure it differently.
Scientific research resulting in traditional publications is about extending knowledge. The value is in the knowledge.
Implementation is normally about building a product of some sort, whether commercial or not. But to implement something for which the knowledge is already ...
Yes, you can publish a paper, if
you have new ideas in your software that you developed yourself.
the ideas have not been published by you before.
If other people who have used your software also documented your ideas, cite them.
I have only written but not reviewed such a paper yet. My personal perspective comes from the fields of complex systems and scientific computing, but I offer some generalisable ideas.
I structure my answer by the typical criteria applied to research papers:
This is arguably the most difficult-to-translate and most field-dependent aspect.
Some journals give free access to articles after publication for limited time.
If you need older articles:
google scholar crawls open copies and arXiv
researchgate (ask directly the corresponding author for a copy)
Read the according thesis if available, but often thesis are publicly published on university servers
I published a paper on a Python package myself.
Finding a journal
My main recommendation is to start looking for a journal now, even before you start writing.
Unless journals in your particular subfield of choice is very open to software papers, there are likely only a few journals you can choose from and those may have special requirements.
The actual answer mainly depend on the specific journal/conference/workshop. My own experience is from High Performance Computing - there may be some field-dependent common practices, but I think most of it will be similar.
The main thing I see differently is that you are not reviewing the tool, you are reviewing the paper. Also a paper about a tool is not ...
Based on what you say, I believe ethically you would be listed as an author on the grounds that data analysis in an integral part of research. At least, this is what I would do. I would do this trying to keep things professional even if personally I came to dislike the software developer.
However, in practice, it may depend on the contract you signed. If ...
It really depends on what library you are building. If building your Python library involves innovating in software engineering methodology, generating new insights to how software works, developing and implementing a new algorithm, or tackling a previously difficult task elegantly, then surely it is a valuable research project. Building Tensorflow, for ...
Have a look at this page:
They give a source they would like to be cited when using their modules. I have seen similar things for other libraries (I cannot remember where, unfortunately) not only for Python. So obviously there is a realistic chance to have a paper published if you have a library that is really helpful to many ...