From 22a9aacfb6a13155ed89358bfd853c305000c141 Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Thu, 22 Aug 2024 22:06:34 -0400 Subject: Add literate --- 2024/talks/literate.md | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 2024/talks/literate.md (limited to '2024/talks') diff --git a/2024/talks/literate.md b/2024/talks/literate.md new file mode 100644 index 00000000..0fb0a0de --- /dev/null +++ b/2024/talks/literate.md @@ -0,0 +1,50 @@ +[[!meta title="Literate Programming for the 21st Century"]] +[[!meta copyright="Copyright © 2024 Howard Abrams"]] +[[!inline pages="internal(2024/info/literate-nav)" raw="yes"]] + + + + + +# Literate Programming for the 21st Century +Howard Abrams (he/him) - @howard@emacs.ch , + +[[!inline pages="internal(2024/info/literate-before)" raw="yes"]] + +Donald Knuth’s idea of *literate programming* in the 80’s and 90’s was +interesting, but he didn’t realize what Emacs and Org can do in this +century. In this talk, I would like to go back your initial *dabblings* +with Org `src` blocks to show how you can program *literately* as quickly +as you can in any other mode. + +Some of the tips and tricks include: + +- Automatically keeping your lit code sync’d +- Easier code generation +- Jumping to Org headers to help organize code +- Jumping to code definitions with the xref interface + +At the end of this talk, I hope to inspire you to try it again, as my +personal “go to” is *programming literately*. + +I will be following the format and outline in my essay: + + +About the speaker: + +About ten years ago, I gave a talk I called *literate devops* and people +still ask me if I still use those techniques. For all my personal +projects, I do. Even projects that I share with others, I often *start* +programming with an Org file. + +I will admit, programming within Org blocks has some burrs, but over +the years, I’ve filed them off with helper functions, snippets and +other features. Thought I would share these. + + + +[[!inline pages="internal(2024/info/literate-after)" raw="yes"]] + +[[!inline pages="internal(2024/info/literate-nav)" raw="yes"]] + + -- cgit v1.2.3