summaryrefslogtreecommitdiffstats
path: root/2022/organizers-notebook.md
diff options
context:
space:
mode:
authorLeo Vivier <zaeph@zaeph.net>2022-09-29 20:18:44 +0200
committerLeo Vivier <zaeph@zaeph.net>2022-09-29 20:18:53 +0200
commit7245a3fc9ba4c4e5d122c66a5cd38a91ad8cef60 (patch)
tree4f174a0623bbd20839477b05954fbca7be35d170 /2022/organizers-notebook.md
parent611146ac72dcb88531db7e582a447bcac4ac90c9 (diff)
downloademacsconf-wiki-7245a3fc9ba4c4e5d122c66a5cd38a91ad8cef60.tar.xz
emacsconf-wiki-7245a3fc9ba4c4e5d122c66a5cd38a91ad8cef60.zip
Change deadline for receiving prerecs
Diffstat (limited to '2022/organizers-notebook.md')
-rw-r--r--2022/organizers-notebook.md272
1 files changed, 197 insertions, 75 deletions
diff --git a/2022/organizers-notebook.md b/2022/organizers-notebook.md
index 078b1642..9babcd26 100644
--- a/2022/organizers-notebook.md
+++ b/2022/organizers-notebook.md
@@ -41,6 +41,12 @@ Planned dates and phases:
<tr>
+<td class="org-left"><span class="timestamp-wrapper"><span class="timestamp">[2022-10-02 Sun]</span></span></td>
+<td class="org-left">Confirm time allocations for early submissions</td>
+</tr>
+
+
+<tr>
<td class="org-left"><span class="timestamp-wrapper"><span class="timestamp">[2022-10-07 Fri]</span></span></td>
<td class="org-left">Yes/no comments for late submissions</td>
</tr>
@@ -71,7 +77,7 @@ Planned dates and phases:
<tr>
-<td class="org-left"><span class="timestamp-wrapper"><span class="timestamp">[2022-11-05 Sat]</span></span></td>
+<td class="org-left"><span class="timestamp-wrapper"><span class="timestamp">[2022-11-04 Fri]</span></span></td>
<td class="org-left">Target date to receive prerecs; earlier is better</td>
</tr>
@@ -104,7 +110,7 @@ Planned dates and phases:
Current phase: No prerecs to process yet, so it's a good time to focus on infrastructure
-## TODO Review the submissions in the pad (see emacsconf-org-private or conf.org for the link) and add any objections or comments by Sept 26 for possible [early speaker notification](#orgf454f74), Oct 7 for everything :organizers:
+## TODO Review the submissions in the pad (see emacsconf-org-private or conf.org for the link) and add any objections or comments by Sept 26 for possible [early speaker notification](#orgce14af5), Oct 7 for everything :organizers:
- zaeph: will start reviewing on Sep 21
@@ -141,10 +147,19 @@ Extra stuff to consider adding:
- Sacha: Add submissions to emacsconf-2022-private, draft 2-day schedule by Oct 10
-## DONE Copy things over from previous notebooks :sachac:
+## TODO Publish talk pages :sachac:
+
+## TODO Send early acceptances :sachac:
-## TODO Double-check sachac’s timezone conversions for availability :corwin:
+Ideal sequence:
+
+1. publish /2022/prepare (zaeph)
+2. publish wiki pages
+3. send acceptance e-mails
+ - Allocate at most 20 minutes, say we'll try to add more time depending on the schedule (probably know by Sept 30 or Oct 1)
+ - Include review comments
+4. Send an additional e-mail introducing speakers who may want to coordinate
## TODO Investigate streaming options, maybe OBS in the cloud :corwin:
@@ -201,15 +216,42 @@ That will help more people subtitle things
## TODO Create Org heading for scheduling caption team's live IRC duty shifts :dto:
+## TODO Review metadata for speakers in conf.org :zaeph:
+
+See the bottom of conf.org for some automated validation
+
+
+## TODO Write viewing instructions :zaeph:
+
+Extra stuff to consider adding:
+
+- Suggestions for mpv-filter to invert colourscape.
+
+
## DONE Write volunteer page :sachac:
<https://emacsconf.org/2022/volunteer>
-## TODO Review metadata for speakers in conf.org :zaeph:
+## DONE Review the submissions in the pad (see emacsconf-org-private or conf.org for the link) and add any objections or comments by Sept 26 for possible [early speaker notification](#orgce14af5), Oct 7 for everything :organizers:
+
+- zaeph: will start reviewing on Sep 21
+
+## DONE Double-check sachac’s timezone conversions for availability :zaeph:
-## TODO :zaeph:bandali:
+zaeph helped with this, even catching some based on e-mail timestamps
+
+
+## DONE Copy things over from previous notebooks :sachac:
+
+
+## TODO Allocate extra time if possible; send e-mail :sachac:
+
+
+<a id="decisions"></a>
+
+# Things to figure out / decisions to make
## TODO Do we want to use JS on the wiki?
@@ -231,11 +273,6 @@ gitolite should have some options to do this
Might not be necessary.
-<a id="decisions"></a>
-
-# Things to figure out / decisions to make
-
-
## What ideas do we want to borrow from other conferences?
- FOSDEM had a conference track
@@ -541,7 +578,7 @@ We tried using q56 before, but it was a little too aggressive. Q=32 is the defau
### Test stream setup
-[Stream](#org531b5e1)
+[Stream](#org32dc51f)
### Set up MPV for captions
@@ -858,7 +895,7 @@ Exceptions:
### Send thanks
-[Thank you, next steps](#orgb3500be)
+[Thank you, next steps](#org1e235d7)
### Extract the opening and closing remarks
@@ -1009,7 +1046,7 @@ Probably focus on grabbing the audio first and seeing what's worth keeping
Make a table of the form
-<table id="org3553aac" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
+<table id="org4c29563" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@@ -1290,48 +1327,147 @@ Thanks!
Sacha
-## TODO Early speaker notification
+## TODO Early speaker notification :sachac:
We can accept early or send people a note saying notification of acceptance will be on Oct 15, because of the extended CFP.
+Right before this e-mail:
+
+- Publish the wiki pages
+
+Objectives for this e-mail:
+
+- Notify people of acceptance
+- Tell them the number of minutes to plan for\* (might get more)
+- Tell them about the target date
+- Get them to reply
+- Ask for public contact information or any changes to the wiki page
+
+ (defun emacsconf-draft-early-acceptance-for-email-group (group &optional template)
+ "GROUP is (email . (talk talk))."
+ (interactive
+ (list
+ (save-window-excursion
+ (let* ((emacsconf-talk-info-functions (append emacsconf-talk-info-functions '(emacsconf-get-talk-comments-from-subtree)))
+ (info (emacsconf-filter-talks (emacsconf-get-talk-info)))
+ (grouped (seq-group-by (lambda (o) (plist-get o :email)) info))
+ (slug (emacsconf-get-slug-from-string (emacsconf-complete-talk)))
+ (email (plist-get (seq-find (lambda (o) (string= (plist-get o :slug) slug)) info) :email)))
+ (assoc email grouped)))))
+ (let* ((template (or template (emacsconf-mail-merge-get-template "early-acceptance")))
+ (talks (cdr group))
+ (first (car talks))
+ (reply-by-date (date-to-time "2022-10-08"))
+ (prerec-target (date-to-time "2022-11-07"))
+ (attrs `(:speakers-short
+ ,(plist-get first :speakers-short)
+ :email
+ ,(plist-get first :email)
+ :year
+ ,(or (plist-get first :year) emacsconf-year)
+ :reply-date
+ ,(format-time-string "%b %e (%a)" reply-by-date)
+ :titles
+ ,(mapconcat (lambda (o) (format "\"%s\"" (plist-get o :title))) talks " and ")
+ :prerec-target
+ ,(format-time-string "%b %e (%a)" prerec-target)
+ :page-urls
+ ,(mapconcat (lambda (o) (format "https://emacsconf.org/%s/talks/%s" (plist-get o :year)
+ (plist-get o :slug)))
+ talks "\n")
+ :acceptance-tasks
+ ,(concat
+ "* TODO Reply to acceptance e-mail in order to confirm e-mail communication :emacsconf:
+ DEADLINE: " (format-time-string "<%Y-%m-%d %a>" reply-by-date) "\n Please include public e-mail and/or any extra information you want on\n"
+ (mapconcat (lambda (o) (format " https://emacsconf.org/%s/talks/%s"
+ (plist-get o :year)
+ (plist-get o :slug)))
+ talks "\n") "\n"
+ (mapconcat (lambda (o) (format "* Record %s-minute talk for \"%s\" :emacsconf:
+ DEADLINE: %s\n https://emacsconf.org/%s/prepare/"
+ (plist-get o :time)
+ (plist-get o :title)
+ (format-time-string "<%Y-%m-%d %a>" prerec-target)
+ (plist-get o :year)))
+ talks "\n"))
+ :talk-details-and-comments
+ ,(mapconcat
+ (lambda (o)
+ (format "%s minutes: %s\nhttps://emacsconf.org/%s/talks/%s\n\n%s"
+ (plist-get o :time)
+ (plist-get o :title)
+ (plist-get o :year)
+ (plist-get o :slug)
+ (string-fill (emacsconf-replace-plist-in-string o (plist-get o :acceptance-comment)) 72)))
+ talks "\n---------------------------------------------------------------------\n"))))
+ (compose-mail
+ (car group)
+ (emacsconf-replace-plist-in-string attrs (plist-get template :subject))
+ `(("Reply-To" . ,(plist-get template :reply-to))
+ ("Mail-Followup-To" . ,(plist-get template :mail-followup-to))
+ ("Cc" . ,(plist-get template :cc))))
+ (message-goto-body)
+ (save-excursion (insert (emacsconf-replace-plist-in-string attrs (plist-get template :body))))))
+
+ (defun emacsconf-draft-all-early-acceptances ()
+ (interactive)
+ (let* ((emacsconf-talk-info-functions (append emacsconf-talk-info-functions '(emacsconf-get-talk-comments-from-subtree)))
+ (info (emacsconf-filter-talks (emacsconf-get-talk-info)))
+ (grouped (seq-group-by (lambda (o) (plist-get o :email)) info))
+ (template (emacsconf-mail-merge-get-template "early-acceptance")))
+ (mapc (lambda (group)
+ (emacsconf-draft-early-acceptance-for-email-group group template))
+ grouped)))
-### Option A: Early speaker notification(?)
-
-Hi, $name!
-
-I'm happy to tell you that we've accepted your EmacsConf proposal for "$talk." Thanks for volunteering to share what you're learning about! I know it takes a fair bit of work to prepare a presentation, so I appreciate that you're taking the time to show what's possible with Emacs and encourage people to learn more.
-
-We've extended the call for participation to Sept 30, so we might get a few more submissions over the next two weeks. That means we'll confirm time allocations on Oct 15. Since you submitted before the original deadline, we wanted to send you your acceptance by the original timeline so that you wouldn't be waiting in uncertainty.
-
-Just like last year, talks will be prerecorded in order to minimize technical risks, make it easier for speakers to enjoy other people's talks, allow captions, and let attendees catch up or share cool stuff quickly. I hope we get everything together in time so that we can ask volunteers to check for any issues that might come up when we re-encode. (I missed parts of some talks last time because I was rushing. <blush>)
-
-&#x2013;&#x2014; if $time = $max\_time
+### Speaker acceptance
-You asked for $max\_time minutes for your talk and I think that should be all right.
+Hi, ${speakers-short}!
-&#x2013;&#x2014; else
+Summary:
+,${acceptance-tasks}
-You asked for at most $max\_time minutes for your talk. I think at this moment we can commit to $time minutes, with possibly more time being available depending on other submissions. If you want to plan a pre-recorded talk for that length and then use extra time for a live presentation or as Q&A, that would be great. Alternatively, you can wait until we confirm the schedule in case you want to plan a longer prerecorded talk.
+We've accepted your EmacsConf proposal for ${titles}! Thanks for
+volunteering to share what you're learning about. I know it takes a
+fair bit of work to prepare a presentation, so I appreciate that
+you're taking the time to show what's possible with Emacs and
+encourage people to learn more.
---
-&#x2014; if Q&A will be live or IRC &#x2014;
-
-You'll have some time after your talk for Q&A, so the $time minutes can be just for your talk. Of course, if you like, you can make it shorter.
+${talk-details-and-comments}
---
-If you want to get a head start on recording your talk, please feel free to do so. We'll be streaming talks at 1920x1280 resolution, so the closer your recording is to that, the easier it will be to process for streaming. .webm format is preferred, but we can convert other formats. $recording has some tips on recording tools and settings that you might find helpful. We'll send you instructions on how to upload files once we get that set up.
-
-We're going to try to caption as many talks as possible again this year, and extra time helps a lot. People found the captions really helpful while watching the stream, and sending your talk in early will make it more likely that we'll be able to get your captions edited and reviewed before the conference.
-
-Could you please reply to this email so that we can confirm that I've got the right email address for you and that messages can get properly delivered?
-
-We'll be putting up the public wiki pages for each talk soon using the information from the talk abstract, and we can put $public\_email as the contact information for you. Please let us know by $publish\_date if you would prefer something else.
+You'll have some time after your talk for Q&A, so the allocated time
+can be just for your pre-recorded talk. Of course, if you like, you
+can make it shorter.
+
+We've posted preparation tips at <https://emacsconf.org/${year}/prepare/> .
+We'll send you instructions on how to upload files once we get that
+set up.
+
+Could you please plan to ****put your pre-rec together by ${prerec-target}****
+(or even earlier if you want)? We're going to try to caption as many talks
+as possible again this year, and extra time helps a lot. People found
+the captions really helpful while watching the stream, and sending
+your talk in early will make it more likely that we'll be able to get
+your captions edited and reviewed before the conference.
+
+****Please reply to this e-mail by ${reply-date}**** (including
+emacsconf-submit@gnu.org in the To: or Cc:) so that we can confirm
+that we've got the right email address for you and that messages can
+get properly delivered. Would you like us to put ${email} as the
+public contact information for you, or would you like us to add
+something else to the talk pages?
+${page-urls}
+
+If you have any questions, please e-mail us at
+emacsconf-submit@gnu.org or pass by the #emacsconf-org IRC channel on
+irc.libera.chat (Web-based: <https://chat.emacsconf.org/#/connect>).
Thank you so much!
-Sacha
+Sacha Chua
### Option B: Just letting them know it's been postponed
@@ -1350,29 +1486,14 @@ Sacha
### Acceptance
+This is a copy of the previous
+
#### Code
- (defun conf-summarize-times (time timezones)
- (let (prev-day)
- (mapconcat
- (lambda (tz)
- (let ((cur-day (format-time-string "%a %b %-e" time tz))
- (cur-time (format-time-string "%H%MH %Z" time tz)))
- (if (equal prev-day cur-day)
- cur-time
- (setq prev-day cur-day)
- (concat cur-day " " cur-time))))
- timezones
- " / ")))
-
- ;; (assert (string= (conf-replace-plist-in-string '(:test "ABC") "hello ${test} world") "hello ABC world"))
-
-
- (defun conf-draft-acceptance ()
+ (defun emacsconf-draft-acceptance ()
(interactive)
- (let* ((mustache-key-type 'keyword)
- (sched (org-timestamp-from-string (org-entry-get (point) "SCHEDULED")))
+ (let* ((sched (org-timestamp-from-string (org-entry-get (point) "SCHEDULED")))
(attrs
(append (emacsconf-get-talk-info-for-subtree)
:other-notes
@@ -1903,7 +2024,6 @@ chatter in the other lists Cc'd on this message. Thank you.
(message "No longer asking for confirmation in this buffer")
(setq-local emacsconf-danger-allow-dangerous-stuff t)
-
(org-babel-ref-resolve "elisp-no-confirmation()")
(message "Now allowing dangerous stuff. Buckle up, buckaroo!")
@@ -1977,25 +2097,27 @@ chatter in the other lists Cc'd on this message. Thank you.
(message "Hook is no longer active"))
-## Process review comments from pad
+## Review agenda
+
+ (defcustom emacsconf-org-tag nil "Tag for your nick, for easier agenda filtering"
+ :group 'emacsconf
+ :type 'string)
-1. `curl https://etherpad.wikimedia.org/p/[REDACTED]/export/html`
-2. Open curl’d html into browser
-3. Copy just the text from the page (i.e. not the html)
-4. Paste in Emacs buffer
+\#+begin\_src emacs-lisp :results silent
+(defun emacsconf-show-my-agenda ()
+ (interactive)
+ (let\* ((org-agenda-files (list (buffer-file-name)))
+ (tag-filter (if emacsconf-org-tag (concat "<del>" emacsconf-org-tag) ""))
+ (org-agenda-tag-filter-preset (list (when emacsconf-org-tag (concat "</del>" emacsconf-org-tag))))
+ (org-agenda-custom-commands \`(("a" "Agenda"
+ ((agenda ,tag-filter)
+ (tags-todo ,(concat tag-filter "-SCHEDULED={.+}-DEADLINE={.+}")))))))
+ (org-agenda nil "a")))
-Inside emacs:
-1. C-s Comments for
-2. C-M-s ^[a-z0-9]
-3. M-<
-4. C-x 3
-5. C-x b comments.org (new buffer)
-6. C-x o
-7. Run following kmacro (eval then M-x pad-comments, then C-x e until completion)
+## Process review comments from pad
- (defalias 'emacsconf-pad-comments
- (kmacro "C-s C-s <return> C-a C-SPC C-n C-M-s M-p <return> <return> C-b M-w C-x o C-y C-u -- C-x o"))
+see emacsconf-import-comments-from-etherpad-text
<a id="lessons"></a>