[[!meta title="Organizers' notebook"]]
[[!meta copyright="Copyright © 2019 Sacha Chua"]]
## Talk status
<table class="user">
<tbody>
<tr>
<td align="center">Time</td>
<td align="center">Talk</td>
<td align="center">Speaker</td>
<td align="center">Tech</td>
<td align="center">Prerecorded</td>
<td align="center">Preference</td>
</tr>
<tr>
<td align="center">9</td>
<td align="center">Opening remarks</td>
<td align="center">Amin Bandali (bandali)</td>
<td align="right"></td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Community update</td>
<td align="center">Sacha Chua (sachac)</td>
<td align="right"></td>
<td align="center">9:31</td>
<td align="right"></td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Emacs devel update</td>
<td align="center">John Wiegley (johnw)</td>
<td align="center">Y</td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="center">9:30-10:15</td>
<td align="center">GNU Emacs for All</td>
<td align="center">Sachin Patil (psachin)</td>
<td align="center">will record</td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="center">10:15-10:45</td>
<td align="center">How a Completely Blind Manager/Developer Uses Emacs Every Day</td>
<td align="center">Parham Doustdar (Parham)</td>
<td align="center">Y</td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="center">10:45-11:15</td>
<td align="center">Managing your life with org-mode and other tools</td>
<td align="center">Marcin Swieczkowski (Marcin)</td>
<td align="center">Y</td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="center">Lightning</td>
<td align="center">11:15-12</td>
<td align="right"></td>
<td align="right"></td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Play and control your music with Emacs</td>
<td align="center">Damien Cassou (DamienCassou)</td>
<td align="right"></td>
<td align="center">9:41</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">How to record executable notes with eev - and how to play them back</td>
<td align="center">Eduardo Ochs (edrx)</td>
<td align="center">Y</td>
<td align="center">19:23</td>
<td align="center">Zurich</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">notmuch new(s)</td>
<td align="center">David Bremner (bremner)</td>
<td align="center">done</td>
<td align="center">8:02</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Browsing Twitch.tv from Emacs</td>
<td align="center">Aaron Jacobs (ajacobs)</td>
<td align="center">done</td>
<td align="center">8:54</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Ledger-mode</td>
<td align="center">Miguel Suárez and Quiliro Ordóñez (quiliro)</td>
<td align="center">done</td>
<td align="center">6:54</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Playing Emacs like an instrument</td>
<td align="center">Zen Monk Alain M. Lafon (munen)</td>
<td align="center">done</td>
<td align="center">12:14</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">A.I. that Helps Play the Game of Your Life</td>
<td align="center">Andrew J. Dougherty (aindilis)</td>
<td align="center">done</td>
<td align="center">7:14</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Org-mode and FoilTeX</td>
<td align="center">Tom Faulkenberry</td>
<td align="center">done</td>
<td align="center">8:06</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Use Org mode when away from the desktop</td>
<td align="center">Zen Monk Alain M. Lafon (munen)</td>
<td align="center">done</td>
<td align="center">10:08</td>
<td align="center">Done</td>
</tr>
<tr>
<td align="center">12-12:45</td>
<td align="center">Magit deep dive</td>
<td align="center">Jonathan Chu (jonathanchu)</td>
<td align="center">Y</td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="center">12:45-1:30</td>
<td align="center">Emacs as my Go To Script Language</td>
<td align="center">Howard Abrams (howard-abrams)</td>
<td align="center">Y</td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="center">1:30-2:15</td>
<td align="center">Continuously checking for quality of your packages</td>
<td align="center">Damien Cassou (DamienCassou)</td>
<td align="center">Y</td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="center">3:15-4</td>
<td align="center">Interactive Remote Debugging and Development with TRAMP Mode</td>
<td align="center">Matt Ray</td>
<td align="right"></td>
<td align="center">35:24</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="center">Lightning</td>
<td align="center">2:15-3:15</td>
<td align="right"></td>
<td align="right"></td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Object oriented spreadsheets with example applications</td>
<td align="center">David O’Toole (dto)</td>
<td align="center">Y</td>
<td align="center">10:02</td>
<td align="center">Live</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">How Emacs became my awesome Java editing environment</td>
<td align="center">Torstein Krause Johansen (skybert)</td>
<td align="center">Y</td>
<td align="center">9:08</td>
<td align="center">Live</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Porting org-shiftup/down as a separate module</td>
<td align="center">MetroWind</td>
<td align="right"></td>
<td align="center">12:10</td>
<td align="center">Live</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Don’t wait! Write your own (yas)snippet</td>
<td align="center">Tony Aldon</td>
<td align="right"></td>
<td align="center">8:11</td>
<td align="right"></td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Packaging emacs packages for Debian</td>
<td align="center">David Bremner (bremner)</td>
<td align="right"></td>
<td align="center">9:49</td>
<td align="right"></td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Restclient and org-mode for Api Documentation and Testing</td>
<td align="center">Mackenzie Bligh</td>
<td align="right"></td>
<td align="center">6:23</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Automate your workflow as a game developer</td>
<td align="center">Jānis Mancēvičs</td>
<td align="right"></td>
<td align="center">8:55</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Equake mode</td>
<td align="center">Ben Slade</td>
<td align="right"></td>
<td align="center">7:43</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">Navigel to facilitate the creation of tabulated-list based UIs</td>
<td align="center">Damien Cassou (DamienCassou)</td>
<td align="right"></td>
<td align="center">9:25</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="right"></td>
<td align="center">VSCode is Better than Emacs</td>
<td align="center">Zaiste</td>
<td align="right"></td>
<td align="center">9:31</td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="center">4-4:30</td>
<td align="center">GNU Emacs as software freedom in practice</td>
<td align="center">Greg Farough (pref: they)</td>
<td align="right"></td>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<td align="center">4:45-5:45</td>
<td align="center">Emacs: The Editor for the Next Forty Years</td>
<td align="center">Perry E. Metzger (pmetzger)</td>
<td align="center">Y</td>
<td align="right"></td>
<td align="center">Prerec</td>
</tr>
<tr>
<td align="center">4:30-4:45</td>
<td align="center">Closing remarks</td>
<td align="center">Amin Bandali (bandali)</td>
<td align="right"></td>
<td align="right"></td>
<td align="right"></td>
</tr>
</tbody>
</table>
## Before the conference
- Amin: download all prerecorded videos and set up OBS scenes for easy
switching (Emacs, Jitsi, video player)
- Sacha: download all prerecorded videos and set up OBS scenes for
easy switching (Emacs, Jitsi, video player)
- Draft text to be pasted on Emacs Conference 2019 page for watching
- Test if we can both stream to Icecast
- Test if we can stream from Icecast to Youtube
- Test if we can record Icecast stream
- Test if Youtube recording works properly
- Test playing a prerecorded video
- Draft speaker instructions
## Speaker instructions
- Please use your favourite IRC client to join #emacsconf-org on
irc.freenode.net on the day of the conference. It should be a
low-traffic channel for coordinating with speakers. Check in with
sachac and bandali by saying hi, mentioning your name/talk if it's
not obvious from your nick. Sacha (or the backup organizer) will
coordinate with you for a tech check before you speak, and will give
you the go-ahead to join a Jitsi session for the main presentation.
- You can also join #emacsconf if you'd like to keep an eye on the
conversations, or #emacsconf-questions for a more moderated view.
- Please wear earphones or headphones in order to minimize microphone
feedback.
- Some of our attendees are blind, so please try to verbally describe
what you're showing on the screen. We will also ask volunteers to
describe what's going on in the #emacsconf channel (or maybe
#emacsconf-descriptive).
## Plan for the conference day
- Main organizer: Amin
- Backup: Sacha
- Other volunteers: bremner and ggoes - channel monitoring
### Setup
- Main organizer starts streaming an "Emacs Conference 2019 will start at ...." page.
- Backup organizer sets up backup stream to Youtube
- `ffmpeg -i http://live0.emacsconf.org:8000/testmount.webm -c:a copy -c:v copy rtmp://a.rtmp.youtube.com/live2/STREAMING_KEY`
- Start streaming
- Main organizer and backup do tech check
- Backup confirms Icecast stream can be seen
- Backup confirms Youtube stream can be seen
- Both organizers start recording, stop recording, and confirm recording playback.
- Recording off Icecast: Main organizer
- `ffmpeg -i http://live0.emacsconf.org:8000/testmount.webm -c:a copy -c:v copy out.webm`
- Recording off YouTube: Backup organizer
- Mirroring to secondary Icecast sever: volunteer
- `ffmpeg -i http://live0.emacsconf.org:8000/testmount.webm -c:a copy -c:v copy -content_type video/webm icecast://source:password@live1.emacsconf.org:8000/testmount.webm`
- Both organizers start recording again
- Main organizer updates wiki with watching instructions
- Backup organizer confirms watching instructions
- Main organizer switches to agenda/opening image and does opening remarks
- Backup organizer streams on phone so that she can monitor it while doing tech checks
### Throughout the day
- Backup checks #emacsconf-org channel and coordinates with speakers.
- Planned talks: check if the speaker is available and can do a quick tech check
- Lightning talks: Check who's ready to do their talk live with a quick tech check beforehand
- All right, who wants to do the next lightning talk?
- Please go to <https://meet.jit.si/emacsconf-tech> for a quick tech check.
- When you're ready, close the tech check tab and go to ___.
- Backup does tech check with speaker in a separate jitsi room and coordinates via IRC.
- When ready, speaker joins main conference room and presents OR main organizer changes to a different room.
- Backup organizer updates organizer's notebook with talk status
- Backup organizer tweets talk info
### Playing prerecorded videos
- Main organizer introduces talk
- Main organizer switches to OBS video player scene and plays video with video player
- Main organizer posts "PLAYED: <title>" in #emacsconf-org (so that it's easy to check which ones have been played already - maybe we should have a wiki page?)
### In case of...
#### Technical issues / speakers not present
- Main organizer makes brief announcement, then play prerecorded videos
- If there are no more prerecorded videos, possibly open the floor to participants and treat it as a hangout
#### Speaker talking too long
- If the next live presenter is lined up, main organizer gently nudges speaker to wrap up in five minutes
- If no live presenter is lined up, backup organizer keeps checking the #emacsconf-org channel to see who will speak next, doing tech-check before giving the main organizer the go-ahead to nudge the speaker.
We don't have to bump live presenters for a prerecorded presentation, because we can play all the prerecorded presentations at the end.
#### Disruptive people joining Jitsi room
- Main organizer switches to technical difficulties message or different Jitsi room
- Backup coordinates with speaker to join a different room
#### Jitsi down
- Main organizer describes technical difficulties and updates status page
- Main organizer plays prerecorded videos while backup organizer retries Jitsi with help from volunteers, coordinating via IRC
- TODO Back up plan in case Jitsi doesn't work? Say sorry and try again a different day?
### After live presentations end
- Main organizer makes closing remarks
- Main organizer plays remaining prerecorded videos
- After all prerecorded videos, main organizer says thank you, ends the stream, and ends the recording.
## Lessons learned for next time
- Indicate conference times and timezone in call for proposals.
- Consider anonymized conference submissions to reduce bias. Encourage people to do personal outreach if there are people they would like to invite to speak.