EmacsConf 2019 - Shared shownotes pad https://emacsconf.org/2019/schedule
** Domek
sdfdsfMarioadasd
PLEASE do NOT modify this pad any more: it was already copied and
archived on the EmacsConf2019 pages.
This page got archived on: https://emacsconf.org/2019/pad
- should be a frictionless process, otherwise you might be tempted to skip it. Restic should be easy to configure and use, so that, in the event of a data loss, you can just restore it. Likewise, restoring data should not be complicated.
- Fast: Backing up your data with restic should only be limited by your network or hard disk bandwidth so that you can backup your files every day. Nobody does backups if it takes too much time. Restoring backups should only transfer data that is needed for the files that are to be restored, so that this process is also fast.
- Verifiable: Much more important than backup is restore, so restic enables you to easily verify that all data can be restored.
- Secure: Restic uses cryptography to guarantee confidentiality and integrity of your data. The location the backup data is stored is assumed not to be a trusted environment (e.g. a shared space where others like system administrators are able to access your backups). Restic is built to secure your data against such attackers.
- Efficient: With the growth of data, additional snapshots should only take the storage of the actual increment. Even more, duplicate data should be de-duplicated before it is actually written to the storage back end to save precious backup space.
--------------------------------
EXAMPLE of the idea:
- please enter your nick in the upper right corner
- no questions to speakers (use IRC instead) - but archive questions and answers here afterwards
- just remarks, links, additional content of the current talk
- please contribute ;-)
$TITLE
--------------------------------
Opening remarks
9am EDT / 1pm UTC / 2pm CET
- Welcome to the conference - Amin Bandali
- RMS is watching as well \o/
- Emacs community update - Sacha Chua
- Emacs development update ("State of the Union") - John Wiegley
related:
--------------------------------
Use Org mode when away from the desktop: Organice (pre-recorded)
Zen Monk Alain M. Lafon, 200ok.ch
--------------------------------
Org-mode and FoilTeX - an unlikely (but useful) combination for teaching (pre-recorded)
Tom Faulkenberry
related:
--------------------------------
A.I. that Helps Play the Game of Your Life (pre-recorded)
Andrew J. Dougherty (adougher9@gmail.com) (aindilis)
related:
--------------------------------
How a Completely Blind Manager/Dev Uses Emacs Every Day
10:15-10:45am EDT / 2:15-2:45pm UTC / 3:15-3:45pm CET
Parham Doustdar (parham90@gmail.com)
- screen readers
- FIXXME: URL to the slides
- (2019-11-02T15.36.54 time-stamps by Karl Voit in CET for video sync purpose)
- Emacs is making things possible for blind people that would be hard or impossible otherwise :-)
- Questions:
- Are there any modes that come with emacsspeak configuration "out of the box"?
- No Emacs packages come with Emacspeak configuration, but Emacspeak itself comes with a lot of configuration for different packages like org-mode, Magit, and many many others.
- Do you, Parham, prefer emacs modes to not have any customizations around emacsspeak so that you can customize them yourself?
- Yeah, no customizations is great. The problem with most applications, outside Emacs, is that people try and guess how a blind user for example would use their package/application. However, in Emacs, the cool thing is that you don't have to do it any more and let the user figure it out.
- Are there any "rules" that package developers for emacs could use to make them more emacsspeak friendly or at least avoid being emacsspeak hostile?
- I would say that the best way would be to just use Emacs functionality. Some packages do weird things with custom overlays, for example, which Emacspeak has a hard time accessing.
--------------------------------
Managing your life with org-mode and other tools
10:45-11:15am EDT / 2:45-3:15pm UTC / 3:45-4:15pm CET -> 2019-11-02T15.44.28 CET
Marcin Swieczkowski (scatman@bu.edu)
related:
--------------------------------
notmuch new(s) (pre-recorded)
David Bremner
- start: 2019-11-02T16.16.33 CET
- https://notmuchmail.org/
- end: 2019-11-02T16.26.23 CET
- Questions:
- I think the ability to create links from mails and even from mail queries is a killer feature. I e that in mu4e. I guess this is also possible in emacs notmuch?
--------------------------------
Browsing Twitch.tv from Emacs (pre-recorded)
Aaron Jacobs (atheriel@gmail.com, https://twitter.com/unconj1, https://unconj.ca/blog/)
--------------------------------
Ledger-mode (pre-recorded)
Miguel Suárez and Quiliro Ordóñez
related:
--------------------------------
Playing Emacs like an instrument (pre-recorded, teaser version (full talk see URL below))
Alain M. Lafon (alain@200ok.ch)
related:
--------------------------------
GNU Emacs for All
9:30-10:15am EDT / 1:30-2:15pm UTC / 2:30-3:15pm CET
Sachin Patil
--------------------------------
Lightning talks
11:15-12pm EDT / 3:15-4pm UTC / 4:15-5pm CET
Use Org mode when away from the desktop - Alain M. Lafon -> moved aboveOrg-mode and FoilTeX - an unlikely (but useful) combination for teaching - Tom Faulkenberry -> moved aboveHow to record executable notes with eev - and how to play them back - Eduardo Ochs - http://angg.twu.net/emacsconf2019.html -> see belowA.I. that Helps Play the Game of Your Life - Andrew J. Dougherty -> moved abovenotmuch new(s) - David Bremner -> moved aboveBrowsing Twitch.tv from Emacs - Aaron Jacobs -> moved aboveLedger-mode - Miguel Suárez and Quiliro Ordóñez -> moved aboveState of Retro Gaming in Emacs - Vasilij “wasamasa” Schneidermann (pointer to another presentation)Playing Emacs like an instrument - Zen Monk Alain M. Lafon (pointer to another presentation) -> moved abovePlay and control your music with Emacs - Damien Cassou -> moved below
--------------------------------
Magit deep dive
12-12:45pm EDT / 4-4:45pm UTC / 5-5:45pm CET
Jonathan Chu @jonathanchu (https://jonathanchu.is/)
- start 2019-11-02T16.58.55 CET
- Link to slides: https://github.com/jonathanchu/emacsconf-2019-magit-deep-dive
- "I don't remember any git commands" :-)
- xkcd comic: https://xkcd.com/1597/
- status
- diffing
- (setq magit-diff-refine-hunk 'all)
- blaming
- staging/unstaging
- selective on hunks or lines
- committing
- go through previous commit messages while writing a new one: M-p and M-n
- branching
- reverting
- squashing
- rebasing
- bisecting
- more:
- tagging
- notes
- submodules
- worktree
- magit helps understanding (complicated) git paradigms
- 2019-11-02T17.29.44 CET Q&A
- modified doom theme
- org-present used for the presentation
- git hygiene
- C-c M-g: global magit mode
- resolving rebase conflicts
- 2019-11-02T17.39.12 CET end
related:
--------------------------------
Emacs as my Go To Script Language
12:45-1:30pm EDT / 4:45-5:30pm UTC / 5:45-6:30pm CET
Howard Abrams
- start 2019-11-02T17.43.04 CET
- @howardabrams http://www.howardism.org
- love/hate-relationship with the shell
- interactive vs. scripts
- demo: Piper
- scripts
- (video outage for 5 minutes approximately)
- Q&A 2019-11-02T18.10.31 CET
- sharing workflow with non-emacs persons: no, mostly for himself in private life
- (further video issues; audio worked)
- working with huge buffers
- how does piper work for you on large files (10k lines or so?)
- is the key to thinking about the workflow is to convert stuff to buffer and operating on it?
- the emacs/lisp way of doing things
- Name suggestion: husk
- 2019-11-02T18.28.19 CET end
related:
--------------------------------
Continuously checking for quality of your packages
1:30-2:15pm EDT / 5:30-6:15pm UTC / 6:30-7:15pm CET
Damien Cassou
- start 2019-11-02T18.30.58 CET
- slides https://files.petton.fr/cassou/emacsconf2019/presentation.html
- 13:34 EDT: checklist for MELPA
- naming, docstrings, small functions, automated tests, package metadata
- avoid warnings; speaker believes they are just as important as errors
- suggests Melpa's contributing.org as a good reference for quality: https://github.com/melpa/melpa/blob/master/CONTRIBUTING.org
- Example ERT test setup example
- Example of a Buttercup test
- M-x buttercup-run-at-point
- He tends to use ERT most often
- Example of using flycheck in a buffer
- Advice: run flycheck on your own code, don't worry about everyone else
- Remote setup
- tools needed: cask, emacs-package-checker, emake, makel
- makel can use Makefiles to ensure dependencies and alias commands -> good for continuous integration
- Configuring CI to use specific version of Emacs to be tested:
- evm, nix-emacs-ci, silex' emacs, kelleyk's ppa
- Example configurations for TravisCI, Gitlab CI, Gitea+Drone,
- Q&A
- Gitlab..
- Any CI systems using Guix yet?
- A: not sure yet
- Q: is Melpa's standard the accepted one?
- A: Their contributing.org file is a really good one
- end 2019-11-02T19.05.25 CET
related:
--------------------------------
Lightning talks
2:15-3:15pm EDT / 6:15-7:15pm UTC / 7:15-8pm CET
--------------------------------
Navigel to facilitate the creation of tabulated-list based UIs
Damien Cassou
related:
--------------------------------
Object oriented spreadsheets with example applications
David O'Toole
- start 2019-11-02T19.17.10 CET
- FIXXME: please provide some URLs!
- end 2019-11-02T19.24.05
related:
--------------------------------
How Emacs became my awesome Java editing environment
Torstein Krause Johansen @torsteinkrause, http://skybert.net/
related:
--------------------------------
Automate your workflow as a game developer
Jānis Mancēvičs
- 2019-11-02T19.40.01 CET start
- using all CPU cores instead of one for rendering processes of blender
- rocknightstudios -> twitter handles and so forth
- 2019-11-02T19.48.55 CET end
related:
--------------------------------
Porting org-shiftup/down as a separate module
MetroWind
- 2019-11-02T19.35.30 CET start
- (tech difficulties due to different virtual desktops not catching the Emacs windows)
- switching to pre-recorded talk in-between 2019-11-02T19.38.40 CET
- 2019-11-02T19.49.29 CET trying to resume screen sharing
- 2019-11-02T19.52.45 CET continuing
- modifying time/date not only in Org
- Beancount
- Emacs docu: "system interfaces"
- https://github.com/MetroWind/
- 2019-11-02T20.00.05 CET end
related:
--------------------------------
Packaging emacs packages for Debian (pre-recorded)
David Bremner
- 2019-11-02T20.01.37 CET start
- 2019-11-02T20.11.30 CET end
related:
--------------------------------
Interactive Remote Debugging and Development with TRAMP Mode
3:15-4pm EDT / 7:15-8pm UTC / 8:15-9pm CET
Matt Ray (emacs@mattray.dev, @mattray)
related:
--------------------------------
GNU Emacs as software freedom in practice
4-4:30pm EDT / 8-8:30pm UTC / 9-9:30pm CET
Greg Farough
- 2019-11-02T21.10.03 CET start
- Campaigns Manager at FSF (https://www.fsf.org/about/staff-and-board/)
- 2019-11-02T21.26.29 CET end of slides
- Q&A
- How to introduce total non-information savy users to Emacs?
- [...]
- Contributing for documentation is very good as well.
- 2019-11-02T21.32.03 CET end
related:
- https://karl-voit.at/2017/02/10/evolution-of-systems/
- Quote from https://www.gnu.org/gnu/rms-lisp.en.html
- "It was Bernie Greenberg, who discovered that it was (2). He wrote a version of Emacs in Multics MacLisp, and he wrote his commands in MacLisp in a straightforward fashion. The editor itself was written entirely in Lisp. Multics Emacs proved to be a great success — programming new editing commands was so convenient that even the secretaries in his office started learning how to use it. They used a manual someone had written which showed how to extend Emacs, but didn't say it was a programming. So the secretaries, who believed they couldn't do programming, weren't scared off. They read the manual, discovered they could do useful things and they learned to program."
--------------------------------
Closing remarks
4:30-4:45pm EDT / 8:30-8:45pm UTC / 9:30-9:45pm CET
- done at this point so that nobody is missing it due to overtime
- 2019-11-02T21.33.13 CET start
- 2019-11-02T21.40.00 CET end
- stay tuned for the next pre-recorded videos!
--------------------------------
Emacs: The Editor for the Next Forty Years (pre-recorded)
4:45-5:45pm EDT / 8:45-9:55pm UTC / 9:45-10:45pm CET
Perry E. Metzger
- 2019-11-02T21.43.15 CET start
- parallel/concurrent code is critical for future
- "so far, only Rust has a good story on cuncurrency"
- "C is dying"
- "C cannot be written safely by mortals"
- "C has to go"
- Current language slows down Emacs evolution
- Incrementally replace C with Rust
- displaying not-text
- currently, can't render web pages properly
- native PDF rendering
- HTML done right is complicated: security/privacy features
- proper rendering of HTML is crucial for Emacs future
- native LSP support
- Debug Adapter Protocol
- Emacs should be more like an operating system
- better Email experience
- PIM integration
- markdown support https://en.wikipedia.org/wiki/Markdown
- view Org or Markdown as rendered?
- Issue: Org is separate from Emacs
- needs to be pervasively integrated?
- better chat clients
- instead of Slack, Discord, ...
- rendering of web widgets (video, ...)
- Hacker-friendly user interface
- Emacs bindings everywhere!
- macOS vs. KDE/Gnome
- Using emacs for everything
- everything should feel like Emacs
- bad
- keyboard design/layout
- priority
- HTML rendering
- LSP support
- modern email, PIM, ...
- concurrency model + future extension language
- 2019-11-02T22.31.05 CET end of slides
- Q&A starting with 2019-11-02T22.45.10 CET
- Web rendering and daily updates
- Future non-programmers as Emacs users
- JavaScript-intense sources and Emacs support
- default Emacs config to help new users
- Is Rust also a candidate to replace Elisp or just C? No, just C.
- Running Emacs within a browser
- Mobile Emacs
- Remacs project
- Long-term competitors except vim
- 2019-11-02T23.08.33 CET end of Q&A
related:
--------------------------------
(Karl is leaving here because it's past 11pm and he feels exhausted already.)
--------------------------------
How to record executable notes with eev - and how to play them back
Eduardo Ochs
related:
--------------------------------
MPdel
Damien Cassou
related:
--------------------------------
Restclient and org-mode for Api Documentation and Testing
Mackenzie Bligh
- start 2019-11-02T23.42.00 CET
- Uses org-babel w/ restclient-mode
- end 2019-11-02T23.49.00 CET
related:
--------------------------------
Equake mode
Ben Slade
- start 2019-11-02T23.50.00 CET
- eshell dropdown terminal (a'la quake style games)
- end 2019-11-02T23.57.00 CET
related:
--------------------------------
Don’t wait! Write your own (yas)snippet
Tony Aldon @tonyaldon
- start 2019-11-02T23.58.00 CET
- end 2019-11-03T00.07.00 CET
related:
--------------------------------
VSCode is Better than Emacs
Zaiste @zaiste, https://zaiste.net/
- start 2019-11-03T00.09.00 CET
- Started by using Emacs Doom: "A starter pack"
- liked currated packages, and opinions.
- allowed for a lesser learning curve. maintained productivity
- VSCode "works out of the box"
- Community has Visual Documentation
- Videos, GIFs, walkthrough articles
- Emacs has no common practices
- hard to find an answer for common tasks, like search-and-replace
- end 2019-11-03T00.18.00 CET
related:
--------------------------------
Navigel to facilitate the creation of tabulated-list based UIs
Damien Cassou
see above
--------------------------------
Object oriented spreadsheets with example applications
David O’Toole
see above
--------------------------------
Deviating Zurich satellite Live Talks
1:45pm-4:00pm EDT / 5:45-8:00pm, UTC / 6:45pm-9:00pm CET
https://200ok.ch/posts/2019-09-17_announcing_the_official_emacsconf_zurich_satellite.html
--------------------------------
Conference MISC
--------------------------------
Links of Conference attendees
-----------------------------------
Karl: FIXXME: this snippet got pasted at a wrong spot: instead of killing, somebody might want to move it to its destination:
gradual extension. It has mostly grown by slowly incorporating popular features from otherlanguages, both in the language itself and in its implementation. But it has also come up withits own features, such as docstrings, buffer-local variables, and the addition of text-propertiesto strings.Possibly, the organic growth of all the Elisp packages developed wit
----------------------------------
Retrospective
What went well?
============
- first of all: almost everything went well from an attendee point of view! Hat tip to the organizers for an event of that size! Tech-breaks were necessary for everybody's brain.
- this collaborative document (ChaosPad)
- time-schedule was OK despite many minor and bigger tech issues
- usually, conferences do use a couple of minutes scheduled breaks between the talks but this time, I think it worked out great
- pre-recorded videos for gapping tech difficulties
- main organizer and backup organizer, so that someone could run around doing tech checks
What to improve?
=============
- in case of technical issues, presenters needs to have a backup channel for communicating with the organisers (IRC, Jitsi, maybe phone? We managed to let most presenters know when something was wrong, except when Jitsi glitched in the middle of their presentation. Presenters might not be checking their phones during presentations anyway.)
- setting up the pad beforehand + mention it on the conf pages
- Sorry for contributing to the last-minute stress level: pad was a last-minute idea
- Totally okay! - Sacha
- more contributors to the pad ;-) -> motivation/encouragement
- clear (and easy to link to) guideline communication such as:
- questions to speakers -> IRC channel #emacsconf-questions
- content notes, related URLs, ... -> shownotes pad (gets archived)
- rest: IRC channel #emacsconf
- stream feedback
- non-shownotes comments since it doesn't get archived
- + FAQ nr. 1: Will there be videos? Where to find them? ...
- Yes, will be posted on emacsconf.org/2019 when they're available and announced on the emacsconf-discuss mailing list
- shownotes pad template according to organizer's preference
- brainstorming on structure for next time
- as of 2019-11-02T20.11.23 CET, Karl still does not get whether or not Zürich is going to stream different talks (in parallel) to the main stream. -> much better explanation required
- We aren't sure either! =) - Sacha
- according to the Zurich organizers' website it was at least planned (https://200ok.ch/posts/2019-09-17_announcing_the_official_emacsconf_zurich_satellite.html) but maybe they finally wanted to not miss out the main stream :) (or maybe also some technical issues; as mentioned, I've checked into the ZH stream frequently, and the mirroring of main stream was without audio)
- Hehe. Karl has a pretty good idea how this happens but it still does result in confusion of everybody involved. This needs to be clarified upfront and explained.
- During the last extended talk, I could not connect to the IRC server: "Error Connecting (Closing Link: irc0d.libreplanet.org (Too many user connections (global)))". Could the server be configured to accept more connections?
- Probably having a dummy(?) video + sound signal online 30min before the start in order to prevent all those "stream is broken" messages in the hot phase before
- Is there a libre Emacs song that qualifies for an endless loop? :-)
- 1h would be even better, since there's so much craziness that happens riiiight before the conference starts. (ex: "Aaaaah! I can't bounce the stream to YouTube as a backup!")
- For future reference, do you all think we can have a conference code of conduct that's more similar to the useR! conference (https://user2018.r-project.org/code_of_conduct/) instead of the current one? The useR! conference code of conduct is really comprehensive.
- Not sure if this is feasible: mandatory audio/video check with everybody who gets live upfront the event
- We tried getting speakers to do tech checks before the day of the conference, but only a few did. =) Fortunately, we were able to handle most of the tech checks on the fly. I ran around checking people while bandali focused on the stream - Sacha
- Karl: sounds reasonable to keep it that way
- I wonder if bouncing between two Jitsi rooms could make sense. Unfortunately, muting happens site-wide... =|
- Ask speakers not to use command-log-mode because this window always gets hidden/destroyed/... without noticing during the talk. Instead, use something independent from Emacs like:
- equalize audio levels of prerecorded talks
- /topic changes in #emacsconf and #emacsconf-questions
Volunteers
=========
- Karl Voit happily joins the orga team for next time: emacsconf@Karl-Voit.at
== Thanks
- bandali: organizing, coordinating, setting up infrastructure, handling streaming and switching
- sachac: tech checks, help with schedule
- all the speakers
- satellite event organizers
- FSF: streaming setup tips
- aindilis: transcripts
- bremner, dto, ggoes: helping with questions
- KarlVoit: pad
- so many people! attendees, volunteers
== Next steps (we'd love it if you helped with this stuff - you can coordinate with bandali or sachac, or with each other)
- Transcode videos to free formats
- Upload somewhere
- Link agenda to videos
- Make a playlist for easier downloading and playing
- Transcribe videos - https://emacsconf.org/2019/transcripts
- With STT technology available (see Google Pixel 4): isn't there a possibility to get at least a raw transcription from an algorithm?
- Check speakers' resources for scripts, too
- Scale down VPS - bandali
- Copy this pad to https://emacsconf.org/2019/pad and format it nicely
- Karl is volunteering for that
- To be done beforehand by the official orga team having all the contacts:
- ask all speakers to add links, info, ... to it (probably checking all FIXXMEs left)
- decide on one-shot or multiple conversions: whether or not the pad->webpage should be more or less copy&paste so that viewers of the videos within the next weeks/months are able to contribute more content (if this is feasible) and the webpage archives snapshots until changes get sparse
- set a final deadline so that all desired changes are finalized on the pad
- Karl needs to know the target format (Org, HTML, ...) - see comment/question/task on simple copy&paste above to be able to do this multiple times with minimal manual effort
- Karl needs access or somebody needs to publish it
- Write about your favorite parts, what you learned, what you're going to do next, etc.
- Harvest Q&A from IRC, summarize under each talk
- Braindump lessons learned
- Subscribe to the mailing list if you want to get notified when more resources are up - https://lists.gnu.org/mailman/listinfo/emacsconf-discuss
- Karl: is there an active Gmane bridge for that ML?
- Go forth and do awesome