So ... there's a lot here, but I'll try to keep this concise.
In nearing the end of my dissertation / doctoral studies, I'm in that interesting position where one inevitably looks back and says "man, what do I wish I didn't have to learn the hard way?" It turns out that this list is already heart-breakingly long, and mostly consists of those three points named in the title:
- Reproducible research -- shared data, shared code, distributed collaboration, planning for project lifespans, software reuse / reusability, data archival, etc.
- Modern workflows, tools, and technologies -- how does one train an online learning algorithm with more data than fits in memory, hm??
- Other best practices -- code reviews, unit tests, and all that stuff "real" developers do
These things are obvious in once you know them, but it's perspective I didn't have coming from an electrical engineering background; and, given the interdisciplinary nature of the ISMIR community, I'm certain many others are or were in the same position. There are a lot of methods we (and I) should be doing that we just don't know about, and I would love to leverage the wisdom of the crowd to fix this.
Simply put, there is a growing body of MIR research that consists of two different skill sets --scientific rigor and software development-- and I would absolutely love to compile all the know-how about the latter in one place. It could serve as a welcome guide / manual for MIR researchers, regardless of academic status, and would be an invaluable resource to pass on and update over time.
Me-from-five-years-ago wants this desperately. I'm sure past-you does too.