summaryrefslogtreecommitdiffstats
path: root/2020
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--2020/info/01.md2
-rw-r--r--2020/info/06.md2
-rw-r--r--2020/subtitles/emacsconf-2020--01-emacs-news-highlights--sacha-chua.vtt (renamed from 2020/subtitles/emacsconf-2020-01--emacs-news-highlights--sacha-chua.vtt)0
-rw-r--r--2020/subtitles/emacsconf-2020--02-an-emacs-developer-story-from-user-to-package-maintainer--leo-vivier.vtt (renamed from 2020/subtitles/emacsconf-2020-02--an-emacs-developer-story-from-user-to-package-maintainer--leo-vivier.vtt)0
-rw-r--r--2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux.sbv1251
-rw-r--r--2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt (renamed from 2020/subtitles/emacsconf-2020-06--trivial-emacs-kits--corwin-brust.vtt)0
-rw-r--r--2020/subtitles/emacsconf-2020-01--emacs-news-highlights--sacha-chua.srt503
-rw-r--r--2020/subtitles/emacsconf-2020-06--trivial-emacs-kits--corwin-brust.sbv1002
8 files changed, 1253 insertions, 1507 deletions
diff --git a/2020/info/01.md b/2020/info/01.md
index 10efddeb..abec5ce9 100644
--- a/2020/info/01.md
+++ b/2020/info/01.md
@@ -1,7 +1,7 @@
# Emacs News Highlights
Sacha Chua
-[[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--01-emacs-news-highlights--sacha-chua.webm" subtitles="/2020/subtitles/emacsconf-2020-01--emacs-news-highlights--sacha-chua.vtt" duration="3:58" download="Download with subtitles" size="11MB"]]
+[[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--01-emacs-news-highlights--sacha-chua.webm" subtitles="/2020/subtitles/emacsconf-2020--01-emacs-news-highlights--sacha-chua.vtt" duration="3:58" download="Download with subtitles" size="11MB"]]
Quick highlights from Emacs News since the last EmacsConf
diff --git a/2020/info/06.md b/2020/info/06.md
index 065e3a23..15da335f 100644
--- a/2020/info/06.md
+++ b/2020/info/06.md
@@ -1,7 +1,7 @@
# Trivial Emacs Kits
Corwin Brust
-[[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.webm" size="114M" duration="13:41" subtitles="/2020/subtitles/emacsconf-2020-06--trivial-emacs-kits--corwin-brust.vtt"]]
+[[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.webm" size="114M" duration="13:41" subtitles="/2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt"]]
Techniques to help new users bootstrap a more gentle introduction to
Emacs, one (short) init.el file at a time.
diff --git a/2020/subtitles/emacsconf-2020-01--emacs-news-highlights--sacha-chua.vtt b/2020/subtitles/emacsconf-2020--01-emacs-news-highlights--sacha-chua.vtt
index 99ebf96c..99ebf96c 100644
--- a/2020/subtitles/emacsconf-2020-01--emacs-news-highlights--sacha-chua.vtt
+++ b/2020/subtitles/emacsconf-2020--01-emacs-news-highlights--sacha-chua.vtt
diff --git a/2020/subtitles/emacsconf-2020-02--an-emacs-developer-story-from-user-to-package-maintainer--leo-vivier.vtt b/2020/subtitles/emacsconf-2020--02-an-emacs-developer-story-from-user-to-package-maintainer--leo-vivier.vtt
index a591af7d..a591af7d 100644
--- a/2020/subtitles/emacsconf-2020-02--an-emacs-developer-story-from-user-to-package-maintainer--leo-vivier.vtt
+++ b/2020/subtitles/emacsconf-2020--02-an-emacs-developer-story-from-user-to-package-maintainer--leo-vivier.vtt
diff --git a/2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux.sbv b/2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux.sbv
new file mode 100644
index 00000000..db5fd2e7
--- /dev/null
+++ b/2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux.sbv
@@ -0,0 +1,1251 @@
+0:00:01.360,0:00:07.279
+hello my name is grant shangri
+
+0:00:04.480,0:00:07.919
+this is my talk titled bard beavermax
+
+0:00:07.279,0:00:10.719
+publishing
+
+0:00:07.919,0:00:12.799
+music with emacs i'm a software
+
+0:00:10.719,0:00:14.400
+developer with unabridged software in
+
+0:00:12.799,0:00:16.800
+lincoln nebraska
+
+0:00:14.400,0:00:18.720
+long time emacs user relatively new
+
+0:00:16.800,0:00:20.480
+emacs hacker
+
+0:00:18.720,0:00:22.960
+and uh hopefully i'll be able to show
+
+0:00:20.480,0:00:30.480
+you my workflow with
+
+0:00:22.960,0:00:33.440
+how i publish music with emacs
+
+0:00:30.480,0:00:35.520
+all right so as a musician i would like
+
+0:00:33.440,0:00:37.200
+to publish my music online
+
+0:00:35.520,0:00:39.040
+you know i could publish with popular
+
+0:00:37.200,0:00:42.000
+online music services
+
+0:00:39.040,0:00:44.719
+but i'm more of a diy type so i chose to
+
+0:00:42.000,0:00:48.160
+go ahead and publish with emacs
+
+0:00:44.719,0:00:49.760
+so what's the motivation behind this
+
+0:00:48.160,0:00:51.600
+a lot of it comes down to some
+
+0:00:49.760,0:00:54.960
+fundamental freedoms
+
+0:00:51.600,0:00:57.920
+that you know emacs gnu software
+
+0:00:54.960,0:00:59.120
+kind of represent to me as well as kind
+
+0:00:57.920,0:01:01.840
+of my
+
+0:00:59.120,0:01:03.680
+ideas on culture and my background i
+
+0:01:01.840,0:01:04.080
+don't believe that music is a consumer
+
+0:01:03.680,0:01:06.080
+good
+
+0:01:04.080,0:01:08.320
+um it's a form of knowledge like an
+
+0:01:06.080,0:01:10.479
+algorithm
+
+0:01:08.320,0:01:13.119
+and it's just like such a part of
+
+0:01:10.479,0:01:16.640
+culture like in tribal cultures music
+
+0:01:13.119,0:01:18.000
+was seen as a gift from the cosmos or
+
+0:01:16.640,0:01:19.920
+the gods and it was
+
+0:01:18.000,0:01:21.920
+a gift maybe through an individual
+
+0:01:19.920,0:01:23.520
+vessel but was shared with the people
+
+0:01:21.920,0:01:26.799
+and shared with everyone
+
+0:01:23.520,0:01:29.840
+kept alive by the culture itself
+
+0:01:26.799,0:01:31.520
+and so to me music is something that
+
+0:01:29.840,0:01:34.640
+should be shared and should be
+
+0:01:31.520,0:01:36.560
+freely enjoyed by everyone of course
+
+0:01:34.640,0:01:39.040
+artists should be compensated as well
+
+0:01:36.560,0:01:41.040
+but that's a whole different topic
+
+0:01:39.040,0:01:42.720
+and so when i want to share my music i
+
+0:01:41.040,0:01:43.520
+want to do it without impacting anyone's
+
+0:01:42.720,0:01:45.680
+freedom
+
+0:01:43.520,0:01:48.960
+using gnu software like emacs is a good
+
+0:01:45.680,0:01:48.960
+way that i can ensure that
+
+0:01:49.200,0:01:55.840
+i won't be requiring people to
+
+0:01:52.840,0:01:57.119
+uh sign away their freedoms for anything
+
+0:01:55.840,0:01:58.799
+there's a lot more i could say about
+
+0:01:57.119,0:02:00.960
+this but i don't have time
+
+0:01:58.799,0:02:03.439
+feel free to reach out to me by email or
+
+0:02:00.960,0:02:06.479
+irc
+
+0:02:03.439,0:02:08.239
+um and part of the motivation for me
+
+0:02:06.479,0:02:10.720
+personally is that emacs is super
+
+0:02:08.239,0:02:12.720
+magical it's an all-in-one solution
+
+0:02:10.720,0:02:14.480
+like i said the gnu software aligns with
+
+0:02:12.720,0:02:16.800
+creative commons ideas
+
+0:02:14.480,0:02:18.879
+i can do file management i can author
+
+0:02:16.800,0:02:20.239
+html all the web stuff i need even
+
+0:02:18.879,0:02:22.640
+illiterate style
+
+0:02:20.239,0:02:24.640
+i can handle media and metadata i've got
+
+0:02:22.640,0:02:26.800
+version control remote server access
+
+0:02:24.640,0:02:28.080
+all the tools i need are right under my
+
+0:02:26.800,0:02:30.000
+fingertips with this
+
+0:02:28.080,0:02:31.440
+tool that i use every day for a long
+
+0:02:30.000,0:02:34.319
+time i don't need to look
+
+0:02:31.440,0:02:36.319
+elsewhere and it was a challenge i
+
+0:02:34.319,0:02:39.440
+wanted to see if i could do this
+
+0:02:36.319,0:02:41.680
+all within emacs itself so
+
+0:02:39.440,0:02:43.440
+how do you use emacs to publish music
+
+0:02:41.680,0:02:45.120
+well for me i needed
+
+0:02:43.440,0:02:46.480
+a couple of things i needed to be able
+
+0:02:45.120,0:02:48.319
+to audition unlabel
+
+0:02:46.480,0:02:50.000
+unlabeled audio tracks i have a lot of
+
+0:02:48.319,0:02:51.280
+files that i don't know where they
+
+0:02:50.000,0:02:53.840
+came from i don't know what they are i
+
+0:02:51.280,0:02:56.800
+need to be able to listen to them
+
+0:02:53.840,0:02:58.480
+and i need to be able to add metadata to
+
+0:02:56.800,0:03:00.800
+whatever audio format it is
+
+0:02:58.480,0:03:03.200
+and rename the files based on that
+
+0:03:00.800,0:03:05.120
+metadata potentially
+
+0:03:03.200,0:03:07.040
+and in the end i wanted to take those
+
+0:03:05.120,0:03:08.319
+files and programmatically produce a web
+
+0:03:07.040,0:03:11.920
+page
+
+0:03:08.319,0:03:14.159
+for people to consume i found out that
+
+0:03:11.920,0:03:14.879
+emacs scores a hundred percent on all of
+
+0:03:14.159,0:03:18.000
+these
+
+0:03:14.879,0:03:20.720
+requirements that i had for this and
+
+0:03:18.000,0:03:22.640
+a lot of that came from emms the emacs
+
+0:03:20.720,0:03:26.080
+multimedia system
+
+0:03:22.640,0:03:27.760
+um emms is is great um
+
+0:03:26.080,0:03:30.000
+if you haven't checked it out please do
+
+0:03:27.760,0:03:32.959
+it's a little bit unintuitive but
+
+0:03:30.000,0:03:34.000
+once you get into it you know it works
+
+0:03:32.959,0:03:36.640
+um
+
+0:03:34.000,0:03:38.720
+and basically what emms gave me was the
+
+0:03:36.640,0:03:39.680
+ability to listen to the tracks organize
+
+0:03:38.720,0:03:41.280
+playlists
+
+0:03:39.680,0:03:42.959
+and on top of that it gave me super
+
+0:03:41.280,0:03:45.040
+powered metadata authoring
+
+0:03:42.959,0:03:47.200
+and i'm going to demonstrate that to you
+
+0:03:45.040,0:03:50.879
+so in order to do this
+
+0:03:47.200,0:03:54.879
+you have to require markable playlists
+
+0:03:50.879,0:03:58.720
+so require ems mark and so i'm going to
+
+0:03:54.879,0:03:58.720
+go through and i'm going to open the red
+
+0:03:59.680,0:04:04.480
+i've got this this these files here so
+
+0:04:02.319,0:04:06.080
+you can see these files are mp3s
+
+0:04:04.480,0:04:07.599
+um they're recorded on a digital
+
+0:04:06.080,0:04:09.920
+recorder
+
+0:04:07.599,0:04:11.760
+um if i had the choice i would have a
+
+0:04:09.920,0:04:12.319
+recorder that used a different format
+
+0:04:11.760,0:04:14.640
+but
+
+0:04:12.319,0:04:16.160
+so be it so i can mark all these files
+
+0:04:14.640,0:04:20.000
+and i can do ems
+
+0:04:16.160,0:04:22.880
+add to red and now they've been loaded
+
+0:04:20.000,0:04:22.880
+into a playlist
+
+0:04:27.040,0:04:30.400
+so you can see the playlist here there's
+
+0:04:29.040,0:04:32.000
+some leftover files
+
+0:04:30.400,0:04:33.759
+so i've got these three files in my
+
+0:04:32.000,0:04:34.639
+playlist and as you can see it's just
+
+0:04:33.759,0:04:36.800
+the file name
+
+0:04:34.639,0:04:38.560
+the path i don't have any metadata
+
+0:04:36.800,0:04:41.360
+associated with them
+
+0:04:38.560,0:04:43.440
+in this playlist i can hit e capital e
+
+0:04:41.360,0:04:47.360
+and it'll bring up a buffer showing
+
+0:04:43.440,0:04:49.840
+um the tag information that i have
+
+0:04:47.360,0:04:51.520
+and so i could edit these here and i
+
+0:04:49.840,0:04:53.919
+could edit them one at a time but that's
+
+0:04:51.520,0:04:57.440
+not really great i want superpower
+
+0:04:53.919,0:05:00.320
+metadata authoring so
+
+0:04:57.440,0:05:00.320
+by marking them
+
+0:05:04.479,0:05:08.479
+by marking them i can then hit e and i
+
+0:05:07.680,0:05:10.479
+have
+
+0:05:08.479,0:05:12.639
+all three of the tracks loaded up in
+
+0:05:10.479,0:05:15.759
+this tags buffer
+
+0:05:12.639,0:05:18.800
+on top of that i can do emms
+
+0:05:15.759,0:05:22.840
+tag editor set all ctrl c control
+
+0:05:18.800,0:05:25.680
+r and i want to set the artist
+
+0:05:22.840,0:05:26.320
+so these are some recordings of my
+
+0:05:25.680,0:05:31.039
+family
+
+0:05:26.320,0:05:35.600
+so shangri-lux set all three of them
+
+0:05:31.039,0:05:40.160
+i want to set the album um
+
+0:05:35.600,0:05:43.600
+spring walk with lap harp
+
+0:05:40.160,0:05:43.600
+and i want to set the year
+
+0:05:45.520,0:05:50.840
+and then i'm going to go ahead and put
+
+0:05:48.960,0:05:53.759
+these in
+
+0:05:50.840,0:05:55.840
+manually
+
+0:05:53.759,0:05:57.039
+but with the power of emacs keyboard
+
+0:05:55.840,0:05:59.600
+macros and
+
+0:05:57.039,0:06:02.319
+registers and so on i could do this
+
+0:05:59.600,0:06:04.000
+programmatically as well
+
+0:06:02.319,0:06:06.000
+which would make it a lot easier if i
+
+0:06:04.000,0:06:07.440
+hadn't met much more than three files to
+
+0:06:06.000,0:06:09.919
+do this with
+
+0:06:07.440,0:06:11.520
+submit the changes with ctrl c ctrl c
+
+0:06:09.919,0:06:13.120
+and now we've got the playlist you can
+
+0:06:11.520,0:06:15.039
+see the artist and track number have
+
+0:06:13.120,0:06:17.360
+been updated here
+
+0:06:15.039,0:06:19.039
+and then the final piece of this is that
+
+0:06:17.360,0:06:20.479
+if you look at this you can see that the
+
+0:06:19.039,0:06:22.639
+file name is still the same
+
+0:06:20.479,0:06:24.560
+so if i were looking to the directory i
+
+0:06:22.639,0:06:26.479
+would still have this file name
+
+0:06:24.560,0:06:28.000
+when packaging these up for a release
+
+0:06:26.479,0:06:30.319
+for people to download
+
+0:06:28.000,0:06:32.400
+it's nice to be able to have that file
+
+0:06:30.319,0:06:34.800
+name reflect the track number and the
+
+0:06:32.400,0:06:35.680
+artist and so on so there's another
+
+0:06:34.800,0:06:38.240
+command
+
+0:06:35.680,0:06:38.240
+mms
+
+0:06:41.199,0:06:45.120
+rename tag editor rename so it could be
+
+0:06:44.160,0:06:47.199
+just capital r
+
+0:06:45.120,0:06:48.880
+i think i need to mark all of these hit
+
+0:06:47.199,0:06:50.000
+capital r and then it's going to ask me
+
+0:06:48.880,0:06:53.599
+to confirm
+
+0:06:50.000,0:06:53.599
+and say yes to all of them
+
+0:06:54.400,0:07:04.319
+and now if you look in the dread
+
+0:07:02.720,0:07:06.319
+whoops i have to update it you'll see
+
+0:07:04.319,0:07:09.840
+it's been updated with the artist
+
+0:07:06.319,0:07:11.120
+the name track and track number and
+
+0:07:09.840,0:07:14.639
+track name
+
+0:07:11.120,0:07:17.360
+um so this format is a format string so
+
+0:07:14.639,0:07:20.479
+it's customizable of course
+
+0:07:17.360,0:07:21.039
+i just decided to go with the default so
+
+0:07:20.479,0:07:24.160
+that's
+
+0:07:21.039,0:07:26.000
+pretty great this workflow
+
+0:07:24.160,0:07:28.080
+just with emms i didn't have to do
+
+0:07:26.000,0:07:30.960
+anything this is all there it's all
+
+0:07:28.080,0:07:32.639
+all built in um it gave me exactly what
+
+0:07:30.960,0:07:35.599
+i was looking for in terms of being able
+
+0:07:32.639,0:07:37.599
+to process a lot of raw audio files
+
+0:07:35.599,0:07:39.280
+add metadata to them and get them ready
+
+0:07:37.599,0:07:41.599
+for publishing
+
+0:07:39.280,0:07:43.520
+and this is for publishing for playback
+
+0:07:41.599,0:07:44.879
+in any media player it'll it'll be
+
+0:07:43.520,0:07:46.560
+useful
+
+0:07:44.879,0:07:48.479
+not just for the web page that i'm
+
+0:07:46.560,0:07:50.560
+building so the
+
+0:07:48.479,0:07:53.440
+final part of course is um to build the
+
+0:07:50.560,0:07:54.960
+web page and emacs makes authoring html
+
+0:07:53.440,0:07:57.440
+trivial
+
+0:07:54.960,0:07:59.039
+like as i was going through this i
+
+0:07:57.440,0:08:00.400
+wanted to challenge myself and just be
+
+0:07:59.039,0:08:03.120
+like can i do this with all
+
+0:08:00.400,0:08:03.520
+just all with emacs like can i just make
+
+0:08:03.120,0:08:05.440
+this
+
+0:08:03.520,0:08:07.039
+i don't need a i don't need ruby i don't
+
+0:08:05.440,0:08:08.960
+need rails i don't need node i don't
+
+0:08:07.039,0:08:10.560
+need any of this other stuff i have my
+
+0:08:08.960,0:08:12.560
+tool right here it's a fully
+
+0:08:10.560,0:08:15.039
+it's a whole operating system basically
+
+0:08:12.560,0:08:17.360
+plus programming languages
+
+0:08:15.039,0:08:19.919
+so the first thing i started with was
+
+0:08:17.360,0:08:22.560
+buffer scripting for manipulating text
+
+0:08:19.919,0:08:24.319
+that's kind of the easiest way to do it
+
+0:08:22.560,0:08:25.280
+and basically anything you can do in a
+
+0:08:24.319,0:08:28.479
+buffer you can do
+
+0:08:25.280,0:08:30.319
+programmatically with e-lisp so this
+
+0:08:28.479,0:08:33.919
+might be a good example for beginners if
+
+0:08:30.319,0:08:36.000
+you haven't done any e-lisp yet
+
+0:08:33.919,0:08:36.959
+like a simple example is to create this
+
+0:08:36.000,0:08:40.000
+this div
+
+0:08:36.959,0:08:41.760
+output here i can you
+
+0:08:40.000,0:08:44.240
+can use this with temp buffer so
+
+0:08:41.760,0:08:46.640
+basically creating an imaginary buffer
+
+0:08:44.240,0:08:48.800
+insert is just like typing so you put
+
+0:08:46.640,0:08:50.959
+strings in you put new lines in
+
+0:08:48.800,0:08:52.080
+can cap build some strings together and
+
+0:08:50.959,0:08:54.000
+here you can see i'm
+
+0:08:52.080,0:08:55.360
+i'm doing a random number so every time
+
+0:08:54.000,0:08:57.920
+i execute this
+
+0:08:55.360,0:09:01.040
+my content changes so i can generate
+
+0:08:57.920,0:09:04.399
+dynamic content in html blocks
+
+0:09:01.040,0:09:05.920
+with e-lisp for my
+
+0:09:04.399,0:09:08.000
+web page builder it's a little more
+
+0:09:05.920,0:09:12.080
+complex i'm pulling data out
+
+0:09:08.000,0:09:15.440
+using emms data structures
+
+0:09:12.080,0:09:16.080
+so it's pulling that out from the track
+
+0:09:15.440,0:09:18.720
+data
+
+0:09:16.080,0:09:19.440
+and then i'm i'm using some program
+
+0:09:18.720,0:09:21.440
+program to
+
+0:09:19.440,0:09:23.200
+generate list elements so each track is
+
+0:09:21.440,0:09:25.120
+going to have the title
+
+0:09:23.200,0:09:26.959
+and track number and then a button for
+
+0:09:25.120,0:09:29.519
+playing it plus the source
+
+0:09:26.959,0:09:30.480
+of the audio file which will get added
+
+0:09:29.519,0:09:32.640
+here
+
+0:09:30.480,0:09:34.839
+right now this is hard coded for opus so
+
+0:09:32.640,0:09:37.200
+it won't work for my
+
+0:09:34.839,0:09:39.120
+mp3s um
+
+0:09:37.200,0:09:41.200
+i'm going to skip over snippets turns
+
+0:09:39.120,0:09:45.519
+out format strings were good enough
+
+0:09:41.200,0:09:48.160
+for me um snippets could be useful but
+
+0:09:45.519,0:09:49.839
+format is super powerful and i didn't
+
+0:09:48.160,0:09:51.279
+really even need all that much power
+
+0:09:49.839,0:09:53.519
+basically just doing string
+
+0:09:51.279,0:09:54.560
+interpolation so if you haven't seen
+
+0:09:53.519,0:09:56.720
+format before
+
+0:09:54.560,0:09:59.120
+you basically put these control strings
+
+0:09:56.720,0:10:03.120
+or control characters inside of a string
+
+0:09:59.120,0:10:05.040
+and you can generate you can generate an
+
+0:10:03.120,0:10:07.600
+output string that you want
+
+0:10:05.040,0:10:08.720
+so in my generator code basically it's
+
+0:10:07.600,0:10:10.959
+down here
+
+0:10:08.720,0:10:12.800
+um i'm calling format with this sparred
+
+0:10:10.959,0:10:15.920
+vivomax template
+
+0:10:12.800,0:10:18.240
+and that's basically a big
+
+0:10:15.920,0:10:20.399
+a big string of html it's just each you
+
+0:10:18.240,0:10:21.200
+know my whole page of html with a couple
+
+0:10:20.399,0:10:22.959
+places
+
+0:10:21.200,0:10:24.399
+with those control characters in just
+
+0:10:22.959,0:10:26.399
+four places
+
+0:10:24.399,0:10:29.760
+and one of them populates the track list
+
+0:10:26.399,0:10:32.079
+that's really the meat of the program
+
+0:10:29.760,0:10:33.440
+and again this is a combination of using
+
+0:10:32.079,0:10:36.640
+buffer scripting
+
+0:10:33.440,0:10:37.279
+using html mode inserting text format
+
+0:10:36.640,0:10:40.000
+strings
+
+0:10:37.279,0:10:41.920
+and then i can indent region so the html
+
+0:10:40.000,0:10:45.200
+actually looks pretty
+
+0:10:41.920,0:10:50.160
+when it comes out of it as well
+
+0:10:45.200,0:10:52.560
+um i will show that just really quick
+
+0:10:50.160,0:10:52.560
+actually
+
+0:10:54.000,0:10:58.800
+so you can see this is the html that got
+
+0:10:56.880,0:11:02.560
+generated i've got my template
+
+0:10:58.800,0:11:05.760
+i inserted the title here the style the
+
+0:11:02.560,0:11:07.920
+font was all inserted
+
+0:11:05.760,0:11:11.200
+and then this whole list of of tracks
+
+0:11:07.920,0:11:14.399
+here it's kind of messy to look at
+
+0:11:11.200,0:11:15.920
+but this track list this whole div here
+
+0:11:14.399,0:11:18.560
+is all generated by
+
+0:11:15.920,0:11:20.800
+my generator code and it works it's
+
+0:11:18.560,0:11:20.800
+great
+
+0:11:22.480,0:11:26.160
+okay moving on
+
+0:11:27.120,0:11:32.079
+um so the other thing was that as i was
+
+0:11:30.240,0:11:33.200
+developing this i decided to use ort
+
+0:11:32.079,0:11:35.360
+babel and some of his
+
+0:11:33.200,0:11:36.880
+its features um for multi-language
+
+0:11:35.360,0:11:37.839
+things because i needed to style it with
+
+0:11:36.880,0:11:40.480
+css and
+
+0:11:37.839,0:11:42.480
+and put actions in javascript and also i
+
+0:11:40.480,0:11:45.519
+used svg for authoring stuff
+
+0:11:42.480,0:11:46.079
+um and it was a little bit complicated i
+
+0:11:45.519,0:11:47.680
+probably
+
+0:11:46.079,0:11:49.600
+probably would have been simpler had i
+
+0:11:47.680,0:11:51.440
+not used org babble but it's also really
+
+0:11:49.600,0:11:53.839
+fun and it's i think it's a cool
+
+0:11:51.440,0:11:55.839
+cool idea to use literate programming my
+
+0:11:53.839,0:11:57.600
+idea was to create kind of like html
+
+0:11:55.839,0:11:59.519
+components like i could name it like
+
+0:11:57.600,0:12:01.440
+this
+
+0:11:59.519,0:12:02.800
+put a format string inside it and build
+
+0:12:01.440,0:12:05.519
+a function
+
+0:12:02.800,0:12:07.120
+in e-lisp to format it and spit out the
+
+0:12:05.519,0:12:10.320
+html that i want
+
+0:12:07.120,0:12:12.880
+and by doing this then i can like uh
+
+0:12:10.320,0:12:14.320
+just change things in my org file which
+
+0:12:12.880,0:12:16.959
+not getting a whole lot of time to work
+
+0:12:14.320,0:12:19.839
+on it i can come back to it and
+
+0:12:16.959,0:12:21.920
+i have a lot of notes and i can i can
+
+0:12:19.839,0:12:24.399
+kind of generate things as i'm going and
+
+0:12:21.920,0:12:25.600
+keep notes for myself and keep the
+
+0:12:24.399,0:12:27.519
+i don't know it's cool literate
+
+0:12:25.600,0:12:29.279
+programming is fun um so i don't need to
+
+0:12:27.519,0:12:31.040
+go into that too much but you can see if
+
+0:12:29.279,0:12:33.360
+i execute this here
+
+0:12:31.040,0:12:34.880
+i get the the div that i want um it's a
+
+0:12:33.360,0:12:36.480
+little bit funny you'll see i have the
+
+0:12:34.880,0:12:39.200
+string like this the way that
+
+0:12:36.480,0:12:40.000
+no web expands i can't do this on a
+
+0:12:39.200,0:12:43.839
+single line
+
+0:12:40.000,0:12:45.440
+it it it looks funny when you do that
+
+0:12:43.839,0:12:48.560
+so that might be something to work out
+
+0:12:45.440,0:12:48.959
+later css blocks can either be tangled
+
+0:12:48.560,0:12:51.680
+out
+
+0:12:48.959,0:12:52.639
+and referenced in the html source or
+
+0:12:51.680,0:12:54.639
+inlined
+
+0:12:52.639,0:12:56.959
+here's an example i have of inlining it
+
+0:12:54.639,0:13:00.320
+so i've got my little css block name
+
+0:12:56.959,0:13:03.040
+style javascript name script
+
+0:13:00.320,0:13:04.839
+and then i've got this html source block
+
+0:13:03.040,0:13:07.519
+with no web
+
+0:13:04.839,0:13:07.920
+expansion um these double angle brackets
+
+0:13:07.519,0:13:09.839
+here
+
+0:13:07.920,0:13:11.680
+are where i'm going to expand the block
+
+0:13:09.839,0:13:12.639
+name style i'm actually calling a
+
+0:13:11.680,0:13:14.399
+function
+
+0:13:12.639,0:13:17.040
+so i want the result of the function
+
+0:13:14.399,0:13:20.560
+here and then the script will just get
+
+0:13:17.040,0:13:22.959
+expanded here so or babel expand source
+
+0:13:20.560,0:13:25.360
+block
+
+0:13:22.959,0:13:28.160
+you can see what it looks like you know
+
+0:13:25.360,0:13:29.920
+i've got my style here i've got my title
+
+0:13:28.160,0:13:31.279
+i've got that main content class i
+
+0:13:29.920,0:13:33.040
+showed before
+
+0:13:31.279,0:13:34.480
+and the script as well so that's kind of
+
+0:13:33.040,0:13:36.320
+cool like
+
+0:13:34.480,0:13:38.160
+i could just run org babel tangle and
+
+0:13:36.320,0:13:40.480
+get my thing out and just
+
+0:13:38.160,0:13:41.600
+edit one file instead of multiple files
+
+0:13:40.480,0:13:45.120
+not for everyone
+
+0:13:41.600,0:13:45.120
+but i i thought it was kind of fun
+
+0:13:45.839,0:13:49.199
+all right oh and the final thing is that
+
+0:13:47.760,0:13:52.880
+in emacs you can
+
+0:13:49.199,0:13:57.199
+author and view svg so this is just an
+
+0:13:52.880,0:13:59.519
+org um this svg i used to make the play
+
+0:13:57.199,0:14:02.800
+and pause buttons but i didn't know this
+
+0:13:59.519,0:14:04.959
+but if you edit an svg file you can
+
+0:14:02.800,0:14:07.360
+toggle back and forth
+
+0:14:04.959,0:14:07.360
+between
+
+0:14:08.800,0:14:13.120
+between the code and the and the image
+
+0:14:13.199,0:14:17.360
+it's pretty sweet so i can kind of
+
+0:14:16.160,0:14:19.680
+iteratively work
+
+0:14:17.360,0:14:20.560
+work through this because of of how
+
+0:14:19.680,0:14:24.480
+emacs is
+
+0:14:20.560,0:14:24.959
+like that so um final considerations
+
+0:14:24.480,0:14:27.360
+here
+
+0:14:24.959,0:14:29.279
+like when doing this i want it to be all
+
+0:14:27.360,0:14:30.079
+free so i want to use fonts that use a
+
+0:14:29.279,0:14:32.800
+free license
+
+0:14:30.079,0:14:34.800
+i found gnu unifont it's kind of cool
+
+0:14:32.800,0:14:37.600
+the content license i chose
+
+0:14:34.800,0:14:39.920
+creative commons attribution share like
+
+0:14:37.600,0:14:42.880
+which is kind of like the gpl
+
+0:14:39.920,0:14:44.800
+ideally i could serve it with emacs i'd
+
+0:14:42.880,0:14:46.320
+like to remove idiosyncrasy so other
+
+0:14:44.800,0:14:48.720
+people can use it
+
+0:14:46.320,0:14:51.040
+it's pretty much just my tool right now
+
+0:14:48.720,0:14:51.440
+um not requiring the web browser i can
+
+0:14:51.040,0:14:54.079
+ship
+
+0:14:51.440,0:14:54.480
+playlists so that you can just you know
+
+0:14:54.079,0:14:58.000
+click
+
+0:14:54.480,0:15:00.639
+or link to a playlist on your favorite
+
+0:14:58.000,0:15:02.639
+player even emms if you want and then
+
+0:15:00.639,0:15:04.320
+packing up those albums in like a zip or
+
+0:15:02.639,0:15:08.639
+tar file
+
+0:15:04.320,0:15:10.880
+so um you can go to churls.world
+
+0:15:08.639,0:15:14.000
+it just has a link to this album i'll
+
+0:15:10.880,0:15:17.519
+display it here in just a second
+
+0:15:14.000,0:15:21.040
+you can contact me i'm shosheen on emacs
+
+0:15:17.519,0:15:23.680
+in irc and on sourcehut you can email me
+
+0:15:21.040,0:15:26.800
+grant at charles world personal or grant
+
+0:15:23.680,0:15:28.320
+on a bridge software all right now let's
+
+0:15:26.800,0:15:32.000
+see
+
+0:15:28.320,0:15:32.000
+about this
+
+0:15:32.079,0:15:35.120
+this is up online so if you want to
+
+0:15:33.680,0:15:39.199
+listen to my
+
+0:15:35.120,0:15:43.040
+college band's album from 20 years ago
+
+0:15:39.199,0:15:47.680
+here it is cassiopeia basement days
+
+0:15:43.040,0:15:48.000
+whoops i made this art in krita you can
+
+0:15:47.680,0:15:51.199
+press
+
+0:15:48.000,0:15:55.040
+play you can skip around
+
+0:15:51.199,0:15:58.560
+i did i do have the playlist up here too
+
+0:15:55.040,0:16:00.880
+so yeah thanks for listening
+
+0:15:58.560,0:16:04.000
+i hope you enjoyed it and enjoy the rest
+
+0:16:00.880,0:16:04.000
+of emacs conf
+
+0:16:04.360,0:16:07.360
+goodbye
+
diff --git a/2020/subtitles/emacsconf-2020-06--trivial-emacs-kits--corwin-brust.vtt b/2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt
index b1659d7e..b1659d7e 100644
--- a/2020/subtitles/emacsconf-2020-06--trivial-emacs-kits--corwin-brust.vtt
+++ b/2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt
diff --git a/2020/subtitles/emacsconf-2020-01--emacs-news-highlights--sacha-chua.srt b/2020/subtitles/emacsconf-2020-01--emacs-news-highlights--sacha-chua.srt
deleted file mode 100644
index 9dd804ea..00000000
--- a/2020/subtitles/emacsconf-2020-01--emacs-news-highlights--sacha-chua.srt
+++ /dev/null
@@ -1,503 +0,0 @@
-1
-0:00:00,000 --> 0:00:04,000
-I'm Sacha Chua, and welcome to EmacsConf 2020.
-
-
-2
-0:00:04,000 --> 0:00:07,000
-To kick things off, here are ten cool things
-
-
-3
-0:00:07,000 --> 0:00:08,000
-that people have been working on
-
-
-4
-0:00:08,000 --> 0:00:10,000
-since the conference last year.
-
-
-5
-0:00:10,000 --> 0:00:11,000
-If you want to follow the links
-
-
-6
-0:00:11,000 --> 0:00:14,000
-or if you'd like to add something I've missed,
-
-
-7
-0:00:14,000 --> 0:00:16,000
-add them to the collaborative pad
-
-
-8
-0:00:16,000 --> 0:00:17,000
-if you're watching this live
-
-
-9
-0:00:17,000 --> 0:00:20,000
-or check out the EmacsConf wiki page for this talk.
-
-
-10
-0:00:20,000 --> 0:00:24,000
-The big news this year was the release of Emacs 27.1,
-
-
-11
-0:00:24,000 --> 0:00:27,000
-a little over two years after Emacs 26.
-
-
-12
-0:00:27,000 --> 0:00:31,000
-Mickey Petersen's notes on the release are a great way
-
-
-13
-0:00:31,000 --> 0:00:32,000
-to find out what's new,
-
-
-14
-0:00:32,000 --> 0:00:34,000
-and John Wiegley's development update tomorrow
-
-
-15
-0:00:34,000 --> 0:00:36,000
-will probably give more details.
-
-
-16
-0:00:36,000 --> 0:00:39,000
-What's coming up for Emacs 28 and beyond?
-
-
-17
-0:00:39,000 --> 0:00:40,000
-One of the branches that people are
-
-
-18
-0:00:40,000 --> 0:00:44,000
-excited about is gccemacs, which compiles
-
-
-19
-0:00:44,000 --> 0:00:48,000
-Emacs Lisp to native code so that it runs faster.
-
-
-20
-0:00:48,000 --> 0:00:50,000
-To learn more, check out the Bringing GNU Emacs to Native Code
-
-
-21
-0:00:50,000 --> 0:00:55,000
-presentation from the European Lisp Symposium.
-
-
-22
-0:00:55,000 --> 0:00:56,000
-There was a huge conversation about
-
-
-23
-0:00:56,000 --> 0:00:59,000
-modernizing Emacs on emacs-devel and other places.
-
-
-24
-0:00:59,000 --> 0:01:02,000
-Linux Weekly News has a good summary.
-
-
-25
-0:01:02,000 --> 0:01:04,000
-One of the interesting sub-threads on emacs-devel
-
-
-26
-0:01:04,000 --> 0:01:06,000
-was about using more variable-width fonts,
-
-
-27
-0:01:06,000 --> 0:01:08,000
-which would probably go a long way to
-
-
-28
-0:01:08,000 --> 0:01:11,000
-making Emacs look pretty fancy once people
-
-
-29
-0:01:11,000 --> 0:01:13,000
-sort out the alignment issues.
-
-
-30
-0:01:13,000 --> 0:01:15,000
-It looks like core Emacs will probably
-
-
-31
-0:01:15,000 --> 0:01:18,000
-change slowly in terms of functionality and documentation,
-
-
-32
-0:01:18,000 --> 0:01:21,000
-but starter kits and configuration give people
-
-
-33
-0:01:21,000 --> 0:01:22,000
-a great way to experiment.
-
-
-34
-0:01:22,000 --> 0:01:24,000
-Speaking of starter kits,
-
-
-35
-0:01:24,000 --> 0:01:27,000
-Doom Emacs seems to be growing in popularity.
-
-
-36
-0:01:27,000 --> 0:01:28,000
-It got a big boost thanks to DoomCasts and
-
-
-37
-0:01:28,000 --> 0:01:32,000
-DistroTube videos. So if you're curious,
-
-
-38
-0:01:32,000 --> 0:01:35,000
-go ahead and check those out.
-
-
-39
-0:01:35,000 --> 0:01:37,000
-And for general Emacs topics,
-
-
-40
-0:01:37,000 --> 0:01:38,000
-there have been a ton of other great videos
-
-
-41
-0:01:38,000 --> 0:01:42,000
-from Protesilaos Stavrou, Mike Zamansky, System Crafters,
-
-
-42
-0:01:42,000 --> 0:01:45,000
-and other folks. Good stuff.
-
-
-43
-0:01:45,000 --> 0:01:46,000
-Org continues to be a big reason
-
-
-44
-0:01:46,000 --> 0:01:48,000
-for people to get into Emacs.
-
-
-45
-0:01:48,000 --> 0:01:50,000
-This year, Zettelkasten-based workflows
-
-
-46
-0:01:50,000 --> 0:01:52,000
-became popular as people played around
-
-
-47
-0:01:52,000 --> 0:01:55,000
-with organizing ideas into small chunks
-
-
-48
-0:01:55,000 --> 0:01:57,000
-that are linked to each other.
-
-
-49
-0:01:57,000 --> 0:01:59,000
-org-roam is one of the packages for doing that
-
-
-50
-0:01:59,000 --> 0:02:02,000
-and there are three presentations about it this year.
-
-
-51
-0:02:02,000 --> 0:02:04,000
-There are also non-Org ways to do it,
-
-
-52
-0:02:04,000 --> 0:02:07,000
-such as zetteldeft, neuron-mode, and more.
-
-
-53
-0:02:07,000 --> 0:02:08,000
-People have been experimenting
-
-
-54
-0:02:08,000 --> 0:02:09,000
-with Org's appearance.
-
-
-55
-0:02:09,000 --> 0:02:12,000
-Check these screenshots out for some ideas.
-
-
-56
-0:02:12,000 --> 0:02:14,000
-Coding: Faster JSON processing
-
-
-57
-0:02:14,000 --> 0:02:15,000
-is going to make working with
-
-
-58
-0:02:15,000 --> 0:02:17,000
-code analysis tools better.
-
-
-59
-0:02:17,000 --> 0:02:21,000
-LSP-mode released version 7 and gained more contributors, too,
-
-
-60
-0:02:21,000 --> 0:02:23,000
-so there are probably exciting times ahead
-
-
-61
-0:02:23,000 --> 0:02:24,000
-for making Emacs even more of an
-
-
-62
-0:02:24,000 --> 0:02:26,000
-integrated development environment.
-
-
-63
-0:02:26,000 --> 0:02:30,000
-EAF: The Emacs Application Framework
-
-
-64
-0:02:30,000 --> 0:02:32,000
-has some pretty interesting demos of
-
-
-65
-0:02:32,000 --> 0:02:34,000
-embedded Qt programs in Emacs on Linux.
-
-
-66
-0:02:34,000 --> 0:02:37,000
-Matthew Zeng will give a presentation
-
-
-67
-0:02:37,000 --> 0:02:39,000
-on its architecture and walk through some demos,
-
-
-68
-0:02:39,000 --> 0:02:41,000
-so check that one out too if you want.
-
-
-69
-0:02:41,000 --> 0:02:43,000
-The big real-world change this year
-
-
-70
-0:02:43,000 --> 0:02:47,000
-was COVID-19, of course. It sucks. A lot.
-
-
-71
-0:02:47,000 --> 0:02:49,000
-One good thing that's come out of it
-
-
-72
-0:02:49,000 --> 0:02:52,000
-is that many Emacs meetups have moved online,
-
-
-73
-0:02:52,000 --> 0:02:54,000
-so it's easier to connect with people
-
-
-74
-0:02:54,000 --> 0:02:56,000
-no matter where you are in the world.
-
-
-75
-0:02:56,000 --> 0:03:01,000
-There's one hosted by EmacsATX on December 2
-
-
-76
-0:03:01,000 --> 0:03:03,000
-and it's about re-builder, leaf, and feather.
-
-
-77
-0:03:03,000 --> 0:03:06,000
-EmacsNYC's next meetup is on December 7
-
-
-78
-0:03:06,000 --> 0:03:08,000
-and it's about literate programming with Org Mode.
-
-
-79
-0:03:08,000 --> 0:03:10,000
-The Berlin remote meetup was
-
-
-80
-0:03:10,000 --> 0:03:12,000
-just a few days ago on November 25,
-
-
-81
-0:03:12,000 --> 0:03:15,000
-and EmacsSF and Asia-Pacific
-
-
-82
-0:03:15,000 --> 0:03:17,000
-probably have some coming up, too.
-
-
-83
-0:03:17,000 --> 0:03:18,000
-People generally announce the meetups
-
-
-84
-0:03:18,000 --> 0:03:21,000
-on reddit.com/r/emacs, so you can
-
-
-85
-0:03:21,000 --> 0:03:23,000
-look there for updates.
-
-
-86
-0:03:23,000 --> 0:03:24,000
-If you organize one of these,
-
-
-87
-0:03:24,000 --> 0:03:25,000
-please let me know so that
-
-
-88
-0:03:25,000 --> 0:03:28,000
-I can include it in Emacs News.
-
-
-89
-0:03:28,000 --> 0:03:31,000
-Lastly, there's an unofficial survey of the Emacs community.
-
-
-90
-0:03:31,000 --> 0:03:33,000
-It closes on November 30,
-
-
-91
-0:03:33,000 --> 0:03:34,000
-so if you'd like to participate,
-
-
-92
-0:03:34,000 --> 0:03:37,000
-you can fill out the form at emacssurvey.org
-
-
-93
-0:03:37,000 --> 0:03:39,000
-or send it in via e-mail.
-
-
-94
-0:03:39,000 --> 0:03:42,000
-So those were 10 quick highlights from this year.
-
-
-95
-0:03:42,000 --> 0:03:46,000
-If you're curious, check out the EmacsConf 2020 wiki page
-
-
-96
-0:03:46,000 --> 0:03:47,000
-for this talk so that you can follow the links.
-
-
-97
-0:03:47,000 --> 0:03:49,000
-If you'd like to get updates every week,
-
-
-98
-0:03:49,000 --> 0:03:52,000
-you can check out the Emacs News I put together.
-
-
-99
-0:03:52,000 --> 0:03:55,000
-Feel free to send me cool stuff to include.
-
-
-100
-0:03:55,000 --> 0:03:57,000
-Now on to the rest of EmacsConf!
-
-101
-0:03:57,000 --> 0:03:58,000
-Have fun, and thanks for joining us!
-
diff --git a/2020/subtitles/emacsconf-2020-06--trivial-emacs-kits--corwin-brust.sbv b/2020/subtitles/emacsconf-2020-06--trivial-emacs-kits--corwin-brust.sbv
deleted file mode 100644
index b264fca6..00000000
--- a/2020/subtitles/emacsconf-2020-06--trivial-emacs-kits--corwin-brust.sbv
+++ /dev/null
@@ -1,1002 +0,0 @@
-0:00:00.399,0:00:03.280
-My name is Corwin Brust and I
-
-0:00:03.280,0:00:06.240
-will be talking about getting started
-
-0:00:06.240,0:00:11.200
-with Emacs today.
-
-0:00:08.960,0:00:13.040
-I have been an Emacs user for a long
-
-0:00:11.200,0:00:15.360
-time. First of all, thanks and a huge
-
-0:00:13.040,0:00:18.400
-welcome to the conference
-
-0:00:15.360,0:00:22.400
-from me and
-
-0:00:18.400,0:00:24.720
-and on behalf
-
-0:00:22.400,0:00:26.080
-and back to the other people that
-
-0:00:24.720,0:00:29.920
-have been helping to organize.
-
-0:00:26.080,0:00:30.480
-It's been amazing just to be involved
-
-0:00:30.480,0:00:35.120
-with that and just, kind of, see
-
-0:00:32.480,0:00:35.120
-backstage.
-
-0:00:36.399,0:00:42.960
-So I've used a lot of different editors
-
-0:00:39.680,0:00:45.440
-in my time. That's
-
-0:00:42.960,0:00:48.399
-about 25 years as a professional
-
-0:00:45.440,0:00:48.399
-software engineer.
-
-0:00:52.399,0:00:56.160
-And most of that time I've been using
-
-0:00:53.920,0:01:00.960
-Emacs. I'll talk a little bit in a minute
-
-0:00:56.160,0:01:04.479
-(if I can ever find my slides)
-
-0:01:00.960,0:01:07.200
-about how I got into Emacs
-
-0:01:04.479,0:01:10.240
-but I think if you've used Emacs and a
-
-0:01:07.200,0:01:12.640
-lot of other editors for a long time,
-
-0:01:10.240,0:01:14.960
-something that you notice right away is that
-
-0:01:15.200,0:01:18.560
-you get good with it in a way that stays
-
-0:01:17.520,0:01:20.799
-meaningful.
-
-0:01:18.560,0:01:24.840
-You learn new things. Those things
-
-0:01:20.799,0:01:27.600
-stick with you. You learn how to
-
-0:01:27.600,0:01:30.720
-make it do new tricks and then
-
-0:01:30.720,0:01:36.799
-keep doing those tricks.
-
-0:01:33.759,0:01:39.439
-I want to mention that this
-
-0:01:36.799,0:01:41.439
-conference--oops,
-
-0:01:39.439,0:01:45.600
-this talk isn't about
-
-0:01:41.439,0:01:47.520
-how to adjust your
-
-0:01:45.600,0:01:50.000
-configuration specifically. I don't have
-
-0:01:47.520,0:01:51.520
-a bunch of good code samples in here.
-
-0:01:50.000,0:01:54.399
-There are other great talks at the
-
-0:01:51.520,0:01:57.600
-conference, particularly Andrew's,
-
-0:01:54.399,0:01:59.920
-that I looked at, that looked
-
-0:01:57.600,0:02:01.600
-like they might be more aimed at that
-
-0:01:59.920,0:02:02.240
-"hey, I'm just getting started with Emacs,
-
-0:02:02.240,0:02:07.200
-what are some things to try to make
-
-0:02:05.280,0:02:08.879
-it more comfortable for me starting?" This
-
-0:02:07.200,0:02:09.759
-is about how to think about the problem
-
-0:02:08.879,0:02:12.959
-space.
-
-0:02:09.759,0:02:14.080
-Hopefully, a good warm up as we
-
-0:02:12.959,0:02:17.200
-start thinking about some of the
-
-0:02:14.080,0:02:20.000
-lightning talks a little later on.
-
-0:02:17.200,0:02:22.400
-I'm just gonna quickly make sure I
-
-0:02:20.000,0:02:24.080
-can see my IRC buffer in case I run into
-
-0:02:22.400,0:02:25.680
-time. I didn't get my stopwatch started
-
-0:02:24.080,0:02:29.680
-for this one.
-
-0:02:25.680,0:02:32.879
-So all right, let's dive in.
-
-0:02:29.680,0:02:33.840
-We assume that we want to install
-
-0:02:32.879,0:02:36.560
-packages
-
-0:02:33.840,0:02:38.319
-and maybe configure some features. This
-
-0:02:36.560,0:02:39.120
-is particularly from the perspective of
-
-0:02:38.319,0:02:40.800
-where we're working
-
-0:02:39.120,0:02:42.160
-with a bunch of people on a team and we
-
-0:02:40.800,0:02:44.800
-want to get something done.
-
-0:02:42.160,0:02:46.560
-Some of us probably already have mature
-
-0:02:44.800,0:02:49.280
-Emacs workflows.
-
-0:02:46.560,0:02:50.319
-Others are installing it for the first
-
-0:02:49.280,0:02:53.519
-time.
-
-0:02:53.519,0:02:59.280
-So the first question is, you know,
-
-0:02:56.879,0:03:00.879
-in that context: what's the value
-
-0:02:59.280,0:03:02.840
-proposition? Why should I mess with my
-
-0:03:00.879,0:03:05.599
-machine, my mature Emacs
-
-0:03:02.840,0:03:07.440
-configuration, and impose my
-
-0:03:05.599,0:03:10.239
-ideas over the way somebody else is
-
-0:03:07.440,0:03:12.800
-learning Emacs? Well,
-
-0:03:10.239,0:03:13.840
-it can be.. I'm off my slides here a
-
-0:03:12.800,0:03:16.400
-little bit.
-
-0:03:13.840,0:03:16.959
-It can be a little bit
-
-0:03:16.400,0:03:20.400
-tricky
-
-0:03:16.959,0:03:21.440
-to learn Emacs. One thing that
-
-0:03:20.400,0:03:24.720
-helps us a lot
-
-0:03:21.440,0:03:26.239
-is if people that we're working with
-
-0:03:24.720,0:03:28.080
-can tell us, kinda, keystroke for
-
-0:03:26.239,0:03:30.480
-keystroke at times, what to do and
-
-0:03:28.080,0:03:32.400
-explain what everything is doing.
-
-0:03:30.480,0:03:35.840
-Using the same packages can really
-
-0:03:32.400,0:03:39.840
-help us working together on a project.
-
-0:03:35.840,0:03:40.720
-Speaking from my personal
-
-0:03:39.840,0:03:42.959
-experience,
-
-0:03:40.720,0:03:45.040
-it took me decades to get to the point
-
-0:03:42.959,0:03:46.720
-where I was excited to program in Emacs
-
-0:03:45.040,0:03:47.840
-Lisp. I've programmed in a lot of programming
-
-0:03:46.720,0:03:51.200
-languages,
-
-0:03:47.840,0:03:53.680
-but Lisp wasn't on my list. I looked at
-
-0:03:51.200,0:03:56.319
-my config that I was copy-pasting around
-
-0:03:53.680,0:03:57.519
-from generation after generation of
-
-0:03:56.319,0:03:59.519
-.emacs file or
-
-0:03:57.519,0:04:00.799
-recrafting it from hand and from Internet
-
-0:03:59.519,0:04:03.519
-searches,
-
-0:04:00.799,0:04:05.680
-to get the things that I needed when
-
-0:04:03.519,0:04:07.680
-I would quickly go install Emacs at some
-
-0:04:05.680,0:04:10.959
-new job or contract,
-
-0:04:07.680,0:04:13.680
-and
-
-0:04:10.959,0:04:15.280
-be able to to quickly get through that
-
-0:04:13.680,0:04:17.440
-workflow that caused me to install the
-
-0:04:15.280,0:04:20.560
-program.
-
-0:04:17.440,0:04:23.440
-You know, just
-
-0:04:20.560,0:04:25.199
-little simple one-liners that that
-
-0:04:23.440,0:04:27.120
-got committed to memory over decades
-
-0:04:25.199,0:04:28.880
-eventually just led me to a sort of "hey what's going on
-
-0:04:27.120,0:04:31.680
-here." And I credit
-
-0:04:28.880,0:04:33.520
-Jeff Goff, my good friend who died
-
-0:04:31.680,0:04:37.759
-earlier in 2020,
-
-0:04:33.520,0:04:39.280
-for my lifelong love of Emacs.
-
-0:04:37.759,0:04:40.800
-Perhaps EriK and I will talk about that
-
-0:04:39.280,0:04:41.360
-a little bit more in another talk we
-
-0:04:40.800,0:04:43.280
-have
-
-0:04:41.360,0:04:44.400
-scheduled, but Jeff was a huge
-
-0:04:43.280,0:04:47.280
-influenceo on us
-
-0:04:44.400,0:04:48.720
-in a number of ways and a huge
-
-0:04:47.280,0:04:50.720
-contributor to the Raku programming
-
-0:04:48.720,0:04:54.000
-language
-
-0:04:50.720,0:04:54.000
-which is very cool.
-
-0:04:54.840,0:05:01.039
-So, understanding how
-
-0:04:58.880,0:05:03.120
-to make a good decision about splitting
-
-0:05:01.039,0:05:03.680
-up configuration in a way to share it
-
-0:05:03.120,0:05:05.600
-across
-
-0:05:03.680,0:05:07.600
-people with really different uses of
-
-0:05:05.600,0:05:09.360
-Emacs... That's actually a
-
-0:05:07.600,0:05:11.039
-complicated topic and I want to
-
-0:05:09.360,0:05:12.639
-sort of back off and stare at it for a
-
-0:05:11.039,0:05:15.840
-second.
-
-0:05:12.639,0:05:18.720
-I think Emacs is about people, so that
-
-0:05:15.840,0:05:22.000
-means it's about community.
-
-0:05:18.720,0:05:24.960
-And community means we're going to
-
-0:05:22.000,0:05:29.120
-invite disagreement.
-
-0:05:24.960,0:05:32.160
-In fact, that disagreement
-
-0:05:29.120,0:05:33.280
-isn't necessarily a road-block to our
-
-0:05:32.160,0:05:35.680
-project. In fact,
-
-0:05:33.280,0:05:37.759
-some of the work that a community
-
-0:05:35.680,0:05:39.680
-project can invite us to do
-
-0:05:37.759,0:05:40.960
-is to get closer to each other by
-
-0:05:39.680,0:05:42.080
-inviting those disagreements, by
-
-0:05:40.960,0:05:43.280
-learning from them--learning from
-
-0:05:42.080,0:05:46.880
-different people's
-
-0:05:43.280,0:05:49.120
-styles and from how they argue,
-
-0:05:46.880,0:05:50.400
-and thinking about why they have that
-
-0:05:49.120,0:05:53.680
-perspective and
-
-0:05:50.400,0:05:55.360
-what technical benefits that
-
-0:05:53.680,0:05:56.720
-perhaps radical point of view might
-
-0:05:55.360,0:05:59.039
-carry away. Some people are really
-
-0:05:56.720,0:06:01.919
-aggressive arguers, and others
-
-0:05:59.039,0:06:03.120
-are very passive and really
-
-0:06:01.919,0:06:06.240
-couch their ideas
-
-0:06:03.120,0:06:08.080
-in distancing terms, to say, "well
-
-0:06:06.240,0:06:12.479
-probably, this is a good idea" or
-
-0:06:08.080,0:06:15.520
-"please double check me."
-
-0:06:12.479,0:06:17.120
-Those don't always necessarily indicate
-
-0:06:15.520,0:06:18.479
-how certain a person is, because we're
-
-0:06:17.120,0:06:19.520
-different. We have different ways of
-
-0:06:18.479,0:06:23.380
-communicating
-
-0:06:19.520,0:06:24.560
-ideas like certainty or excitement.
-
-0:06:23.380,0:06:26.560
-[Music]
-
-0:06:24.560,0:06:30.000
-When we think about a bunch of really
-
-0:06:26.560,0:06:33.280
-diverse programmers approaching Emacs,
-
-0:06:30.000,0:06:36.479
-probably one of our our first really big
-
-0:06:33.280,0:06:39.759
-challenges is just
-
-0:06:36.479,0:06:41.120
-to pick what we're going to go
-
-0:06:39.759,0:06:44.000
-after. There are a lot of
-
-0:06:41.120,0:06:45.759
-existing kit
-
-0:06:44.000,0:06:49.599
-installs and things like this.
-
-0:06:49.599,0:06:54.400
-My argument is that you could actually
-
-0:06:52.880,0:06:56.560
-get pretty far
-
-0:06:54.400,0:06:58.319
-just trading files around. Maybe the
-
-0:06:56.560,0:07:02.240
-more valuable
-
-0:07:02.240,0:07:06.080
-conversation to have is making the
-
-0:07:04.720,0:07:08.000
-hard decisions about, well,
-
-0:07:06.080,0:07:10.080
-"should we have vertical completion,"
-
-0:07:08.000,0:07:11.759
-should that be the out of the box,
-
-0:07:10.080,0:07:15.680
-and the people that want
-
-0:07:11.759,0:07:17.440
-the traditional splayed out over a
-
-0:07:15.680,0:07:19.840
-single line completion
-
-0:07:17.440,0:07:20.800
-for example in the mode line, those
-
-0:07:19.840,0:07:22.800
-people are going to
-
-0:07:20.800,0:07:24.160
-add a line of config
-
-0:07:24.160,0:07:27.199
-to their own setup?
-
-0:07:29.039,0:07:34.080
-The way to get there? I mean, how do we
-
-0:07:32.479,0:07:35.520
-find out what works? We don't want to
-
-0:07:34.080,0:07:38.800
-slow down the people that
-
-0:07:35.520,0:07:40.479
-are super productive with Emacs by
-
-0:07:38.800,0:07:42.080
-asking them to completely break their
-
-0:07:40.479,0:07:42.560
-workflows and make it easier for new
-
-0:07:42.080,0:07:46.240
-folks.
-
-0:07:42.560,0:07:48.960
-At the same time, we do
-
-0:07:46.240,0:07:51.280
-want to make sure those new people are
-
-0:07:48.960,0:07:52.720
-excited by Emacs and not turned off by
-
-0:07:51.280,0:07:56.319
-having to learn
-
-0:07:52.720,0:07:59.840
-the entire jungle of Emacs
-
-0:07:56.319,0:08:03.120
-history in the form of its
-
-0:07:59.840,0:08:06.160
-unique technical stylings for
-
-0:08:03.120,0:08:09.840
-things like frames,
-
-0:08:06.160,0:08:12.960
-buffers, and other unique
-
-0:08:09.840,0:08:16.240
-Emacs viewpoints on important
-
-0:08:12.960,0:08:18.720
-interface concepts, especially.
-
-0:08:16.240,0:08:19.520
-The encouragement here is to keep
-
-0:08:19.520,0:08:23.280
-the initialization for a project team
-
-0:08:21.680,0:08:25.280
-together as a crucible.
-
-0:08:23.280,0:08:27.680
-Rather than necessarily following our
-
-0:08:25.280,0:08:31.440
-defaults of
-
-0:08:31.440,0:08:35.120
-finding the simplest configuration
-
-0:08:33.279,0:08:37.440
-that generally work and letting people
-
-0:08:35.120,0:08:40.479
-customize it,
-
-0:08:37.440,0:08:42.560
-what if we tried to look
-
-0:08:40.479,0:08:44.159
-for fairly specific configurations that
-
-0:08:42.560,0:08:46.320
-we'll expect essentially all of our
-
-0:08:44.159,0:08:50.320
-developers to be using,
-
-0:08:46.320,0:08:50.320
-at least when they submit bug reports.
-
-0:08:52.839,0:08:58.800
-In particular, with this,
-
-0:08:55.920,0:08:59.839
-I think that degree of
-
-0:08:58.800,0:09:01.680
-experimentation
-
-0:08:59.839,0:09:03.360
-can drive back into the Emacs
-
-0:09:01.680,0:09:04.800
-development process. In the development
-
-0:09:03.360,0:09:07.760
-mailing list...
-
-0:09:04.800,0:09:09.680
-I'm hoping I'll get a timing cue
-
-0:09:07.760,0:09:14.000
-here.
-
-0:09:15.120,0:09:18.320
-In the context of Emacs development as a
-
-0:09:17.760,0:09:20.959
-greater
-
-0:09:18.320,0:09:22.399
-entity, we see some of these struggles.
-
-0:09:20.959,0:09:24.000
-Should we change this default?
-
-0:09:22.399,0:09:26.720
-Sometimes we can have the
-
-0:09:24.000,0:09:29.279
-sense that defaults in Emacs will never
-
-0:09:26.720,0:09:30.959
-change. The conversation is too difficult.
-
-0:09:29.279,0:09:32.560
-I think one thing that can help us get
-
-0:09:30.959,0:09:36.160
-there is evidence
-
-0:09:32.560,0:09:38.880
-that says, "hey my 30- to 40-person project
-
-0:09:36.160,0:09:40.399
-is using this set of bindings and
-
-0:09:38.880,0:09:42.240
-here's what we learned about
-
-0:09:40.399,0:09:43.519
-brand new Emacs users trying to come in
-
-0:09:42.240,0:09:46.800
-and get work done with that."
-
-0:09:46.800,0:09:50.720
-(Amin: Yeah you still have
-
-0:09:49.360,0:09:52.640
-a couple more minutes)
-
-0:09:50.720,0:09:54.160
-Oh, beautiful. Okay, great. I will try to
-
-0:09:52.640,0:09:54.720
-get through my last few slides that i
-
-0:09:54.160,0:09:56.320
-cut
-
-0:09:54.720,0:09:58.320
-in my last walkthrough, but I think i'm
-
-0:09:56.320,0:10:00.640
-going quicker today thank you.
-
-0:09:58.320,0:10:00.640
-Thank you.
-
-0:10:02.000,0:10:06.800
-So let's just recap real quick:
-
-0:10:05.120,0:10:10.399
-in theory, Emacs works
-
-0:10:06.800,0:10:10.720
-out of the box. That means we're
-
-0:10:10.720,0:10:17.120
-free to experiment. We can
-
-0:10:14.079,0:10:20.399
-throw it all away and start over.
-
-0:10:17.120,0:10:23.760
-As an organizational principle...
-
-0:10:26.000,0:10:30.079
-I don't know what I was thinking on that
-
-0:10:27.360,0:10:32.240
-slide, excuse me.
-
-0:10:30.079,0:10:33.440
-Bringing it back around
-
-0:10:32.240,0:10:35.680
-to the free
-
-0:10:33.440,0:10:36.480
-and open source software community,
-
-0:10:35.680,0:10:39.519
-our goal
-
-0:10:36.480,0:10:41.440
-is to enable users
-
-0:10:39.519,0:10:43.040
-to unlock their computers, to do as much
-
-0:10:41.440,0:10:45.600
-with them as possible.
-
-0:10:43.040,0:10:47.680
-That's the context to take with project
-
-0:10:45.600,0:10:49.560
-initialization, but sometimes
-
-0:10:47.680,0:10:50.800
-it could make sense to put...
-
-0:10:49.560,0:10:53.040
-[Music]
-
-0:10:50.800,0:10:54.880
-to put some gloves on. I've thrown up on
-
-0:10:53.040,0:10:57.279
-the screen here just a couple of other
-
-0:10:54.880,0:10:57.920
-ideas, ways to maybe think outside of the
-
-0:10:57.279,0:11:00.399
-box.
-
-0:10:57.920,0:11:01.440
-As you're putting together project
-
-0:11:00.399,0:11:04.959
-nets,
-
-0:11:01.440,0:11:05.519
-my words of encouragement are to experiment
-
-0:11:04.959,0:11:09.200
-with it,
-
-0:11:05.519,0:11:10.560
-try different things, and think really
-
-0:11:09.200,0:11:14.320
-specifically about how
-
-0:11:10.560,0:11:17.760
-different the development users
-
-0:11:14.320,0:11:21.680
-might be from each other as you
-
-0:11:17.760,0:11:23.519
-define standards for configuring
-
-0:11:21.680,0:11:25.360
-the user environment of Emacs
-
-0:11:23.519,0:11:29.120
-specifically for developing
-
-0:11:25.360,0:11:30.480
-on a project. That's pretty much my talk.
-
-0:11:29.120,0:11:32.959
-If there's any time, I would take a
-
-0:11:30.480,0:11:35.040
-couple questions.
-
-0:11:32.959,0:11:36.480
-Thank you for your awesome talk,
-
-0:11:35.040,0:11:38.160
-Corwin.
-
-0:11:36.480,0:11:43.839
-I think we have one or two
-
-0:11:38.160,0:11:43.839
-minutes for a few questions.
-
-0:11:49.519,0:11:53.839
-Do you have the pad open or would you
-
-0:11:52.000,0:11:56.959
-like me to read the questions for you?
-
-0:11:53.839,0:11:58.000
-Oh, I managed to close the
-
-0:11:56.959,0:12:00.560
-pad
-
-0:11:58.000,0:12:03.440
-and I am trying to open it again. All
-
-0:12:00.560,0:12:03.440
-right, there it opened.
-
-0:12:03.519,0:12:06.880
-Bringing it onto a screen where I can
-
-0:12:05.040,0:12:08.399
-see it. Will you read me the
-
-0:12:06.880,0:12:09.360
-first question while I drag windows
-
-0:12:08.399,0:12:12.720
-around, please?
-
-0:12:09.360,0:12:15.600
-(Amin: Sure. It says, "do you use Emacs as a
-
-0:12:12.720,0:12:17.680
-community building tool?")
-
-0:12:15.600,0:12:19.760
-Do I use Emacs as a community building
-
-0:12:17.680,0:12:23.519
-tool, or how do I?
-
-0:12:19.760,0:12:26.720
-(Amin: It just says do you.) Yes, absolutely.
-
-0:12:23.519,0:12:29.920
-I think Emacs is an ambassador to
-
-0:12:26.720,0:12:33.279
-the GNU tool chain.
-
-0:12:29.920,0:12:34.560
-I think that in the fullness of time, we
-
-0:12:33.279,0:12:38.240
-will see an Emacs
-
-0:12:34.560,0:12:42.000
-that makes
-
-0:12:38.240,0:12:42.800
-and that makes iOS and Android and other
-
-0:12:42.000,0:12:45.680
-closed-source
-
-0:12:42.800,0:12:46.320
-tools dream. That's why they mock us
-
-0:12:45.680,0:12:49.200
-and call
-
-0:12:46.320,0:12:51.440
-Emacs an operating system. It's because
-
-0:12:49.200,0:12:53.920
-it could be, if we cared for it to be.
-
-0:12:51.440,0:12:55.680
-It's quite a threatening product
-
-0:12:55.680,0:12:59.440
-from the perspective of how many problem
-
-0:12:57.440,0:13:01.519
-spaces it can address, how many types of
-
-0:12:59.440,0:13:04.399
-users it can satisfy,
-
-0:13:01.519,0:13:05.600
-the things that we can do to make
-
-0:13:04.399,0:13:07.839
-it robust in those
-
-0:13:05.600,0:13:09.760
-environments. I mean, we're always
-
-0:13:07.839,0:13:11.839
-thinking about the weak points, but
-
-0:13:09.760,0:13:14.079
-is Emacs a community building tool? Heck
-
-0:13:11.839,0:13:14.079
-yeah.
-
-0:13:14.639,0:13:18.480
-(Amin: There's like one or two more
-
-0:13:17.920,0:13:21.519
-questions.
-
-0:13:18.480,0:13:22.480
-I think they're more long-form so it
-
-0:13:21.519,0:13:24.000
-might be better
-
-0:13:22.480,0:13:26.880
-if you took them off stream so you
-
-0:13:24.000,0:13:28.959
-could keep the schedule on time.)
-
-0:13:26.880,0:13:31.040
-i would love to take those questions
-
-0:13:28.959,0:13:32.399
-offline. I will respond to you in
-
-0:13:31.040,0:13:33.360
-writing if we don't get to it in a
-
-0:13:32.399,0:13:35.519
-breakout room.
-
-0:13:33.360,0:13:36.639
-Thanks so much for joining us. I
-
-0:13:35.519,0:13:38.000
-can't wait to see the rest of the
-
-0:13:36.639,0:13:42.800
-conference. See you there!
-
-0:13:38.000,0:13:42.800
-(Amin: Awesome. Thank you again so much, Corwin.)
-