diff options
author | Sacha Chua <sacha@sachachua.com> | 2025-06-17 10:42:02 -0400 |
---|---|---|
committer | Sacha Chua <sacha@sachachua.com> | 2025-06-17 10:42:02 -0400 |
commit | eca975382c8a006d02535971014bbd77c17bc6ac (patch) | |
tree | a70e90a93ee166c7d7086f8b90ff569595aeaf00 /2025 | |
parent | a06ef0960d4ceb9172ad034e5491e5ff15d7bb76 (diff) | |
download | emacsconf-wiki-eca975382c8a006d02535971014bbd77c17bc6ac.tar.xz emacsconf-wiki-eca975382c8a006d02535971014bbd77c17bc6ac.zip |
initial
Diffstat (limited to '')
-rw-r--r-- | 2025/organizers-notebook/index.org | 899 |
1 files changed, 899 insertions, 0 deletions
diff --git a/2025/organizers-notebook/index.org b/2025/organizers-notebook/index.org new file mode 100644 index 00000000..af1ebba1 --- /dev/null +++ b/2025/organizers-notebook/index.org @@ -0,0 +1,899 @@ +# [[elisp:(progn (memoize 'emacsconf-get-talk-info "5 seconds") (org-md-export-to-markdown) (memoize-restore 'emacsconf-get-talk-info))][Export this file to Markdown]] +#+TAGS: emacsconf +# [[elisp:(memoize 'emacsconf-get-talk-info "5 seconds")][Memoize emacsconf-get-talk-info]] - [[elisp:(memoize-restore 'emacsconf-get-talk-info)][Unmemoize]] +#+todo: TODO(t) SOMEDAY STARTED INPROGRESS(i) WAITING(w) STANDBY(s) BLOCKED(b) | DONE(x) CANCELLED(c) +#+OPTIONS: h:6 toc:nil num:nil ':t +#+PROPERTY: header-args :results silent :exports code :tangle yes +#+EXPORT_FILE_NAME: ../organizers-notebook.md +#+PROPERTY: QUANTIFIED Emacs + +#+begin_export md +<!-- organizers-notebook.md is exported from organizers-notebook/index.org, please modify that instead. --> +[[!sidebar content=""]] + +This file is automatically exported from [/2025/organizers-notebook/index.org](/2025/organizers-notebook/index.org). You might prefer to navigate this as an Org file instead. To do so, [clone the wiki repository](https://emacsconf.org/edit/). + +You might also like the [general organizers' notebook](/organizers-notebook) and [the organizers' notebook from 2024](/2024/organizers-notebook). +#+end_export + + + +#+NAME: list-headings +#+begin_src emacs-lisp :results value replace :exports results :eval never-export :var heading="Help wanted" :var match="helpwanted" +(emacsconf-surround + (concat heading ":\n\n") + (string-join + (delq nil + (org-map-entries + (lambda () + (when (and (org-entry-is-todo-p) (not (org-entry-is-done-p))) + (format "- %s %s\n" + (org-link-make-string + (concat "#" (org-entry-get (point) "CUSTOM_ID")) + (org-entry-get (point) "ITEM")) + (emacsconf-surround + "(by " + (and (org-entry-get (point) "DEADLINE") + (replace-regexp-in-string "[<>]" "" (org-entry-get (point) "DEADLINE"))) + ")" + "")))) + match nil)) + "") +"" "") +#+end_src + +#+RESULTS: list-headings +:results: +:end: + +#+CALL: list-headings(heading="Decisions to make", match="decision") + +#+RESULTS: +:results: +:end: + + +#+TOC: headlines 2 +* COMMENT Shortcuts +:PROPERTIES: +:CUSTOM_ID: shortcuts +:END: + +[[file:~/proj/emacsconf/wiki/organizers-notebook/index.org][Common notebook]] + +* TODO Timeline +:PROPERTIES: +:CUSTOM_ID: timeline +:END: + +| | | Days since previous milestone | +| CFP | [2025-06-27 Fri] | | +| CFP deadline | [2025-09-19 Fri] | 84 | +| Speaker notifications | [2025-09-26 Fri] | | +| *Publish schedule* | [2025-10-24 Fri] | | +| Video submission deadline | [2025-10-31 Fri] | 42 | +| EmacsConf | [2025-12-06 Sat] | 36 | +#+TBLFM: @3$3=@3$2-@2$2::@6$3=@6$2-@3$2::@7$3=@7$2-@6$2 + +We like to have at least a month to work on audio +normalization and transcription, and we want +speakers to have at least a month to work on their +videos (considering early submissions will already +have gotten started on processing). + +* About this document +:PROPERTIES: +:CUSTOM_ID: about-this-doc +:END: + +Tags: +- =conforg=: Requires access to private conf.org repository + +* Communications plan +:PROPERTIES: +:CUSTOM_ID: comms +:END: + +Objectives: +- keep everyone in the loop without them feeling like they're overloaded + +Everyone: +- [ ] Call for participation (speakers and volunteers) +- [ ] Reminder about CFP +- [ ] Last call + +Speakers: +- [ ] Send all speakers backstage access and upload instructions +- [ ] Send all speakers check-in instructions + +Volunteers: +- [ ] Send captioning volunteers the backstage info +- [ ] Send past captioning volunteers an invitation to participate - ask when there's a lot of load +- [ ] Ask for help with audio processing + +* Good/better/best +:PROPERTIES: +:CUSTOM_ID: good-better-best +:END: + +This table makes it easier to move the slider depending on who wants +to volunteer and how much we can get done. At some point, we'll figure +out how to track our current status so we know what we need to +scramble to do in order to get the conference off the ground. *bold* +is our current goal. Feel free to volunteer for anything that +interests you! + + | | Good | Better | Best | + | Streaming | Regular stream | + alternate streams on PeerTube | + alternate streams on YouTube | + | 480p | Same on live | Separate node | Ansible setup | + | Audio normalization | Core org handling it | Other volunteer | Multiple volunteers | + | Video resolution | Usual reminders | Extra reminders | Everyone remembering to use a large font size | + | Intros | Standard, recorded | Reviewed by speakers | More details/context | + | Pad | v1.9.7 | v2.x | | + +* Phases +:PROPERTIES: +:CUSTOM_ID: phases +:END: +** DONE Set up organizers notebook +CLOSED: [2025-06-17 Tue 10:41] +:LOGBOOK: +- State "DONE" from "TODO" [2025-06-17 Tue 10:41] +:END: + +** TODO Draft CFP +:PROPERTIES: +:CUSTOM_ID: cfp +:END: + +**** Draft linked pages +:PROPERTIES: +:CUSTOM_ID: phases-draft-cfp-draft-linked-pages +:END: + +- [ ] cfp +- [ ] submit page +- [ ] year index +- [ ] volunteer page +**** TODO Check with other organizers +DEADLINE: <2025-06-23 Mon> +:PROPERTIES: +:CUSTOM_ID: phases-draft-cfp-check-with-other-organizers +:END: +**** TODO Post CFP in the usual places +:PROPERTIES: +:CUSTOM_ID: phases-draft-cfp-post-cfp-in-the-usual-places +:END: +emacsconf-discuss, reddit.com/r/emacs, Emacs News, emacs-tangents, Mastodon, X +** TODO Draft schedule +:PROPERTIES: +:CUSTOM_ID: draft-schedule +:END: + +#+NAME: schedule +#+begin_src emacs-lisp :results value replace :exports none :eval never-export :var filename="schedule-1.5-tracks.svg" +(require 'emacsconf) +(require 'emacsconf-schedule) +(setq emacsconf-schedule-tracks + '((:label "Saturday" + :start "2025-12-06 9:00" + :end "2025-12-06 18:00" + :tracks ("General" "Development")) + (:label "Sunday" + :start "2025-12-07 9:00" + :end "2025-12-07 18:00" + :tracks ("General" "Development")))) +(let ((emacsconf-schedule-default-buffer-minutes 10) + (emacsconf-schedule-default-buffer-minutes-for-live-q-and-a 20) + (emacsconf-schedule-break-time 10) + (emacsconf-schedule-lunch-time 60) + (emacsconf-use-absolute-url t) + (emacsconf-schedule-strategies '(emacsconf-schedule-allocate-buffer-time + emacsconf-schedule-copy-previous-track)) + (emacsconf-schedule-validation-functions + '(emacsconf-schedule-validate-time-constraints + ;; emacsconf-schedule-validate-live-q-and-a-sessions-are-staggered + emacsconf-schedule-validate-no-cancelled-talks + emacsconf-schedule-validate-all-talks-present + emacsconf-schedule-validate-no-duplicates))) + (setq emacsconf-schedule-plan + '(("GEN Saturday, Dec 6" :start "2025-12-06 09:00" :set-track "General") + sat-open + (lunch :start "12:00") + (sat-close :start "17:00") + ("DEV Saturday, Dec 6" :start "2025-12-06 10:00" :set-track "Development") + (lunch :start "12:00") + ("GEN Sunday, Dec 8" :start "2025-12-06 09:00" :set-track "General") + sun-open + (lunch :start "12:00") + (sun-close) + )) + (setq emacsconf-schedule-draft (emacsconf-schedule-prepare (emacsconf-schedule-inflate-sexp emacsconf-schedule-plan))) + (prog1 (string-join (emacsconf-schedule-validate emacsconf-schedule-draft) "\n") + (let ((emacsconf-schedule-svg-modify-functions + '(emacsconf-schedule-svg-color-by-availability + ;emacsconf-schedule-svg-color-by-status + ))) + (with-temp-file (expand-file-name filename (file-name-directory emacsconf-org-file)) + (svg-print (emacsconf-schedule-svg 800 300 emacsconf-schedule-draft))) + (with-temp-file (expand-file-name filename (expand-file-name "organizers-notebook" (expand-file-name emacsconf-year emacsconf-directory))) + (svg-print (emacsconf-schedule-svg 800 300 emacsconf-schedule-draft)))) + (clear-image-cache))) +#+end_src + +#+RESULTS: schedule +:results: +:end: + +[[file:schedule-1.5-tracks.svg]] + +Legend: +- light blue: constraint is <= a time +- peach: constraint is >= a time +- solid line: Q&A will be through BigBlueButton web conference +- dashed line: Q&A will be IRC/Etherpad during the event or e-mail after the event + +Notes: + +- Sun: + - Sunday morning in 2023 had some packet loss issues at around 9:30, so we'll start with some talks that don't have BBB Q&A: emacsconf:students, emacsconf:links, emacsconf:regex + +** TODO Prepare shift calendar, ask people to sign up +SCHEDULED: <2023-11-01 Wed> +:PROPERTIES: +:CUSTOM_ID: shifts +:END: + +#+BEGIN_EXPORT md +<a name="shifts"></a> +#+END_EXPORT + +AM: 9-12 PM EST, PM: 1-5 PM EST (plus a little extra for setup/transition) + +Saturday Dec 6 2025 + +#+NAME: saturday-shifts +| | Start | End | [[https://emacsconf.org/2023/volunteer/host/][Host]] | Streamer | [[https://emacsconf.org/2023/volunteer/checkin/][Checkin]] | [[https://emacsconf.org/2023/volunteer/irc/][IRC]] | [[https://emacsconf.org/2023/volunteer/pad/][Pad]] | Coord | +|--------+-------+-------+------+----------+---------+-----+-----+-------| +| Gen AM | 09:00 | 12:00 | | | | | | | +| Gen PM | 13:00 | 17:00 | | | | | | | +| Dev AM | 10:00 | 12:00 | | | | | | | +| Dev PM | 13:00 | 17:00 | | | | | | | + +Sunday Dec 7 2024 + +#+NAME: sunday-shifts +| | Start | End | [[https://emacsconf.org/2023/volunteer/host/][Host]] | Streamer | [[https://emacsconf.org/2023/volunteer/checkin/][Checkin]] | [[https://emacsconf.org/2023/volunteer/irc/][IRC]] | [[https://emacsconf.org/2023/volunteer/pad/][Pad]] | Coord | +|--------+-------+-------+-------+----------+---------+-----+-----+--------| +| Gen AM | 09:00 | 12:00 | +| Gen PM | 13:00 | 17:00 | + +Backups: +- dev host/streamer: +- gen host/streamer: +- checkin, IRC, pad: + +Interested in a shift? Please e-mail [[mailto:emacsconf-org-private@gnu.org]] and we'll help you figure out what you need to learn. + +#+begin_src emacs-lisp :var sat=saturday-shifts :var sun=sunday-shifts :rownames no :colnames no :results verbatim replace +`(setq emacsconf-shifts + (list + ,@(apply #'append + (mapcar + (lambda (day) + (let ((headers + (mapcar + (lambda (field) + (intern + (concat + ":" + (downcase + (if (string-match org-link-bracket-re field) + (match-string 2 field) + field))))) + (seq-drop (car (cadr day)) 3)))) + (mapcar + (lambda (row) + (apply #'append + (list 'list :id + (when (string-match "^\\([^ ]+\\) \\(AM\\|PM\\)" (car row)) + (format "%s-%s-%s" + (car day) + (downcase (match-string 2 (car row))) + (downcase (match-string 1 (car row))))) + :track + (if (string-match "^Gen" (car row)) "General" "Development") + :start + (format "%sT%s:00%s" + (elt day 2) + (elt row 1) + emacsconf-timezone-offset) + :end + (format "%sT%s:00%s" + (elt day 2) + (elt row 2) + emacsconf-timezone-offset)) + (seq-map-indexed + (lambda (value index) + (unless (string= value "") + (list (elt headers index) value))) + (seq-drop row 3)))) + (cdr (cadr day))) + )) + (list + (list "sat" sat "2024-12-07") + (list "sun" sun "2024-12-08")))))) + +#+end_src + +#+RESULTS: +:results: +(setq emacsconf-shifts (list (list :id "sat-am-gen" :track "General" :start "2024-12-07T09:00:00-0500" :end "2024-12-07T12:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "sachac" :coord "sachac") (list :id "sat-pm-gen" :track "General" :start "2024-12-07T13:00:00-0500" :end "2024-12-07T17:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "sachac" :coord "sachac") (list :id "sat-am-dev" :track "Development" :start "2024-12-07T10:00:00-0500" :end "2024-12-07T12:00:00-0500" :host "corwin" :streamer "sachac" :checkin "sachac" :coord "sachac") (list :id "sat-pm-dev" :track "Development" :start "2024-12-07T13:00:00-0500" :end "2024-12-07T17:00:00-0500" :host "corwin" :streamer "sachac" :checkin "sachac" :coord "sachac") (list :id "sun-am-gen" :track "General" :start "2024-12-08T09:00:00-0500" :end "2024-12-08T12:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "corwin" :coord "sachac") (list :id "sun-pm-gen" :track "General" :start "2024-12-08T13:00:00-0500" :end "2024-12-08T17:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "corwin" :coord "sachac"))) +:end: + + +** Record intros and opening remarks +:PROPERTIES: +:CUSTOM_ID: intros +:END: + +*** TODO Record sat-open remarks :emacsconf:record: +:PROPERTIES: +:Effort: 0:30 +:CUSTOM_ID: phases-record-intros-and-opening-remarks-record-sat-open-remarks +:END: + +Welcome to EmacsConf 2025, where we have fun +exploring how much we can do with a text editor. +It's hard to give a general overview +of all the cool talks today and tomorrow, +so you can flip through the talks +and see what sparks your interests. +Don't feel limited to one track or another. +The best parts of EmacsConf are the conversations. +The wiki has a page on how to watch and participate, +and I'll give you a quick overview as well. +You can watch both streams at live.emacsconf.org +using free and open source software. +Using a streaming media player like mpv +seems to be the best way to watch in terms of performance +but there are also web-based players +just in case that's all you've got. +The schedule shows the General track on top +and the Development track on the bottom, +so you can see what else is going on. +As you're watching the talks, +you can refer to the schedule in another window. +Hover over the boxes to see the times and titles, +and click on the boxes in the schedule +to jump to the talk's page for more details. +You can also get the schedule as an iCalendar file +or as an Org file in different time zones. +Many talks will be followed by +live Q&A web conferences with the speaker, +which will be done in BigBlueButton or BBB. +These are indicated with a solid border on the schedule +and by Q&A: BBB on the schedule page. +You can join the web conference room +by clicking on the BBB link +on the schedule page or the talk's webpage. +Then you can ask your questions yourself when the Q&A starts. +To improve performance, please keep your webcam off +and stay muted until it's your turn to talk. +If you don't like Javascript, +you can still ask questions via IRC +and the hosts can read them out for you. +We're probably going to automatically switch +between talks and Q&A sessions, +so the transitions on the stream might be a little sudden. + +People in the BigBlueButton room +can continue the conversation +even after the talk moves off-stream. +and you can also reach out to the speakers +using the contact information on the talk page. + +Other talks will have Q&A via Etherpad or IRC, +depending on what the speakers prefer. +This is indicated in the schedule with a dashed border +and on the schedule page as well. +Some talks will have the Q&A after the event, +so you can add your questions to their Etherpad +or ask on IRC. +We'll e-mail the speakers afterwards +and update the talk pages when they answer. +The schedule pages and track pages have quick shortcuts +so that you can find out more about talks, open the Etherpads, +and join the Q&A sessions. The watch page has more tips +on how to make the most of Q&A. +If you can, please add notes and ask questions +in the Etherpad for the talk. That makes it easier +for everyone to share their notes, +and speakers and hosts can read the questions from there. +We'll copy the notes to the talk pages afterwards. +We have one pad for each talk, +so you can follow the links to get to the next one +or go back to the schedule and get the link from there. +If you have general feedback about +the conference itself, please put it in +pad.emacsconf.org/2025 , which is linked on each pad. +You can also use this as a general community message board +for things like Help Wanted. +Internet Relay Chat or IRC can be another great way +to be part of lots of conversations. +You can use chat.emacsconf.org to join the IRC channels +through your web browser. The tabs on the left can help you +switch between the different channels. +There's #emacsconf-gen for the General track +and #emacsconf-dev for the Development track. +If you need to reach us, you can join #emacsconf-org +or e-mail emacsconf-org-private@gnu.org. +You can use #emacsconf for hallway conversations. +Of course, you can join any of these channels +with your favourite IRC client. +You can connect to irc.libera.chat +port 6697 with TLS. +Once again, we're going to be streaming with open captions +for most of the talks this year, thanks to our speakers and +captioning volunteers. The captioned talks are indicated +on the schedule, and with any luck, we'll be posting +transcripts on talk pages shortly after the talks start. +If you need additional accommodations, +please let us know in #emacsconf-org +and we'll see if we can make things happen. +If something goes down, we'll update status.emacsconf.org. +If it doesn't look like we've noticed yet, +please let us know in the #emacsconf-org IRC channel, +where we will be quietly panicking. +In all of these conversations, please keep in mind +our guidelines for conduct. You can find them on the wiki, +They basically boil down to: please be nice. +If all goes well, the prerecorded talks and transcripts +should be available from the talk pages +shortly after they start playing, +and we'll post the recordings of live talks +and Q&A sessions within the next month or so. +If you'd like to get an update, you can subscribe to +the emacsconf-discuss mailing list. +All right, let's get going. +Leo is hosting the general track, +and Corwin hosting the development track. +The other volunteers and I will run around mostly backstage, +and you'll probably meet us in the closing remarks. +That's also where we get to thank +all the people and organizations +who make EmacsConf possible. +Thanks for coming to EmacsConf 2025. +*** TODO Record sun-open remarks +:PROPERTIES: +:CUSTOM_ID: phases-record-intros-and-opening-remarks-record-sun-open-remarks +:END: + +Welcome to the second day of EmacsConf 2025. +The best parts of EmacsConf are the conversations. +The wiki has a page on how to watch and participate, +and I'll give you a quick overview as well. +You can watch the stream at live.emacsconf.org +using free and open source software. +Using a streaming media player like mpv +seems to be the best way to watch in terms of performance +but there are also web-based players +just in case that's all you've got. +As you're watching the talks, +you can refer to the schedule in another window. +Hover over the boxes to see the times and titles, +and click on the boxes in the schedule +to jump to the talk's page for more details. +You can also get the schedule as an iCalendar file +or as an Org file in different time zones. + +Many talks will be followed by +live Q&A web conferences with the speaker, +which will be done in BigBlueButton or BBB. +These are indicated with a solid border on the schedule +and by Q&A: BBB on the schedule page. +You can join the web conference room +by clicking on the BBB link +on the schedule page or the talk's webpage. +Then you can ask your questions yourself when the Q&A starts. +To improve performance, please keep your webcam off +and stay muted until it's your turn to talk. +If you don't like Javascript, +you can still ask questions via IRC +and the hosts can read them out for you. + +We're probably going to automatically switch +between talks and Q&A sessions, +so the transitions on the stream might be a little sudden, +People in the BigBlueButton room +can continue the conversation +even after the talk moves off-stream, +and you can also reach out to the speakers +using the contact information on the talk page. + +Other talks will have Q&A via Etherpad or IRC, +depending on what the speakers prefer. +This is indicated in the schedule with a dashed border +and on the schedule page as well. +Please ask your questions in the recommended places +so that the speakers can easily see them. + +Some talks will have the Q&A after the event, +so you can add your questions to their Etherpad. +We'll e-mail the speakers afterwards +and update the talk pages when they answer. + +We're going to start Sunday morning +with more IRC/Etherpad Q&A +to try to get around +some of the bandwidth issues +that we noticed last year. + +The schedule pages and track pages have quick shortcuts +so that you can find out more about talks, open the Etherpads, +and join the Q&A sessions. The watch page has more tips +on how to make the most of Q&A. +If you can, please add notes and ask questions +in the Etherpad for the talk. That makes it easier +for everyone to share their notes, +and speakers and hosts can read the questions from there. +We'll copy the notes to the talk pages afterwards. +We have one pad for each talk, +so you can follow the links to get to the next one +or go back to the schedule and get the link from there. +If you have general feedback about +the conference itself, please put it in +pad.emacsconf.org/2025 , which is linked on each pad. +You can also use this as a general community message board +for things like Help Wanted. +Internet Relay Chat or IRC can be another great way +to be part of lots of conversations. +You can use chat.emacsconf.org to join the IRC channels +through your web browser. The tabs on the left can help you +switch between the different channels. +Most discussions will be in +#emacsconf-gen for the General track. +If you need to reach us, you can join #emacsconf-org +or e-mail emacsconf-org-private@gnu.org. +You can use #emacsconf for hallway conversations. +Of course, you can join any of these channels +with your favourite IRC client. +You can connect to irc.libera.chat +port 6697 with TLS. +Once again, we're going to be streaming with open captions +for most of the talks this year, thanks to our speakers and +captioning volunteers. The captioned talks are indicated +on the schedule, and with any luck, we'll be posting +transcripts on talk pages shortly after the talks start. +If you need additional accommodations, +please let us know in #emacsconf-org +and we'll see if we can make things happen. +If something goes down, we'll update status.emacsconf.org. +If it doesn't look like we've noticed yet, +please let us know in the #emacsconf-org IRC channel, +where we will be quietly panicking. +In all of these conversations, please keep in mind +our guidelines for conduct. You can find them on the wiki, +They basically boil down to: please be nice. +If all goes well, the prerecorded talks and transcripts +should be available from the talk pages +shortly after they start playing, +and we'll post the recordings of live talks +and Q&A sessions within the next month or so. +If you'd like to get an update, you can subscribe to +the emacsconf-discuss mailing list. +All right, let's get going. +Leo Vivier is hosting the general track again today. +The other volunteers and I will run around mostly backstage, +and you'll probably meet us in the closing remarks. +That's also where we get to thank +all the people and organizations +who make EmacsConf even possible. +Thanks for coming to EmacsConf 2025. + +* TODO [#A] Check EmacsConf infrastructure :project: +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure +:END: + +- [ ] IRC +- [ ] Streaming assets +- [ ] Publishing to the wiki +- [ ] Web conference +- [ ] OBS +- [ ] Publishing to the media server +- [ ] Etherpad +- [ ] Streaming +- [ ] Toobnix +- [ ] YouTube +- [ ] Mumble: Can join from my phone, can speak on stream + +** TODO [#A] BigBlueButton +DEADLINE: <2024-11-15 Fri> +:PROPERTIES: +:CREATED: [2024-11-02 Sat 11:38] +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton +:END: + +- Plan: Scale up the bbb.emacsverse.org on Sacha's Linode account +- [[https://emacsconf.org/2024/organizers-notebook/#check-emacsconf-infrastructure-bigbluebutton][Installation notes from last year]] + +*** TODO Create meeting rooms for each speaker +SCHEDULED: <2024-11-15 Fri> +:PROPERTIES: +:CREATED: [2024-11-02 Sat 11:50] +:Effort: 0:30 +:CUSTOM_ID: create_rooms +:END: +:LOGBOOK: +CLOCK: [2024-11-28 Thu 10:00]--[2024-11-28 Thu 10:12] => 0:12 +CLOCK: [2024-11-20 Wed 10:48]--[2024-11-20 Wed 12:18] => 1:30 +:END: + +[[file:~/proj/emacsconf/wiki/organizers-notebook/index.org::#general-infrastructure-bigbluebutton-creating-talk-bbb-rooms][Creating talk BBB rooms]] + +*** TODO Back up after the conference +SCHEDULED: <2025-12-13 Sat> +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-notes-backing-up +:CREATED: [2025-06-17 Tue 10:34] +:END: + +[[file:~/proj/emacsconf/wiki/organizers-notebook/index.org::#general-infrastructure-bigbluebutton-backing-up-bbb][Backing up BBB]] + +*** TODO Set up moderator access codes for all the meeting rooms, and make it so people can start the meeting +SCHEDULED: <2024-11-28 Thu> +:PROPERTIES: +:CREATED: [2024-11-28 Thu 11:12] +:Effort: 0:30 +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-set-up-moderator-access-codes-for-all-the-meeting-rooms-and-make-it-so-people-can-start-the-meeting +:END: +:LOGBOOK: +CLOCK: [2024-11-28 Thu 12:13]--[2024-11-28 Thu 13:10] => 0:57 +:END: + +[[file:~/proj/emacsconf/wiki/organizers-notebook/index.org::#general-infrastructure-bigbluebutton-setting-up-moderator-access-codes][Setting up moderator access codes]] +*** TODO Check BBB audio from my phone +SCHEDULED: <2025-11-21 Fri> +:PROPERTIES: +:CREATED: [2024-11-19 Tue 15:39] +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-check-bbb-audio-from-my-phone +:END: +*** Customize BigBlueButton branding +**** TODO [#C] Change background presentation +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-change-background-presentation +:END: +https://docs.bigbluebutton.org/3.0/administration/customize/#change-the-default-presentation +**** TODO [#C] Modify landing page +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-modify-landing-page +:END: +/var/www/bigbluebutton-default/assets/index.html +keep backup copy as it will be overwritten when bbb-conf is called +**** TODO [#C] Change default welcome message +:PROPERTIES: +:Effort: 0:30 +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-change-default-welcome-message +:END: +:LOGBOOK: +CLOCK: [2024-11-20 Wed 12:21]--[2024-11-20 Wed 12:46] => 0:25 +:END: +https://docs.bigbluebutton.org/3.0/administration/customize/#change-the-default-welcome-message +**** TODO [#C] Change html5 title +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-change-html5-title +:END: +/usr/share/bigbluebutton/html5-client/private/config/settings.yml + +TARGET=/usr/share/bigbluebutton/html5-client/private/config/settings.yml +yq e -i ".public.app.clientTitle = \"EmacsConf\"" $TARGET +**** TODO [#C] Try live captions +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-try-live-captions +:END: +https://docs.bigbluebutton.org/3.0/administration/customize/#enable-live-captions +**** TODO Explore meeting layout? Default to custom, hosts will need to drag people's webcam over if there's a share +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-explore-meeting-layout-default-to-custom-hosts-will-need-to-drag-people-s-webcam-over-if-there-s-a-share +:END: + +** IRC web client +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-web-client +:END: +*** TODO Ask libera.chat to increase connections allowed from chat.emacsconf.org on Dec 6 and 7 +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-web-client-ask-libera-chat-to-increase-connections-allowed-from-chat-emacsconf-org-on-dec-7-and-8 +:END: +[[file:~/proj/emacsconf/wiki/organizers-notebook/index.org::#general-infrastructure-irc-web-client][IRC web client]] +** IRC announcements +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-announcements +:END: +*** TODO Confirm manual IRC announcements +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-announcements-confirm-manual-irc-announcements +:END: +*** TODO Confirm automated IRC announcements from res +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-announcements-confirm-automated-irc-announcements-from-res +:END: +** Media +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-media +:END: + +*** TODO Switch public media to unprotected root before the conference +SCHEDULED: <2024-11-29 Fri> +:PROPERTIES: +:CREATED: [2024-11-12 Tue 14:18] +:CUSTOM_ID: check-emacsconf-infrastructure-media-switch-public-media-to-unprotected-root-before-the-conference +:END: + +1. Clear public media directory. +2. Set =media_protect_root= to false in Ansible =group_vars/all.yml=. +3. =ansible-playbook -i inventory.yml prod-playbook.yml --tags media= + +You can generate the index with =emacsconf-publish-update-media=. +** TODO Publishing resources to the wiki +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-publishing-resources-to-the-wiki +:END: +ansible-playbook -i inventory.yml prod-playbook.yml --tags publish + + + +** TODO Publishing videos to the media server +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-publishing-videos-to-the-media-server +:END: +** Playing videos, switching to windows +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-playing-videos-switching-to-windows +:END: + +*** TODO Generate test videos for everything +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-playing-videos-switching-to-windows-generate-test-videos-for-everything +:END: +*** TODO Document how to get that set up again +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-playing-videos-switching-to-windows-document-how-to-get-that-set-up-again +:END: +** Etherpad +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-etherpad +:END: +*** TODO Generate pads for all the talks +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-etherpad-generate-pads-for-all-the-talks +:END: +*** TODO Generate the main index +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-etherpad-generate-the-main-index +:END: +** TODO Do a dry run +SCHEDULED: <2024-11-22 Fri> +:PROPERTIES: +:CREATED: [2024-11-02 Sat 11:40] +:CUSTOM_ID: check-emacsconf-infrastructure-do-a-dry-run +:END: +*** TODO Generate all the test assets +:PROPERTIES: +:Effort: 0:15 +:CUSTOM_ID: check-emacsconf-infrastructure-do-a-dry-run-generate-all-the-test-assets +:END: +:LOGBOOK: +CLOCK: [2024-11-06 Wed 18:47]--[2024-11-06 Wed 18:52] => 0:05 +:END: +*** TODO Test connecting to VNC and streaming via OBS +SCHEDULED: <2024-11-07 Thu> +:PROPERTIES: +:CREATED: [2024-11-06 Wed 18:52] +:CUSTOM_ID: check-emacsconf-infrastructure-do-a-dry-run-test-connecting-to-vnc-and-streaming-via-obs +:END: +** Resizing +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-resizing +:END: + +live0: 64GB +front0: 32GB +meet: 64GB + +*** TODO [#A] Resize nodes before production +SCHEDULED: <2024-12-06 Fri> +:PROPERTIES: +:CREATED: [2024-11-22 Fri 13:46] +:CUSTOM_ID: check-emacsconf-infrastructure-resizing-resize-nodes-before-production +:END: + +live0: 64GB +front0: 32GB +meet: 64GB + +*** TODO [#A] Resize nodes after production +SCHEDULED: <2024-12-08 Sun> +:PROPERTIES: +:CREATED: [2024-11-22 Fri 13:46] +:CUSTOM_ID: check-emacsconf-infrastructure-resizing-resize-nodes-after-production +:END: + +live0: nanode +front0: nanode +*** TODO [#A] Resize meet after production +SCHEDULED: <2024-12-10 Tue> +:PROPERTIES: +:CREATED: [2024-11-22 Fri 13:47] +:CUSTOM_ID: check-emacsconf-infrastructure-resizing-resize-meet-after-production +:END: +meet: nanode +* Processes and notes +:PROPERTIES: +:CUSTOM_ID: processes-and-notes +:END: +** Hosting +:PROPERTIES: +:CUSTOM_ID: processes-and-notes-hosting +:END: +*** TODO Finalize host for dev track +:PROPERTIES: +:CUSTOM_ID: processes-and-notes-hosting-finalize-host-for-dev-track +:END: +** ERC +:PROPERTIES: +:CUSTOM_ID: processes-and-notes-erc +:END: + +Some convenient commands are defined in emacsconf-el:emacsconf-erc.el. + +| /opall | Grant operator status in the Emacsconf channels | +| /deopall | Remove operator status in the Emacsconf channels | +| /conftopic | Set the first part of the topic | + +* Decisions +:PROPERTIES: +:CUSTOM_ID: decisions +:END: +* Support code +:PROPERTIES: +:CUSTOM_ID: support-code +:END: + +#+begin_src emacs-lisp :results silent +(defun my-ox-link-path (link _ info) + (let* ((raw-path (org-element-property :path link))) + (setq raw-path + (org-export-file-uri + (org-publish-file-relative-name raw-path info))) + ;; Possibly append `:html-link-home' to relative file + ;; name. + (let ((home (and (plist-get info :html-link-home) + (org-trim (plist-get info :html-link-home))))) + (when (and home + (plist-get info :html-link-use-abs-url) + (not (file-name-absolute-p raw-path))) + (setq raw-path (concat (file-name-as-directory home) raw-path)))) + raw-path)) + +(defun my-org-md-link (link desc info) + (if (string= (org-element-property :type link) "file") + (let ((path (my-ox-link-path link desc info))) + (if (string= (file-name-extension path) "svg") + (with-temp-buffer + (insert-file-contents-literally path) + (buffer-string)) + (org-md-link link desc info))) + (org-md-link link desc info))) + +(with-eval-after-load 'ox-md + (setf + (alist-get 'link (org-export-backend-transcoders (org-export-get-backend 'md))) + 'my-org-md-link)) +#+end_src + +#+RESULTS: +:results: +my-org-md-link +:end: |