summaryrefslogtreecommitdiffstats
path: root/2024/organizers-notebook/index.org
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--2024/organizers-notebook/index.org115
1 files changed, 108 insertions, 7 deletions
diff --git a/2024/organizers-notebook/index.org b/2024/organizers-notebook/index.org
index e412f0e1..478c031a 100644
--- a/2024/organizers-notebook/index.org
+++ b/2024/organizers-notebook/index.org
@@ -156,7 +156,108 @@ emacsconf-discuss, reddit.com/r/emacs, Emacs News, emacs-tangents, Mastodon, X
:END:
#+NAME: schedule
-#+begin_src emacs-lisp :results value replace :exports none :eval never-export
+
+*** Option: 2 tracks
+:PROPERTIES:
+:CUSTOM_ID: sched-2-tracks
+:END:
+#+begin_src emacs-lisp :results value replace :exports none :eval never-export :var filename="schedule-2-tracks.svg"
+(require 'emacsconf)
+(require 'emacsconf-schedule)
+(setq emacsconf-schedule-tracks
+ '((:label "Saturday"
+ :start "2024-12-07 9:00"
+ :end "2024-12-07 18:00"
+ :tracks ("General" "Development"))
+ (:label "Sunday"
+ :start "2024-12-08 9:00"
+ :end "2024-12-08 18:00"
+ :tracks ("General" "Development"))))
+(let ((emacsconf-schedule-default-buffer-minutes 20)
+ (emacsconf-schedule-default-buffer-minutes-for-live-q-and-a 30)
+ (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-all-talks-present
+ emacsconf-schedule-validate-no-duplicates)))
+ (setq emacsconf-schedule-plan
+ '(("GEN Saturday, Dec 7" :start "2024-12-07 09:00" :set-track "General")
+ sat-open
+ papers ; <= 10:00
+ org-teach ; any
+ color ; <= 12:00 sat pref
+ hyperdrive ; >= 11:00 Sat
+ (lunch :start "12:00")
+ emacs30 ; probably any
+ theme ; >= 12:30
+ water ; >= 13:00 Sat, same speaker as shell
+ shell ; >= 13:00 Sat
+ writing ; >= 15:30 Sat
+ sat-close
+ ("DEV Saturday, Dec 7" :start "2024-12-07 10:00" :set-track "Development")
+ gypsum ; <= 11:00
+ rust ; Dec 7
+ (lunch :start "12:00")
+ julia ; >= 13:00
+ regex ; <= 12:00 sun or >= 12:00 sat
+ (mcclim :time 60) ; >= 14:00
+ repro ; any
+ ("GEN Sunday, Dec 8" :start "2024-12-08 09:00" :set-track "General")
+ sun-open
+ links ; <= 10:30
+ flp ; any
+ hywiki ; >= 10:00
+ language ; <= 12:00
+ (lunch :start "12:00")
+ literate ; >= 13:00
+ casual ; >= 13:00
+ learning ; any
+ project ; any
+ sharing ; any, same speaker as learning
+ (sun-close :start "16:50")
+ ("DEV Sunday, Dec 8" :start "2024-12-08 10:00" :set-track "Development")
+ pgmacs ; <= 15:00
+ graph ; <= 12:00
+ (lunch :start "12:00")
+ blee ; any
+ p-search ; any
+ secrets ; >= 13:00
+ (transducers :start "16:00") ; >= 16:00 sun
+ ))
+ (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:
+:results:
+:end:
+
+[[file:schedule-2-tracks.svg]]
+
+Coloring by availability:
+- light blue: constraint is <= a time
+- peach: constraint is >= a time
+
+*** Option: 1.5 tracks
+:PROPERTIES:
+:CUSTOM_ID: sched-1.5-tracks
+:END:
+
+#+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
@@ -203,8 +304,8 @@ emacsconf-discuss, reddit.com/r/emacs, Emacs News, emacs-tangents, Mastodon, X
graph ; <= 12:00
(lunch :start "12:00")
julia ; >= 13:00
- (mcclim :time 60) ; >= 14:00
regex ; <= 12:00 sun or >= 12:00 sat
+ (mcclim :time 60) ; >= 14:00
secrets ; >= 13:00
repro ; any
("GEN Sunday, Dec 8" :start "2024-12-08 09:00" :set-track "General")
@@ -228,20 +329,20 @@ emacsconf-discuss, reddit.com/r/emacs, Emacs News, emacs-tangents, Mastodon, X
'(emacsconf-schedule-svg-color-by-availability
;emacsconf-schedule-svg-color-by-status
)))
- (with-temp-file (expand-file-name "schedule.svg" (file-name-directory emacsconf-org-file))
+ (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 "schedule.svg" (expand-file-name "organizers-notebook" (expand-file-name emacsconf-year emacsconf-directory)))
+ (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:
:results:
saturday closing remarks: Starts at 16:20 before 16:30
-mcclim: Starts at 13:25 before 14:00
+mcclim: Starts at 13:55 before 14:00
:end:
-[[file:schedule.svg]]
+[[file:schedule-1.5-tracks.svg]]
Coloring by availability:
- light blue: constraint is <= a time