Why write a blog in the first place?
The first thought I have about blogging is that it is old-fashioned. Also, there is a big chance that few people will read it. So it doesn’t make sense to write blog posts, it seems. Still, at the end of 2021, I wrote my first blog post for my academic (Hugo-based)site on setting up the Hugo-based personal website with the Academic theme and Netlify.
“The idea of a blog or personal website is out of my comfort zone. However, I do like to create, write and develop new ideas. So what will this digital space be? Probably it will neither be a blog nor a single static page. I like the idea of a creative digital garden, where things grow and evolve, meaning I will be adding or modifying posts on the go.”
My first note on it being a creative digital garden seems fair. My inner nerd, always excited to try to build new things, was recently triggered by a blog post from Apres Hill: We don’t talk about Quarto. It is a great read and very colourfully decorated with Encanto screenshots. So… I ended up, within four months, abandoning the Hugo/Rmardown-based blog and moving the ‘blog-part’ of my website to a classical blogging page using Quarto.
By publishing a blog, I intend to achieve the following:
Stimulate my creative writing by writing every day (anything of interest).
Publish ~1 post per month on data science, single-cell and molecular biology (tools), (bio)chemistry, and possibly some art.
Make ideas and tools more concrete & valuable for others.
The blog can serve as a journal, which could be helpful for my future self.
So what is Quarto?
Quarto is a publishing system that interacts with many different programming languages. It is something familiar and new: It is a tool to generate HTML, PDF, and Word documents from plain text files that include code, enabling literate programming.
As a tech-savvy researcher, I’m fond of tools that make my life easier ánd integrate writing and note taking with coding & data analysis. This style of ‘literate programming’ I mainly do/did through Rmarkdown, followed by transformation of the Rmd file to an html, pdf or other file type of interest through knitr. The limitation is, that this works for R, but not other languages. For example, if I would like to combine the workflow with Jupyter notebooks (and python), I can’t. Now with Quarto, it is made possible and easy.
- Create dynamic content with Python, R, Julia, and Observable.
- Author documents as plain text markdown or Jupyter notebooks.
- Publish high-quality articles, reports, presentations, websites, blogs, and books in HTML, PDF, MS Word, ePub, and more.
- Author with scientific markdown, including equations, citations, crossrefs, figure panels, callouts, advanced layout, and more.
Exciting features for a data-scientist
With all the tech-heavy projects and an addiction to trying out new tools, I immediately started out trying Quarto. A compact list of exciting features:
- A very nice list with general features is described by Apress Hill
- For scientific writing and proper attribution, the citation capacity is very promising. For example, insert citations via Zotero.
- Compatible with R, Python and Julia (and many more)
- Visual editing
- Very significantly: insert any emoji 🤩
From Quarto’s documentation, there are several noted capabilities:
- Embedding code and output from Python, R, and JavaScript via integration with Jupyter, Knitr, and Observable.
- A variety of extensions to Pandoc markdown useful for technical writing, including cross-references, sub-figures, layout panels, hoverable citations and footnotes, callouts, and more.
- A project system for rendering groups of documents at once, sharing options across documents, and producing aggregate output like websites and books.
- Authoring using a wide variety of editors and notebooks, including JupyterLab, RStudio, and VS Code.
- A visual markdown editor that provides a productive writing interface for composing long-form documents.