diff options
-rw-r--r-- | 2022/organizers-notebook/index.org | 375 | ||||
-rw-r--r-- | 2022/organizers-notebook/schedule.svg | 2 |
2 files changed, 222 insertions, 155 deletions
diff --git a/2022/organizers-notebook/index.org b/2022/organizers-notebook/index.org index 608318eb..bf68afc2 100644 --- a/2022/organizers-notebook/index.org +++ b/2022/organizers-notebook/index.org @@ -12,11 +12,7 @@ This file is automatically exported from [/2022/organizers-notebook/index.org](/ #+TOC: headlines 1 -Time-sensitive tasks: - -#+TOC: headlines 1 :target #time-sensitive - -Other projects: +Projects and tasks: #+TOC: headlines 1 :target #projects @@ -109,129 +105,6 @@ interests you! | [[#wiki-design][wiki]] | plain text, markdown | *DONE S: some JS and CSS enrichment* | more JS and CSS, embeds, videoplayer | | [[#ansible][ansible]] | none | *DONE S: some automation* | comprehensive, can also work against containers | -* Time-sensitive -:PROPERTIES: -:CUSTOM_ID: time-sensitive -:END: - -Ordered chronologically (and therefore by importance). - -#+TOC: headlines 1 local -** TODO Send prerec reminder -SCHEDULED: <2022-11-11 Fri> -:PROPERTIES: -:CUSTOM_ID: prerec-reminder -:END: -*** TODO Update logbook with notes from e-mails :zaeph: -*** TODO Follow up with speakers based on their availability -** TODO Use Mumble for backchannel coordination and also on-stage -:PROPERTIES: -:CUSTOM_ID: mumble -:END: - -*** TODO Make sure volunteers can access Mumble :sachac: -- [ ] FlowyCoder -- [ ] jman -- [ ] vetrivln -*** DONE Generate certificates, add them to conf.org, and register the users :sachac: -CLOSED: [2022-11-08 Tue 11:33] -*** TODO Let sachac know how to manage the Mumble server, or update the config :bandali: -- [ ] Add emacsconf-gen and emacsconf-dev channels -- [ ] Give the emacsconf-gen and emacsconf-dev users access to them -- [ ] Give the other organizers access to emacsconf-gen, emacsconf-dev, and org-private - -** DONE Make a linear hyperlist for managing EmacsConf :sachac: -CLOSED: [2022-11-09 Wed 07:38] -:PROPERTIES: -:CUSTOM_ID: hyperlist -:END: - -Goal: -- Volunteers should be able to coordinate everything by stepping through a linear list of things to do -- The hyperlist will primarily live on orga@res.emacsconf.org and be accessed through emacsclient. (Maybe sat.org and sun.org) -- Volunteers should be able to take breaks as needed - -- 9:05 Journalism - - [ ] Check ${name} into _BBB room_ - - [X] [[elisp:(emacsconf-update-talk-status "journalism" "." "PLAYING")][Start talk]] - - [X] [[elisp:(emacsconf-update-talk-status "journalism" "." "CLOSED_Q")][Start closed Q&A]] - - [ ] [[elisp:(emacsconf-update-talk-status "journalism" "." "OPEN_Q")][Open Q&A]] - - [ ] [[elisp:(emacsconf-update-talk-status "journalism" "." "UNSTREAMED_Q")][Mark Q&A as unstreamed]] - - [ ] [[elisp:(emacsconf-update-talk-status "journalism" "." "TO_ARCHIVE")][Finish talk]] -- 9:40 Handwritten - - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "PLAYING")][Start talk]] - - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "CLOSED_Q")][Start closed Q&A]] - - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "OPEN_Q")][Open Q&A]] - - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "UNSTREAMED_Q")][Mark Q&A as unstreamed]] - - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "TO_ARCHIVE")][Finish talk]] - -See sat.org and sun.org in the conf private repo - - -** DONE Send schedule-published email for emacsconf-discuss :needsowner:timesensitive:email: -CLOSED: [2022-11-01 Tue 08:50] SCHEDULED: <2022-10-31 Mon> DEADLINE: <2022-10-31 Mon> -:PROPERTIES: -:CUSTOM_ID: announce-program -:END: - -Schedule is now available; post to emacsconf-discuss, emacs-tangents -https://lists.gnu.org/archive/html/emacsconf-discuss/2022-10/msg00000.html - -*** DONE Post it to r/emacs as well :reddit:zaeph: -CLOSED: [2022-11-01 Tue 08:50] -Please let zaeph know when it’s live so that the post can be distinguished. - -*** Template -:PROPERTIES: -:SUBJECT: [ANN] EmacsConf 2022 schedule -:TO: emacsconf-discuss@gnu.org, emacs-tangents@gnu.org -:END: - -Greetings, fellow Emacsians! - -On behalf of the EmacsConf 2022 organizers team, I'm very excited to -announce the schedule for EmacsConf 2022 (Dec 3 and 4), available at: - - https://emacsconf.org/2022/talks - -All of the times listed on the schedule are in EST (UTC-5). You can -click on each talk's title to open its page for more information, -including its scheduled time in your local time. (Displaying local time -requires running a tiny bit of AGPLv3+-licensed free/libre JavaScript -code, included on the talk pages.) - -For prerecorded talks, this time is also when the talk's video will be -made available on the same page. Please note that the times are -approximations, and that the schedule may change leading up to the -conference. - -As the conference approaches, we'll post more details on how to watch -and participate. - -You can subscribe to the emacsconf-discuss mailing list at -https://lists.gnu.org/mailman/listinfo/emacsconf-discuss to -be sure you'll get updates. - -Want to help make EmacsConf even awesomer? Volunteer! -https://emacsconf.org/2022/volunteer/ - -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. -** DONE Flesh out prepare.md for audio-recording tips before the prerec-deadline :zaeph: -CLOSED: [2022-11-06 Sun 15:26] -:PROPERTIES: -:CUSTOM_ID: prepare-audio -:END: -** Volunteer update -:PROPERTIES: -:CUSTOM_ID: volunteer-2022-11-14 -:END: - -- talk banners, akshay - * Projects and other long-running tasks :PROPERTIES: :CUSTOM_ID: projects @@ -733,22 +606,29 @@ 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 so on.${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. +Please keep the backstage password and 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 so on.${wrap} + +You'll probably want to work with either the VTT or the TXT versions +(VTT is WebVTT format and has timestamps), but you can check the other +talk resources in case the speaker has posted scripts or other useful +things. Both VTT and TXT are plain text, so feel free to use your +favourite text or subtitle editor. I've posted a brief demo of how I +edit captions at +https://media.emacsconf.org/2022/backstage/editing-captions.html , and +you can find more captioning tips at https://emacsconf.org/captioning/ +. You can convert it to whatever format you like. If you prefer to +work with plain text, we can 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] Support cue IDs in subed-vtt.el +*** DONE [#C] Support cue IDs in subed-vtt.el +CLOSED: [2022-11-11 Fri 08:58] *** TODO [#C] jiwer · PyPI - measure error rate :PROPERTIES: :CREATED: [2022-10-22 Sat 20:59] @@ -1288,6 +1168,62 @@ so that the streamer can adjust volume offscreen? - 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" +** TODO Use Mumble for backchannel coordination and also on-stage +DEADLINE: <2022-11-18 Fri> +:PROPERTIES: +:CUSTOM_ID: mumble +:END: + +*** TODO E-mail volunteers and help them get on Mumble :bandali: +- [ ] FlowyCoder +- [ ] jman +- [ ] vetrivln +*** TODO Update the Mumble setup :bandali: +- [ ] Add emacsconf-gen and emacsconf-dev channels +- [ ] Give the emacsconf-gen and emacsconf-dev users access to them +- [ ] Give the other organizers access to emacsconf-gen, emacsconf-dev, and org-private + +*** DONE Generate certificates, add them to conf.org, and register the users :sachac: +CLOSED: [2022-11-08 Tue 11:33] +** Volunteer update +:PROPERTIES: +:CUSTOM_ID: volunteer-2022-11-14 +:END: + +- talk banners, akshay + +** TODO Make a linear hyperlist for managing EmacsConf :sachac: +:PROPERTIES: +:CUSTOM_ID: hyperlist +:END: + +Goal: +- Volunteers should be able to coordinate everything by stepping through a linear list of things to do +- The hyperlist will primarily live on orga@res.emacsconf.org and be accessed through emacsclient. (Maybe sat.org and sun.org) +- Volunteers should be able to take breaks as needed + +- 9:05 Journalism + - [ ] Check ${name} into _BBB room_ + - [X] [[elisp:(emacsconf-update-talk-status "journalism" "." "PLAYING")][Start talk]] + - [X] [[elisp:(emacsconf-update-talk-status "journalism" "." "CLOSED_Q")][Start closed Q&A]] + - [ ] [[elisp:(emacsconf-update-talk-status "journalism" "." "OPEN_Q")][Open Q&A]] + - [ ] [[elisp:(emacsconf-update-talk-status "journalism" "." "UNSTREAMED_Q")][Mark Q&A as unstreamed]] + - [ ] [[elisp:(emacsconf-update-talk-status "journalism" "." "TO_ARCHIVE")][Finish talk]] +- 9:40 Handwritten + - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "PLAYING")][Start talk]] + - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "CLOSED_Q")][Start closed Q&A]] + - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "OPEN_Q")][Open Q&A]] + - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "UNSTREAMED_Q")][Mark Q&A as unstreamed]] + - [ ] [[elisp:(emacsconf-update-talk-status "handwritten" "." "TO_ARCHIVE")][Finish talk]] + +See sat.org and sun.org in the conf private repo + +Try them in an Etherpad + +[[#coordination][How do we want to coordinate during the conference itself?]] +*** TODO Try writing it to an Etherpad +SCHEDULED: <2022-11-19 Sat> + * Projects to bear in mind but which are not actual :PROPERTIES: :CUSTOM_ID: maybe-projects @@ -1306,15 +1242,29 @@ https://www.mail-archive.com/search?l=debconf-team@lists.debian.org&q=subject:%2 :END: #+TOC: headlines 1 local -** How do we want to handle organizer audio? +** How do we want to coordinate during the conference itself? +:PROPERTIES: +:CUSTOM_ID: coordination +:END: + +- Considerations: + - Good to have something that the hosts and streamers can walk through step by step + - Do we want the check-in volunteer to also keep something + - Announcing and publishing are easier if the task states are updated - Mumble for walkie-talkie communications? - Can we keep it off the stream more reliably, but still be able to choose to put it on the stream? - We can keep it in the combined sink and then manually go to that channel in our clients when we want to talk on stream - Should we have a Gen channel and a Dev channel so that we can choose to speak into ? - - +- Checklist + - Etherpad + - All the volunteers can access it easily + - Tasks can be updated through SSH commands + - conf.org + - Run Emacs commands directly from it + - A little trickier in terms of access + ** How do we want to make the full schedule more manageable? :PROPERTIES: :CUSTOM_ID: sched-decision @@ -1686,20 +1636,24 @@ The roles below are related to the proposals in the early stages of the preparat AM: 9-12 PM EST, PM: 1-5 PM EST (plus a little extra for setup/transition) Saturday Dec 3 -| | Gen AM | Gen PM | Dev AM | Dev PM | -| Host | zaeph | zaeph | bandali | vetrivln | -| Streamer | corwin | corwin | bandali | bandali | -| Check-in | sachac | FlowyCoder | | | -| IRC | sachac | dto | dto | vetrivln | -| Pad | publicvoit | publicvoit (until 4pm) | | | +#+NAME: saturday-shifts +| | Host | Streamer | Checkin | IRC | Pad | +|--------+----------+----------+------------+----------+------------| +| Gen AM | zaeph | corwin | sachac | sachac | publicvoit | +| Gen PM | zaeph | corwin | FlowyCoder | dto | publicvoit | +| Dev AM | bandali | bandali | sachac | dto | | +| Dev PM | vetrivln | bandali | FlowyCoder | vetrivln | | + +publicvoit - pad until 4pm on Sat, until 2pm on Sun Sunday Dec 4 -| | Gen AM | Gen PM | Dev AM | Dev PM | -| Host | zaeph | zaeph | bandali | vetrivln | -| Streamer | corwin | jman | bandali | | -| Check-in | sachac | FlowyCoder | | | -| IRC | sachac | dto | dto | vetrivln | -| Pad | publicvoit | publicvoit (until 2pm) | | | +#+NAME: sunday-shifts +| | Host | Streamer | Checkin | IRC | Pad | +|--------+----------+----------+------------+----------+------------| +| Gen AM | zaeph | corwin | sachac | sachac | publicvoit | +| Gen PM | zaeph | jman | FlowyCoder | dto | publicvoit | +| Dev AM | bandali | bandali | sachac | dto | | +| Dev PM | vetrivln | bandali | FlowyCoder | vetrivln | | Backups: - dev host/streamer: bandali, sachac @@ -1708,6 +1662,53 @@ Backups: 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 field)))) + (cdr (car (cadr day)))))) + (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:00%s" + (elt day 2) + (if (string-match "AM" (car row)) "08" "13") + emacsconf-timezone-offset) + :end + (format "%sT%s:00:00%s" + (elt day 2) + (if (string-match "AM" (car row)) "12" "18") + emacsconf-timezone-offset)) + (seq-map-indexed + (lambda (value index) + (unless (string= value "") + (list (elt headers index) value))) + (cdr row)))) + (cdr (cadr day))) + )) + (list + (list "sat" sat "2022-12-03") + (list "sun" sun "2022-12-04")))))) + +#+end_src + +#+RESULTS: +:results: +(setq emacsconf-shifts (list (list :id "sat-am-gen" :track "General" :start "2022-12-03T08:00:00-0500" :end "2022-12-03T12:00:00-0500" :host "zaeph" :streamer "corwin" :checkin "sachac" :irc "sachac" :pad "publicvoit") (list :id "sat-pm-gen" :track "General" :start "2022-12-03T13:00:00-0500" :end "2022-12-03T18:00:00-0500" :host "zaeph" :streamer "corwin" :checkin "FlowyCoder" :irc "dto" :pad "publicvoit") (list :id "sat-am-dev" :track "Development" :start "2022-12-03T08:00:00-0500" :end "2022-12-03T12:00:00-0500" :host "bandali" :streamer "bandali" :checkin "sachac" :irc "dto") (list :id "sat-pm-dev" :track "Development" :start "2022-12-03T13:00:00-0500" :end "2022-12-03T18:00:00-0500" :host "vetrivln" :streamer "bandali" :checkin "FlowyCoder" :irc "vetrivln") (list :id "sun-am-gen" :track "General" :start "2022-12-04T08:00:00-0500" :end "2022-12-04T12:00:00-0500" :host "zaeph" :streamer "corwin" :checkin "sachac" :irc "sachac" :pad "publicvoit") (list :id "sun-pm-gen" :track "General" :start "2022-12-04T13:00:00-0500" :end "2022-12-04T18:00:00-0500" :host "zaeph" :streamer "jman" :checkin "FlowyCoder" :irc "dto" :pad "publicvoit") (list :id "sun-am-dev" :track "Development" :start "2022-12-04T08:00:00-0500" :end "2022-12-04T12:00:00-0500" :host "bandali" :streamer "bandali" :checkin "sachac" :irc "dto") (list :id "sun-pm-dev" :track "Development" :start "2022-12-04T13:00:00-0500" :end "2022-12-04T18:00:00-0500" :host "vetrivln" :streamer "bandali" :checkin "FlowyCoder" :irc "vetrivln"))) +:end: + ** After the conference - Video processor - Extract live segments into videos @@ -3838,6 +3839,72 @@ EmacsConf is a little less than four weeks away. Stuff is happening! Sacha +** DONE Send prerec reminder :sachac: +CLOSED: [2022-11-11 Fri 19:27] SCHEDULED: <2022-11-11 Fri> +:PROPERTIES: +:CUSTOM_ID: prerec-reminder +:END: +*** DONE Update logbook with notes from e-mails :sachac: +CLOSED: [2022-11-11 Fri 19:27] +*** DONE Follow up with speakers based on their availability +CLOSED: [2022-11-11 Fri 19:27] +** DONE Send schedule-published email for emacsconf-discuss :needsowner:timesensitive:email: +CLOSED: [2022-11-01 Tue 08:50] SCHEDULED: <2022-10-31 Mon> DEADLINE: <2022-10-31 Mon> +:PROPERTIES: +:CUSTOM_ID: announce-program +:END: + +Schedule is now available; post to emacsconf-discuss, emacs-tangents +https://lists.gnu.org/archive/html/emacsconf-discuss/2022-10/msg00000.html + +*** DONE Post it to r/emacs as well :reddit:zaeph: +CLOSED: [2022-11-01 Tue 08:50] +Please let zaeph know when it’s live so that the post can be distinguished. + +*** Template +:PROPERTIES: +:SUBJECT: [ANN] EmacsConf 2022 schedule +:TO: emacsconf-discuss@gnu.org, emacs-tangents@gnu.org +:END: + +Greetings, fellow Emacsians! + +On behalf of the EmacsConf 2022 organizers team, I'm very excited to +announce the schedule for EmacsConf 2022 (Dec 3 and 4), available at: + + https://emacsconf.org/2022/talks + +All of the times listed on the schedule are in EST (UTC-5). You can +click on each talk's title to open its page for more information, +including its scheduled time in your local time. (Displaying local time +requires running a tiny bit of AGPLv3+-licensed free/libre JavaScript +code, included on the talk pages.) + +For prerecorded talks, this time is also when the talk's video will be +made available on the same page. Please note that the times are +approximations, and that the schedule may change leading up to the +conference. + +As the conference approaches, we'll post more details on how to watch +and participate. + +You can subscribe to the emacsconf-discuss mailing list at +https://lists.gnu.org/mailman/listinfo/emacsconf-discuss to +be sure you'll get updates. + +Want to help make EmacsConf even awesomer? Volunteer! +https://emacsconf.org/2022/volunteer/ + +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. +** DONE Flesh out prepare.md for audio-recording tips before the prerec-deadline :zaeph: +CLOSED: [2022-11-06 Sun 15:26] +:PROPERTIES: +:CUSTOM_ID: prepare-audio +:END: * Communications :PROPERTIES: :CUSTOM_ID: comms diff --git a/2022/organizers-notebook/schedule.svg b/2022/organizers-notebook/schedule.svg index 5f76b38f..b6e8aa9a 100644 --- a/2022/organizers-notebook/schedule.svg +++ b/2022/organizers-notebook/schedule.svg @@ -1 +1 @@ -<svg width="800" height="200" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" background="white"> <g transform="translate(0,0)"> <rect width="800" height="100" x="0" y="0" fill="white"></rect> <text font-size="10" fill="black" y="12" x="3"> Saturday</text> <a href="/2022/talks/sat-open" title="Saturday opening remarks" data-slug="sat-open"> <title> 9:00- 9:05 Saturday opening remarks</title> <rect x="0" y="15" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(5,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sat-open</text></g></a> <a href="/2022/talks/journalism" title="Emacs journalism (or everything's a nail if you hit it with Emacs)" data-slug="journalism"> <title> 9:05- 9:25 Emacs journalism (or everything's a nail if you hit it with Emacs)</title> <rect x="7" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(36,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> journalism</text></g></a> <a href="/2022/talks/school" title="Back to school with Emacs" data-slug="school"> <title> 9:45-10:05 Back to school with Emacs</title> <rect x="70" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(99,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> school</text></g></a> <a href="/2022/talks/handwritten" title="How to incorporate handwritten notes into Emacs Orgmode" data-slug="handwritten"> <title> 10:15-10:25 How to incorporate handwritten notes into Emacs Orgmode</title> <rect x="117" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(130,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> handwritten</text></g></a> <a href="/2022/talks/science" title="Writing and organizing literature notes for scientific writing" data-slug="science"> <title> 10:55-11:15 Writing and organizing literature notes for scientific writing</title> <rect x="180" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="lightgreen"></rect> <g transform="translate(209,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> science</text></g></a> <a href="/2022/talks/buddy" title="The Emacs Buddy initiative" data-slug="buddy"> <title> 11:35-11:45 The Emacs Buddy initiative</title> <rect x="243" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(256,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> buddy</text></g></a> <a href="/2022/talks/meetups" title="Attending and organizing Emacs meetups" data-slug="meetups"> <title> 1:05- 1:25 Attending and organizing Emacs meetups</title> <rect x="384" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(413,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> meetups</text></g></a> <a href="/2022/talks/community" title="The ship that builds itself: How we used Emacs to develop a workshop for communities" data-slug="community"> <title> 1:45- 1:55 The ship that builds itself: How we used Emacs to develop a workshop for communities</title> <rect x="447" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(460,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> community</text></g></a> <a href="/2022/talks/realestate" title="Real estate and Org table formulas" data-slug="realestate"> <title> 2:25- 2:50 Real estate and Org table formulas</title> <rect x="509" y="15" opacity="0.8" width="39" height="34" stroke="black" stroke-dasharray="5,5,5" fill="lightgreen"></rect> <g transform="translate(546,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> realestate</text></g></a> <a href="/2022/talks/health" title="Health data journaling and visualization with Org Mode and GNUplot" data-slug="health"> <title> 3:00- 3:20 Health data journaling and visualization with Org Mode and GNUplot</title> <rect x="564" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(593,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> health</text></g></a> <a href="/2022/talks/jupyter" title="Edit live Jupyter notebook cells with Emacs" data-slug="jupyter"> <title> 3:40- 3:50 Edit live Jupyter notebook cells with Emacs</title> <rect x="627" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(640,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> jupyter</text></g></a> <a href="/2022/talks/buttons" title="Linking personal info with Hyperbole implicit buttons" data-slug="buttons"> <title> 4:10- 4:20 Linking personal info with Hyperbole implicit buttons</title> <rect x="674" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(687,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> buttons</text></g></a> <a href="/2022/talks/sat-close" title="Saturday closing remarks" data-slug="sat-close"> <title> 4:50- 4:55 Saturday closing remarks</title> <rect x="737" y="15" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(742,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sat-close</text></g></a> <a href="/2022/talks/treesitter" title="Tree-sitter beyond syntax highlighting" data-slug="treesitter"> <title> 10:00-10:10 Tree-sitter beyond syntax highlighting</title> <rect x="94" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(107,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> treesitter</text></g></a> <a href="/2022/talks/lspbridge" title="lsp-bridge: complete asynchronous LSP client" data-slug="lspbridge"> <title> 10:20-10:40 lsp-bridge: complete asynchronous LSP client</title> <rect x="125" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(154,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> lspbridge</text></g></a> <a href="/2022/talks/asmblox" title="asm-blox: a game based on WebAssembly that no one asked for" data-slug="asmblox"> <title> 10:50-11:07 asm-blox: a game based on WebAssembly that no one asked for</title> <rect x="172" y="50" opacity="0.8" width="26" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(196,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> asmblox</text></g></a> <a href="/2022/talks/wayland" title="Emacs should become a Wayland compositor" data-slug="wayland"> <title> 11:25-11:35 Emacs should become a Wayland compositor</title> <rect x="227" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(240,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> wayland</text></g></a> <a href="/2022/talks/sqlite" title="Using SQLite as a data source: a framework and an example" data-slug="sqlite"> <title> 1:00- 1:20 Using SQLite as a data source: a framework and an example</title> <rect x="376" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(405,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sqlite</text></g></a> <a href="/2022/talks/mail" title="Revisiting the anatomy of Emacs mail user agents" data-slug="mail"> <title> 1:45- 2:15 Revisiting the anatomy of Emacs mail user agents</title> <rect x="447" y="50" opacity="0.8" width="47" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(492,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> mail</text></g></a> <a href="/2022/talks/maint" title="Maintaining the Maintainers: Attribution as an Economic Model for Open Source" data-slug="maint"> <title> 2:50- 3:10 Maintaining the Maintainers: Attribution as an Economic Model for Open Source</title> <rect x="549" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(578,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> maint</text></g></a> <a href="/2022/talks/eev" title="Bidirectional links with eev" data-slug="eev"> <title> 3:35- 3:40 Bidirectional links with eev</title> <rect x="619" y="50" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(624,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> eev</text></g></a> <a href="/2022/talks/python" title="Short hyperlinks to Python docs" data-slug="python"> <title> 3:50- 3:55 Short hyperlinks to Python docs</title> <rect x="643" y="50" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(648,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> python</text></g></a> <a href="/2022/talks/haskell" title="Haskell code exploration with Emacs" data-slug="haskell"> <title> 4:05- 4:35 Haskell code exploration with Emacs</title> <rect x="666" y="50" opacity="0.8" width="47" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(711,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> haskell</text></g></a> <g transform="translate(0,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 9</text></g> <g transform="translate(94,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 10</text></g> <g transform="translate(188,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 11</text></g> <g transform="translate(282,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 12</text></g> <g transform="translate(376,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 1</text></g> <g transform="translate(470,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 2</text></g> <g transform="translate(564,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 3</text></g> <g transform="translate(658,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 4</text></g> <g transform="translate(752,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 5</text></g></g> <g transform="translate(0,100)"> <rect width="800" height="100" x="0" y="0" fill="white"></rect> <text font-size="10" fill="black" y="12" x="3"> Sunday</text> <a href="/2022/talks/sun-open" title="Sunday opening remarks" data-slug="sun-open"> <title> 9:00- 9:05 Sunday opening remarks</title> <rect x="0" y="15" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(5,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sun-open</text></g></a> <a href="/2022/talks/survey" title="Results of the 2022 Emacs Survey" data-slug="survey"> <title> 9:05- 9:25 Results of the 2022 Emacs Survey</title> <rect x="7" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(36,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> survey</text></g></a> <a href="/2022/talks/orgyear" title="This Year in Org" data-slug="orgyear"> <title> 9:35- 9:45 This Year in Org</title> <rect x="54" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(67,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> orgyear</text></g></a> <a href="/2022/talks/rolodex" title="Build a Zettelkasten with the Hyperbole Rolodex" data-slug="rolodex"> <title> 10:00-10:20 Build a Zettelkasten with the Hyperbole Rolodex</title> <rect x="94" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(123,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> rolodex</text></g></a> <a href="/2022/talks/orgsuperlinks" title="Linking headings with org-super-links (poor-man's Zettelkasten)" data-slug="orgsuperlinks"> <title> 10:40-10:50 Linking headings with org-super-links (poor-man's Zettelkasten)</title> <rect x="156" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(169,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> orgsuperlinks</text></g></a> <a href="/2022/talks/orgvm" title="orgvm: a simple HTTP server for org" data-slug="orgvm"> <title> 11:10-11:20 orgvm: a simple HTTP server for org</title> <rect x="203" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(216,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> orgvm</text></g></a> <a href="/2022/talks/hyperorg" title="Powerful productivity with Hyperbole and Org Mode" data-slug="hyperorg"> <title> 1:00- 1:30 Powerful productivity with Hyperbole and Org Mode</title> <rect x="376" y="15" opacity="0.8" width="47" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(421,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> hyperorg</text></g></a> <a href="/2022/talks/workflows" title="Org workflows for developers" data-slug="workflows"> <title> 1:50- 2:10 Org workflows for developers</title> <rect x="454" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="palegoldenrod"></rect> <g transform="translate(483,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> workflows</text></g></a> <a href="/2022/talks/grail" title="GRAIL---A Generalized Representation and Aggregation of Information Layers" data-slug="grail"> <title> 2:30- 2:50 GRAIL---A Generalized Representation and Aggregation of Information Layers</title> <rect x="517" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(546,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> grail</text></g></a> <a href="/2022/talks/indieweb" title="Putting Org Mode on the Indieweb" data-slug="indieweb"> <title> 3:20- 3:40 Putting Org Mode on the Indieweb</title> <rect x="596" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="lightgreen"></rect> <g transform="translate(625,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> indieweb</text></g></a> <a href="/2022/talks/devel" title="Emacs development updates" data-slug="devel"> <title> 4:00- 4:05 Emacs development updates</title> <rect x="658" y="15" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(663,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> devel</text></g></a> <a href="/2022/talks/fanfare" title="Fanfare for the Common Emacs User" data-slug="fanfare"> <title> 4:15- 4:25 Fanfare for the Common Emacs User</title> <rect x="682" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(695,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> fanfare</text></g></a> <a href="/2022/talks/sun-close" title="Sunday closing remarks" data-slug="sun-close"> <title> 4:50- 5:00 Sunday closing remarks</title> <rect x="737" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(750,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sun-close</text></g></a> <a href="/2022/talks/rde" title="rde Emacs introduction" data-slug="rde"> <title> 10:00-10:25 rde Emacs introduction</title> <rect x="94" y="50" opacity="0.8" width="39" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(131,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> rde</text></g></a> <a href="/2022/talks/justl" title="justl: Driving recipes within Emacs" data-slug="justl"> <title> 10:45-10:55 justl: Driving recipes within Emacs</title> <rect x="164" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(177,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> justl</text></g></a> <a href="/2022/talks/detached" title="Getting detached from Emacs" data-slug="detached"> <title> 1:00- 1:10 Getting detached from Emacs</title> <rect x="376" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="yellow"></rect> <g transform="translate(389,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> detached</text></g></a> <a href="/2022/talks/eshell" title="Top 10 reasons why you should be using Eshell" data-slug="eshell"> <title> 1:35- 1:45 Top 10 reasons why you should be using Eshell</title> <rect x="431" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(444,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> eshell</text></g></a> <a href="/2022/talks/async" title="Emacs was async before async was cool" data-slug="async"> <title> 2:10- 2:30 Emacs was async before async was cool</title> <rect x="486" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="lightgreen"></rect> <g transform="translate(515,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> async</text></g></a> <a href="/2022/talks/dbus" title="The Wheels on D-Bus" data-slug="dbus"> <title> 3:05- 3:25 The Wheels on D-Bus</title> <rect x="572" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(601,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> dbus</text></g></a> <a href="/2022/talks/localizing" title="Pre-localizing Emacs" data-slug="localizing"> <title> 4:00- 4:20 Pre-localizing Emacs</title> <rect x="658" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(687,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> localizing</text></g></a> <g transform="translate(0,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 9</text></g> <g transform="translate(94,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 10</text></g> <g transform="translate(188,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 11</text></g> <g transform="translate(282,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 12</text></g> <g transform="translate(376,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 1</text></g> <g transform="translate(470,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 2</text></g> <g transform="translate(564,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 3</text></g> <g transform="translate(658,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 4</text></g> <g transform="translate(752,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 5</text></g></g></svg>
\ No newline at end of file +<svg width="800" height="200" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" background="white"> <g transform="translate(0,0)"> <rect width="800" height="100" x="0" y="0" fill="white"></rect> <text font-size="10" fill="black" y="12" x="3"> Saturday</text> <a href="/2022/talks/sat-open" title="Saturday opening remarks" data-slug="sat-open"> <title> 9:00- 9:05 Saturday opening remarks</title> <rect x="0" y="15" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(5,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sat-open</text></g></a> <a href="/2022/talks/journalism" title="Emacs journalism (or everything's a nail if you hit it with Emacs)" data-slug="journalism"> <title> 9:05- 9:25 Emacs journalism (or everything's a nail if you hit it with Emacs)</title> <rect x="7" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(36,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> journalism</text></g></a> <a href="/2022/talks/school" title="Back to school with Emacs" data-slug="school"> <title> 9:45-10:05 Back to school with Emacs</title> <rect x="70" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(99,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> school</text></g></a> <a href="/2022/talks/handwritten" title="How to incorporate handwritten notes into Emacs Orgmode" data-slug="handwritten"> <title> 10:15-10:25 How to incorporate handwritten notes into Emacs Orgmode</title> <rect x="117" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(130,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> handwritten</text></g></a> <a href="/2022/talks/science" title="Writing and organizing literature notes for scientific writing" data-slug="science"> <title> 10:55-11:15 Writing and organizing literature notes for scientific writing</title> <rect x="180" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="lightgreen"></rect> <g transform="translate(209,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> science</text></g></a> <a href="/2022/talks/buddy" title="The Emacs Buddy initiative" data-slug="buddy"> <title> 11:35-11:45 The Emacs Buddy initiative</title> <rect x="243" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(256,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> buddy</text></g></a> <a href="/2022/talks/meetups" title="Attending and organizing Emacs meetups" data-slug="meetups"> <title> 1:05- 1:25 Attending and organizing Emacs meetups</title> <rect x="384" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(413,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> meetups</text></g></a> <a href="/2022/talks/community" title="The ship that builds itself: How we used Emacs to develop a workshop for communities" data-slug="community"> <title> 1:45- 1:55 The ship that builds itself: How we used Emacs to develop a workshop for communities</title> <rect x="447" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(460,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> community</text></g></a> <a href="/2022/talks/realestate" title="Real estate and Org table formulas" data-slug="realestate"> <title> 2:25- 2:50 Real estate and Org table formulas</title> <rect x="509" y="15" opacity="0.8" width="39" height="34" stroke="black" stroke-dasharray="5,5,5" fill="lightgreen"></rect> <g transform="translate(546,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> realestate</text></g></a> <a href="/2022/talks/health" title="Health data journaling and visualization with Org Mode and GNUplot" data-slug="health"> <title> 3:00- 3:20 Health data journaling and visualization with Org Mode and GNUplot</title> <rect x="564" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(593,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> health</text></g></a> <a href="/2022/talks/jupyter" title="Edit live Jupyter notebook cells with Emacs" data-slug="jupyter"> <title> 3:40- 3:50 Edit live Jupyter notebook cells with Emacs</title> <rect x="627" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(640,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> jupyter</text></g></a> <a href="/2022/talks/buttons" title="Linking personal info with Hyperbole implicit buttons" data-slug="buttons"> <title> 4:10- 4:20 Linking personal info with Hyperbole implicit buttons</title> <rect x="674" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(687,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> buttons</text></g></a> <a href="/2022/talks/sat-close" title="Saturday closing remarks" data-slug="sat-close"> <title> 4:50- 4:55 Saturday closing remarks</title> <rect x="737" y="15" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(742,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sat-close</text></g></a> <a href="/2022/talks/treesitter" title="Tree-sitter beyond syntax highlighting" data-slug="treesitter"> <title> 10:00-10:10 Tree-sitter beyond syntax highlighting</title> <rect x="94" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(107,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> treesitter</text></g></a> <a href="/2022/talks/lspbridge" title="lsp-bridge: complete asynchronous LSP client" data-slug="lspbridge"> <title> 10:20-10:40 lsp-bridge: complete asynchronous LSP client</title> <rect x="125" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(154,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> lspbridge</text></g></a> <a href="/2022/talks/asmblox" title="asm-blox: a game based on WebAssembly that no one asked for" data-slug="asmblox"> <title> 10:50-11:07 asm-blox: a game based on WebAssembly that no one asked for</title> <rect x="172" y="50" opacity="0.8" width="26" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(196,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> asmblox</text></g></a> <a href="/2022/talks/wayland" title="Emacs should become a Wayland compositor" data-slug="wayland"> <title> 11:25-11:35 Emacs should become a Wayland compositor</title> <rect x="227" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(240,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> wayland</text></g></a> <a href="/2022/talks/sqlite" title="Using SQLite as a data source: a framework and an example" data-slug="sqlite"> <title> 1:00- 1:20 Using SQLite as a data source: a framework and an example</title> <rect x="376" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(405,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sqlite</text></g></a> <a href="/2022/talks/mail" title="Revisiting the anatomy of Emacs mail user agents" data-slug="mail"> <title> 1:45- 2:15 Revisiting the anatomy of Emacs mail user agents</title> <rect x="447" y="50" opacity="0.8" width="47" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(492,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> mail</text></g></a> <a href="/2022/talks/maint" title="Maintaining the Maintainers: Attribution as an Economic Model for Open Source" data-slug="maint"> <title> 2:50- 3:10 Maintaining the Maintainers: Attribution as an Economic Model for Open Source</title> <rect x="549" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(578,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> maint</text></g></a> <a href="/2022/talks/eev" title="Bidirectional links with eev" data-slug="eev"> <title> 3:35- 3:40 Bidirectional links with eev</title> <rect x="619" y="50" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(624,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> eev</text></g></a> <a href="/2022/talks/python" title="Short hyperlinks to Python docs" data-slug="python"> <title> 3:50- 3:55 Short hyperlinks to Python docs</title> <rect x="643" y="50" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(648,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> python</text></g></a> <a href="/2022/talks/haskell" title="Haskell code exploration with Emacs" data-slug="haskell"> <title> 4:05- 4:35 Haskell code exploration with Emacs</title> <rect x="666" y="50" opacity="0.8" width="47" height="34" stroke="black" stroke-dasharray="" fill="lightgreen"></rect> <g transform="translate(711,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> haskell</text></g></a> <g transform="translate(0,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 9</text></g> <g transform="translate(94,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 10</text></g> <g transform="translate(188,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 11</text></g> <g transform="translate(282,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 12</text></g> <g transform="translate(376,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 1</text></g> <g transform="translate(470,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 2</text></g> <g transform="translate(564,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 3</text></g> <g transform="translate(658,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 4</text></g> <g transform="translate(752,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 5</text></g></g> <g transform="translate(0,100)"> <rect width="800" height="100" x="0" y="0" fill="white"></rect> <text font-size="10" fill="black" y="12" x="3"> Sunday</text> <a href="/2022/talks/sun-open" title="Sunday opening remarks" data-slug="sun-open"> <title> 9:00- 9:05 Sunday opening remarks</title> <rect x="0" y="15" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(5,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sun-open</text></g></a> <a href="/2022/talks/survey" title="Results of the 2022 Emacs Survey" data-slug="survey"> <title> 9:05- 9:25 Results of the 2022 Emacs Survey</title> <rect x="7" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(36,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> survey</text></g></a> <a href="/2022/talks/orgyear" title="This Year in Org" data-slug="orgyear"> <title> 9:35- 9:45 This Year in Org</title> <rect x="54" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="5,5,5" fill="gray"></rect> <g transform="translate(67,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> orgyear</text></g></a> <a href="/2022/talks/rolodex" title="Build a Zettelkasten with the Hyperbole Rolodex" data-slug="rolodex"> <title> 10:00-10:20 Build a Zettelkasten with the Hyperbole Rolodex</title> <rect x="94" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(123,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> rolodex</text></g></a> <a href="/2022/talks/orgsuperlinks" title="Linking headings with org-super-links (poor-man's Zettelkasten)" data-slug="orgsuperlinks"> <title> 10:40-10:50 Linking headings with org-super-links (poor-man's Zettelkasten)</title> <rect x="156" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(169,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> orgsuperlinks</text></g></a> <a href="/2022/talks/orgvm" title="orgvm: a simple HTTP server for org" data-slug="orgvm"> <title> 11:10-11:20 orgvm: a simple HTTP server for org</title> <rect x="203" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(216,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> orgvm</text></g></a> <a href="/2022/talks/hyperorg" title="Powerful productivity with Hyperbole and Org Mode" data-slug="hyperorg"> <title> 1:00- 1:30 Powerful productivity with Hyperbole and Org Mode</title> <rect x="376" y="15" opacity="0.8" width="47" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(421,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> hyperorg</text></g></a> <a href="/2022/talks/workflows" title="Org workflows for developers" data-slug="workflows"> <title> 1:50- 2:10 Org workflows for developers</title> <rect x="454" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="lightgreen"></rect> <g transform="translate(483,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> workflows</text></g></a> <a href="/2022/talks/grail" title="GRAIL---A Generalized Representation and Aggregation of Information Layers" data-slug="grail"> <title> 2:30- 2:50 GRAIL---A Generalized Representation and Aggregation of Information Layers</title> <rect x="517" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(546,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> grail</text></g></a> <a href="/2022/talks/indieweb" title="Putting Org Mode on the Indieweb" data-slug="indieweb"> <title> 3:20- 3:40 Putting Org Mode on the Indieweb</title> <rect x="596" y="15" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="lightgreen"></rect> <g transform="translate(625,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> indieweb</text></g></a> <a href="/2022/talks/devel" title="Emacs development updates" data-slug="devel"> <title> 4:00- 4:05 Emacs development updates</title> <rect x="658" y="15" opacity="0.8" width="7" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(663,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> devel</text></g></a> <a href="/2022/talks/fanfare" title="Fanfare for the Common Emacs User" data-slug="fanfare"> <title> 4:15- 4:25 Fanfare for the Common Emacs User</title> <rect x="682" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(695,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> fanfare</text></g></a> <a href="/2022/talks/sun-close" title="Sunday closing remarks" data-slug="sun-close"> <title> 4:50- 5:00 Sunday closing remarks</title> <rect x="737" y="15" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(750,48)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sun-close</text></g></a> <a href="/2022/talks/rde" title="rde Emacs introduction" data-slug="rde"> <title> 10:00-10:25 rde Emacs introduction</title> <rect x="94" y="50" opacity="0.8" width="39" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(131,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> rde</text></g></a> <a href="/2022/talks/justl" title="justl: Driving recipes within Emacs" data-slug="justl"> <title> 10:45-10:55 justl: Driving recipes within Emacs</title> <rect x="164" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="5,5,5" fill="green"></rect> <g transform="translate(177,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> justl</text></g></a> <a href="/2022/talks/detached" title="Getting detached from Emacs" data-slug="detached"> <title> 1:00- 1:10 Getting detached from Emacs</title> <rect x="376" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="green"></rect> <g transform="translate(389,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> detached</text></g></a> <a href="/2022/talks/eshell" title="Top 10 reasons why you should be using Eshell" data-slug="eshell"> <title> 1:35- 1:45 Top 10 reasons why you should be using Eshell</title> <rect x="431" y="50" opacity="0.8" width="15" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(444,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> eshell</text></g></a> <a href="/2022/talks/async" title="Emacs was async before async was cool" data-slug="async"> <title> 2:10- 2:30 Emacs was async before async was cool</title> <rect x="486" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(515,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> async</text></g></a> <a href="/2022/talks/dbus" title="The Wheels on D-Bus" data-slug="dbus"> <title> 3:05- 3:25 The Wheels on D-Bus</title> <rect x="572" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(601,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> dbus</text></g></a> <a href="/2022/talks/localizing" title="Pre-localizing Emacs" data-slug="localizing"> <title> 4:00- 4:20 Pre-localizing Emacs</title> <rect x="658" y="50" opacity="0.8" width="31" height="34" stroke="black" stroke-dasharray="" fill="gray"></rect> <g transform="translate(687,83)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> localizing</text></g></a> <g transform="translate(0,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 9</text></g> <g transform="translate(94,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 10</text></g> <g transform="translate(188,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 11</text></g> <g transform="translate(282,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 12</text></g> <g transform="translate(376,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 1</text></g> <g transform="translate(470,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 2</text></g> <g transform="translate(564,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 3</text></g> <g transform="translate(658,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 4</text></g> <g transform="translate(752,15)"> <line stroke="lightgray" x1="0" y1="0" x2="0" y2="70"></line> <text fill="darkgray" x="0" y="83" font-size="10" text-anchor="middle"> 5</text></g></g></svg>
\ No newline at end of file |