1.16 Documentation-as-Code, now at SAS with SASpy and knitr
===========================================================
2021-10-08
For some years now, I have had a focus on "documentation as code",
rescuing documentation and deliverables kept in Office formats and using
GitOps approaches to make the work of those writing them easier, while
taking advantage of revision control and consistent results through
parsers. I used this extensively in the process I implemented for
addressing all the RFSs of a major outsourcing client while I was at
IBM, and I don't see the need for it going away.
It makes sense then that the first commit I'm making to SAS
respositories since I joined is on the Python interface to SAS, and
specifically on examples of using SASPy with R markdown and ‘knitr’
(
https://github.com/sassoftware/saspy-examples/commit/8c0266c62ea8c6d902a6d1b86c71b9c3f16b263d).
SASpy output of non-tabular results is HTML, which makes sense
considering that all the target environments where it is used are
browser-based: Jupyter, Zeppelin and Databricks are the available
options at the time of writing. Markdown documents, however, do
not render HTML: the output of the code chunk should be in
markdown, and this is what then makes possible for tools like
Pandoc (
https://pandoc.org) to convert to target formats. This
highlights a good use-case for using SASpy with markdown: producing
PDFs that can be highly customisable and include all the tables and
images (something currently not possible by exporting a Jupyter
notebook, for example).
Take a look at the example file
(
https://github.com/sassoftware/saspy-examples/blob/main/User_contrib/SASpy_with_R_markdown.Rmd)