summaryrefslogtreecommitdiffstats
path: root/2024/talks
diff options
context:
space:
mode:
authorSacha Chua <sacha@sachachua.com>2024-09-22 08:27:26 -0400
committerSacha Chua <sacha@sachachua.com>2024-09-22 08:27:26 -0400
commit2eaeead1bf58d51937c5de0308b9a533d60479c3 (patch)
treed9de132e7ab0ad722252c7d50ef5c80e8d606efd /2024/talks
parent1e11c428c4839e92843bb0facdfa787fefe208ee (diff)
downloademacsconf-wiki-2eaeead1bf58d51937c5de0308b9a533d60479c3.tar.xz
emacsconf-wiki-2eaeead1bf58d51937c5de0308b9a533d60479c3.zip
add casual, flp, hyperdrive, shell, theme, transducers
Diffstat (limited to '2024/talks')
-rw-r--r--2024/talks/casual.md32
-rw-r--r--2024/talks/flp.md87
-rw-r--r--2024/talks/hyperdrive.md53
-rw-r--r--2024/talks/shell.md32
-rw-r--r--2024/talks/theme.md33
-rw-r--r--2024/talks/transducers.md47
6 files changed, 284 insertions, 0 deletions
diff --git a/2024/talks/casual.md b/2024/talks/casual.md
new file mode 100644
index 00000000..c64aec29
--- /dev/null
+++ b/2024/talks/casual.md
@@ -0,0 +1,32 @@
+[[!meta title="Re-imagining the Emacs User Experience with Casual Suite"]]
+[[!meta copyright="Copyright &copy; 2024 Charles Choi"]]
+[[!inline pages="internal(2024/info/casual-nav)" raw="yes"]]
+
+<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# Re-imagining the Emacs User Experience with Casual Suite
+Charles Choi (he/him) - Pronunciation: Che, IRC: kickingvegas, <http://yummymelon.com/devnull/> , Mastodon: <https://sfba.social/@kickingvegas>
+
+[[!inline pages="internal(2024/info/casual-before)" raw="yes"]]
+
+To date, the predominant interaction model for Emacs has been to use keybindings or the mini-buffer prompt to issue commands. These commands are drawn from a vast ecosystem of packages (both core and third party) designed to extend Emacs. When these commands are used in aggregate, the aforementioned interaction model places a high cognitive load on the user. It also sets a very steep learning curve for Emacs.
+
+The inclusion of the Transient model package in Emacs facilitates a different interaction model using keyboard-driven menu interfaces. Menu interfaces excel at discovery and recognition, neither of which are well supported with keybindings and a prompt. Menu interfaces also can be made contextual to allow the user to focus on a task at hand.
+
+Casual Suite is a personal effort to re-imagine the Emacs user experience by using keyboard-driven Transient menus as its primary interaction model.
+
+This talk describes Casual Suite, detailing its implementation and operation.
+
+About the speaker:
+
+Charles Choi has been an Emacs user since 1989 but did not get around to learning Elisp until 2022. He possesses formal knowledge of computers with a Ph.D. in Computer Engineering received from the University of Virginia in 1997. He is from and continues to live in San Francisco.
+
+
+
+[[!inline pages="internal(2024/info/casual-after)" raw="yes"]]
+
+[[!inline pages="internal(2024/info/casual-nav)" raw="yes"]]
+
+
diff --git a/2024/talks/flp.md b/2024/talks/flp.md
new file mode 100644
index 00000000..1a26b886
--- /dev/null
+++ b/2024/talks/flp.md
@@ -0,0 +1,87 @@
+[[!meta title="The Free Life Planner: Empowering Lives with Emacs-Based AI"]]
+[[!meta copyright="Copyright &copy; 2024 Andrew Dougherty"]]
+[[!inline pages="internal(2024/info/flp-nav)" raw="yes"]]
+
+<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# The Free Life Planner: Empowering Lives with Emacs-Based AI
+Andrew Dougherty (he/him) - Pronunciation: DOH-er-tee, IRC: aindilis, <https://frdcsa.org/> Facebook: <https://facebook.com/frdcsa>, <mailto:adougher9@gmail.com>
+
+[[!inline pages="internal(2024/info/flp-before)" raw="yes"]]
+
+The Free Life Planner (FLP) is an ambitious, Emacs-based artificial
+intelligence project aimed at creating a comprehensive life management
+system to address global challenges like poverty, hunger, and
+disease. This talk will provide a 5-year progress report on FLP,
+highlighting its integration with Emacs and its potential to serve as
+a virtual secondary social safety net.
+
+FLP leverages the power of free/libre software and AI to offer
+intelligent planning and decision support across various life
+domains. Key features include modules for finance, health, nutrition,
+and transportation, all accessible through an Emacs interface. The
+system employs advanced planning algorithms, machine learning, and
+natural language processing to provide personalized assistance
+tailored to individual needs.
+
+We'll explore how FLP uses Emacs as its central developer console,
+demonstrating how it can control Emacs through agentic software. The
+presentation will showcase practical applications of FLP, such as the
+Gourmet meal planner and the financial planning module, illustrating
+how these tools can improve quality of life and promote self-reliance.
+
+The talk will also address the challenges faced in developing FLP,
+including privacy concerns and the complexities of releasing such a
+comprehensive system. We'll discuss our commitment to free/libre
+software principles and our vision for FLP's future as a tool for
+social good.
+
+By attending this talk, you'll gain insights into:
+- How Emacs can serve as a platform for advanced AI applications
+- The potential of free/libre software to address global challenges
+- Practical applications of AI in daily life management
+- The intersection of technology and social responsibility
+
+Join us to explore how the Free Life Planner, powered by Emacs and AI,
+aims to transform lives and create a more equitable future for all.
+
+Format (20 minutes) and outline:
+1. Introduction (2 minutes)
+ - Overview of FLP and its mission
+ - Connection to Emacs
+2. FLP Architecture and Emacs Integration (5 minutes)
+ - Core components and technologies
+ - Emacs as the central developer console
+ - Demonstration of Emacs control through FLP
+3. Key Features and Modules (5 minutes)
+ - Financial Planner
+ - Gourmet Meal Planner
+ - Health and Wellness modules
+4. Challenges and Future Directions (5 minutes)
+ - Privacy and security considerations
+ - Ongoing development and community involvement
+5. Vision for Social Impact (2 minutes)
+ - Potential applications for underserved populations
+ - Call to action for community participation
+6. Q&A (1 minute)
+
+About the speaker:
+
+Andrew Dougherty is the creator of the Free Life Planner and the
+driving force behind the FRDCSA project. With over two decades of
+experience in AI and free software development, Andrew is passionate
+about leveraging technology to address social challenges. His work on
+FLP combines cutting-edge AI techniques with the extensibility of
+Emacs to create a comprehensive life management system. Today, Andrew
+will share insights from FLP's development over the past fifteen
+years, demonstrating how Emacs-based AI can be harnessed to empower
+individuals and communities worldwide.
+
+
+[[!inline pages="internal(2024/info/flp-after)" raw="yes"]]
+
+[[!inline pages="internal(2024/info/flp-nav)" raw="yes"]]
+
+
diff --git a/2024/talks/hyperdrive.md b/2024/talks/hyperdrive.md
new file mode 100644
index 00000000..5d6a874b
--- /dev/null
+++ b/2024/talks/hyperdrive.md
@@ -0,0 +1,53 @@
+[[!meta title="New in hyperdrive.el: org-transclusion, easy installation, and more!"]]
+[[!meta copyright="Copyright &copy; 2024 Joseph Turner"]]
+[[!inline pages="internal(2024/info/hyperdrive-nav)" raw="yes"]]
+
+<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# New in hyperdrive.el: org-transclusion, easy installation, and more!
+Joseph Turner - <https://ushin.org> xmpp:discuss@conference.ushin.org (XMPP MUC for USHIN discussion), <mailto:contact@ushin.org>
+
+[[!inline pages="internal(2024/info/hyperdrive-before)" raw="yes"]]
+
+In case it's been a while since you checked out `hyperdrive.el`,
+here's a refresher: [hyperdrive.el](https://ushin.org/hyperdrive/hyperdrive-manual.html) is an Emacs interface to [hyperdrive](https://docs.holepunch.to/building-blocks/hyperdrive),
+a mutable, versioned, peer-to-peer shared filesystem. Among other
+things, hyperdrive.el has these features: Share unlimited files of
+unlimited size; Explore file history with built-in versioning; Stream
+video and audio; No signup or account creation; Free as in Freedom!
+
+Since [last year's EmacsConf talk](https://emacsconf.org/2023/talks/hyperdrive), `hyperdrive.el` grew some new
+features, most notably the ability to [transclude hyperdrive content](https://ushin.org/hyperdrive/hyperdrive-manual.html#Org_002dtransclusion-integration)
+with `org-transclusion`! Getting started with `hyperdrive.el` is much
+easier now with `M-x hyperdrive-install`.
+
+This talk will show off these new `hyperdrive.el` features in action!
+
+Feel free to join our public XMPP chat room!
+
+- xmpp:discuss@conference.ushin.org
+
+([Join anonymously from your browser](https://anonymous.cheogram.com/discuss@conference.ushin.org))
+
+- \#\_bifrost\_discuss\_conference.ushin.org:aria-net.org (Matrix bridge)
+
+Bugs can be submitted to the [ushin issue tracker](https://todo.sr.ht/~ushin/ushin). Patches, comments or
+questions can be submitted to the [ushin public inbox](https://lists.sr.ht/~ushin/ushin).
+
+About the speaker:
+
+I'm Joseph Turner. I enjoy fiddle, Aikido, peer-to-peer networks,
+Emacs, and swimming in cold water. I work with
+[USHIN](https://ushin.org/), a tiny educational US nonprofit whose
+mission is to promote personal, community, and global health through
+free and open universal shared information for everybody.
+
+
+
+[[!inline pages="internal(2024/info/hyperdrive-after)" raw="yes"]]
+
+[[!inline pages="internal(2024/info/hyperdrive-nav)" raw="yes"]]
+
+
diff --git a/2024/talks/shell.md b/2024/talks/shell.md
new file mode 100644
index 00000000..8067c9e6
--- /dev/null
+++ b/2024/talks/shell.md
@@ -0,0 +1,32 @@
+[[!meta title="Emacs as a Shell"]]
+[[!meta copyright="Copyright &copy; 2024 Christopher Howard"]]
+[[!inline pages="internal(2024/info/shell-nav)" raw="yes"]]
+
+<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# Emacs as a Shell
+Christopher Howard (he/him) - IRC: lispmacs, <mailto:christopher@librehacker.com>
+
+[[!inline pages="internal(2024/info/shell-before)" raw="yes"]]
+
+A shell, such as Bash, is fundamentally an
+interface to your operating system. It allows you
+to run programs, direct I/O, manage processes, and
+interact with the file system, as well as script
+such activities. Allowing for a few caveats, we
+can see that Emacs is capable of doing all these
+things, and therefore Emacs can be used a
+practical replacement for the traditional shell.
+This talk aims to explain this philosophy, to
+explore Emacs' basic shell functionality, and to
+address various caveats.
+
+
+
+[[!inline pages="internal(2024/info/shell-after)" raw="yes"]]
+
+[[!inline pages="internal(2024/info/shell-nav)" raw="yes"]]
+
+
diff --git a/2024/talks/theme.md b/2024/talks/theme.md
new file mode 100644
index 00000000..9df68c8b
--- /dev/null
+++ b/2024/talks/theme.md
@@ -0,0 +1,33 @@
+[[!meta title="My journey of finding and creating the “perfect” Emacs theme"]]
+[[!meta copyright="Copyright &copy; 2024 MetroWind"]]
+[[!inline pages="internal(2024/info/theme-nav)" raw="yes"]]
+
+<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# My journey of finding and creating the “perfect” Emacs theme
+MetroWind (he/him) - IRC: MetroWind, Fediverse (pleroma): mw@pleroma.xeno.darksair.org - Matrix: @mw:darksair.org
+
+[[!inline pages="internal(2024/info/theme-before)" raw="yes"]]
+
+In this talk I will share my experience of finding and creating the
+“perfect” Emacs theme. I will go through the five themes I have
+created and discuss the motivations and ideas behind them, which will
+also introduce various color spaces. And I will look into the future
+to see if there is hope to find the "perfect" theme.
+
+About the speaker:
+
+I'm a long time Emacs user (since Emacs 21). I don't write a lot of
+elisp but I'm spend vast majority of my screen time with Emacs, and
+I'm picky about how it looks. This talk shows how may hoops I'm
+willing to jump through to make it look "right".
+
+
+
+[[!inline pages="internal(2024/info/theme-after)" raw="yes"]]
+
+[[!inline pages="internal(2024/info/theme-nav)" raw="yes"]]
+
+
diff --git a/2024/talks/transducers.md b/2024/talks/transducers.md
new file mode 100644
index 00000000..5abe4371
--- /dev/null
+++ b/2024/talks/transducers.md
@@ -0,0 +1,47 @@
+[[!meta title="Transducers: finally, ergonomic data processing for Emacs!"]]
+[[!meta copyright="Copyright &copy; 2024 Colin Woodbury"]]
+[[!inline pages="internal(2024/info/transducers-nav)" raw="yes"]]
+
+<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# Transducers: finally, ergonomic data processing for Emacs!
+Colin Woodbury (he) - <https://x.com/@fosskers> , @fosskers@m.fosskers.ca on Mastodon, <https://www.fosskers.ca>
+
+[[!inline pages="internal(2024/info/transducers-before)" raw="yes"]]
+
+Transducers are an ergonomic and extremely memory-efficient way to process a
+data source. Here "data source" means simple collections like Lists or
+Vectors,
+but also potentially large files or generators of infinite data.
+
+Transducers&#x2026;
+
+- allow the chaining of operations like map and filter without allocating memory between each step.
+- aren't tied to any specific data type; they need only be implemented once.
+- vastly simplify "data transformation code".
+- have nothing to do with "lazy evaluation".
+- are a joy to use!
+
+In this talk, Colin will introduce Transducers, show how to use them, and
+demonstrate some Emacs-specific workflows that make live processing of large
+data sets in JSON and CSV a breeze.
+
+About the speaker:
+
+Colin has been active in the FOSS world since 2011, publishing libraries and
+applications primarily in Haskell and Rust. Since 2023 he has been using
+Lisps
+more and more, and after falling in love with Transducers from Clojure has
+ported the pattern to three other Lisps.
+
+Colin is originally from Canada and lives in Japan.
+
+
+
+[[!inline pages="internal(2024/info/transducers-after)" raw="yes"]]
+
+[[!inline pages="internal(2024/info/transducers-nav)" raw="yes"]]
+
+