Modern software is open sourced software (OSS). The creative contribution of individual developers to help solve complex problems of impact is largely untapped by DoD. We must more actively participate in the open source and free software communities if we are to truly reap the benefits of OSS.
There are some misconceptions, however: for example, that open source software is not secure. Without delving too deep into this topic (we’re happy to discuss it in person), consider that the single most popular web server software is, and always has been, open source: Apache. This code runs a vast swath of sites on the Internet. Do bugs come up? Of course! But they are often patched (fixed with a small amount of code) in mere hours after identification.
In fact, nearly every popular software product relies heavily on open source software. Facebook, for example, runs on a language called PHP, which is itself open source. Even the web browser you are using right now is most likely open source software or uses it (Chrome, Firefox, even parts of Internet Explorer). And while the “popularity” argument might not win someone over, there are great benefits to be gained in reliability, performance, and security as we mentioned earlier.
A simple google search of “why OSS” will bring you to a paper by David Wheeler which goes into extensive detail on this subject.
You may have lots of questions about OSS and how a DoD project can be released publicly. This is the goal of Code.mil! We want to provide guidance on how you, a DoD project owner, can release your code as open source software and why it is in your best interest.
Aside from the technical benefits mentioned above, the Federal Source Code Policy (M-16-21) from the US CTO includes a section initiating an open source pilot which mandates that each government agency release as OSS at least 20% of its new custom developed code for the term of the program (and we recommend continuing that beyond the pilot).
Going beyond the OMB policy itself, the 2018 NDAA states in secton 875 that “…the Secretary of Defense shall initiate for the Department of Defense the open source software pilot program established by the Office of Management and Budget Memorandum M-16-21…”