David Smith sums up a debate on notebooks versus literate programming:
There’s no video yet available of Joel’s talk, but you can guess the theme of that opening slide, and walking through the slides conveys the message well, I think. Yuhui Xie, author and creator of the rmarkdown package, provides a detailed summary and response to Joel’s talk, where he lists Joel’s main critiques of Notebooks:
-
Hidden state and out-of-order execution
-
Notebooks are difficult for beginners
-
Notebooks encourage bad habits
-
Notebooks discourage modularity and testing
-
Jupyter’s autocomplete, linting, and way of looking up the help are awkward
-
Notebooks encourage bad processes
-
Notebooks hinder reproducible + extensible science
-
Notebooks make it hard to copy and paste into Slack/Github issues
-
Errors will always halt execution
-
Notebooks make it easy to teach poorly
-
Notebooks make it hard to teach well
Read the whole thing. I agree with some of these points, but disagree with a few on the list.