![CoSeC_Logo_high-res.jpg](/SiteAssets/Pages/CoSeC_January_news2022/CoSeC_Logo_high-res.jpg)
Whilst the phrase “undocumented code is unusable" is sometimes rather extreme, it is almost guaranteed that anyone attempting to use, develop, or maintain a piece of undocumented code will have faced an uphill battle. As a result, undocumented software represents a large overhead in terms of time and effort. Therefore, code documentation needs to address two sometimes wildly disparate audiences: end users, and current and future developers.
Thankfully, it is seldom necessary for a single piece of documentation to serve both parties, however this does mean that requirement for documentation can feel like a significant burden for the developer. Fortunately, there are a number of tools and techniques that exist to aide us in efficiently creating good documentation.
In Software Outlook's new publication “Documentation Tools: Overview and Best Practices", they discuss the attributes that form good user and developer documentation, and examine some of the tools available for streamlining this process.
![SO_CICD.jpg](/Gallery/SO_CICD.jpg)
The underlying principal of CI/CD (“Continuous Integration/Continuous Delivery and Deployment") is to shorten the cycle of build-configure-deploy-test-release by taking advantage of convenient automation and more complete testing. This brings with it a cornucopia of advantages with improved testing and shorter development cycles being some such examples.
Software Outlook's new publication “CI/CD – Continuous Integration, Deployment, and Delivery: Overview and Best Practices" helps code developers understand why CI/CD would be of benefit to them and how to effectively use CI/CD.
Both of these reports (and other best practice reports) are available from Software Outlook's Best Practice Web Page.