summaryrefslogtreecommitdiffstats
path: root/2022
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--2022/info/buddy-before.md2
-rw-r--r--2022/info/justl-before.md2
-rw-r--r--2022/info/meetups-before.md2
-rw-r--r--2022/organizers-notebook/index.org465
-rw-r--r--2022/watch/dev.md36
-rw-r--r--2022/watch/gen.md42
6 files changed, 255 insertions, 294 deletions
diff --git a/2022/info/buddy-before.md b/2022/info/buddy-before.md
index d0379733..b348bcf8 100644
--- a/2022/info/buddy-before.md
+++ b/2022/info/buddy-before.md
@@ -6,7 +6,7 @@
[[!toc ]]
Format: 7:49 followed by IRC Q&A (<a href="https://chat.emacsconf.org/?join=emacsconf,emacsconf-gen">#emacsconf-gen</a>)
-Status: Processing uploaded video
+Status: Waiting for a caption volunteer
<div>Times in different timezones:</div><div class="times" start="2022-12-03T16:35:00Z" end="2022-12-03T16:45:00Z"><div class="conf-time">Saturday, Dec 3 2022, ~11:35 AM - 11:45 AM EST (US/Eastern)</div><div class="others">Saturday, Dec 3 2022, ~11:35 AM - 11:45 AM EST (US/Eastern)</div></div><div><a href="/2022/watch/gen/">Find out how to watch and participate</a></div>
diff --git a/2022/info/justl-before.md b/2022/info/justl-before.md
index bbd07348..898af49f 100644
--- a/2022/info/justl-before.md
+++ b/2022/info/justl-before.md
@@ -6,7 +6,7 @@
[[!toc ]]
Format: 10-min talk followed by IRC Q&A (<a href="https://chat.emacsconf.org/?join=emacsconf,emacsconf-dev">#emacsconf-dev</a>)
-Status: Waiting for video from speaker
+Status: Waiting for a caption volunteer
<div>Times in different timezones:</div><div class="times" start="2022-12-04T15:45:00Z" end="2022-12-04T15:55:00Z"><div class="conf-time">Sunday, Dec 4 2022, ~10:45 AM - 10:55 AM EST (US/Eastern)</div><div class="others">Sunday, Dec 4 2022, ~10:45 AM - 10:55 AM EST (US/Eastern)</div></div><div><a href="/2022/watch/dev/">Find out how to watch and participate</a></div>
diff --git a/2022/info/meetups-before.md b/2022/info/meetups-before.md
index c3804b9a..7c5f6374 100644
--- a/2022/info/meetups-before.md
+++ b/2022/info/meetups-before.md
@@ -6,7 +6,7 @@
[[!toc ]]
Format: 20-min talk followed by live Q&A (<https://emacsconf.org/current/meetups/room>)
-Status: Waiting for video from speaker
+Status: Processing uploaded video
<div>Times in different timezones:</div><div class="times" start="2022-12-03T18:05:00Z" end="2022-12-03T18:25:00Z"><div class="conf-time">Saturday, Dec 3 2022, ~1:05 PM - 1:25 PM EST (US/Eastern)</div><div class="others">Saturday, Dec 3 2022, ~1:05 PM - 1:25 PM EST (US/Eastern)</div></div><div><a href="/2022/watch/gen/">Find out how to watch and participate</a></div>
diff --git a/2022/organizers-notebook/index.org b/2022/organizers-notebook/index.org
index 3d49e741..a0599d52 100644
--- a/2022/organizers-notebook/index.org
+++ b/2022/organizers-notebook/index.org
@@ -114,7 +114,7 @@ Ordered chronologically (and therefore by importance).
#+TOC: headlines 1 local
** TODO Send schedule-published email for emacsconf-discuss :needsowner:timesensitive:email:
-DEADLINE: <2022-10-15 Sat> SCHEDULED: <2022-10-15 Sat>
+SCHEDULED: <2022-10-31 Mon> DEADLINE: <2022-10-31 Mon>
:PROPERTIES:
:CUSTOM_ID: announce-program
:END:
@@ -162,6 +162,21 @@ We hope to see you all around on Dec 3-4 for EmacsConf 2022!
P.S. please direct all replies to this post either to myself or to the
emacsconf-discuss list, so as to help avoid generating extra off-topic
chatter in the other lists cc'd in this message; thank you.
+** TODO 2022-10-30 volunteer update
+:PROPERTIES:
+:CUSTOM_ID: volunteer-2022-10-30
+:END:
+
+- talks to caption
+- word-level data, TSV, comparison of OpenAI whisper
+- welcome to Tom Purl
+- obs in the cloud
+
+
+
+- check availability for tech checks
+
+ For sessions with live Q&A, we'd like to set up tech-checks with speakers to make sure that their setup works well for BigBlueButton. If you can help with tech-checks (~15 minutes, see the process at TODO), please e-mail us with your general availability (including timezones) and preferred public contact information so that we can include you on the list at TODO.
** TODO Flesh out prepare.md for audio-recording tips before the prerec-deadline :zaeph:
@@ -173,28 +188,13 @@ chatter in the other lists cc'd in this message; thank you.
#+TOC: headlines 1 local
Ordered by importance.
-** TODO Coordinate and help volunteers :sachac:
-:PROPERTIES:
-:CUSTOM_ID: coordinate-volunteers
-:END:
-
-- [[../volunteer]]
-- Figure out what information volunteers need in order to feel
- comfortable signing up for tasks. ex:
- https://wiki.debian.org/DebConf/21/VideoVolunteering
-- Encourage people to sign up for [[#shifts]]
-
-*** TODO Plan training session(s), Q&A availability, recordings
-*** BLOCKED Hold Q&A session with volunteers
-:PROPERTIES:
-:CUSTOM_ID: schedule-volunteer-qna
-:END:
-** TODO Prepare for prerecs :zaeph:
-DEADLINE: <2022-10-28 Fri>
+** DONE Prepare for prerecs :zaeph:
+CLOSED: [2022-10-29 Sat 09:58] DEADLINE: <2022-11-04 Fri>
:PROPERTIES:
:CUSTOM_ID: prepare-prerec-process
:END:
-*** INPROGRESS Optimize ffmpeg incantation
+*** DONE Optimize ffmpeg incantation
+CLOSED: [2022-10-29 Sat 09:58]
Remember to update [[file:../prepare.md::Compression]] with the new incantation.
**** Incantation from last year
@@ -226,8 +226,8 @@ ffmpeg -y -i "$1" -c:v libvpx-vp9 -b:v 0 -crf $Q -an -row-mt 1 -tile-columns 2 -
Other considerations:
- We might want to tweak the time before keyframes (~-g~).
-*** TODO Check process for posting prerecs to the talk page and media directory as soon as the talk is live :sachac:
-*** TODO Figure out workflow for handling submitted prerecs
+*** DONE Figure out workflow for handling submitted prerecs
+CLOSED: [2022-10-29 Sat 09:54]
We need time after the prerecs get submitted to:
- convert the videos and check that they've been reencoded properly by watching the re-encoded ones all the way to the end
- caption videos
@@ -257,9 +257,9 @@ Playbook will be able to reproduce:
in prod or docker container
-*** TODO local icecast forwarder
*** TODO restreamers on live0
-*** STARTED icecast on live0
+*** DONE icecast on live0
+CLOSED: [2022-10-29 Sat 09:56]
:PROPERTIES:
:Effort: 1:00
:END:
@@ -268,7 +268,8 @@ in prod or docker container
:END:
(find-file "/ssh:live|sudo::/etc/icecast2/icecast.xml")
-**** TODO Set up watch/gen-480p
+**** DONE Set up watch/gen-480p
+CLOSED: [2022-10-29 Sat 09:56]
*** TODO publishing environment
@@ -297,18 +298,6 @@ What to show in between talks:
See break commercials
https://www.collabmagazine.com/organizing-a-multi-track-virtual-conference-with-microsoft-teams-live-events-a-technical-playbook-and-lessons-learned/
-** TODO css enhancement of watch pages :emacsconf:
-:PROPERTIES:
-:CREATED: [2022-10-22 Sat 15:15]
-:CUSTOM_ID: watch-css
-:END:
-
-
-*** TODO Add start and end attributes to the brief stuff
-:PROPERTIES:
-:CREATED: [2022-10-20 Thu 22:26]
-:END:
-
** TODO Create protocol for live Q&A :zaeph:
:PROPERTIES:
:CUSTOM_ID: live-protocol
@@ -339,114 +328,6 @@ From previous years:
- Can you share contact information (ex: phone number) so that we can get in touch with you in case of technical issues or scheduling changes?
- Do you need help finding your way around IRC so that you can check into `#emacsconf-org`? What is your IRC nickname?
#+end_quote
-** TODO Smoothen captioning workflow :sachac:
-:PROPERTIES:
-:CUSTOM_ID: caption-workflow
-:END:
-It looks like OpenAPI needs a little less editing in terms of
-capitalization and punctuation, but it produces longer captions
-(likely a 30-second sliding window). I'll try to upload both YT and
-OpenAPI captions so that people can decide what they like.
-*** DONE Compare large, medium, and small models
-CLOSED: [2022-10-23 Sun 08:32]
-12 threads
-
-Original file: 21:16 21 minutes
-| | Hours | Mult | Notes |
-| [[https://media.emacsconf.org/2022/backstage/emacsconf-2022-sqlite--using-sqlite-as-a-data-source-a-framework-and-an-example--andrew-hyatt--large.vtt][Large]] | 2:49 | 8 | |
-| [[https://media.emacsconf.org/2022/backstage/emacsconf-2022-sqlite--using-sqlite-as-a-data-source-a-framework-and-an-example--andrew-hyatt--medium.vtt][Medium]] | 2:03 | 5.9 | |
-| [[https://media.emacsconf.org/2022/backstage/emacsconf-2022-sqlite--using-sqlite-as-a-data-source-a-framework-and-an-example--andrew-hyatt--small.vtt][Small]] | 0:40 | 2 | More run-on sentences |
-
-Large and medium might do better on a system with a GPU. I'll default to the small model for now.
-
-*** DONE Commit subed-tsv so that people can try a cleaner output
-CLOSED: [2022-10-23 Sun 09:59]
-:PROPERTIES:
-:Effort: 1:00
-:QUANTIFIED: Emacs
-:END:
-:LOGBOOK:
-CLOCK: [2022-10-23 Sun 08:32]--[2022-10-23 Sun 09:59] => 1:27
-:END:
-*** DONE Investigate more granular timestamps for the output from OpenAPI Whisper
-CLOSED: [2022-10-25 Tue 11:14]
-
-https://git.emacsconf.org/emacsconf-ansible/tree/roles/caption/templates
-
-*** DONE Upload srv2 from YouTube for word-level
-CLOSED: [2022-10-22 Sat 23:16]
-:PROPERTIES:
-:CREATED: [2022-10-22 Sat 14:38]
-:END:
-*** TODO Move publishing the backstage index to res so that we can trigger it after the files are uploaded
-:PROPERTIES:
-:CREATED: [2022-10-21 Fri 16:45]
-:END:
-
-*** TODO [#C] Compare with Google Cloud Speech API
-~/code/speech
-*** TODO E-mail for bringing new captioning volunteers onboard
-#+begin_src emacs-lisp
-(defun emacsconf-mail-captioning-intro (volunteer &optional template)
- (interactive (list (emacsconf-complete-volunteer)
- (emacsconf-mail-merge-get-template "captioning-intro")))
- (emacsconf-mail-prepare
- (or template (emacsconf-mail-merge-get-template "captioning-intro"))
- (assoc-default "EMAIL" volunteer 'string=)
- (list
- :backstage "https://media.emacsconf.org/2022/backstage/"
- :backstage-user "emacsconf"
- :backstage-password emacsconf-backstage-password
- :conf-name emacsconf-name
- :year emacsconf-year
- :name (assoc-default "NAME_SHORT" volunteer 'string=)
- :email (assoc-default "EMAIL" volunteer 'string=))))
-#+end_src
-**** Template
-:PROPERTIES:
-:TO: ${email}
-:FUNCTION: emacsconf-mail-captioning-intro
-:EMAIL_ID: captioning-intro
-:SUBJECT: ${conf-name} ${year}: Thanks for volunteering to help with captions!
-:END:
-
-Hi ${name}!
-
-Thank you for volunteering to help with the captions for ${conf-name}
-${year}! Last year, we were able to get almost all the talks captioned
-in time for streaming. Participants found them very useful for
-understanding different technical terms, names, accents, and so on.
-We'd love to be able to pull that off again this year, and it would be
-great to have you on board.${wrap}
-
-We've set up ${backstage} as the backstage area where you can view the
-videos and resources uploaded so far. You can access it with the
-username "${backstage-user}" and the password "${backstage-password}".
-Please keep the backstage password and other speakers' talk resources
-secret. If you see a talk that you'd like to caption, you can e-mail
-me at sacha@sachachua.com and I can reserve it for you. Then you can
-correct any misrecognized words, fix capitalizations, remove filler
-words as needed, and maybe even split and merge the subtitles to make
-them read more nicely.${wrap}
-
-You can find captioning tips at https://emacsconf.org/captioning/ .
-Feel free to use your favourite subtitle editor, and you can convert
-it to whatever format you like. If you prefer to work with plain text,
-we can probably even figure out the timestamps afterwards.
-
-Let me know if you want to reserve a talk for captioning or if you
-have any questions or suggestions. Thank you!
-
-Sacha Chua
-
-
-*** TODO [#C] jiwer · PyPI - measure error rate
-:PROPERTIES:
-:CREATED: [2022-10-22 Sat 20:59]
-:END:
-
-https://pypi.org/project/jiwer/
-
** DONE Update viewing instructions and watch pages :sachac:
CLOSED: [2022-10-14 Fri 15:02]
:PROPERTIES:
@@ -465,7 +346,19 @@ CLOSED: [2022-10-17 Mon 00:39]
Maybe links to the current shift's pads
*** TODO Add pad to sched directive so that it will be linked when the pads are live
*** TODO Update https://live.emacsconf.org/ as well
-** TODO Prepare to handle talk state changes :sachac:
+** TODO [#C] JS/CSS enhancement :emacsconf:
+:PROPERTIES:
+:CREATED: [2022-10-22 Sat 15:15]
+:CUSTOM_ID: watch-css
+:END:
+
+
+*** TODO Add start and end attributes to the brief stuff for possible JS/CSS
+:PROPERTIES:
+:CREATED: [2022-10-20 Thu 22:26]
+:END:
+
+** TODO Prepare to handle talk state changes :sachac:publish:
:PROPERTIES:
:CUSTOM_ID: publish-live
:END:
@@ -525,13 +418,7 @@ emacsconf-erc.el in the emacsconf-el repo
- a small announcement might go into the hallway and emacsconf-org
- announcement can include talk page, pad, IRC nick, pronouns
-** BLOCKED Set up talks on Toobnix and YouTube :sachac:
-:PROPERTIES:
-:CUSTOM_ID: video-platforms
-:END:
-so that people can find the videos on other video platforms
-waiting for prerecs
-** TODO Set up stream events on Toobnix and YouTube :sachac:
+** TODO Set up stream events on Toobnix and YouTube :sachac:stream:
:PROPERTIES:
:CUSTOM_ID: other-streams
:END:
@@ -542,7 +429,14 @@ so that people on other platforms can come across EmacsConf
MOUNT=$1
while true; do ffmpeg -loglevel 24 -i http://localhost:8000/main.webm -cluster_size_limit 2M -cluster_time_limit 5100 -b:v 1M -crf 30 -g 125 -deadline good -threads 4 -vcodec libx264 -acodec libmp3lame -f flv $MOUNT; done
#+end_src
-** TODO Ask speakers for bios or support nudges to include on their talk pages
+** BLOCKED Set up talks on Toobnix and YouTube :sachac:yt:toobnix:
+:PROPERTIES:
+:CUSTOM_ID: video-platforms
+:END:
+so that people can find the videos on other video platforms
+waiting for prerecs
+** TODO Check process for posting prerecs to the talk page and media directory as soon as the talk is live :sachac:
+** TODO Ask speakers for bios or support nudges to include on their talk pages :wiki:
:PROPERTIES:
:CUSTOM_ID: speaker-bio
:END:
@@ -582,6 +476,116 @@ zaeph is available on 2022-11-06
- [ ] Message on the schedule
- [ ] Prerec live
- [ ] Wind everything down
+** TODO [#C] Smoothen captioning workflow :sachac:
+:PROPERTIES:
+:CUSTOM_ID: caption-workflow
+:END:
+It looks like OpenAPI needs a little less editing in terms of
+capitalization and punctuation, but it produces longer captions
+(likely a 30-second sliding window). I'll try to upload both YT and
+OpenAPI captions so that people can decide what they like.
+*** TODO [#C] Move publishing the backstage index to res so that we can trigger it after the files are uploaded
+:PROPERTIES:
+:CREATED: [2022-10-21 Fri 16:45]
+:END:
+
+*** DONE Compare large, medium, and small models
+CLOSED: [2022-10-23 Sun 08:32]
+12 threads
+
+Original file: 21:16 21 minutes
+| | Hours | Mult | Notes |
+| [[https://media.emacsconf.org/2022/backstage/emacsconf-2022-sqlite--using-sqlite-as-a-data-source-a-framework-and-an-example--andrew-hyatt--large.vtt][Large]] | 2:49 | 8 | |
+| [[https://media.emacsconf.org/2022/backstage/emacsconf-2022-sqlite--using-sqlite-as-a-data-source-a-framework-and-an-example--andrew-hyatt--medium.vtt][Medium]] | 2:03 | 5.9 | |
+| [[https://media.emacsconf.org/2022/backstage/emacsconf-2022-sqlite--using-sqlite-as-a-data-source-a-framework-and-an-example--andrew-hyatt--small.vtt][Small]] | 0:40 | 2 | More run-on sentences |
+
+Large and medium might do better on a system with a GPU. I'll default to the small model for now.
+
+*** DONE Commit subed-tsv so that people can try a cleaner output
+CLOSED: [2022-10-23 Sun 09:59]
+:PROPERTIES:
+:Effort: 1:00
+:QUANTIFIED: Emacs
+:END:
+:LOGBOOK:
+CLOCK: [2022-10-23 Sun 08:32]--[2022-10-23 Sun 09:59] => 1:27
+:END:
+*** DONE Investigate more granular timestamps for the output from OpenAPI Whisper
+CLOSED: [2022-10-25 Tue 11:14]
+
+https://git.emacsconf.org/emacsconf-ansible/tree/roles/caption/templates
+
+*** DONE Upload srv2 from YouTube for word-level
+CLOSED: [2022-10-22 Sat 23:16]
+:PROPERTIES:
+:CREATED: [2022-10-22 Sat 14:38]
+:END:
+*** CANCELLED [#C] Compare with Google Cloud Speech API
+CLOSED: [2022-10-29 Sat 09:58]
+~/code/speech
+*** DONE E-mail for bringing new captioning volunteers onboard
+CLOSED: [2022-10-29 Sat 09:58]
+#+begin_src emacs-lisp
+(defun emacsconf-mail-captioning-intro (volunteer &optional template)
+ (interactive (list (emacsconf-complete-volunteer)
+ (emacsconf-mail-merge-get-template "captioning-intro")))
+ (emacsconf-mail-prepare
+ (or template (emacsconf-mail-merge-get-template "captioning-intro"))
+ (assoc-default "EMAIL" volunteer 'string=)
+ (list
+ :backstage "https://media.emacsconf.org/2022/backstage/"
+ :backstage-user "emacsconf"
+ :backstage-password emacsconf-backstage-password
+ :conf-name emacsconf-name
+ :year emacsconf-year
+ :name (assoc-default "NAME_SHORT" volunteer 'string=)
+ :email (assoc-default "EMAIL" volunteer 'string=))))
+#+end_src
+**** Template
+:PROPERTIES:
+:TO: ${email}
+:FUNCTION: emacsconf-mail-captioning-intro
+:EMAIL_ID: captioning-intro
+:SUBJECT: ${conf-name} ${year}: Thanks for volunteering to help with captions!
+:END:
+
+Hi ${name}!
+
+Thank you for volunteering to help with the captions for ${conf-name}
+${year}! Last year, we were able to get almost all the talks captioned
+in time for streaming. Participants found them very useful for
+understanding different technical terms, names, accents, and so on.
+We'd love to be able to pull that off again this year, and it would be
+great to have you on board.${wrap}
+
+We've set up ${backstage} as the backstage area where you can view the
+videos and resources uploaded so far. You can access it with the
+username "${backstage-user}" and the password "${backstage-password}".
+Please keep the backstage password and other speakers' talk resources
+secret. If you see a talk that you'd like to caption, you can e-mail
+me at sacha@sachachua.com and I can reserve it for you. Then you can
+correct any misrecognized words, fix capitalizations, remove filler
+words as needed, and maybe even split and merge the subtitles to make
+them read more nicely.${wrap}
+
+You can find captioning tips at https://emacsconf.org/captioning/ .
+Feel free to use your favourite subtitle editor, and you can convert
+it to whatever format you like. If you prefer to work with plain text,
+we can probably even figure out the timestamps afterwards.
+
+Let me know if you want to reserve a talk for captioning or if you
+have any questions or suggestions. Thank you!
+
+Sacha Chua
+
+
+*** TODO [#C] jiwer · PyPI - measure error rate
+:PROPERTIES:
+:CREATED: [2022-10-22 Sat 20:59]
+:END:
+
+https://pypi.org/project/jiwer/
+
** TODO [#C] Add category tags and possibly links between talks across 2022 and all previous years :needsowner:wiki:
:PROPERTIES:
:CUSTOM_ID: link-pages
@@ -742,122 +746,79 @@ console.log(JSON.stringify([...document.querySelectorAll('.delete-room')].map((o
see conf.org for the rest of the process
*** TODO Add volunteers to the BBB rooms
-** TODO [#C] Investigate streaming options, maybe OBS in the cloud :corwin:
-DEADLINE: <2022-11-20 Sun>
-:PROPERTIES:
-:CUSTOM_ID: streaming
-:END:
-
-- bandali doesn't have much cognitive bandwidth at the moment, so we can keep things simple with OBS on laptops
-
-- Issue: zaeph was dropping frames and couldn’t pay attention to as many things as he wanted
-- Issue: corwin needs assistance to not be locked in his chair for the whole conf. Premptively, zaeph can do it by broadcasting OBS scenes via the rtmp (instead of just his webcam).
-- With a long day, we may want to be able to schedule hosts/streamers/publishers in shifts
-- Ideal: Easy reproducible setup to spin up an OBS VM with scenes set up, allowing multiple users to connect to it at the same time. Maybe x2go or vnc? VMs with 8 vCPUs and a vGPU cost more, so it would be good to figure out what's needed, spin it down, and then spin it up maybe the day before or something like that.
-- Plus points if we can control the OBS via password-protected websocket so we can tell it to switch scenes (and even more points if we do so from Emacs, maybe via that obs-websocket.el ;) ). MPV is also controllable via IPC, so we can use the same MPV player and then switch videos around. Maybe mpvc? https://unix.stackexchange.com/questions/664728/how-can-i-control-mpv-in-command-line
-- Probably Linode's Dedicated 32 GB + RTX6000 GPU x1 at $1.50 an hour for 2-3 days + dev time, since live.emacsconf.org is in Linode as well
-- We should also look into normalization across the board, especially if we have BBB participants. pipewire + easyeffects on the box might be the easiest way to do it.
-
-Resources:
-- https://blog.wirelessmoves.com/2021/07/running-obs-studio-in-the-cloud.html
-
-- Multiple users accessing X11
- - Apache Guacamole
- - https://askubuntu.com/questions/817970/how-to-setup-multiple-simultaneous-access-to-x11vnc-session
- - https://xpra.org/
-
-*** TODO corwin: plan an approach to use a centralized OBS/nginix "bouncer" :corwin:
-*** TODO corwin: document such that someone else could use/fix it :corwin:
-*** TODO corwin: recruit at least one more person to help operate the "video bouncer" :corwin:
-
-*** SOMEDAY https://docs.vdo.ninja/
-:PROPERTIES:
-:CREATED: [2022-10-22 Sat 17:27]
-:END:
-
-*** SOMEDAY Live Streaming using low configuration vps | cheapest streaming server | google cloud ubuntu server
-:PROPERTIES:
-:CREATED: [2022-10-22 Sat 17:22]
-:END:
-
-https://www.youtube.com/watch?v=3iBYYgkG1eM&t=953
-
-*** SOMEDAY ansible_linode/instance.md at main · linode/ansible_linode
-:PROPERTIES:
-:CREATED: [2022-10-22 Sat 16:58]
-:END:
-
-https://github.com/linode/ansible_linode/blob/main/docs/modules/instance.md
-
-*** SOMEDAY Use the Linode Ansible Collection to Deploy a Linode | Linode
-:PROPERTIES:
-:CREATED: [2022-10-22 Sat 16:50]
-:END:
-
-https://www.linode.com/docs/guides/deploy-linodes-using-linode-ansible-collection/
-
-*** SOMEDAY Snowmix - The Swiss Army Knife of Open Source Live Video Mixing.
+DEADLINE: <2022-11-05 Sat>
+** TODO Coordinate and help volunteers :sachac:
:PROPERTIES:
-:CREATED: [2022-10-20 Thu 12:10]
+:CUSTOM_ID: coordinate-volunteers
:END:
-https://snowmix.sourceforge.io/Examples/input.html
+- [[../volunteer]]
+- Figure out what information volunteers need in order to feel
+ comfortable signing up for tasks. ex:
+ https://wiki.debian.org/DebConf/21/VideoVolunteering
+- Encourage people to sign up for [[#shifts]]
-*** SOMEDAY YouTube https://m.youtube.com › watch YouTube Live Stream from Free VPS without OBS | No GPU | FFmpeg
+*** TODO Plan training session(s), Q&A availability, recordings
+*** BLOCKED Hold Q&A session with volunteers
:PROPERTIES:
-:CREATED: [2022-10-18 Tue 23:12]
+:CUSTOM_ID: schedule-volunteer-qna
:END:
-
-https://www.google.com/url?sa=t&source=web&rct=j&url=https://m.youtube.com/watch%3Fv%3D9Jj0pVKRaOE&ved=2ahUKEwjPru_TqOv6AhVMkokEHXL9Dm4QtwJ6BAgrEAI&usg=AOvVaw3gyboiaXqCQBflqeWwSf9w
-
-*** SOMEDAY YouTube https://m.youtube.com › watch VPS Streaming Setup for Free 24x7 YouTube Live Stream Without OBS
+** TODO Investigate streaming options, maybe OBS in the cloud :sachac:
+DEADLINE: <2022-11-20 Sun>
:PROPERTIES:
-:CREATED: [2022-10-18 Tue 23:11]
+:CUSTOM_ID: streaming
:END:
-https://www.google.com/url?sa=t&source=web&rct=j&url=https://m.youtube.com/watch%3Fv%3D1y-DUYiECWQ&ved=2ahUKEwjPru_TqOv6AhVMkokEHXL9Dm4QtwJ6BAgqEAI&usg=AOvVaw17mbCEiFL6dGVY4YEBufcy
+Current status
-*** SOMEDAY OBS Studio 26.0 | Hacker News
-:PROPERTIES:
-:CREATED: [2022-10-18 Tue 23:07]
-:END:
-
-https://news.ycombinator.com/item?id=24633139
+- res.emacsconf.org seems to be able to handle 2x (OBS + TigerVNC + MPV, should test with Firefox as well)
-*** SOMEDAY mviereck/x11docker: Run GUI applications and desktops in docker and podman containers. Focus on security.
-:PROPERTIES:
-:CREATED: [2022-10-18 Tue 22:56]
-:END:
+Process on res:
-https://github.com/mviereck/x11docker#sound
-
-*** SOMEDAY vcs.fsf.org Git - streamdesktop.git/tree
-:PROPERTIES:
-:CREATED: [2022-10-17 Mon 19:45]
-:END:
-
-https://vcs.fsf.org/?p=streamdesktop.git;a=tree
+1. sudo su - orga
+2. ./vnc-dev (or ./vnc-gen) - if the VNC server is already up, it'll tell you that it's reusing it. Gen will be on port 5905, dev will be on port 5906. (See vnc_id in the ansible vars.)
+3. Forward your local ports via SSH:
+ ssh -L 15905:127.0.0.1:5905 -L 15906:127.0.0.1:5906 res.emacsconf.org
+4. Connect using xvncviewer to the appropriate forwarded port from your laptop
+ Gen: xvncviewer 127.0.0.1:15905 -shared
+ Dev: xvncviewer 127.0.0.1:15906 -shared
+5. Load something with audio in Firefox, and start playing it.
+5. Use pavucontrol to make sure the Firefox process is going into the $track-qa sink.
+
+*** TODO Create Ansible tasks for setting up sinks for MPV and Firefox for the streams, and adding the scenes appropriately
+*** TODO See if I can even Ansible-up the rest of the tasks
+like starting up Firefox and mpv and everything
+*** TODO Experiment with sharing part of the screen so that there's space for us to work a little off-screen
+*** TODO obs-websocket control of OBS on the server? =D
-*** SOMEDAY Is it possible to run a conference using only free software? | Opensource.com
-:PROPERTIES:
-:CREATED: [2022-10-17 Mon 19:44]
-:END:
-https://opensource.com/article/20/5/conference-free-software
+*** TODO document such that someone else could use/fix it
+*** TODO plan an approach to use a centralized OBS/nginix "bouncer"
+*** Other notes
+- bandali doesn't have much cognitive bandwidth at the moment, so we can keep things simple with OBS on laptops
-*** SOMEDAY soonum/hubangl: A free/libre and easy to use streaming software.
-:PROPERTIES:
-:CREATED: [2022-10-17 Mon 19:43]
-:END:
+- Issue: zaeph was dropping frames and couldn’t pay attention to as many things as he wanted
+- Issue: corwin needs assistance to not be locked in his chair for the whole conf. Premptively, zaeph can do it by broadcasting OBS scenes via the rtmp (instead of just his webcam).
+- With a long day, we may want to be able to schedule hosts/streamers/publishers in shifts
+- Ideal: Easy reproducible setup to spin up an OBS VM with scenes set up, allowing multiple users to connect to it at the same time. Maybe x2go or vnc? VMs with 8 vCPUs and a vGPU cost more, so it would be good to figure out what's needed, spin it down, and then spin it up maybe the day before or something like that.
+- Plus points if we can control the OBS via password-protected websocket so we can tell it to switch scenes (and even more points if we do so from Emacs, maybe via that obs-websocket.el ;) ). MPV is also controllable via IPC, so we can use the same MPV player and then switch videos around. Maybe mpvc? https://unix.stackexchange.com/questions/664728/how-can-i-control-mpv-in-command-line
+- Probably Linode's Dedicated 32 GB + RTX6000 GPU x1 at $1.50 an hour for 2-3 days + dev time, since live.emacsconf.org is in Linode as well
+- We should also look into normalization across the board, especially if we have BBB participants. pipewire + easyeffects on the box might be the easiest way to do it.
+
-https://github.com/soonum/hubangl
-*** SOMEDAY Question / Help - Run OBS on VM in the cloud | OBS Forums
-:PROPERTIES:
-:CREATED: [2022-10-09 Sun 15:42]
-:END:
-https://obsproject.com/forum/threads/run-obs-on-vm-in-the-cloud.122543/
+- https://docs.vdo.ninja/
+- Live Streaming using low configuration vps https://www.youtube.com/watch?v=3iBYYgkG1eM&t=953
+- https://snowmix.sourceforge.io/Examples/input.html
+- https://www.google.com/url?sa=t&source=web&rct=j&url=https://m.youtube.com/watch%3Fv%3D1y-DUYiECWQ&ved=2ahUKEwjPru_TqOv6AhVMkokEHXL9Dm4QtwJ6BAgqEAI&usg=AOvVaw17mbCEiFL6dGVY4YEBufcy
+- [[https://news.ycombinator.com/item?id=24633139][OBS Studio 26.0 | Hacker News]]
+- https://github.com/mviereck/x11docker#sound
+- https://vcs.fsf.org/?p=streamdesktop.git;a=tree
+- https://opensource.com/article/20/5/conference-free-software
+- https://github.com/soonum/hubangl
+- https://obsproject.com/forum/threads/run-obs-on-vm-in-the-cloud.122543/
+*** TODO recruit at least one more person to help operate the "video bouncer"
* Projects to bear in mind but which are not actual
:PROPERTIES:
diff --git a/2022/watch/dev.md b/2022/watch/dev.md
index b865a7d7..31dfab60 100644
--- a/2022/watch/dev.md
+++ b/2022/watch/dev.md
@@ -21,70 +21,70 @@
<div data-start="2022-12-03T15:00:00+0000" data-end="2022-12-03T15:10:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">10:00</span> - <span class="sched-end">10:10</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:treesitter</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/treesitter">Tree-sitter beyond syntax highlighting</a></div>
- <div class="sched-speakers">id:Abin Simon</div>
+ <div class="sched-speakers">Abin Simon</div>
</div>
<div data-start="2022-12-03T15:20:00+0000" data-end="2022-12-03T15:40:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">10:20</span> - <span class="sched-end">10:40</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:lspbridge</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/lspbridge">lsp-bridge: complete asynchronous LSP client</a></div>
- <div class="sched-speakers">id:Andy Stewart, Matthew Zeng</div>
+ <div class="sched-speakers">Andy Stewart, Matthew Zeng</div>
</div>
<div data-start="2022-12-03T15:50:00+0000" data-end="2022-12-03T16:00:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">10:50</span> - <span class="sched-end">11:00</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:asmblox</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/asmblox">asm-blox: a game based on WebAssembly that no one asked for</a></div>
- <div class="sched-speakers">id:Zachary Romero</div>
+ <div class="sched-speakers">Zachary Romero</div>
</div>
<div data-start="2022-12-03T16:25:00+0000" data-end="2022-12-03T16:35:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">11:25</span> - <span class="sched-end">11:35</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:wayland</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/wayland">Emacs should become a Wayland compositor</a></div>
- <div class="sched-speakers">id:Michael Bauer</div>
+ <div class="sched-speakers">Michael Bauer</div>
</div>
<div data-start="2022-12-03T18:00:00+0000" data-end="2022-12-03T18:20:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">1:00</span> - <span class="sched-end">1:20</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:sqlite</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/sqlite">Using SQLite as a data source: a framework and an example</a></div>
- <div class="sched-speakers">id:Andrew Hyatt</div>
+ <div class="sched-speakers">Andrew Hyatt</div>
</div>
<div data-start="2022-12-03T18:45:00+0000" data-end="2022-12-03T19:15:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">1:45</span> - <span class="sched-end">2:15</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:mail</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/mail">Revisiting the anatomy of Emacs mail user agents</a></div>
- <div class="sched-speakers">id:Mohsen BANAN</div>
+ <div class="sched-speakers">Mohsen BANAN</div>
</div>
<div data-start="2022-12-03T19:50:00+0000" data-end="2022-12-03T20:10:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">2:50</span> - <span class="sched-end">3:10</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:maint</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/maint">Maintaining the Maintainers: Attribution as an Economic Model for Open Source</a></div>
- <div class="sched-speakers">id:Sid Kasivajhula</div>
+ <div class="sched-speakers">Sid Kasivajhula</div>
</div>
<div data-start="2022-12-03T20:35:00+0000" data-end="2022-12-03T20:40:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">3:35</span> - <span class="sched-end">3:40</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:eev</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/eev">Bidirectional links with eev</a></div>
- <div class="sched-speakers">id:Eduardo Ochs</div>
+ <div class="sched-speakers">Eduardo Ochs</div>
</div>
<div data-start="2022-12-03T20:50:00+0000" data-end="2022-12-03T20:55:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">3:50</span> - <span class="sched-end">3:55</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:python</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/python">Short hyperlinks to Python docs</a></div>
- <div class="sched-speakers">id:Eduardo Ochs</div>
+ <div class="sched-speakers">Eduardo Ochs</div>
</div>
<div data-start="2022-12-03T21:05:00+0000" data-end="2022-12-03T21:35:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">4:05</span> - <span class="sched-end">4:35</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:haskell</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/haskell">Haskell code exploration with Emacs</a></div>
- <div class="sched-speakers">id:Yuchen Pei</div>
+ <div class="sched-speakers">Yuchen Pei</div>
</div>
@@ -92,56 +92,56 @@
<div data-start="2022-12-04T15:00:00+0000" data-end="2022-12-04T15:20:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">10:00</span> - <span class="sched-end">10:20</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:rde</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/rde">rde Emacs introduction</a></div>
- <div class="sched-speakers">id:Andrew Tropin</div>
+ <div class="sched-speakers">Andrew Tropin</div>
</div>
<div data-start="2022-12-04T15:45:00+0000" data-end="2022-12-04T15:55:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">10:45</span> - <span class="sched-end">10:55</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:justl</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/justl">justl: Driving recipes within Emacs</a></div>
- <div class="sched-speakers">id:Sibi Prabakaran</div>
+ <div class="sched-speakers">Sibi Prabakaran</div>
</div>
<div data-start="2022-12-04T16:05:00+0000" data-end="2022-12-04T16:35:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">11:05</span> - <span class="sched-end">11:35</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:tramp</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/tramp">Elisp and the TRAMP: How to NOT write code you don't have to</a></div>
- <div class="sched-speakers">id:Grant Shangreaux</div>
+ <div class="sched-speakers">Grant Shangreaux</div>
</div>
<div data-start="2022-12-04T18:00:00+0000" data-end="2022-12-04T18:10:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">1:00</span> - <span class="sched-end">1:10</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:detached</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/detached">Getting detached from Emacs</a></div>
- <div class="sched-speakers">id:Niklas Eklund</div>
+ <div class="sched-speakers">Niklas Eklund</div>
</div>
<div data-start="2022-12-04T18:35:00+0000" data-end="2022-12-04T18:45:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">1:35</span> - <span class="sched-end">1:45</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:eshell</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/eshell">Top 10 reasons why you should be using Eshell</a></div>
- <div class="sched-speakers">id:Howard Abrams</div>
+ <div class="sched-speakers">Howard Abrams</div>
</div>
<div data-start="2022-12-04T19:10:00+0000" data-end="2022-12-04T19:30:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">2:10</span> - <span class="sched-end">2:30</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:async</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/async">Emacs was async before async was cool</a></div>
- <div class="sched-speakers">id:Michael Herstine</div>
+ <div class="sched-speakers">Michael Herstine</div>
</div>
<div data-start="2022-12-04T20:05:00+0000" data-end="2022-12-04T20:25:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">3:05</span> - <span class="sched-end">3:25</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:dbus</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/dbus">The Wheels on D-Bus</a></div>
- <div class="sched-speakers">id:Ian Eure</div>
+ <div class="sched-speakers">Ian Eure</div>
</div>
<div data-start="2022-12-04T21:00:00+0000" data-end="2022-12-04T21:20:00+0000" class="sched-entry track-Development">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">4:00</span> - <span class="sched-end">4:20</span></span> <span class="sched-track Development">Development</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:localizing</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/localizing">Pre-localizing Emacs</a></div>
- <div class="sched-speakers">id:Jean-Christophe Helary</div>
+ <div class="sched-speakers">Jean-Christophe Helary</div>
</div>
diff --git a/2022/watch/gen.md b/2022/watch/gen.md
index bc50c0a6..e042e6c2 100644
--- a/2022/watch/gen.md
+++ b/2022/watch/gen.md
@@ -28,77 +28,77 @@
<div data-start="2022-12-03T14:05:00+0000" data-end="2022-12-03T14:25:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">9:05</span> - <span class="sched-end">9:25</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:journalism</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/journalism">Emacs journalism (or everything's a nail if you hit it with Emacs)</a></div>
- <div class="sched-speakers">id:Alfred Zanini</div>
+ <div class="sched-speakers">Alfred Zanini</div>
</div>
<div data-start="2022-12-03T14:45:00+0000" data-end="2022-12-03T15:05:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">9:45</span> - <span class="sched-end">10:05</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:school</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/school">Back to school with Emacs</a></div>
- <div class="sched-speakers">id:Daniel Rösel</div>
+ <div class="sched-speakers">Daniel Rösel</div>
</div>
<div data-start="2022-12-03T15:15:00+0000" data-end="2022-12-03T15:25:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">10:15</span> - <span class="sched-end">10:25</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:handwritten</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/handwritten">How to incorporate handwritten notes into Emacs Orgmode</a></div>
- <div class="sched-speakers">id:Bala Ramadurai</div>
+ <div class="sched-speakers">Bala Ramadurai</div>
</div>
<div data-start="2022-12-03T15:55:00+0000" data-end="2022-12-03T16:15:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">10:55</span> - <span class="sched-end">11:15</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:science</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/science">Writing and organizing literature notes for scientific writing</a></div>
- <div class="sched-speakers">id:Vidianos</div>
+ <div class="sched-speakers">Vidianos</div>
</div>
<div data-start="2022-12-03T16:35:00+0000" data-end="2022-12-03T16:45:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">11:35</span> - <span class="sched-end">11:45</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:buddy</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/buddy">The Emacs Buddy initiative</a></div>
- <div class="sched-speakers">id:Andrea</div>
+ <div class="sched-speakers">Andrea</div>
</div>
<div data-start="2022-12-03T18:05:00+0000" data-end="2022-12-03T18:25:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">1:05</span> - <span class="sched-end">1:25</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:meetups</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/meetups">Attending and organizing Emacs meetups</a></div>
- <div class="sched-speakers">id:Bhavin Gandhi</div>
+ <div class="sched-speakers">Bhavin Gandhi</div>
</div>
<div data-start="2022-12-03T18:50:00+0000" data-end="2022-12-03T19:20:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">1:50</span> - <span class="sched-end">2:20</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:community</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/community">The ship that builds itself: How we used Emacs to develop a workshop for communities</a></div>
- <div class="sched-speakers">id:Noorah Alhasan, Joseph Corneli, Leo Vivier</div>
+ <div class="sched-speakers">Noorah Alhasan, Joseph Corneli, Leo Vivier</div>
</div>
<div data-start="2022-12-03T19:50:00+0000" data-end="2022-12-03T20:10:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">2:50</span> - <span class="sched-end">3:10</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: pad</span>; <span class="sched-slug">id:realestate</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/realestate">Real estate and Org table formulas</a></div>
- <div class="sched-speakers">id:Daniel Gopar</div>
+ <div class="sched-speakers">Daniel Gopar</div>
</div>
<div data-start="2022-12-03T20:20:00+0000" data-end="2022-12-03T20:40:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">3:20</span> - <span class="sched-end">3:40</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:health</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/health">Health data journaling and visualization with Org Mode and GNUplot</a></div>
- <div class="sched-speakers">id:David O'Toole</div>
+ <div class="sched-speakers">David O'Toole</div>
</div>
<div data-start="2022-12-03T21:00:00+0000" data-end="2022-12-03T21:10:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">4:00</span> - <span class="sched-end">4:10</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:jupyter</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/jupyter">Edit live Jupyter notebook cells with Emacs</a></div>
- <div class="sched-speakers">id:Blaine Mooers</div>
+ <div class="sched-speakers">Blaine Mooers</div>
</div>
<div data-start="2022-12-03T21:30:00+0000" data-end="2022-12-03T21:40:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">4:30</span> - <span class="sched-end">4:40</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:orgvm</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/orgvm">orgvm: a simple HTTP server for org</a></div>
- <div class="sched-speakers">id:Corwin Brust</div>
+ <div class="sched-speakers">Corwin Brust</div>
</div>
@@ -120,70 +120,70 @@
<div data-start="2022-12-04T14:05:00+0000" data-end="2022-12-04T14:25:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">9:05</span> - <span class="sched-end">9:25</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:survey</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/survey">Results of the 2022 Emacs Survey</a></div>
- <div class="sched-speakers">id:Timothy</div>
+ <div class="sched-speakers">Timothy</div>
</div>
<div data-start="2022-12-04T14:35:00+0000" data-end="2022-12-04T14:45:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">9:35</span> - <span class="sched-end">9:45</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:orgyear</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/orgyear">This Year in Org</a></div>
- <div class="sched-speakers">id:Timothy</div>
+ <div class="sched-speakers">Timothy</div>
</div>
<div data-start="2022-12-04T15:00:00+0000" data-end="2022-12-04T15:20:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">10:00</span> - <span class="sched-end">10:20</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: IRC</span>; <span class="sched-slug">id:rolodex</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/rolodex">Build a Zettelkasten with the Hyperbole Rolodex</a></div>
- <div class="sched-speakers">id:Ramin Honary</div>
+ <div class="sched-speakers">Ramin Honary</div>
</div>
<div data-start="2022-12-04T15:40:00+0000" data-end="2022-12-04T15:50:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">10:40</span> - <span class="sched-end">10:50</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:orgsuperlinks</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/orgsuperlinks">Linking headings with org-super-links (poor-man's Zettelkasten)</a></div>
- <div class="sched-speakers">id:Karl Voit</div>
+ <div class="sched-speakers">Karl Voit</div>
</div>
<div data-start="2022-12-04T16:10:00+0000" data-end="2022-12-04T16:20:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">11:10</span> - <span class="sched-end">11:20</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:buttons</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/buttons">Linking personal info with Hyperbole implicit buttons</a></div>
- <div class="sched-speakers">id:Mats Lidell</div>
+ <div class="sched-speakers">Mats Lidell</div>
</div>
<div data-start="2022-12-04T18:00:00+0000" data-end="2022-12-04T18:30:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">1:00</span> - <span class="sched-end">1:30</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:hyperorg</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/hyperorg">Powerful productivity with Hyperbole and Org Mode</a></div>
- <div class="sched-speakers">id:Robert Weiner</div>
+ <div class="sched-speakers">Robert Weiner</div>
</div>
<div data-start="2022-12-04T18:50:00+0000" data-end="2022-12-04T19:10:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">1:50</span> - <span class="sched-end">2:10</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:workflows</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/workflows">Org workflows for developers</a></div>
- <div class="sched-speakers">id:George Mauer</div>
+ <div class="sched-speakers">George Mauer</div>
</div>
<div data-start="2022-12-04T19:30:00+0000" data-end="2022-12-04T19:50:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">2:30</span> - <span class="sched-end">2:50</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:grail</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/grail">GRAIL---A Generalized Representation and Aggregation of Information Layers</a></div>
- <div class="sched-speakers">id:Sameer Pradhan</div>
+ <div class="sched-speakers">Sameer Pradhan</div>
</div>
<div data-start="2022-12-04T20:20:00+0000" data-end="2022-12-04T20:40:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">3:20</span> - <span class="sched-end">3:40</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:indieweb</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/indieweb">Putting Org Mode on the Indieweb</a></div>
- <div class="sched-speakers">id:Michael Herstine</div>
+ <div class="sched-speakers">Michael Herstine</div>
</div>
<div data-start="2022-12-04T21:00:00+0000" data-end="2022-12-04T21:10:00+0000" class="sched-entry track-General">
<div class="sched-meta"><span class="sched-time"><span class="sched-start">4:00</span> - <span class="sched-end">4:10</span></span> <span class="sched-track General">General</span> <span class="sched-q-and-a">Q&amp;A: live</span>; <span class="sched-slug">id:fanfare</span></div>
<div class="sched-title"><a href="https://emacsconf.org/2022/talks/fanfare">Fanfare for the Common Emacs User</a></div>
- <div class="sched-speakers">id:John Cummings</div>
+ <div class="sched-speakers">John Cummings</div>
</div>