I have developed a few python packages/methods for handling genomics data, e.g., gene cell filtering, normalization, dimensionality reduction etc.
It depends what exactly you mean by this statement. Did you truly develop new methods and write packages for all these tasks? That seems unlikely given the number of tasks, but maybe that's what it is. In such a case I suggest you create a whole package and make it as easily installable as possible.
Or did you write scripts and/or develop pipelines that utilize the existing packages to perform the tasks you listed? If this is the case, a notebook and/or a plain python script could be enough.
Either way, a good documentation is essential for others to adopt your methodology, especially so in competitive fields with lots of application that are already available.
I often tell my students a story about SAM
and HMMer
, which back in 90s and early this century were pretty much the only two packages for biological applications of hidden Markov models. In my opinion SAM
was a better package, but it was closed source, not updated often, and not well documented. HMMer
was the opposite in all regards, and today it is the gold standard for all HMM applications, while most people have not even heard about SAM
. Not saying that making your software open-sourced and well-documented will guarantee immortality (there are reasons beyond those why HMMer
succeeded and SAM
didn't), but it will make a difference in how your scientific contribution is measured in the end.
Accessibility/usability are top considerations when people look for software to help them analyze data (I am referring to non-programmers/bench scientists). Anything you can do to facilitate that will make your software more accessible. If you have developed something that is currently not available then go the extra step to make your code more accessible.