datamade / how-to

📚 Doing all sorts of things, the DataMade way
MIT License
89 stars 12 forks source link

What's up with Quarto? #334

Open hancush opened 1 year ago

hancush commented 1 year ago

Background

We've transitioned from Python to R and R Markdown for data analysis, however it looks like there's a new player on the block that supports Python, R, and Observable (JavaScript) out of the box: https://quarto.org/

Proposal

Is it desirable to have a single development environment for all of our data analysis languages? I propose we trial Quarto to find out.

Deliverables

A data analysis project completed in Quarto. The project should, if possible, include multiple languages, and both analysis and visualization.

Timeline

Couple of days.

fgregg commented 3 months ago

@hancush has been impressed with this on a recent project.

for a recent project i worked on, i needed to produce power point slides, and rMarkdown did a really bad job. it's a pretty common need of our clients to need slides and to have those slides be ppt compatible.

i asked on social media if other tools did a better job, and I got one suggestion for Quarto. so, I think that it would be worth trying out. https://quarto.org/docs/presentations/powerpoint.html

hancush commented 3 months ago

I'd be really interested to try Quarto for documentation...... perhaps for how-to!

hancush commented 3 months ago

(If not how-to, the City projects are intended to be handed off eventually, and I think they'd make great candidates for documenting!)

hancush commented 2 months ago

I made some docs for the Metro scrapers with Quarto: https://github.com/Metro-Records/scrapers-lametro/pull/25

antidipyramid commented 2 months ago

@hancush Have we tried Quarto for any static site generation yet?

hancush commented 2 months ago

The Metro docs are a static site: https://metro-records.github.io/scrapers-lametro/

fgregg commented 2 months ago

do we have a view of whether they can replace rMarkdown?

hancush commented 2 months ago

https://quarto.org/docs/faq/rmarkdown.html

fgregg commented 2 months ago

do you have an opinion of whether we should?

hancush commented 2 months ago

I'm inclined to follow their response in the FAQ, which is that there's no need to switch if we like R Markdown. This feels especially reasonable if we are just writing a report that has some R and maybe some Python scripting inline and is compiled into a static document.

With that said, Quarto provides a better DX (including much faster builds – the R universe is heavy AF!) for websites and likely interactive outputs, too, because it has native support for Observable as well as widgets for other visualization tools like Leaflet.

I've not used R Shiny or R's Leaflet plug-in before, but I doubt it feels as ergonomic as Quarto, which is closer to static site development than report generation.

If it's important to use the same toolkit for making static reports and documentation sites and interactive reports, then we should switch from R Markdown because Quarto makes it so much easier to make whatever output you want. Those feel like pretty different use cases, though, so it might be reasonable to have different tools for them.

antidipyramid commented 1 month ago

We like Quarto-- next step: make a formal proposal to adopt it.