From 1654e6f6cda96886bf484e81e778c0fe07b45b7d Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Sun, 3 Sep 2023 15:59:27 -0400 Subject: add tracks, add voice --- 2023/info/adventure-nav.md | 3 +- 2023/info/extending-nav.md | 4 +-- 2023/info/flat-before.md | 2 +- 2023/info/flat-nav.md | 4 ++- 2023/info/hn-nav.md | 1 + 2023/info/llm-nav.md | 1 + 2023/info/lspocaml-nav.md | 4 +-- 2023/info/mentor-before.md | 2 +- 2023/info/mentor-nav.md | 5 ++-- 2023/info/one-nav.md | 3 +- 2023/info/ref-nav.md | 3 +- 2023/info/sharing-nav.md | 1 + 2023/info/uni-nav.md | 1 + 2023/info/web-nav.md | 2 +- 2023/info/windows-nav.md | 3 +- 2023/info/writing-nav.md | 5 ++-- 2023/talk-details.md | 1 + 2023/talks/voice.md | 69 ++++++++++++++++++++++++++++++++++++++++++++++ 18 files changed, 98 insertions(+), 16 deletions(-) create mode 100644 2023/talks/voice.md diff --git a/2023/info/adventure-nav.md b/2023/info/adventure-nav.md index ba12ed56..c17c11c8 100644 --- a/2023/info/adventure-nav.md +++ b/2023/info/adventure-nav.md @@ -1,5 +1,6 @@
Back to the [[talks]] -Previous by track: one.el: the static site generator for Emacs Lisp Programmers +Previous by track: Emacs Turbo-Charges My Writing +Track: General
diff --git a/2023/info/extending-nav.md b/2023/info/extending-nav.md index f02eb2dc..8024576b 100644 --- a/2023/info/extending-nav.md +++ b/2023/info/extending-nav.md @@ -1,7 +1,7 @@
Back to the [[talks]] -Previous by track: Writing a language server in OCaml for Emacs, fun, and profit +Previous by track: A modern Emacs look-and-feel without pain Next by track: Windows into Freedom -Track: dev +Track: General
diff --git a/2023/info/flat-before.md b/2023/info/flat-before.md index 69b96fb1..af9cef3a 100644 --- a/2023/info/flat-before.md +++ b/2023/info/flat-before.md @@ -1,4 +1,4 @@ -
+ # Description \ No newline at end of file diff --git a/2023/info/flat-nav.md b/2023/info/flat-nav.md index b02f8eb4..1d021ccc 100644 --- a/2023/info/flat-nav.md +++ b/2023/info/flat-nav.md @@ -1,5 +1,7 @@
Back to the [[talks]] -Next by track: Mentoring VS-Coders as an Emacsian (or How to show not tell people about the wonders of Emacs) +Previous by track: Writing a language server in OCaml for Emacs, fun, and profit +Next by track: GNU Emacs for electronics, note-taking, and as lightweight IDE +Track: General
diff --git a/2023/info/hn-nav.md b/2023/info/hn-nav.md index 94ed188e..13c71bf1 100644 --- a/2023/info/hn-nav.md +++ b/2023/info/hn-nav.md @@ -3,4 +3,5 @@ Back to the [[talks]] Previous by track: Emacs saves the Web Next by track: Sharing Emacs is Caring Emacs: Emacs education and why I embraced video +Track: General diff --git a/2023/info/llm-nav.md b/2023/info/llm-nav.md index 05699f01..e55fbc89 100644 --- a/2023/info/llm-nav.md +++ b/2023/info/llm-nav.md @@ -3,4 +3,5 @@ Back to the [[talks]] Previous by track: Sharing Emacs is Caring Emacs: Emacs education and why I embraced video Next by track: Writing a language server in OCaml for Emacs, fun, and profit +Track: General diff --git a/2023/info/lspocaml-nav.md b/2023/info/lspocaml-nav.md index b34833f0..d0cd7036 100644 --- a/2023/info/lspocaml-nav.md +++ b/2023/info/lspocaml-nav.md @@ -2,6 +2,6 @@
Back to the [[talks]] Previous by track: LLM clients in Emacs, functionality and standardization -Next by track: GNU Emacs for electronics, note-taking, and as lightweight IDE -Track: dev +Next by track: A modern Emacs look-and-feel without pain +Track: General
diff --git a/2023/info/mentor-before.md b/2023/info/mentor-before.md index 69b96fb1..af9cef3a 100644 --- a/2023/info/mentor-before.md +++ b/2023/info/mentor-before.md @@ -1,4 +1,4 @@ -
+ # Description \ No newline at end of file diff --git a/2023/info/mentor-nav.md b/2023/info/mentor-nav.md index f946e956..903cadc0 100644 --- a/2023/info/mentor-nav.md +++ b/2023/info/mentor-nav.md @@ -1,6 +1,7 @@
Back to the [[talks]] -Previous by track: A modern Emacs look-and-feel without pain -Next by track: Emacs Turbo-Charges My Writing +Previous by track: Improving access to AI-assisted literate programming with voice control +Next by track: Org-Mode workflow: informal reference tracking +Track: General
diff --git a/2023/info/one-nav.md b/2023/info/one-nav.md index 23647338..1bf05156 100644 --- a/2023/info/one-nav.md +++ b/2023/info/one-nav.md @@ -2,5 +2,6 @@
Back to the [[talks]] Previous by track: Authoring and presenting university courses with Emacs and a full libre software stack -Next by track: An Org-Mode based text adventure game for learning the basics of Emacs, inside Emacs, written in Emacs Lisp +Next by track: Emacs Turbo-Charges My Writing +Track: General
diff --git a/2023/info/ref-nav.md b/2023/info/ref-nav.md index 83f199c7..ec5241de 100644 --- a/2023/info/ref-nav.md +++ b/2023/info/ref-nav.md @@ -1,6 +1,7 @@
Back to the [[talks]] -Previous by track: Windows into Freedom +Previous by track: Mentoring VS-Coders as an Emacsian (or How to show not tell people about the wonders of Emacs) Next by track: Authoring and presenting university courses with Emacs and a full libre software stack +Track: General
diff --git a/2023/info/sharing-nav.md b/2023/info/sharing-nav.md index f047bf47..0d8040a5 100644 --- a/2023/info/sharing-nav.md +++ b/2023/info/sharing-nav.md @@ -3,4 +3,5 @@ Back to the [[talks]] Previous by track: The many ways to browse Hacker News from Emacs Next by track: LLM clients in Emacs, functionality and standardization +Track: General diff --git a/2023/info/uni-nav.md b/2023/info/uni-nav.md index cca3da43..380ade04 100644 --- a/2023/info/uni-nav.md +++ b/2023/info/uni-nav.md @@ -3,4 +3,5 @@ Back to the [[talks]] Previous by track: Org-Mode workflow: informal reference tracking Next by track: one.el: the static site generator for Emacs Lisp Programmers +Track: General diff --git a/2023/info/web-nav.md b/2023/info/web-nav.md index 89808c33..f544f279 100644 --- a/2023/info/web-nav.md +++ b/2023/info/web-nav.md @@ -1,6 +1,6 @@
Back to the [[talks]] -Previous by track: Emacs Turbo-Charges My Writing Next by track: The many ways to browse Hacker News from Emacs +Track: General
diff --git a/2023/info/windows-nav.md b/2023/info/windows-nav.md index 3d06967c..43235d5c 100644 --- a/2023/info/windows-nav.md +++ b/2023/info/windows-nav.md @@ -2,5 +2,6 @@
Back to the [[talks]] Previous by track: GNU Emacs for electronics, note-taking, and as lightweight IDE -Next by track: Org-Mode workflow: informal reference tracking +Next by track: Improving access to AI-assisted literate programming with voice control +Track: General
diff --git a/2023/info/writing-nav.md b/2023/info/writing-nav.md index 766da066..33be2487 100644 --- a/2023/info/writing-nav.md +++ b/2023/info/writing-nav.md @@ -1,6 +1,7 @@
Back to the [[talks]] -Previous by track: Mentoring VS-Coders as an Emacsian (or How to show not tell people about the wonders of Emacs) -Next by track: Emacs saves the Web +Previous by track: one.el: the static site generator for Emacs Lisp Programmers +Next by track: An Org-Mode based text adventure game for learning the basics of Emacs, inside Emacs, written in Emacs Lisp +Track: General
diff --git a/2023/talk-details.md b/2023/talk-details.md index 27e244f5..85647583 100644 --- a/2023/talk-details.md +++ b/2023/talk-details.md @@ -4,6 +4,7 @@ 20Authoring and presenting university courses with Emacs and a full libre software stackJames Howell 20Org-Mode workflow: informal reference trackingChristopher Howard 10Mentoring VS-Coders as an Emacsian (or How to show not tell people about the wonders of Emacs)Jeremy Friesen +20Improving access to AI-assisted literate programming with voice controlBlaine Mooers 40Windows into FreedomCorwin Brust 20GNU Emacs for electronics, note-taking, and as lightweight IDEAnand Tamariya 10A modern Emacs look-and-feel without painPedro A. Aranda diff --git a/2023/talks/voice.md b/2023/talks/voice.md new file mode 100644 index 00000000..58dbe4d9 --- /dev/null +++ b/2023/talks/voice.md @@ -0,0 +1,69 @@ +[[!meta title="Improving access to AI-assisted literate programming with voice control"]] +[[!meta copyright="Copyright © 2023 Blaine Mooers"]] +[[!inline pages="internal(2023/info/voice-nav)" raw="yes"]] + + + + + +# Improving access to AI-assisted literate programming with voice control +Blaine Mooers (he/him/his) - Pronunciation: pronounced like "moors", blaine-mooers(at)ouhsc.edu, https://basicsciences.ouhsc.edu/bmb/Faculty/bio_details/mooers-blaine-hm-phd, https://twitter.com/BlaineMooers, https://github.com/MooersLab, https://codeberg.org/MooersLab, mastodon(at)bhmooers + +[[!inline pages="internal(2023/info/voice-before)" raw="yes"]] + +The audience will learn how to use voice control to create literate +programming documents in Emacs. After reviewing the benefits of +literate programming, I will review the prior work done with the voice +control in Emacs. I will present the reasons why you'd want to use +voice control; they go beyond the obvious benefit of avoiding or +working around repetitive stress injuries and include the benefits of +using voice control while standing to break up long periods of +sitting, which are detrimental to one's health. There are many options +for voice control in and out of the Emacs. I will review a list of +several and then drill in on two: one that is easy but of limited +extensibility (Voice In Plus () and +one that is harder to learn but more extensible (Talon Voice +()). The latter has a welcoming community of users +and developers in the Talon Slack channel. + +The Voice In Plus is a plugin for the Google Chrome browser that +allows you to dictate in the text areas on web pages. The dictated +text can be sent as soon as it appears in the browser to Emacs via +GhostText and the Atomic-Chrome package. You can insert custom code +snippets by voice control in the text area using Voice In Plus's +support for custom snippets. Or, you can insert yasnippet snippets by +voice control in the corresponding buffer in Emacs. I will demonstrate +how to set up this workflow and how to use it to create an org mode +file. This workflow is very effective for the creation of lots of +prose, but not code. + +The second approach uses the open-source software called Talon +(), which is good for both prose and code. This +package enables precise voice control in a wide variety of +applications including Emacs. This package is also highly configurable +using Python script and an accompanying TalonScript file, which has a +simple YAML file format. The general users of Talon who know nothing +about Python can easily configure their setup using TalonScript files. +Advanced users can use Python to add modules to the Talon package to +extend its functionality. I will demonstrate how to write an org mode +file with executable code blocks with Talon running in Emacs. I will +edit and run the code blocks by voice control with and without the +help of generative AI in the form of Copilot. + +I also demonstrate an interactive quiz in Python and Elisp that I +developed to the support the mastery of the voice control commands. By +running the quiz with voice control, you can accelerate mastery of the +commands. I learned the Talon alphabet in one day by taking the quiz +at spaced intervals. The quiz only took 60 seconds to complete when I +was proficient. + +I will conclude with a discussion of lessons learned and opportunities +for using voice control in Emacs for AI-assisted literate programming. + + + +[[!inline pages="internal(2023/info/voice-after)" raw="yes"]] + +[[!inline pages="internal(2023/info/voice-nav)" raw="yes"]] + + -- cgit v1.2.3