Chris Cannam, 2011-12-01 03:51 PM
h1. Why should I use code.soundsoftware.ac.uk?
h2. I'm happy keeping my research code on my own computer!
_Why should I use a website to manage it?_
* *Version control* helps with history tracking and collaborative work
"See this article":http://soundsoftware.ac.uk/why-version-control for more about why using a proper version control system is a good idea that will make your day-to-day work easier and less stressful.
"Watch these videos":http://easyhg.org/videos.html to get an impression of how straightforward it is to use a version control system: the small amount of time you spend getting started is very quickly recovered as time saved keeping track of your code, even for the smallest and simplest projects. And you can start using version control easily even for code you are already working on.
* *A shared environment* helps you work on code and papers with colleagues
You can set up a private project on this site and then add to it any colleagues at your own or other institutions that you want to work with. This is helpful not just for software but for working on papers in text formats like LaTeX as well.
And even if it's just you working on the same software on more than one computer, it helps to have a shared server to manage your code on.
* *Project management facilities* make it easier to keep track of all the things you have to do
With every project on this site you can switch on a number of optional modules. They include a shared wiki editing environment for developing ideas with others and publishing them easily (the page you're reading now is part of a normal project wiki), issue trackers, a calendar, and a space for attaching files to download such as software builds or accompanying data.
h2. Aren't there loads of other sites that do this?
_Why don't I just use "GitHub":http://github.com, "SourceForge":http://sourceforge.net, "Bitbucket":http://bitbucket.org, "CodePlex":http://codeplex.com, "Google Code":http://code.google.com or something similar?_
* *You should!* If your institutional policies allow it, your supervisor is OK with it, and it suits the project you're working on, then using a site like these to host your code is a great idea. If you do use one of them, consider making a project on this site anyway and getting it to track your external repository -- you get better visibility that way. See "this note":https://code.soundsoftware.ac.uk/news/1 for more.
* *But...* these sites are usually aimed at either free open-source software, or proprietary companies that will pay for hosting.
They don't cover the middle ground very well: "not public yet, though it might be public at some point, but in the meantime a few colleagues ought to be able to work on it with me". We handle that sort of thing fine: as soon as you register here, you can create any number of private projects and share them with selected other researchers -- as well as making public projects, or turning private projects into public ones later.
(Do take a closer look at these third-party services, though, as you may find they have options that are suitable.)
* *And we know a bit about the field*. You're among your peers -- the users of this site are researchers like you, in a related field. And because we know what subject area we cover, we can provide dedicated facilities (such as the ability to "list publications alongside software":https://code.soundsoftware.ac.uk/news/6) and we will always be receptive to any problems you might encounter.