This file is automatically exported from /2023/report.org. You might prefer to navigate this as an Org file instead. To do so, clone the wiki repository.

Wednesday 10 January 2024 at 0:00 (UTC)

Table of Contents

Overview

EmacsConf 2023 was held on December 2 and 3 as an online conference. We had 41 talks across two tracks (general and development), with a total of 16 hours of presentations, 12 hours of Q&A via web conference, and lots of lively discussion across IRC and Etherpad. Throughout the conference, there were 100-250 people watching via the livestream, and more than 80 people joined the live Q&A web conferences. There were also satellite events in Switzerland and Slovenia where people watched together.

Thanks to volunteers who edited captions for pre-recorded videos, we were able to broadcast all 25 early submissions with open captions. This not only made talks more accessible while watching the livestreams, but it also made it easier to enjoy the talks in noisy environments or to catch up on talks. People said:

  • "that is some hero subtitling on 'cccc' to 'C-c C-c'. thank you!"

If you'd like to help edit captions or add chapter markers, we'd love to hear from you. Please see https://emacsconf.org/captioning for details.

We posted pre-recorded videos and transcripts on talk pages shortly after they started streaming, and live talks and Q&A sessions within two weeks. Automatic captions are now available for the rest of the talks and Q&A sessions. We've also archived questions and comments from IRC and Etherpad onto the talk pages. You can find the talk pages at https://emacsconf.org/2023/talks . The videos are also available on Toobnix (https://toobnix.org/c/emacsconf/videos) and YouTube (https://www.youtube.com/@EmacsConf).

Highlights

EmacsConf 2023 started with a full day of Org Mode talks on the general track, going from introducing people to Emacs through an Org-Mode-based text adventure game all the way to managing bibliographic references and exporting build instructions for different systems. There was a group of Hyperbole talks on new developments and outlining workflows on the second day, and there were interesting experiments with using Emacs for fun and productivity. On the development track, speakers shared tips for working with Emacs Lisp and other languages. There was also a lot of interest in exploring emerging artificial intelligence tools. Here are some highlights:

Collaboration: In Collaborative data processing and documenting using org-babel, Jonathan Hartman and Lukas C. Bossert showed how to do reproducible research together in Emacs by using the CRDT package along with Org Mode's support for running many different languages in your notes. People said:

  • "Great collaborative conversation and step-wise example creates a different (and impactful) framing.  Thank you!"
  • "Truly one of the most impressive talks of the day. Congrats! Very inspiring"
  • "I like the way you highlight the point you are talking about in real time."
  • "Just came here to say watching two users editing the same buffer simultaneously is BLOWING MY MIND"
  • "that's really cool.  One of the parts that's a bit hidden from the user is seeing the format that the data is in inside the shell script"
  • "such a slick presentation, I like the CRDT collaboration angle, looks like an end-game UX"
  • "For those of you who remember the bad old days before "reproducible research," that talk is even more impressive. Great job!"

Fun: How I play TTRPGs in Emacs by Howard Abrams wowed people not only with the Org Mode workflow he shared but also the general vibe of the video. People said:

  • "My favorite talk was Howard's, not because I do role playing games (last was probably a few late night D&D sessions in the 70s), but just seeing the sheer existential joy possible in using emacs to scratch ones one itch, and then sharing the experience." @eludom
  • "Really cool project! - Also the enthusiasm for the topic is really contagious!"
  • "the camera and lighting already has me sold"
  • "I can see this one is going to be a classic"
  • "Howard's stuff is always great. this particular thing is totally unchained. :D"
  • "Every time Howard publishes a talk, I end up doing one more thing in a new radical or literate way inside Emacs - currently looking into how to go about literate snow shoveling for the winter ahead."

Community: In Mentoring VS-Coders as an Emacsian (or How to show not tell people about the wonders of Emacs), Jeremy Friesen talked about his experiences staying curious, learning from people around him, and encouraging people to grow no matter what tools they currently use. People said:

  • "The talks that impacted me the most were @takeonrules Jeremy Friesen's talks, ostensibly about writing with #Emacs and talking to others about Emacs. Substantively they got right to the heart of what makes Emacs so powerful as a platform, as a community, and as a model for how #FreeSoftware liberates us. His embodying the attitudes of self-sufficiency, mutual aid, empathy, open-mindedness, and authentic creativity showed us ourselves at our best." @jameshowell, quoted under the GNU Free Documentation License 1.3
  • "such valuable work being described"
  • "I love the attitudes and worldview that infuses your blog posts and your talks this weekend."

Development: We also heard from core developers such as John Wiegley, Stefan Kangas, and Ihor Radchenko on Emacs development updates, processes, and experiments. On the package side, Yoni Rabkin shared a glimpse of how Emacs package development works with a deep dive into EMMS, the Emacs Multimedia System. People said:

  • "Thanks John for all the news on Emacs and informative answers."
  • "Thank you Stefan! That was all really cool! :D"
  • "Came for clear-cut magic bullet answers, left with nuanced analysis - and that, surprise, Eli was overall right? Now what to do with that viral gc init snippet that I've never taken time to measure myself but keep anyway…"
  • "I very much liked Yoni Rabkin's calm,measured talk about EMMS. It described not only the software but how the development team worked." (@franburstall)
  • "I just really enjoy seeing the folks that contribute to free software. They are truly people to emulate. That goes double for Yoni."

Automation: From using overlays to simplify complex compilation error messages to writing tests to organizing EmacsConf itself, Emacs makes it easier to do stuff and have fun along the way. People said:

  • (about overlays) "That was great, showing how relatively easy it is to extend Emacs with features like that."
  • "Whatever you do, don't miss out @sachac's talk (this PM or otherwise). I stumbled on it on @bandali's channel following a link to Howard's, and it's a *​masterclass* in wrangling things together to automate workflows in Emacs/Elisp/Org. When people ask about VS Code, this shows we are talking different mindsets and tools altogether."
  • "I'll be rewatching it multiple times too, that's how packed in useful insights and tidbits it is. 'What do you mean Emacs/Org is a platform and a way of life?' Well, here you go, great exemplar :)"
  • "The breadth of use cases and applications, and range of Emacs/Elisp/Org capabilities reached for in this talk is fascinating."

Future: GNU Emacs is almost 40 years old and still going strong. Marcus Birkenkrahe shared his experiences using Emacs to teach students data science, and Jacob Boxerman talked about what it's like as a student and as a video creator. Emacs continues to be a great platform for experimenting with everything from parallel text replacement all the way up to artificial intelligence with large language models. People said:

  • "My personal highlights are not necessarily about specific presentations, but about represented topics:

    1. Multiple talks on using Emacs/Org mode in university setting both on student and lecturer side. This gives a promise on more people being exposed to Emacs and more people using it in their professional toolchain.
    2. The rise of LLM talks - Emacs being text editor is a natural interface to LLMs that do text-crunching.
    3. "Parallel text replacement" talk showing us that even the most common text-based interfaces are not yet "figured-out". Even in Emacs."

    @yantar92

  • "2nd favorite was Andrew Hyatt's LLM talk because it clearly showed how relevant a programmable text processing environment (that happens to have an editor) is to the brave new world of LLMs, possibly being as he intimated, positioned to lead the way.

    What's old is new. Emacs was born in an AI lab. The challenge of computing as far back a Alan Turing was intelligence. This talk shows not the past, but emacs' place in the future." @eludom

  • "I think Andrew is right that Emacs is uniquely positioned, being a unified integrated interface with good universal abstractions (buffers, text manipulation, etc), and across all uses cases and notably one's Org data. Should be interesting…!"

There were lots of other great talks. Check them out at https://emacsconf.org/2023/talks . Overall, people said:

  • "actually there part of the conference I admire most is is the fact that that whole thing is obviously a labor of love by emacs geeks for emacs geeks, using and showcasing as much free software as possible. It creates community for those of us who are otherwise isolated in our dark holes using a 45 year old text editor and wondering quizzically why everything in our lives can't be reduced to text." @eludom
  • "Indeed, seeing all the use cases across so many fields is one of the big selling point of this coming together, loving it."
  • "This is my first year attending the conference, it was amazing! All of the presenters and material were very impressive. And from a technical perspective, the event was extremely smooth. It was easy to find the agenda material online, and then use mpv to watch, and ask questions on etherpad."
  • "this conference is crazy i am not sure i ever saw so much interesting emacs ideas in one day"
  • "many good talks, and a sense of community around emacs, which is nice to see"
  • "i also have a feeling that it's hard to communicate with others when you start digging into a large system. your confusion diffuses. i felt similar when jumping into web framework and legacy apps. that's also why i liked emacsconf, watching others clarifies a lot of stuff. (memories of johnw edebug flash talk)"
  • "the pacing, clarity, and depth of the talks today has been really impressive, a presentation masterclass"

Technical details

EmacsConf is committed to software freedom. We used the following tools for this year's conference:

You can find out more about our infrastructure at https://emacsconf.org/infra .

Process improvements

This year we tried out the following experiments:

  • Early acceptance: It was great being able to accept proposals as they came in, and sometimes people chimed in with ideas for making talks even better. A few talks got comments within the 1-week period, which helped refine the talk idea more. We probably don't need to make this a 2-week review period.
  • Two tracks from the beginning: Following on the success of EmacsConf 2022, we planned the schedule for two tracks and filled it right up.
  • We worked on reducing manual intervention.
    • We opened Q&A right away instead of waiting for the hosts to give the go-ahead.
    • We used Tampermonkey to automatically connect to BigBlueButton from the streaming user.
    • Cron-based scheduling of talks kept us on time and made it easier to manage multiple tracks.
  • In addition to the iCalendar files for the conference and the individual tracks, we also generated Org files in many different timezones so that people could get the schedule in that format. People said:
    • "Yes, having the schedule in my own timezone was super helpful."
  • subed made it easier to adjust timestamps and sync subtitles.
  • We've started trimming Q&A videos to when the host leaves the conversation, just in case the speaker forgot that the rest of it was also recorded. If the speaker is okay with it, we can post the full Q&A session.
  • Using OBS virtual webcams was too taxing, so maybe we should keep things simple next year.

Some notes to remember for next year:

  • We should include cfp.org as an attachment instead of inline.
  • We need to ask for an increased limit for libera.chat so that everyone can use chat.emacsconf.org to connect to it.
  • Google Chrome and other Chromium browsers had a hard time with the web-based player. This needs more testing.
  • We can prepare a message for hosts to paste into the chat to help people make the most of the Q&A (ex: adding an oops note for editing).
  • Make sure timezones are on anything that has time (schedule page, watch pages, etc.). It would be cool if we can translate the times in the SVGs too.
  • It might be nice to use the intros and generate title sequences in order to add them to the videos. It would also be nice to experiment with other ffmpeg layouts so that we can view webcams and shared screens at the same time.
  • There were widespread network issues (dropped packets, etc.) on Sunday morning. We set up an additional stream to toobnix.org as a backup.
  • The 480p alternate stream did okay this year, even when we were also livestreaming via Toobnix. It might be worth the extra monitoring and system load in order to livestream to YouTube as well.
  • It might be a good idea to consider a third track so that there's even more space for talks and on-stream Q&A, although we may need more volunteers in order to make that happen.
  • Maybe we can fiddle with the layout in BigBlueButton to make the screen or the presenter's webcam easier to view without lots of manual adjusting. Likewise, we can work on a better ffmpeg command for the published recordings so that we can combine webcams with shared screens.
  • People would love to be able to do more with the conference from Emacs itself. I'm not sure how we can use the Etherpads or if CRDT would scale to lots of people, but maybe it might be worth doing a few small experiments?

Finances

Our hosting costs were USD 48.82 for the conference itself:

Linode 64GB Icecast streaming 50 hours USD 0.576/hour USD 28.80 + 13% tax
Linode 32GB wiki 50 hours USD 0.288/hour USD 14.40 + 13% tax

The year-round hosting is on two Linode Nanode 1GB instances that are shared with other projects and are not included in this amount.

As of 2023-12-12, we have received USD 436.60 (after 10% for FSF costs) in donations through the Working Together program of the Free Software Foundation. We plan to use the donations to cover hosting costs for this year's conference and next year's conference, and we are also thinking about low-cost ways to improve the conference experience.

If you'd like to donate, you can do so through the Working Together page. Since the FSF is a 501(c)(3) charity, your donations are tax-deductible in the US.

Acknowledgements

We would like to thank the following:

  • Thank you to all the speakers, volunteers, and participants, and to all those other people in our lives who make it possible through time and support.
  • This year's conference hosts are Leo Vivier, Amin Bandali, and joining our team of hosts for the first time this year, FlowyCoder.
  • The streams were managed by Sacha Chua, check-ins by FlowyCoder and Amin, with miscellaneous running-around by Corwin Brust.
  • Thank you to our captioning volunteers: Daniel Molina, Bala Ramadurai, Bhavin Gandhi, Amine Zyad, Yoni Rabkin, Daniel Alejandro Tapia, Hannah Miller, Ken Huang, Jean-Christophe Helary, James Howell, Eduardo Ochs, and Andrew Dougherty.
  • Thanks to Jean-Christophe Helary, Corwin, Quiliro, Cairn, and Amin Bandali for helping with the early acceptance process.
  • Thanks to Leo Vivier for fiddling with the audio to get things nicely synced, normalized, and denoised.
  • Thanks to Leo and other people who kept the mailing lists free from spam.
  • Thanks to Akshay Gaikwad for design contributions.
  • Thanks to shoshin (Grant Shangreaux) for the music.
  • Thanks to Ry P for the server that we're using for OBS streaming and for processing videos.
  • Thanks to the Free Software Foundation for Emacs itself, the mailing lists, and the media.emacsconf.org server.
  • Thanks to the contributers to all of tools and services we used.
  • Thanks to everyone!

Updates

If you would like to get updates and announcements, you can sign up at https://lists.gnu.org/mailman/listinfo/emacsconf-discuss .

Please keep an eye out for interesting things that might be fun to present at next year's EmacsConf. We'd love to get talks at all levels of experience and about lots of different kinds of interests. Speakers wrote:

  • "I always got the feeling of being heard and welcome in spite of the vast distances and cultures separating us. This community always feels like it is open to new members any time. With regards to the conference process also, it was a microcosm of the bigger community and hence I got the same feeling. You didn't have to be an expert or a person who's been using emacs for a long time to talk about something useful for the community. Even the struggles of a noob may be useful for someone else in the community."
  • "I can honestly say though that I had a great time putting my talk together. I hope people will have a good time listening to it. Now that the work is over, I can say it was worth it. so I recommend it warmly"

Hope to see you next year!