Automatically Compile, Install, and Update your Software
Developers rely on BioGrids to compile, configure, and install their software on BioGrids member computers, pushing out continuous updates and bug-fixes, and providing members with easy access to legacy and beta versions of their software. When members run our install script, all BioGrids-supported applications (currently over 75 programs) are installed on their computers with no additional user intervention. For laptops or systems with limited storage, users can access the BioGrids installer to select specific applications or subsets of software. BioGrids pre-complies these programs for, and supports, multiple popular Linux and OS X operating systems. Program updates and major releases are disseminated monthly, but we can also push out interim updates to fix major bugs. We use the BioGrids monthly newsletter to notify members of new applications, updated features, and software releases.
First-level User Support
BioGrids provides first-level technical support to members for software installation, upgrades, bug reports, and basic troubleshooting, which means we can solve many problems relating to compilation, installation, operating system portability, and environmental set up without contacting you for support. BioGrids support often significantly reduces the number of emails you receive for technical help. We are careful, however, to pass on any legitimate bug reports that users submit along with useful and complete technical information to help you diagnose and squash bugs. We also conscientiously direct any scientific questions directly to you. BioGrids support allows you to spend more time answering questions that directly involve the science behind your application, rather than responding to unproductive and redundant technical support requests.
Software Beta Testing
If you provide BioGrids with a beta version of your software, we can install for BioGrids users to test. BioGrids staff will then provide an enhanced level of feedback regarding your beta code and facilitate communication between beta testing users and you, the developer. Because BioGrids provides members with access to multiple versions of each software application, users can elect to test beta versions alongside stable releases. When beta testing is complete, we can seamlessly transition users to the latest stable version through our usual BioGrids software updates.
Comprehensive Software Licensing
BioGrids is developing a pass-thru software licensing system based up on the SBGrid model that will allow members to consent to all individual licenses contained in the BioGrids software collection by signing a single End-User Licensing Agreement (EULA). When members agree to the BioGrids EULA they will agree to abide by the terms of each license in each piece of software in the BioGrids software collection. BioGrids encourages developers that contribute software to BioGrids to release under an OSI-approved open source software (OSS) license because of the many benefits OSS confers on users and developers in creating an open culture of science. BioGrids also provides advice and support to developers when selecting an appropriate software license. We do recognize that open source licenses are not always practical or appropriate (See Morin et al. 2010 DOI: 10.1371/journal.pcbi.1002598) and the BioGrids "pass-thru" licensing model will accommodate most software licenses, including proprietary and closed-source licenses.
Webinars and seminars
The BioGrids project will provide opportunities for developers to communicate directly with users. We plan to host monthly webinars and seminars featuring developers talking about their software: giving tutorials, demonstrating new features, and previewing future developments. Contact us if you are visiting the Boston area so we can plan a time to meet and possibly host a seminar that local members of the community can attend. Once we develop a collection of relevant software webinars, we'll create a BioGrids YouTube channel to make these resources available to the larger community.
The BioGrids software collection presently hosts approximately 75 software titles that are automatically installed for our members, promoting the serendipitous discovery of new software tools. Rather than learning about a new applications by word-of-mouth, poster presentations, or research paper citations, BioGrids members can go to our website for a succinct description of each hosted application that is categorized by research field and typical workflow. Because these applications are pre-installed, with no need for downloading, compiling, and configuring, BioGrids lessens the barriers of time, knowledge, and effort that commonly prevent even computationally skilled users from trying out a new program. In essence, BioGrids acts as a scientific a one-stop "app store" for bioinformatics software, allowing member users to discover, use, and compare your software to competing applications by simply typing the launch command in the BioGrids shell.
BioGrids also employs a software citation tool - AppCiter - originally developed to support developers contributing software to the SBGrid Consortium. This tool encourages more consistent and accurate software citation, where users can select the software applications that supported their scientific research and receive a list of the relevant citations to include in their publication. All BioGrids-hosted programs are arranged alphabetically and by category, key word, and typical research workflow. Once a user marks the applications they wish to cite, with the push of a button they a can export those citations in multiple formats suitable for direct cut-and-paste into a manuscript bibliography or for import into popular citations manager programs (e.g. Endnote, Papers, etc.). This tool makes finding and properly citing programs easier for the average user and helps to ensure accurate, version-specific and up-to-date citation information.
On the Horizon:
Software Usage Tracking and Reporting: BioGrids users will also benefit from NSF funding awarded to SBGrid to design and implement a system to directly track software usage by our member users. We do this by building encapsulation scripts for each BioGrids-hosted program that reports back to us each time a program is launched. Information collected can include an anonymized user ID, exit status, OS architecture and version, memory usage, and crash reporting. This system is undergoing limited testing with select software developers and members, and will be fully deployed within the next year. At that time we hope to provide all contributing software developers with regular, comprehensive reports detailing software usage; essential data for submitting grant applications, planning and developing software, and tracking the needs and scope of your user base.