summaryrefslogtreecommitdiffstats
path: root/2023
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--2023/captions/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.vtt3108
-rw-r--r--2023/captions/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.vtt1104
-rw-r--r--2023/captions/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.vtt4022
-rw-r--r--2023/captions/emacsconf-2023-sat-close--saturday-closing-remarks--main.vtt503
-rw-r--r--2023/captions/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt975
-rw-r--r--2023/info/core-after.md3108
-rw-r--r--2023/info/devel-after.md1100
-rw-r--r--2023/info/hyperamp-after.md1344
-rw-r--r--2023/info/hyperamp-before.md4
-rw-r--r--2023/info/koutline-before.md2
-rw-r--r--2023/info/sat-close-after.md171
-rw-r--r--2023/info/sat-close-before.md4
-rw-r--r--2023/info/unentangling-after.md452
-rw-r--r--2023/info/unentangling-before.md2
-rw-r--r--2023/organizers-notebook/index.org6
-rw-r--r--2023/schedule-2023-12-03.md2
-rw-r--r--2023/schedule-details.md6
17 files changed, 11121 insertions, 4792 deletions
diff --git a/2023/captions/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.vtt b/2023/captions/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.vtt
index 7902ac79..2d7cd23d 100644
--- a/2023/captions/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.vtt
+++ b/2023/captions/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.vtt
@@ -1,4664 +1,4664 @@
WEBVTT
-00:00:03.480 --> 00:00:03.840
+00:00:02.540 --> 00:00:03.840
All right. Hi again, everyone.
-00:00:04.640 --> 00:00:04.839
+00:00:03.840 --> 00:00:04.839
It's been a while. Well,
-00:00:06.480 --> 00:00:06.980
+00:00:04.839 --> 00:00:06.980
actually, it's been like 2 minutes tops.
-00:00:08.599 --> 00:00:09.099
+00:00:07.819 --> 00:00:09.099
We were just with John Wheatley,
-00:00:10.519 --> 00:00:11.019
+00:00:09.099 --> 00:00:11.019
and now we are with Stefan Krangas.
-00:00:15.400 --> 00:00:15.900
+00:00:11.120 --> 00:00:15.900
Hi. Hi. So as we said before,
-00:00:20.440 --> 00:00:20.600
+00:00:16.160 --> 00:00:20.600
Stefan is co-maintainer now of Is it the
-00:00:22.540 --> 00:00:22.920
+00:00:20.600 --> 00:00:22.920
entire Emacs project? How do you describe
-00:00:25.760 --> 00:00:26.260
+00:00:22.920 --> 00:00:26.260
this? Yeah, co-maintainer of GNU Emacs.
-00:00:29.020 --> 00:00:29.380
+00:00:27.439 --> 00:00:29.380
Right, perfect. So you know what?
-00:00:31.260 --> 00:00:31.760
+00:00:29.380 --> 00:00:31.760
Because I'm sure everyone is dying to hear
-00:00:33.740 --> 00:00:33.840
+00:00:32.420 --> 00:00:33.840
everything you've got to say in your
-00:00:35.540 --> 00:00:36.040
+00:00:33.840 --> 00:00:36.040
presentation I'm just going to shut up now
-00:00:37.360 --> 00:00:37.640
+00:00:36.040 --> 00:00:37.640
and leave the floor to you.
-00:00:38.940 --> 00:00:39.440
+00:00:37.640 --> 00:00:39.440
Do you need to share your screen or anything?
-00:00:44.900 --> 00:00:45.239
+00:00:40.080 --> 00:00:45.239
No. Okay great well I'll just cut my webcam
-00:00:46.879 --> 00:00:47.059
+00:00:45.239 --> 00:00:47.059
off I'll still be in the background so do not
-00:00:48.720 --> 00:00:48.940
+00:00:47.059 --> 00:00:48.940
hesitate if you've got any problem I'm still
-00:00:52.239 --> 00:00:52.560
+00:00:48.940 --> 00:00:52.560
around And I'll see you just beacon whenever
-00:00:53.760 --> 00:00:53.940
+00:00:52.560 --> 00:00:53.940
you're done. And I'll show up with the
-00:00:55.840 --> 00:00:56.120
+00:00:53.940 --> 00:00:56.120
questions. All right? Thank you,
-00:00:58.260 --> 00:00:58.739
+00:00:56.120 --> 00:00:58.739
Leo. And thank you, everyone,
-00:01:01.879 --> 00:01:02.379
+00:00:58.739 --> 00:01:02.379
for being here. I'm Stefan Kangas.
-00:01:06.160 --> 00:01:06.660
+00:01:02.739 --> 00:01:06.660
So as Leo explained, I am recently appointed
-00:01:09.160 --> 00:01:09.660
+00:01:06.680 --> 00:01:09.660
as a co-maintainer of GNU Emacs,
-00:01:12.900 --> 00:01:13.400
+00:01:10.960 --> 00:01:13.400
which a role that I'm fulfilling currently
-00:01:16.960 --> 00:01:17.460
+00:01:13.780 --> 00:01:17.460
with Eli Sretsky, who's been co-maintainer
-00:01:23.140 --> 00:01:23.320
+00:01:18.840 --> 00:01:23.320
for quite some time. So I got the question to
-00:01:26.400 --> 00:01:26.780
+00:01:23.320 --> 00:01:26.780
be a co-maintainer from Richard in August
-00:01:28.780 --> 00:01:29.280
+00:01:26.780 --> 00:01:29.280
this year. And of course,
-00:01:30.960 --> 00:01:31.460
+00:01:29.600 --> 00:01:31.460
when you get a question like that,
-00:01:33.520 --> 00:01:34.020
+00:01:31.840 --> 00:01:34.020
I couldn't not say yes.
-00:01:38.940 --> 00:01:39.440
+00:01:34.360 --> 00:01:39.440
So here we are. I can't tell you how excited
-00:01:44.680 --> 00:01:45.060
+00:01:39.920 --> 00:01:45.060
I am to have this opportunity to address the
-00:01:46.880 --> 00:01:47.380
+00:01:45.060 --> 00:01:47.380
community in this way.
-00:01:49.300 --> 00:01:49.800
+00:01:47.640 --> 00:01:49.800
I'm really humbled, of course,
-00:01:54.840 --> 00:01:55.040
+00:01:50.380 --> 00:01:55.040
to be part of it, and to be able to serve the
-00:01:58.580 --> 00:01:59.080
+00:01:55.040 --> 00:01:59.080
community in this capacity.
-00:02:03.820 --> 00:02:04.080
+00:02:00.080 --> 00:02:04.080
I've used Emacs, I think many of you might
-00:02:06.600 --> 00:02:06.820
+00:02:04.080 --> 00:02:06.820
also have used Emacs for quite some time,
-00:02:10.600 --> 00:02:11.100
+00:02:06.820 --> 00:02:11.100
but I'm going on 2 decades as an Emacs user.
-00:02:14.020 --> 00:02:14.280
+00:02:11.120 --> 00:02:14.280
My involvement in Emacs Lisp development is,
-00:02:15.660 --> 00:02:16.160
+00:02:14.280 --> 00:02:16.160
I mean, almost as long,
-00:02:19.180 --> 00:02:19.680
+00:02:16.660 --> 00:02:19.680
but my core development goes back only 4,
-00:02:26.200 --> 00:02:26.700
+00:02:19.960 --> 00:02:26.700
5 years. I have to also thank the EmacsConf
-00:02:28.340 --> 00:02:28.840
+00:02:27.180 --> 00:02:28.840
organizers who are doing,
-00:02:31.840 --> 00:02:31.960
+00:02:29.100 --> 00:02:31.960
I think, a tremendous job and have done a
-00:02:34.540 --> 00:02:34.820
+00:02:31.960 --> 00:02:34.820
tremendous job over the years in really
-00:02:37.300 --> 00:02:37.800
+00:02:34.820 --> 00:02:37.800
building and strengthening what I think is
-00:02:41.960 --> 00:02:42.180
+00:02:38.300 --> 00:02:42.180
this fantastic community of users and
-00:02:45.620 --> 00:02:46.120
+00:02:42.180 --> 00:02:46.120
developers and people interested in Emacs.
-00:02:49.620 --> 00:02:50.100
+00:02:46.620 --> 00:02:50.100
I actually had the chance to meet up with Eli
-00:02:53.200 --> 00:02:53.700
+00:02:50.100 --> 00:02:53.700
Sretzky, as well as another Emacs hacker,
-00:02:56.580 --> 00:02:57.080
+00:02:53.960 --> 00:02:57.080
Andrea Corallo, when I was at the GNU
-00:02:59.960 --> 00:03:00.460
+00:02:57.980 --> 00:03:00.460
project's 40 years celebration,
-00:03:03.840 --> 00:03:04.340
+00:03:00.800 --> 00:03:04.340
40 years since the GNU project was announced.
-00:03:08.040 --> 00:03:08.540
+00:03:05.280 --> 00:03:08.540
And it was very inspiring in general to meet
-00:03:12.280 --> 00:03:12.780
+00:03:09.660 --> 00:03:12.780
people. And I think EmacsConf should also,
-00:03:17.860 --> 00:03:18.360
+00:03:12.980 --> 00:03:18.360
I think, serve to inspire and sort of help
-00:03:21.880 --> 00:03:22.120
+00:03:19.020 --> 00:03:22.120
bring something to the type of work that many
-00:03:23.860 --> 00:03:24.340
+00:03:22.120 --> 00:03:24.340
of us are doing to improve Emacs,
-00:03:26.040 --> 00:03:26.200
+00:03:24.340 --> 00:03:26.200
whether it's in package development or in
-00:03:29.180 --> 00:03:29.680
+00:03:26.200 --> 00:03:29.680
core, to bring out the new and exciting ideas
-00:03:33.540 --> 00:03:34.040
+00:03:29.800 --> 00:03:34.040
and get people enthusiastic about Emacs,
-00:03:37.080 --> 00:03:37.580
+00:03:34.080 --> 00:03:37.580
about hacking on Emacs.
-00:03:44.900 --> 00:03:45.400
+00:03:38.560 --> 00:03:45.400
This is my little attempt to contribute with
-00:03:48.940 --> 00:03:49.440
+00:03:45.600 --> 00:03:49.440
let's say 2 things. I will first try to
-00:03:54.180 --> 00:03:54.400
+00:03:49.600 --> 00:03:54.400
present how we do Emacs core development and
-00:03:58.080 --> 00:03:58.360
+00:03:54.400 --> 00:03:58.360
why we've done some of the choices that we
-00:04:01.560 --> 00:04:02.060
+00:03:58.360 --> 00:04:02.060
have, because We have seen at times that
-00:04:06.300 --> 00:04:06.500
+00:04:02.280 --> 00:04:06.500
perhaps people aren't always clear on this or
-00:04:08.160 --> 00:04:08.660
+00:04:06.500 --> 00:04:08.660
that aspect. So maybe this will be
-00:04:12.040 --> 00:04:12.260
+00:04:08.960 --> 00:04:12.260
enlightening. I will also try to present some
-00:04:17.360 --> 00:04:17.860
+00:04:12.260 --> 00:04:17.860
kind of vision for what Emacs could be with
-00:04:21.180 --> 00:04:21.680
+00:04:18.060 --> 00:04:21.680
your help. Emacs is already very good,
-00:04:26.380 --> 00:04:26.880
+00:04:21.820 --> 00:04:26.880
as we all know, but we could be even better.
-00:04:29.440 --> 00:04:29.940
+00:04:27.040 --> 00:04:29.940
That's the reality of any type of software
-00:04:34.600 --> 00:04:35.100
+00:04:30.060 --> 00:04:35.100
development. So the overall idea of this talk
-00:04:38.080 --> 00:04:38.380
+00:04:35.220 --> 00:04:38.380
is to tell you, if you're an Emacs list
-00:04:39.960 --> 00:04:40.460
+00:04:38.380 --> 00:04:40.460
package developer today,
-00:04:43.700 --> 00:04:44.200
+00:04:40.760 --> 00:04:44.200
why you should become an Emacs core
-00:04:47.140 --> 00:04:47.300
+00:04:44.440 --> 00:04:47.300
developer, and the sort of steps that you
-00:04:48.920 --> 00:04:49.340
+00:04:47.300 --> 00:04:49.340
might want to take to do that,
-00:04:51.600 --> 00:04:52.100
+00:04:49.340 --> 00:04:52.100
or how you can help Emacs core development.
-00:04:54.160 --> 00:04:54.320
+00:04:52.120 --> 00:04:54.320
Even if you're just a user and you found a
-00:04:57.040 --> 00:04:57.340
+00:04:54.320 --> 00:04:57.340
bug, report it. Perhaps you have a feature
-00:04:58.380 --> 00:04:58.820
+00:04:57.340 --> 00:04:58.820
request that you'd like to discuss.
-00:05:02.180 --> 00:05:02.680
+00:04:58.820 --> 00:05:02.680
I think we need more interaction in general
-00:05:04.400 --> 00:05:04.900
+00:05:02.900 --> 00:05:04.900
between Emacs core developers,
-00:05:05.940 --> 00:05:06.440
+00:05:05.080 --> 00:05:06.440
typically on emacsdevil.gnu.org,
-00:05:11.920 --> 00:05:12.420
+00:05:08.440 --> 00:05:12.420
the mailing list that we use to coordinate
-00:05:14.380 --> 00:05:14.880
+00:05:12.840 --> 00:05:14.880
our development efforts,
-00:05:19.020 --> 00:05:19.520
+00:05:15.860 --> 00:05:19.520
between Emacs devil package developers and
-00:05:21.960 --> 00:05:22.460
+00:05:19.520 --> 00:05:22.460
users, Because there is so much great stuff
-00:05:24.240 --> 00:05:24.740
+00:05:22.500 --> 00:05:24.740
really going on in the community.
-00:05:28.120 --> 00:05:28.620
+00:05:25.520 --> 00:05:28.620
But I think sometimes the step to core
-00:05:32.360 --> 00:05:32.500
+00:05:28.740 --> 00:05:32.500
development seems big and perhaps even a
-00:05:35.280 --> 00:05:35.440
+00:05:32.500 --> 00:05:35.440
little bit scary. So I'm hoping to be able to
-00:05:38.440 --> 00:05:38.720
+00:05:35.440 --> 00:05:38.720
help bridge that gap, even if just a little
-00:05:42.740 --> 00:05:43.000
+00:05:38.720 --> 00:05:43.000
bit. We need more people contributing to
-00:05:46.240 --> 00:05:46.740
+00:05:43.000 --> 00:05:46.740
Emacs itself. And also a small disclaimer
-00:05:49.740 --> 00:05:49.920
+00:05:46.840 --> 00:05:49.920
here, in this talk I will only be able to
-00:05:53.200 --> 00:05:53.700
+00:05:49.920 --> 00:05:53.700
speak for myself, not for GNU or the Emacs
-00:05:55.600 --> 00:05:56.100
+00:05:53.760 --> 00:05:56.100
project, even if it's like a little bit more
-00:05:58.660 --> 00:05:58.780
+00:05:56.500 --> 00:05:58.780
official, but I will also try to give the
-00:06:01.500 --> 00:06:01.720
+00:05:58.780 --> 00:06:01.720
view of the project where it makes sense to
-00:06:04.020 --> 00:06:04.200
+00:06:01.720 --> 00:06:04.200
do so. Keep in mind, I'm only 1 of the
-00:06:06.320 --> 00:06:06.820
+00:06:04.200 --> 00:06:06.820
maintainers, the co-maintainer together with
-00:06:09.320 --> 00:06:09.820
+00:06:06.820 --> 00:06:09.820
Eli, and I can't just make decisions
-00:06:10.900 --> 00:06:11.400
+00:06:09.880 --> 00:06:11.400
arbitrarily. In a sense,
-00:06:14.020 --> 00:06:14.180
+00:06:11.680 --> 00:06:14.180
I'm as a co-maintainer and trusted as a
-00:06:15.200 --> 00:06:15.420
+00:06:14.180 --> 00:06:15.420
steward and trusted by,
-00:06:16.180 --> 00:06:16.680
+00:06:15.420 --> 00:06:16.680
of course, the GNU project,
-00:06:21.500 --> 00:06:22.000
+00:06:16.680 --> 00:06:22.000
but also by the community That we really
-00:06:23.680 --> 00:06:24.180
+00:06:22.580 --> 00:06:24.180
can't just take decisions,
-00:06:26.880 --> 00:06:27.380
+00:06:24.440 --> 00:06:27.380
I think, arbitrarily. Even if it sometimes
-00:06:30.060 --> 00:06:30.560
+00:06:27.380 --> 00:06:30.560
perhaps may seem so, or it may feel that way,
-00:06:34.840 --> 00:06:35.080
+00:06:31.100 --> 00:06:35.080
we really have to realize that we can't just
-00:06:39.020 --> 00:06:39.200
+00:06:35.080 --> 00:06:39.200
push too much of just a personal agenda to
-00:06:41.280 --> 00:06:41.520
+00:06:39.200 --> 00:06:41.520
the extent that it doesn't line up with what
-00:06:44.760 --> 00:06:45.260
+00:06:41.520 --> 00:06:45.260
is best for eMacs going forward,
-00:06:50.020 --> 00:06:50.320
+00:06:47.500 --> 00:06:50.320
and the more overall picture of that.
-00:06:52.480 --> 00:06:52.640
+00:06:50.320 --> 00:06:52.640
So there are limitations that come with the
-00:06:59.440 --> 00:06:59.940
+00:06:52.640 --> 00:06:59.940
job, if you like. So 1 question I often,
-00:07:02.120 --> 00:07:02.280
+00:07:00.040 --> 00:07:02.280
I actually got this week when I started a new
-00:07:04.000 --> 00:07:04.500
+00:07:02.280 --> 00:07:04.500
assignment at work, and I got the question
-00:07:08.240 --> 00:07:08.720
+00:07:06.280 --> 00:07:08.720
when I said I'm involved in Emacs
-00:07:10.080 --> 00:07:10.400
+00:07:08.720 --> 00:07:10.400
development. And then someone asked,
-00:07:11.980 --> 00:07:12.480
+00:07:10.400 --> 00:07:12.480
oh, is Emacs still developed?
-00:07:16.220 --> 00:07:16.400
+00:07:12.720 --> 00:07:16.400
Isn't it done almost? And I answered to that,
-00:07:17.520 --> 00:07:17.880
+00:07:16.400 --> 00:07:17.880
yes, we are still around.
-00:07:21.500 --> 00:07:21.940
+00:07:17.880 --> 00:07:21.940
We're going on 40 years now as a software
-00:07:25.440 --> 00:07:25.940
+00:07:21.940 --> 00:07:25.940
project. Not many projects actually can claim
-00:07:28.520 --> 00:07:29.020
+00:07:26.120 --> 00:07:29.020
that type of longevity.
-00:07:33.540 --> 00:07:33.900
+00:07:29.540 --> 00:07:33.900
But Emacs is among those few that can.
-00:07:35.860 --> 00:07:36.340
+00:07:33.900 --> 00:07:36.340
And of course, we have had some very exciting
-00:07:37.540 --> 00:07:38.000
+00:07:36.340 --> 00:07:38.000
developments in recent versions.
-00:07:41.100 --> 00:07:41.600
+00:07:38.000 --> 00:07:41.600
I think John just gave you an update on that.
-00:07:45.860 --> 00:07:46.160
+00:07:41.980 --> 00:07:46.160
But we had just some highlights out of many
-00:07:47.440 --> 00:07:47.940
+00:07:46.160 --> 00:07:47.940
highlights that you could give,
-00:07:50.780 --> 00:07:50.920
+00:07:48.580 --> 00:07:50.920
really, we got the TreeSetter support in
-00:07:53.900 --> 00:07:54.320
+00:07:50.920 --> 00:07:54.320
Emacs 29 that we now need to sort of extend
-00:07:55.840 --> 00:07:56.340
+00:07:54.320 --> 00:07:56.340
and develop. We have merged EGLOT,
-00:07:59.120 --> 00:07:59.440
+00:07:56.380 --> 00:07:59.440
so we have LSP support out of the box,
-00:08:00.480 --> 00:08:00.980
+00:07:59.440 --> 00:08:00.980
I think is a huge improvement.
-00:08:02.560 --> 00:08:02.960
+00:08:01.400 --> 00:08:02.960
Native compilation, of course,
-00:08:06.020 --> 00:08:06.520
+00:08:02.960 --> 00:08:06.520
a big feature. I mean,
-00:08:08.520 --> 00:08:08.900
+00:08:06.580 --> 00:08:08.900
that was Andrea's job,
-00:08:10.760 --> 00:08:11.260
+00:08:08.900 --> 00:08:11.260
really, for performance.
-00:08:13.900 --> 00:08:14.020
+00:08:11.460 --> 00:08:14.020
And it turns out that in many types of
-00:08:15.440 --> 00:08:15.720
+00:08:14.020 --> 00:08:15.720
workloads and the types of stuff that people
-00:08:17.080 --> 00:08:17.580
+00:08:15.720 --> 00:08:17.580
are doing, it often matters.
-00:08:20.680 --> 00:08:21.180
+00:08:18.080 --> 00:08:21.180
And we're hoping to make that the default,
-00:08:24.620 --> 00:08:24.960
+00:08:21.480 --> 00:08:24.960
perhaps already in Emacs 30.
-00:08:26.720 --> 00:08:26.840
+00:08:24.960 --> 00:08:26.840
So there are things that are happening that
-00:08:31.180 --> 00:08:31.680
+00:08:26.840 --> 00:08:31.680
fundamentally make Emacs better at a very
-00:08:37.020 --> 00:08:37.360
+00:08:32.200 --> 00:08:37.360
core level. So, of course,
-00:08:41.400 --> 00:08:41.679
+00:08:37.360 --> 00:08:41.679
why wouldn't you want to be involved in such
-00:08:43.140 --> 00:08:43.440
+00:08:41.679 --> 00:08:43.440
an exciting and, I think,
-00:08:50.740 --> 00:08:51.240
+00:08:43.440 --> 00:08:51.240
dynamic project? How is Emacs developed?
-00:08:52.600 --> 00:08:53.000
+00:08:51.660 --> 00:08:53.000
Well, this is, I think,
-00:08:53.680 --> 00:08:54.180
+00:08:53.000 --> 00:08:54.180
perhaps to some people,
-00:08:55.800 --> 00:08:56.300
+00:08:54.200 --> 00:08:56.300
a little bit more of a threshold,
-00:08:58.820 --> 00:08:59.100
+00:08:56.520 --> 00:08:59.100
if you like, because I think all of us know
-00:09:02.140 --> 00:09:02.640
+00:08:59.100 --> 00:09:02.640
really that there is exciting and cool stuff
-00:09:06.300 --> 00:09:06.560
+00:09:02.980 --> 00:09:06.560
that is going on in Emacs and has been going
-00:09:08.000 --> 00:09:08.260
+00:09:06.560 --> 00:09:08.260
on over the last couple of years and we'll
-00:09:09.720 --> 00:09:10.040
+00:09:08.260 --> 00:09:10.040
see even more of that,
-00:09:10.680 --> 00:09:11.180
+00:09:10.040 --> 00:09:11.180
I think, going forward.
-00:09:16.360 --> 00:09:16.580
+00:09:12.600 --> 00:09:16.580
1 thing is that communication still takes
-00:09:19.840 --> 00:09:20.340
+00:09:16.580 --> 00:09:20.340
place over a mailing list in 2023.
-00:09:23.300 --> 00:09:23.800
+00:09:21.240 --> 00:09:23.800
So we have emacsdevil at gnu.org,
-00:09:25.640 --> 00:09:26.140
+00:09:24.440 --> 00:09:26.140
and that's where we develop Emacs.
-00:09:29.700 --> 00:09:30.140
+00:09:26.680 --> 00:09:30.140
We use, we send patches back and forth,
-00:09:30.860 --> 00:09:31.360
+00:09:30.140 --> 00:09:31.360
we comment on patches.
-00:09:35.920 --> 00:09:36.420
+00:09:32.700 --> 00:09:36.420
And actually this workflow is very good,
-00:09:39.240 --> 00:09:39.580
+00:09:36.700 --> 00:09:39.580
if you're used to it. Because guess what?
-00:09:42.040 --> 00:09:42.200
+00:09:39.580 --> 00:09:42.200
As Emacs users, we like doing everything we
-00:09:45.060 --> 00:09:45.220
+00:09:42.200 --> 00:09:45.220
can in Emacs, especially the core tasks that
-00:09:49.480 --> 00:09:49.980
+00:09:45.220 --> 00:09:49.980
we're doing, such as developing Emacs itself.
-00:09:52.360 --> 00:09:52.860
+00:09:50.140 --> 00:09:52.860
Of course, you want to do that fully within
-00:09:55.080 --> 00:09:55.440
+00:09:52.960 --> 00:09:55.440
Emacs. So we hack Emacs Lisp in Emacs,
-00:09:58.340 --> 00:09:58.840
+00:09:55.440 --> 00:09:58.840
we hack C in Emacs, we respond to emails also
-00:10:02.220 --> 00:10:02.700
+00:10:00.240 --> 00:10:02.700
from Emacs, respond to bug reports,
-00:10:04.540 --> 00:10:05.040
+00:10:02.700 --> 00:10:05.040
manage bug reports. We do all that stuff
-00:10:07.580 --> 00:10:07.840
+00:10:05.460 --> 00:10:07.840
very, very smoothly. And it doesn't really
-00:10:10.040 --> 00:10:10.540
+00:10:07.840 --> 00:10:10.540
matter in a sense, what is the medium?
-00:10:11.580 --> 00:10:12.080
+00:10:10.560 --> 00:10:12.080
It happens to be email.
-00:10:13.660 --> 00:10:14.160
+00:10:12.180 --> 00:10:14.160
Technically it could be anything,
-00:10:16.320 --> 00:10:16.720
+00:10:14.440 --> 00:10:16.720
but email really has that type of staying
-00:10:19.540 --> 00:10:19.640
+00:10:16.720 --> 00:10:19.640
power where we've been able to use it for a
-00:10:20.760 --> 00:10:21.260
+00:10:19.640 --> 00:10:21.260
long time. And this is how,
-00:10:23.860 --> 00:10:24.000
+00:10:22.360 --> 00:10:24.000
and we're still able to use it.
-00:10:25.520 --> 00:10:25.800
+00:10:24.000 --> 00:10:25.800
And this is how free software was always
-00:10:26.380 --> 00:10:26.640
+00:10:25.800 --> 00:10:26.640
developed in the past.
-00:10:28.020 --> 00:10:28.380
+00:10:26.640 --> 00:10:28.380
Only in the last, let's say 10,
-00:10:32.160 --> 00:10:32.440
+00:10:28.380 --> 00:10:32.440
15 years, We've had more development taking
-00:10:35.060 --> 00:10:35.560
+00:10:32.440 --> 00:10:35.560
place perhaps on forges like GitHub,
-00:10:39.060 --> 00:10:39.160
+00:10:35.580 --> 00:10:39.160
GitLab, whatever. But we are 1 of the
-00:10:40.320 --> 00:10:40.680
+00:10:39.160 --> 00:10:40.680
holdouts. I mean, there are others,
-00:10:42.340 --> 00:10:42.560
+00:10:40.680 --> 00:10:42.560
of course, like the Linux kernel has mailing
-00:10:44.060 --> 00:10:44.340
+00:10:42.560 --> 00:10:44.340
lists. They're not trying to do that scale
-00:10:47.080 --> 00:10:47.580
+00:10:44.340 --> 00:10:47.580
development on GitHub.
-00:10:50.860 --> 00:10:51.360
+00:10:49.280 --> 00:10:51.360
And this is not just because we're Luddites
-00:10:53.320 --> 00:10:53.560
+00:10:51.760 --> 00:10:53.560
that refuse to change.
-00:10:55.080 --> 00:10:55.380
+00:10:53.560 --> 00:10:55.380
We just have to do it in the old way,
-00:10:56.820 --> 00:10:57.120
+00:10:55.380 --> 00:10:57.120
because it is the old way,
-00:10:58.180 --> 00:10:58.680
+00:10:57.120 --> 00:10:58.680
and that's the way it should be.
-00:10:59.920 --> 00:11:00.420
+00:10:58.780 --> 00:11:00.420
No, it's actually because we,
-00:11:03.120 --> 00:11:03.460
+00:11:01.220 --> 00:11:03.460
as core developers, the core development team
-00:11:05.020 --> 00:11:05.460
+00:11:03.460 --> 00:11:05.460
and the people already involved and doing
-00:11:08.320 --> 00:11:08.560
+00:11:05.460 --> 00:11:08.560
tremendous, I mean large amounts of work in
-00:11:11.980 --> 00:11:12.480
+00:11:08.560 --> 00:11:12.480
Emacs has very efficient workflows built up
-00:11:15.240 --> 00:11:15.620
+00:11:12.720 --> 00:11:15.620
based on this. So of course,
-00:11:17.280 --> 00:11:17.780
+00:11:15.620 --> 00:11:17.780
I mean moving to something else is something
-00:11:19.680 --> 00:11:20.180
+00:11:18.320 --> 00:11:20.180
that we might like to do,
-00:11:24.240 --> 00:11:24.400
+00:11:20.580 --> 00:11:24.400
but we're not yet clear on how to do it
-00:11:25.600 --> 00:11:26.100
+00:11:24.400 --> 00:11:26.100
exactly and what to move to.
-00:11:27.980 --> 00:11:28.380
+00:11:26.320 --> 00:11:28.380
So these are the types of discussions that
-00:11:30.140 --> 00:11:30.280
+00:11:28.380 --> 00:11:30.280
we're looking at. Can we still support a
-00:11:33.660 --> 00:11:34.040
+00:11:30.280 --> 00:11:34.040
mailing, an email type workflow while moving
-00:11:35.980 --> 00:11:36.100
+00:11:34.040 --> 00:11:36.100
to something else? That would be 1 of the big
-00:11:38.160 --> 00:11:38.400
+00:11:36.100 --> 00:11:38.400
ones. I think another thing that trips people
-00:11:40.520 --> 00:11:40.840
+00:11:38.400 --> 00:11:40.840
up is that we used a bug tracker that,
-00:11:42.380 --> 00:11:42.620
+00:11:40.840 --> 00:11:42.620
I mean, maybe some people,
-00:11:45.060 --> 00:11:45.560
+00:11:42.620 --> 00:11:45.560
I've heard people say it's archaic.
-00:11:49.700 --> 00:11:49.900
+00:11:47.020 --> 00:11:49.900
It's called Debugs. I think maybe Debugs gets
-00:11:51.860 --> 00:11:52.000
+00:11:49.900 --> 00:11:52.000
a bit of a bad rap. I think that bugs is a
-00:11:52.600 --> 00:11:53.100
+00:11:52.000 --> 00:11:53.100
good piece of software.
-00:11:54.660 --> 00:11:55.160
+00:11:53.520 --> 00:11:55.160
It wasn't developed in 2023.
-00:11:57.040 --> 00:11:57.540
+00:11:55.580 --> 00:11:57.540
I mean, that's much as clear.
-00:11:58.380 --> 00:11:58.880
+00:11:57.660 --> 00:11:58.880
It's a little bit older,
-00:12:00.920 --> 00:12:01.320
+00:11:59.060 --> 00:12:01.320
but it really is a workhorse of the Debian
-00:12:03.320 --> 00:12:03.820
+00:12:01.320 --> 00:12:03.820
project, which is obviously a project that's
-00:12:08.940 --> 00:12:09.400
+00:12:03.960 --> 00:12:09.400
developed in a very different way than Emacs
-00:12:11.480 --> 00:12:11.880
+00:12:09.400 --> 00:12:11.880
is. It's on a completely different scale,
-00:12:12.540 --> 00:12:12.840
+00:12:11.880 --> 00:12:12.840
of course, much bigger,
-00:12:14.480 --> 00:12:14.980
+00:12:12.840 --> 00:12:14.980
many more developers, and so on.
-00:12:17.600 --> 00:12:17.800
+00:12:15.040 --> 00:12:17.800
But I think the developers did a good job for
-00:12:19.740 --> 00:12:20.240
+00:12:17.800 --> 00:12:20.240
the time. But it might be showing its age,
-00:12:22.660 --> 00:12:23.160
+00:12:20.920 --> 00:12:23.160
perhaps, in places. Perhaps,
-00:12:24.620 --> 00:12:25.120
+00:12:23.440 --> 00:12:25.120
again, it's the email workflow.
-00:12:27.440 --> 00:12:27.720
+00:12:25.260 --> 00:12:27.720
And people see that as a little bit of a
-00:12:29.840 --> 00:12:30.180
+00:12:27.720 --> 00:12:30.180
threshold. It seems alien.
-00:12:30.800 --> 00:12:31.300
+00:12:30.180 --> 00:12:31.300
It's a little bit strange,
-00:12:34.480 --> 00:12:34.980
+00:12:32.220 --> 00:12:34.980
the types of workflows that you have there.
-00:12:38.720 --> 00:12:38.860
+00:12:35.220 --> 00:12:38.860
So we are seeing some limitations with that
-00:12:40.440 --> 00:12:40.940
+00:12:38.860 --> 00:12:40.940
box. And again, how do you report bugs?
-00:12:42.160 --> 00:12:42.600
+00:12:41.020 --> 00:12:42.600
Well, in a sense, it's easy.
-00:12:46.160 --> 00:12:46.660
+00:12:42.600 --> 00:12:46.660
You send an email to bug-gnu-emacs at gnu.org
-00:12:51.140 --> 00:12:51.340
+00:12:47.620 --> 00:12:51.340
and you copy in whatever you get from,
-00:12:53.140 --> 00:12:53.300
+00:12:51.340 --> 00:12:53.300
you know, report the EMAX bug or if you have,
-00:12:54.620 --> 00:12:55.120
+00:12:53.300 --> 00:12:55.120
you know, send mail set up locally,
-00:12:58.340 --> 00:12:58.700
+00:12:55.580 --> 00:12:58.700
just hit control C, control C and it's sent
-00:13:01.220 --> 00:13:01.720
+00:12:58.700 --> 00:13:01.720
to the bug tracker and that's fine.
-00:13:08.260 --> 00:13:08.680
+00:13:03.840 --> 00:13:08.680
But also I have to mention that there is this
-00:13:10.120 --> 00:13:10.600
+00:13:08.680 --> 00:13:10.600
very good package on GNU Elpas.
-00:13:13.260 --> 00:13:13.540
+00:13:10.600 --> 00:13:13.540
If you're ever trying to read the Emacs bug
-00:13:16.060 --> 00:13:16.500
+00:13:13.540 --> 00:13:16.500
tracker or following along in Emacs
-00:13:18.840 --> 00:13:19.000
+00:13:16.500 --> 00:13:19.000
development, I really recommend install the
-00:13:20.800 --> 00:13:21.300
+00:13:19.000 --> 00:13:21.300
package devbugs from GNU Elpa.
-00:13:23.720 --> 00:13:24.140
+00:13:22.120 --> 00:13:24.140
It's so good. And again,
-00:13:26.400 --> 00:13:26.580
+00:13:24.140 --> 00:13:26.580
it's built on GNU, it's all integrated in
-00:13:29.540 --> 00:13:30.040
+00:13:26.580 --> 00:13:30.040
Emacs, it's so much better than using the web
-00:13:32.960 --> 00:13:33.220
+00:13:30.660 --> 00:13:33.220
and so on. And if you really want to get into
-00:13:37.540 --> 00:13:38.040
+00:13:33.220 --> 00:13:38.040
it, you can download the bug tracker archives
-00:13:39.000 --> 00:13:39.500
+00:13:38.140 --> 00:13:39.500
and the mailing list archives,
-00:13:40.800 --> 00:13:41.260
+00:13:39.720 --> 00:13:41.260
and you can put them locally,
-00:13:41.880 --> 00:13:42.380
+00:13:41.260 --> 00:13:42.380
you can have them searchable,
-00:13:44.280 --> 00:13:44.440
+00:13:42.740 --> 00:13:44.440
and you can have whatever experience you
-00:13:46.840 --> 00:13:47.340
+00:13:44.440 --> 00:13:47.340
like. So, I mean, it's really a flexible
-00:13:50.740 --> 00:13:51.240
+00:13:48.240 --> 00:13:51.240
workflow, but it's a bit strange,
-00:13:52.120 --> 00:13:52.620
+00:13:51.260 --> 00:13:52.620
perhaps, to some people.
-00:13:57.920 --> 00:13:58.120
+00:13:53.460 --> 00:13:58.120
So we also think supporting only this
-00:13:59.640 --> 00:14:00.140
+00:13:58.120 --> 00:14:00.140
workflow might be a little bit too limiting.
-00:14:03.700 --> 00:14:04.200
+00:14:00.660 --> 00:14:04.200
So we do want to move over to something like
-00:14:06.360 --> 00:14:06.760
+00:14:04.440 --> 00:14:06.760
GitLab, perhaps Sourcehat or something
-00:14:09.960 --> 00:14:10.460
+00:14:06.760 --> 00:14:10.460
similar. We've had a couple of discussions
-00:14:13.500 --> 00:14:14.000
+00:14:10.760 --> 00:14:14.000
about that over the last couple of years.
-00:14:15.480 --> 00:14:15.820
+00:14:14.480 --> 00:14:15.820
I think even before that,
-00:14:18.580 --> 00:14:18.940
+00:14:15.820 --> 00:14:18.940
but that's how far back I've been involved,
-00:14:21.300 --> 00:14:21.800
+00:14:18.940 --> 00:14:21.800
and definitely it's come up occasionally.
-00:14:27.400 --> 00:14:27.900
+00:14:23.100 --> 00:14:27.900
I think we are less far away than perhaps
-00:14:30.060 --> 00:14:30.560
+00:14:27.940 --> 00:14:30.560
ever is how I would express that,
-00:14:36.180 --> 00:14:36.680
+00:14:30.720 --> 00:14:36.680
and in the sense that the remaining blockers
-00:14:38.360 --> 00:14:38.640
+00:14:36.960 --> 00:14:38.640
for just making the shift,
-00:14:39.960 --> 00:14:40.200
+00:14:38.640 --> 00:14:40.200
let's say, are I think,
-00:14:41.960 --> 00:14:42.120
+00:14:40.200 --> 00:14:42.120
I mean, first of all, we're talking about
-00:14:43.620 --> 00:14:44.020
+00:14:42.120 --> 00:14:44.020
limitations, perhaps in the software,
-00:14:46.160 --> 00:14:46.420
+00:14:44.020 --> 00:14:46.420
they're well defined, and they're not as
-00:14:48.840 --> 00:14:49.060
+00:14:46.420 --> 00:14:49.060
amountable. I don't think they have to be in
-00:14:50.660 --> 00:14:50.840
+00:14:49.060 --> 00:14:50.840
any case. We should be able to make some
-00:14:54.160 --> 00:14:54.660
+00:14:50.840 --> 00:14:54.660
progress. The main thing that we're lacking
-00:14:57.980 --> 00:14:58.480
+00:14:54.720 --> 00:14:58.480
now is not more discussion or more people
-00:15:02.800 --> 00:15:03.120
+00:15:00.800 --> 00:15:03.120
prodding us to just please switch over.
-00:15:04.080 --> 00:15:04.580
+00:15:03.120 --> 00:15:04.580
No, we're looking for volunteers.
-00:15:07.880 --> 00:15:08.380
+00:15:05.980 --> 00:15:08.380
If you think that you,
-00:15:10.760 --> 00:15:10.960
+00:15:08.400 --> 00:15:10.960
you know, have what it takes to sort of come
-00:15:13.860 --> 00:15:14.060
+00:15:10.960 --> 00:15:14.060
in and help us do something like that and
-00:15:14.860 --> 00:15:15.040
+00:15:14.060 --> 00:15:15.040
work together with us,
-00:15:16.600 --> 00:15:16.840
+00:15:15.040 --> 00:15:16.840
you know, to see what can be done,
-00:15:19.960 --> 00:15:20.200
+00:15:16.840 --> 00:15:20.200
perhaps some, a few things would need to be
-00:15:22.840 --> 00:15:23.220
+00:15:20.200 --> 00:15:23.220
changed in GitLab. I don't think anything
-00:15:25.940 --> 00:15:26.120
+00:15:23.220 --> 00:15:26.120
huge, but maybe there are some patches to be
-00:15:27.380 --> 00:15:27.880
+00:15:26.120 --> 00:15:27.880
written and sent upstream,
-00:15:30.200 --> 00:15:30.280
+00:15:27.980 --> 00:15:30.280
or maybe we need to do some local hacks or
-00:15:32.900 --> 00:15:33.140
+00:15:30.280 --> 00:15:33.140
whatever. If you wanna do that,
-00:15:34.360 --> 00:15:34.860
+00:15:33.140 --> 00:15:34.860
please contact us, emacsdevil.
-00:15:38.480 --> 00:15:38.940
+00:15:35.460 --> 00:15:38.940
We'll be very happy to talk to you.
-00:15:39.960 --> 00:15:40.460
+00:15:38.940 --> 00:15:40.460
And then we can start making progress.
-00:15:42.340 --> 00:15:42.740
+00:15:40.520 --> 00:15:42.740
So I'm really hoping that that sound like
-00:15:46.120 --> 00:15:46.620
+00:15:42.740 --> 00:15:46.620
will come into place. But we need to,
-00:15:52.160 --> 00:15:52.340
+00:15:46.780 --> 00:15:52.340
if we do switch over, we need to preserve the
-00:15:54.400 --> 00:15:54.820
+00:15:52.340 --> 00:15:54.820
good parts of our email-based workflows.
-00:15:56.980 --> 00:15:57.140
+00:15:54.820 --> 00:15:57.140
So there are requirements there so that we
-00:15:59.680 --> 00:16:00.180
+00:15:57.140 --> 00:16:00.180
can continue to do our job as maintainers,
-00:16:04.440 --> 00:16:04.900
+00:16:01.720 --> 00:16:04.900
if you like. Another thing is that we've
-00:16:08.140 --> 00:16:08.340
+00:16:04.900 --> 00:16:08.340
sometimes seen that there's a bit of a
-00:16:11.040 --> 00:16:11.380
+00:16:08.340 --> 00:16:11.380
different culture perhaps on mailing lists
-00:16:14.860 --> 00:16:15.060
+00:16:11.380 --> 00:16:15.060
and on Emacs devil than what many people are
-00:16:17.080 --> 00:16:17.580
+00:16:15.060 --> 00:16:17.580
used to, especially like you've used perhaps,
-00:16:20.380 --> 00:16:20.540
+00:16:17.800 --> 00:16:20.540
many people might be in university and
-00:16:23.000 --> 00:16:23.500
+00:16:20.540 --> 00:16:23.500
they've started using Emacs,
-00:16:25.320 --> 00:16:25.820
+00:16:23.720 --> 00:16:25.820
maybe got into a little bit of package
-00:16:28.860 --> 00:16:29.060
+00:16:25.840 --> 00:16:29.060
development and starting to get the ropes of
-00:16:32.040 --> 00:16:32.540
+00:16:29.060 --> 00:16:32.540
that and are very used to working on places
-00:16:34.980 --> 00:16:35.460
+00:16:32.560 --> 00:16:35.460
like GitLab or something like that,
-00:16:37.860 --> 00:16:38.000
+00:16:35.460 --> 00:16:38.000
then the type of culture and way of
-00:16:41.920 --> 00:16:42.040
+00:16:38.000 --> 00:16:42.040
communicating that we use in Emacs might be a
-00:16:43.940 --> 00:16:44.440
+00:16:42.040 --> 00:16:44.440
little bit different. And of course,
-00:16:46.860 --> 00:16:47.360
+00:16:44.540 --> 00:16:47.360
it's different in the sense that mailing
-00:16:49.700 --> 00:16:49.900
+00:16:47.380 --> 00:16:49.900
lists have always, I mean,
-00:16:50.740 --> 00:16:51.060
+00:16:49.900 --> 00:16:51.060
let's say hacker culture,
-00:16:51.940 --> 00:16:52.120
+00:16:51.060 --> 00:16:52.120
whatever you want to call it,
-00:16:53.900 --> 00:16:54.400
+00:16:52.120 --> 00:16:54.400
have always communicated in a particular way
-00:16:58.180 --> 00:16:58.340
+00:16:54.720 --> 00:16:58.340
using mailing lists. So it's like succinct to
-00:16:59.860 --> 00:17:00.320
+00:16:58.340 --> 00:17:00.320
the point, perhaps I'm skipping a few
-00:17:03.080 --> 00:17:03.340
+00:17:00.320 --> 00:17:03.340
pleasantries. And the idea is that you should
-00:17:07.500 --> 00:17:08.000
+00:17:03.340 --> 00:17:08.000
just use it in as effective way as possible,
-00:17:10.599 --> 00:17:11.099
+00:17:08.359 --> 00:17:11.099
so that also the archives are usable.
-00:17:13.280 --> 00:17:13.660
+00:17:11.319 --> 00:17:13.660
And the other thing is that generally people
-00:17:16.319 --> 00:17:16.500
+00:17:13.660 --> 00:17:16.500
involved in developing free software has to
-00:17:19.160 --> 00:17:19.660
+00:17:16.500 --> 00:17:19.660
deal with a lot of incoming traffic,
-00:17:25.680 --> 00:17:25.900
+00:17:19.780 --> 00:17:25.900
emails. They don't have the bandwidth if it's
-00:17:27.760 --> 00:17:28.220
+00:17:25.900 --> 00:17:28.220
too much noise. You really need to be strict
-00:17:31.360 --> 00:17:31.840
+00:17:28.220 --> 00:17:31.840
to keep the signal to noise ratio high.
-00:17:34.780 --> 00:17:35.280
+00:17:31.840 --> 00:17:35.280
We have some weird terminology on the Emacs
-00:17:37.540 --> 00:17:38.040
+00:17:35.280 --> 00:17:38.040
devil. People tell us,
-00:17:40.260 --> 00:17:40.680
+00:17:38.200 --> 00:17:40.680
we say sometimes install patches which
-00:17:43.900 --> 00:17:44.180
+00:17:40.680 --> 00:17:44.180
basically means push to master or merge pull
-00:17:46.520 --> 00:17:46.720
+00:17:44.180 --> 00:17:46.720
requests because we've used other version
-00:17:48.340 --> 00:17:48.600
+00:17:46.720 --> 00:17:48.600
control systems in the past where it might
-00:17:50.200 --> 00:17:50.700
+00:17:48.600 --> 00:17:50.700
have made more sense to say install patches.
-00:17:52.200 --> 00:17:52.540
+00:17:51.000 --> 00:17:52.540
And then you sort of, I don't know,
-00:17:54.140 --> 00:17:54.380
+00:17:52.540 --> 00:17:54.380
I say it. Don't ask me why.
-00:17:55.840 --> 00:17:56.040
+00:17:54.380 --> 00:17:56.040
But it feels natural after a while.
-00:17:57.540 --> 00:17:57.720
+00:17:56.040 --> 00:17:57.720
You install a patch. It's clear what you
-00:18:02.040 --> 00:18:02.280
+00:17:57.720 --> 00:18:02.280
mean. You don't have to worry about which
-00:18:05.440 --> 00:18:05.940
+00:18:02.280 --> 00:18:05.940
branch it's on. So it's a little bit
-00:18:09.880 --> 00:18:10.120
+00:18:06.600 --> 00:18:10.120
historical there. So there is some of that
-00:18:11.680 --> 00:18:11.960
+00:18:10.120 --> 00:18:11.960
culture going on. It might be different.
-00:18:13.700 --> 00:18:14.200
+00:18:11.960 --> 00:18:14.200
We don't use emojis that much.
-00:18:16.180 --> 00:18:16.680
+00:18:14.220 --> 00:18:16.680
That's another thing. There is no like,
-00:18:20.740 --> 00:18:20.900
+00:18:16.840 --> 00:18:20.900
you can click the little like button at the
-00:18:24.660 --> 00:18:25.080
+00:18:20.900 --> 00:18:25.080
bottom of a comment or an email as you could
-00:18:27.560 --> 00:18:27.740
+00:18:25.080 --> 00:18:27.740
on GitHub. But there are exceptions and it's
-00:18:29.240 --> 00:18:29.600
+00:18:27.740 --> 00:18:29.600
not like someone will send you angry emails
-00:18:31.240 --> 00:18:31.480
+00:18:29.600 --> 00:18:31.480
if you use an emoji or something like that.
-00:18:33.960 --> 00:18:34.200
+00:18:31.480 --> 00:18:34.200
But it can come off as perhaps Because people
-00:18:36.680 --> 00:18:37.180
+00:18:34.200 --> 00:18:37.180
are pressed for time also when replying to
-00:18:39.320 --> 00:18:39.400
+00:18:37.260 --> 00:18:39.400
all these emails. So it might come off as a
-00:18:42.380 --> 00:18:42.880
+00:18:39.400 --> 00:18:42.880
little bit short, but that's just how it is.
-00:18:46.400 --> 00:18:46.880
+00:18:43.440 --> 00:18:46.880
And I think We have heard this comment before
-00:18:50.180 --> 00:18:50.680
+00:18:46.880 --> 00:18:50.680
that mailing lists are scary or Emacs devil
-00:18:53.880 --> 00:18:54.380
+00:18:50.720 --> 00:18:54.380
is scary or core development is scary.
-00:18:58.040 --> 00:18:58.180
+00:18:54.780 --> 00:18:58.180
And I've touched a few of these points a
-00:18:59.240 --> 00:18:59.620
+00:18:58.180 --> 00:18:59.620
little bit already. I think,
-00:19:01.000 --> 00:19:01.500
+00:18:59.620 --> 00:19:01.500
yeah, maybe a little bit.
-00:19:05.240 --> 00:19:05.740
+00:19:02.320 --> 00:19:05.740
For example, we don't use emojis very short
-00:19:10.460 --> 00:19:10.940
+00:19:06.820 --> 00:19:10.940
in the communication. And we always use
-00:19:12.740 --> 00:19:13.240
+00:19:10.940 --> 00:19:13.240
correct grammar and spelling.
-00:19:15.440 --> 00:19:15.920
+00:19:13.380 --> 00:19:15.920
We take that seriously because it's important
-00:19:18.560 --> 00:19:19.060
+00:19:15.920 --> 00:19:19.060
for being clear in your written communication
-00:19:21.040 --> 00:19:21.540
+00:19:19.200 --> 00:19:21.540
when all you have is written communication.
-00:19:23.240 --> 00:19:23.740
+00:19:22.680 --> 00:19:23.740
It's really important.
-00:19:31.260 --> 00:19:31.400
+00:19:26.760 --> 00:19:31.400
But it's not like If you come in there and
-00:19:33.420 --> 00:19:33.580
+00:19:31.400 --> 00:19:33.580
you don't know all these cultural rules and
-00:19:36.020 --> 00:19:36.380
+00:19:33.580 --> 00:19:36.380
all these patterns, then you know you will We
-00:19:37.540 --> 00:19:37.900
+00:19:36.380 --> 00:19:37.900
won't talk to you No Actually,
-00:19:40.920 --> 00:19:41.100
+00:19:37.900 --> 00:19:41.100
we try to be as welcoming as we can and and
-00:19:44.180 --> 00:19:44.600
+00:19:41.100 --> 00:19:44.600
be mindful and you know people not Everyone
-00:19:46.200 --> 00:19:46.700
+00:19:44.600 --> 00:19:46.700
has English as their native language,
-00:19:48.940 --> 00:19:49.200
+00:19:47.080 --> 00:19:49.200
for example. So perhaps someone says
-00:19:50.980 --> 00:19:51.360
+00:19:49.200 --> 00:19:51.360
something, and it might come off as rude,
-00:19:52.760 --> 00:19:53.200
+00:19:51.360 --> 00:19:53.200
but maybe it's just a direct translation.
-00:19:56.040 --> 00:19:56.520
+00:19:53.200 --> 00:19:56.520
So we're trying to give a lot of whatever the
-00:19:59.480 --> 00:19:59.760
+00:19:56.520 --> 00:19:59.760
native language is. So we try to give a lot
-00:20:01.460 --> 00:20:01.780
+00:19:59.760 --> 00:20:01.780
of leeway and just be a little bit,
-00:20:03.420 --> 00:20:03.580
+00:20:01.780 --> 00:20:03.580
you know, flexible and focus on,
-00:20:04.540 --> 00:20:04.920
+00:20:03.580 --> 00:20:04.920
you know, the key, key points,
-00:20:06.260 --> 00:20:06.580
+00:20:04.920 --> 00:20:06.580
which are the technical things,
-00:20:07.260 --> 00:20:07.760
+00:20:06.580 --> 00:20:07.760
the technical decisions,
-00:20:09.080 --> 00:20:09.280
+00:20:07.840 --> 00:20:09.280
technical arguments, rather than,
-00:20:11.760 --> 00:20:11.920
+00:20:09.280 --> 00:20:11.920
you know, getting bogged down in a lot of,
-00:20:15.160 --> 00:20:15.360
+00:20:11.920 --> 00:20:15.360
you know, personal, you know,
-00:20:18.720 --> 00:20:19.220
+00:20:15.360 --> 00:20:19.220
discussions and flame wars.
-00:20:21.140 --> 00:20:21.260
+00:20:19.300 --> 00:20:21.260
So, I mean, there are these things to be
-00:20:22.960 --> 00:20:23.160
+00:20:21.260 --> 00:20:23.160
aware of, you know, it's just a little bit
-00:20:24.480 --> 00:20:24.980
+00:20:23.160 --> 00:20:24.980
different. I don't think it's anything huge.
-00:20:26.120 --> 00:20:26.620
+00:20:25.080 --> 00:20:26.620
And I wouldn't be, you know,
-00:20:30.200 --> 00:20:30.480
+00:20:28.440 --> 00:20:30.480
I think it would be sad if people felt too
-00:20:32.200 --> 00:20:32.320
+00:20:30.480 --> 00:20:32.320
intimidated by that. It just is what it is.
-00:20:33.400 --> 00:20:33.540
+00:20:32.320 --> 00:20:33.540
And if you spend some time there,
-00:20:35.460 --> 00:20:35.960
+00:20:33.540 --> 00:20:35.960
you'll see how people generally communicate.
-00:20:41.120 --> 00:20:41.260
+00:20:38.400 --> 00:20:41.260
Sometimes, there are a lot of people on
-00:20:43.100 --> 00:20:43.600
+00:20:41.260 --> 00:20:43.600
EmacsDevil. It's a public mailing list.
-00:20:45.840 --> 00:20:46.240
+00:20:43.660 --> 00:20:46.240
A lot of people just sign up to follow Emacs
-00:20:48.360 --> 00:20:48.860
+00:20:46.240 --> 00:20:48.860
development. Sometimes they chime in.
-00:20:50.640 --> 00:20:50.820
+00:20:48.940 --> 00:20:50.820
And I think this is in general a good thing.
-00:20:52.800 --> 00:20:53.300
+00:20:50.820 --> 00:20:53.300
I think it should be a public mailing list.
-00:20:59.720 --> 00:21:00.220
+00:20:53.680 --> 00:21:00.220
Sometimes this leads to weird situations from
-00:21:02.900 --> 00:21:03.400
+00:21:00.480 --> 00:21:03.400
just a point of view as an Emacs maintainer,
-00:21:06.900 --> 00:21:07.080
+00:21:03.480 --> 00:21:07.080
right? I mean, I try to say something and it
-00:21:07.960 --> 00:21:08.240
+00:21:07.080 --> 00:21:08.240
doesn't always say, oh,
-00:21:09.520 --> 00:21:10.020
+00:21:08.240 --> 00:21:10.020
he's the maintainer or whatever.
-00:21:10.760 --> 00:21:11.200
+00:21:10.080 --> 00:21:11.200
So when I say something,
-00:21:13.180 --> 00:21:13.380
+00:21:11.200 --> 00:21:13.380
it should carry a little bit more weight than
-00:21:15.920 --> 00:21:16.160
+00:21:13.380 --> 00:21:16.160
some unknown person from the internet who has
-00:21:17.800 --> 00:21:18.300
+00:21:16.160 --> 00:21:18.300
an opinion and decided to send it to
-00:21:20.860 --> 00:21:21.020
+00:21:18.740 --> 00:21:21.020
EmacsDevil. So it's good to be a little bit
-00:21:22.760 --> 00:21:23.160
+00:21:21.020 --> 00:21:23.160
aware of who is a little bit more involved
-00:21:25.120 --> 00:21:25.280
+00:21:23.160 --> 00:21:25.280
with the project. I would check out the
-00:21:26.600 --> 00:21:27.100
+00:21:25.280 --> 00:21:27.100
maintainers file. I would check,
-00:21:30.600 --> 00:21:31.000
+00:21:27.380 --> 00:21:31.000
see in the Git log, do these people actually
-00:21:32.800 --> 00:21:33.300
+00:21:31.000 --> 00:21:33.300
have any anything in core?
-00:21:34.760 --> 00:21:35.260
+00:21:33.580 --> 00:21:35.260
And if not, maybe, you know,
-00:21:38.160 --> 00:21:38.660
+00:21:35.860 --> 00:21:38.660
there, we won't really,
-00:21:40.680 --> 00:21:41.000
+00:21:39.100 --> 00:21:41.000
even if they express an opinion very
-00:21:42.400 --> 00:21:42.720
+00:21:41.000 --> 00:21:42.720
strongly, even if they're a little bit rude,
-00:21:44.200 --> 00:21:44.700
+00:21:42.720 --> 00:21:44.700
maybe they're not even involved in Emacs
-00:21:45.840 --> 00:21:46.340
+00:21:44.760 --> 00:21:46.340
development. I mean, often,
-00:21:48.040 --> 00:21:48.460
+00:21:46.680 --> 00:21:48.460
that's the case we have some people,
-00:21:49.400 --> 00:21:49.900
+00:21:48.460 --> 00:21:49.900
unfortunately, at times,
-00:21:52.540 --> 00:21:52.720
+00:21:50.340 --> 00:21:52.720
we have random people from the internet come
-00:21:54.620 --> 00:21:54.720
+00:21:52.720 --> 00:21:54.720
in on the mailing list and they're just a
-00:21:56.280 --> 00:21:56.780
+00:21:54.720 --> 00:21:56.780
little bit rude, or they say an opinion
-00:21:59.120 --> 00:21:59.620
+00:21:57.740 --> 00:21:59.620
that's not exactly helpful.
-00:22:02.080 --> 00:22:02.320
+00:22:00.060 --> 00:22:02.320
And I think you need to be aware.
-00:22:03.960 --> 00:22:04.340
+00:22:02.320 --> 00:22:04.340
I mean, these things happen in any forum,
-00:22:07.240 --> 00:22:07.740
+00:22:04.340 --> 00:22:07.740
but it happens on EmacsDevO as well.
-00:22:10.440 --> 00:22:10.680
+00:22:07.800 --> 00:22:10.680
So just be a little bit aware of who you're
-00:22:13.040 --> 00:22:13.540
+00:22:10.680 --> 00:22:13.540
talking to, what people are doing.
-00:22:15.380 --> 00:22:15.880
+00:22:13.700 --> 00:22:15.880
It can help to Check the archives,
-00:22:17.960 --> 00:22:18.460
+00:22:16.240 --> 00:22:18.460
see who writes what, and so on.
-00:22:22.720 --> 00:22:23.080
+00:22:20.320 --> 00:22:23.080
But it's not something that I think is a huge
-00:22:23.940 --> 00:22:24.220
+00:22:23.080 --> 00:22:24.220
problem. It is just, again,
-00:22:25.280 --> 00:22:25.780
+00:22:24.220 --> 00:22:25.780
something to be aware of.
-00:22:27.540 --> 00:22:28.040
+00:22:25.900 --> 00:22:28.040
We have the new kind of communication
-00:22:30.480 --> 00:22:30.820
+00:22:28.180 --> 00:22:30.820
guidelines in place, which basically says
-00:22:33.480 --> 00:22:33.740
+00:22:30.820 --> 00:22:33.740
that you should be nice to people and stay
-00:22:35.660 --> 00:22:36.060
+00:22:33.740 --> 00:22:36.060
focused on the technical problem,
-00:22:38.120 --> 00:22:38.300
+00:22:36.060 --> 00:22:38.300
try to see things from another person's point
-00:22:39.060 --> 00:22:39.360
+00:22:38.300 --> 00:22:39.360
of view, this kind of stuff.
-00:22:41.940 --> 00:22:42.140
+00:22:39.360 --> 00:22:42.140
So we're really trying to be as inclusive as
-00:22:46.320 --> 00:22:46.820
+00:22:42.140 --> 00:22:46.820
possible and just stay correct in general.
-00:22:48.100 --> 00:22:48.380
+00:22:46.820 --> 00:22:48.380
And sometimes, I mean,
-00:22:49.700 --> 00:22:50.060
+00:22:48.380 --> 00:22:50.060
not everyone, it's a public list.
-00:22:52.080 --> 00:22:52.440
+00:22:50.060 --> 00:22:52.440
We moderate it, but not to a huge extent,
-00:22:57.720 --> 00:22:57.840
+00:22:52.440 --> 00:22:57.840
right? So sometimes people get away with a
-00:23:02.140 --> 00:23:02.260
+00:22:57.840 --> 00:23:02.260
little bit of perhaps stretching the
-00:23:04.440 --> 00:23:04.700
+00:23:02.260 --> 00:23:04.700
boundaries of what might be included in the
-00:23:06.000 --> 00:23:06.500
+00:23:04.700 --> 00:23:06.500
kind communication guidelines,
-00:23:10.440 --> 00:23:10.940
+00:23:08.040 --> 00:23:10.940
sort of the fences and limitations of that.
-00:23:13.440 --> 00:23:13.940
+00:23:11.460 --> 00:23:13.940
But I would just ignore that.
-00:23:15.200 --> 00:23:15.700
+00:23:13.940 --> 00:23:15.700
Sometimes it happens that we,
-00:23:16.800 --> 00:23:17.160
+00:23:15.860 --> 00:23:17.160
as happens in any forum,
-00:23:19.200 --> 00:23:19.440
+00:23:17.160 --> 00:23:19.440
by the way, you just, we have these very big
-00:23:21.560 --> 00:23:21.760
+00:23:19.440 --> 00:23:21.760
threads. We start discussing something else.
-00:23:23.800 --> 00:23:24.300
+00:23:21.760 --> 00:23:24.300
Perhaps you send us a patch and it just
-00:23:25.960 --> 00:23:26.360
+00:23:24.320 --> 00:23:26.360
devolves into us discussing something
-00:23:28.260 --> 00:23:28.680
+00:23:26.360 --> 00:23:28.680
completely different. And of course I partake
-00:23:30.220 --> 00:23:30.440
+00:23:28.680 --> 00:23:30.440
in that, not better than anyone else,
-00:23:32.440 --> 00:23:32.940
+00:23:30.440 --> 00:23:32.940
but it just happens. I mean,
-00:23:34.440 --> 00:23:34.800
+00:23:32.960 --> 00:23:34.800
it's not your fault. It's just what happens
-00:23:37.000 --> 00:23:37.200
+00:23:34.800 --> 00:23:37.200
sometimes in forums, and don't mind that.
-00:23:38.940 --> 00:23:39.120
+00:23:37.200 --> 00:23:39.120
And it's a little bit easier to do that in
-00:23:41.200 --> 00:23:41.680
+00:23:39.120 --> 00:23:41.680
emails, because you just change the subject,
-00:23:43.320 --> 00:23:43.580
+00:23:41.680 --> 00:23:43.580
and now it's supposed to be a different
-00:23:45.600 --> 00:23:45.780
+00:23:43.580 --> 00:23:45.780
thread, but it comes as replies usually to
-00:23:48.340 --> 00:23:48.480
+00:23:45.780 --> 00:23:48.480
you, which wouldn't happen perhaps in a
-00:23:49.840 --> 00:23:49.960
+00:23:48.480 --> 00:23:49.960
different workflow. So it's something to be
-00:23:53.140 --> 00:23:53.300
+00:23:49.960 --> 00:23:53.300
aware of as well. Another thing is that,
-00:23:54.180 --> 00:23:54.680
+00:23:53.300 --> 00:23:54.680
of course, in written communication,
-00:23:56.120 --> 00:23:56.620
+00:23:55.080 --> 00:23:56.620
tone doesn't always come across.
-00:23:58.840 --> 00:23:59.240
+00:23:57.980 --> 00:23:59.240
If someone sounds negative,
-00:24:00.780 --> 00:24:01.280
+00:23:59.240 --> 00:24:01.280
sometimes it's just them being neutral.
-00:24:04.900 --> 00:24:05.400
+00:24:01.460 --> 00:24:05.400
Sometimes you get no replies.
-00:24:06.720 --> 00:24:07.120
+00:24:05.500 --> 00:24:07.120
You send something, you get no replies.
-00:24:08.720 --> 00:24:09.220
+00:24:07.120 --> 00:24:09.220
And this could mean, actually it could mean,
-00:24:11.000 --> 00:24:11.500
+00:24:09.880 --> 00:24:11.500
yeah, what you said was uncontroversial.
-00:24:12.480 --> 00:24:12.980
+00:24:11.720 --> 00:24:12.980
We think it was a good idea.
-00:24:16.100 --> 00:24:16.360
+00:24:13.660 --> 00:24:16.360
No 1 replied to it because either someone
-00:24:18.840 --> 00:24:18.960
+00:24:16.360 --> 00:24:18.960
else would reply or just there was no need to
-00:24:20.140 --> 00:24:20.640
+00:24:18.960 --> 00:24:20.640
reply because, yeah, why not?
-00:24:23.800 --> 00:24:24.060
+00:24:21.580 --> 00:24:24.060
So but if you do send a patch and you don't
-00:24:26.040 --> 00:24:26.280
+00:24:24.060 --> 00:24:26.280
get an answer, wait. I mean,
-00:24:29.080 --> 00:24:29.380
+00:24:26.280 --> 00:24:29.380
don't wait 1, 2 days. Maybe we're busy or
-00:24:30.020 --> 00:24:30.520
+00:24:29.380 --> 00:24:30.520
we're sick or whatever.
-00:24:32.680 --> 00:24:32.800
+00:24:30.840 --> 00:24:32.800
Wait 2 weeks. It's fine to just send it
-00:24:34.440 --> 00:24:34.940
+00:24:32.800 --> 00:24:34.940
again. If you send the patch to EmacsDevil,
-00:24:36.820 --> 00:24:37.040
+00:24:35.660 --> 00:24:37.040
send it to the bug mailing list,
-00:24:38.760 --> 00:24:39.260
+00:24:37.040 --> 00:24:39.260
because we lose track of stuff on EmacsDevil.
-00:24:41.060 --> 00:24:41.560
+00:24:39.800 --> 00:24:41.560
That's just the reality of it.
-00:24:45.900 --> 00:24:46.080
+00:24:43.440 --> 00:24:46.080
So if you propose making a change and no 1
-00:24:48.220 --> 00:24:48.340
+00:24:46.080 --> 00:24:48.340
commented, feel free to ask us again if a
-00:24:50.580 --> 00:24:51.080
+00:24:48.340 --> 00:24:51.080
patch would be welcome and we will clarify.
-00:24:54.220 --> 00:24:54.720
+00:24:53.480 --> 00:24:54.720
Bug reports, unfortunately,
-00:24:55.940 --> 00:24:56.280
+00:24:54.780 --> 00:24:56.280
if you get no answer, I mean,
-00:24:59.240 --> 00:24:59.740
+00:24:56.280 --> 00:24:59.740
we do have a limited amount of time to work
-00:25:02.220 --> 00:25:02.360
+00:24:59.860 --> 00:25:02.360
on bugs. If you're looking to get started in
-00:25:05.020 --> 00:25:05.520
+00:25:02.360 --> 00:25:05.520
Emacs development, this is an excellent way
-00:25:06.820 --> 00:25:07.320
+00:25:05.740 --> 00:25:07.320
to start getting involved.
-00:25:09.720 --> 00:25:09.960
+00:25:07.480 --> 00:25:09.960
What I'd recommend is start looking into
-00:25:11.180 --> 00:25:11.420
+00:25:09.960 --> 00:25:11.420
bugs. I'd install that bug,
-00:25:13.660 --> 00:25:13.860
+00:25:11.420 --> 00:25:13.860
I'd see about the mailing workflow and set
-00:25:15.300 --> 00:25:15.800
+00:25:13.860 --> 00:25:15.800
that up a little bit, or not.
-00:25:17.640 --> 00:25:17.960
+00:25:16.160 --> 00:25:17.960
It's up to you. You can reply to an email
-00:25:19.660 --> 00:25:20.160
+00:25:17.960 --> 00:25:20.160
without setting any of that stuff up.
-00:25:21.980 --> 00:25:22.480
+00:25:20.600 --> 00:25:22.480
But just help us try out your bugs,
-00:25:24.520 --> 00:25:24.720
+00:25:22.540 --> 00:25:24.720
send patches, do that type of stuff.
-00:25:26.040 --> 00:25:26.280
+00:25:24.720 --> 00:25:26.280
I mean, that's an excellent way,
-00:25:27.360 --> 00:25:27.740
+00:25:26.280 --> 00:25:27.740
and extremely welcome.
-00:25:30.220 --> 00:25:30.360
+00:25:27.740 --> 00:25:30.360
We're so happy to see when people pick up bug
-00:25:32.000 --> 00:25:32.500
+00:25:30.360 --> 00:25:32.500
reports that have been left by the wayside
-00:25:34.080 --> 00:25:34.580
+00:25:32.640 --> 00:25:34.580
and just fix them, send us a patch,
-00:25:37.020 --> 00:25:37.520
+00:25:36.040 --> 00:25:37.520
and we can just apply it.
-00:25:40.180 --> 00:25:40.360
+00:25:37.920 --> 00:25:40.360
So that's really your starting point if you
-00:25:43.100 --> 00:25:43.600
+00:25:40.360 --> 00:25:43.600
want to get involved in Emacs core
-00:25:50.260 --> 00:25:50.580
+00:25:44.440 --> 00:25:50.580
development. I also want to say that be aware
-00:25:53.520 --> 00:25:54.020
+00:25:50.580 --> 00:25:54.020
that you know Emacs is the editor of the GNU
-00:25:56.360 --> 00:25:56.820
+00:25:54.280 --> 00:25:56.820
operating system and this makes the project
-00:25:58.520 --> 00:25:58.700
+00:25:56.820 --> 00:25:58.700
political a little bit whether you like it or
-00:26:00.880 --> 00:26:01.380
+00:25:58.700 --> 00:26:01.380
not. Luckily the you know the politics are
-00:26:03.160 --> 00:26:03.400
+00:26:01.560 --> 00:26:03.400
limited enough that we can find broad
-00:26:05.020 --> 00:26:05.520
+00:26:03.400 --> 00:26:05.520
agreement on it. So we want to promote,
-00:26:07.920 --> 00:26:08.420
+00:26:05.780 --> 00:26:08.420
we want to create free software.
-00:26:10.460 --> 00:26:10.960
+00:26:08.860 --> 00:26:10.960
That's sort of it. That's it.
-00:26:13.540 --> 00:26:13.740
+00:26:11.400 --> 00:26:13.740
And there shouldn't be too much more to it,
-00:26:15.440 --> 00:26:15.600
+00:26:13.740 --> 00:26:15.600
right? We want to rid the world of
-00:26:19.300 --> 00:26:19.700
+00:26:15.600 --> 00:26:19.700
proprietary software as an evil thing.
-00:26:21.420 --> 00:26:21.920
+00:26:19.700 --> 00:26:21.920
Ideally, all software should be free.
-00:26:24.860 --> 00:26:25.160
+00:26:23.000 --> 00:26:25.160
But these are just the goals of the free
-00:26:27.280 --> 00:26:27.440
+00:26:25.160 --> 00:26:27.440
software movement. So we're very strict with
-00:26:29.160 --> 00:26:29.660
+00:26:27.440 --> 00:26:29.660
some things. We don't recommend non-free
-00:26:31.080 --> 00:26:31.320
+00:26:30.060 --> 00:26:31.320
proprietary software. Of course,
-00:26:32.680 --> 00:26:33.180
+00:26:31.320 --> 00:26:33.180
we have no problem mentioning Microsoft
-00:26:34.780 --> 00:26:35.140
+00:26:33.260 --> 00:26:35.140
Windows because everyone knows that there's
-00:26:39.060 --> 00:26:39.280
+00:26:35.140 --> 00:26:39.280
this obscure operating system developed in
-00:26:41.260 --> 00:26:41.760
+00:26:39.280 --> 00:26:41.760
California that some people insist on using.
-00:26:44.500 --> 00:26:45.000
+00:26:42.040 --> 00:26:45.000
We use, many of us use GNU plus Linux.
-00:26:46.880 --> 00:26:47.380
+00:26:45.060 --> 00:26:47.380
Actually, some core developers happen to use
-00:26:50.380 --> 00:26:50.820
+00:26:47.440 --> 00:26:50.820
exactly, you know, not GNU plus Linux,
-00:26:52.360 --> 00:26:52.600
+00:26:50.820 --> 00:26:52.600
but that's fine as well,
-00:26:54.320 --> 00:26:54.820
+00:26:52.600 --> 00:26:54.820
right? We take a little bit of a pragmatic
-00:26:56.380 --> 00:26:56.840
+00:26:54.860 --> 00:26:56.840
view, but we don't wanna do,
-00:26:58.580 --> 00:26:59.020
+00:26:56.840 --> 00:26:59.020
what we don't wanna do is promote like this
-00:27:04.600 --> 00:27:04.780
+00:26:59.020 --> 00:27:04.780
small, unknown piece of non-free software and
-00:27:08.200 --> 00:27:08.400
+00:27:04.780 --> 00:27:08.400
sort of help the non-free software in that
-00:27:11.120 --> 00:27:11.620
+00:27:08.400 --> 00:27:11.620
way. That's where we try to draw the line,
-00:27:15.520 --> 00:27:15.760
+00:27:12.440 --> 00:27:15.760
you know, in just expressing just a few
-00:27:17.560 --> 00:27:18.060
+00:27:15.760 --> 00:27:18.060
words. So that's 1 thing.
-00:27:21.300 --> 00:27:21.620
+00:27:18.200 --> 00:27:21.620
We're, I think, very pragmatic on this point,
-00:27:24.400 --> 00:27:24.900
+00:27:21.620 --> 00:27:24.900
but we do try to follow the principle.
-00:27:26.680 --> 00:27:27.180
+00:27:25.240 --> 00:27:27.180
We also require copyright assignment.
-00:27:29.540 --> 00:27:30.040
+00:27:27.700 --> 00:27:30.040
And I think in general,
-00:27:34.240 --> 00:27:34.740
+00:27:30.620 --> 00:27:34.740
the argument is that we require a copyright
-00:27:38.440 --> 00:27:38.940
+00:27:34.780 --> 00:27:38.940
assignment, because that makes it easier to
-00:27:42.940 --> 00:27:43.440
+00:27:39.280 --> 00:27:43.440
defend the legal status of the GNU Emacs
-00:27:45.520 --> 00:27:45.920
+00:27:43.640 --> 00:27:45.920
source code. So if there's ever a legal
-00:27:47.980 --> 00:27:48.280
+00:27:45.920 --> 00:27:48.280
battle, the idea is that if it's only 1
-00:27:49.760 --> 00:27:50.260
+00:27:48.280 --> 00:27:50.260
copyright holder and you have a GPL
-00:27:53.720 --> 00:27:54.140
+00:27:50.320 --> 00:27:54.140
violation, i.e. Someone might change Emacs
-00:27:55.320 --> 00:27:55.820
+00:27:54.140 --> 00:27:55.820
and then distribute it as proprietary
-00:27:57.660 --> 00:27:58.040
+00:27:56.100 --> 00:27:58.040
software or something nasty like that,
-00:28:00.420 --> 00:28:00.620
+00:27:58.040 --> 00:28:00.620
then we have an easier way of defending it in
-00:28:02.280 --> 00:28:02.780
+00:28:00.620 --> 00:28:02.780
court if there is only 1 copyright holder.
-00:28:04.380 --> 00:28:04.840
+00:28:02.780 --> 00:28:04.840
So we assigned copyright to the Free Software
-00:28:08.960 --> 00:28:09.460
+00:28:04.840 --> 00:28:09.460
Foundation. And I think there,
-00:28:12.380 --> 00:28:12.600
+00:28:09.720 --> 00:28:12.600
I mean, sometimes people oppose this for
-00:28:13.380 --> 00:28:13.660
+00:28:12.600 --> 00:28:13.660
various reasons, you know,
-00:28:15.220 --> 00:28:15.720
+00:28:13.660 --> 00:28:15.720
people see it as, you know,
-00:28:16.720 --> 00:28:16.880
+00:28:15.720 --> 00:28:16.880
maybe some people might say,
-00:28:17.360 --> 00:28:17.860
+00:28:16.880 --> 00:28:17.860
you know, it's ideological,
-00:28:19.080 --> 00:28:19.340
+00:28:18.040 --> 00:28:19.340
you know, who goes, you know,
-00:28:20.860 --> 00:28:21.360
+00:28:19.340 --> 00:28:21.360
the FSF goes too far with this.
-00:28:23.620 --> 00:28:23.860
+00:28:21.700 --> 00:28:23.860
And, and, I mean, that's fine.
-00:28:25.080 --> 00:28:25.580
+00:28:23.860 --> 00:28:25.580
You that's, that's an opinion.
-00:28:28.080 --> 00:28:28.320
+00:28:25.640 --> 00:28:28.320
And the there, then other people are more
-00:28:29.720 --> 00:28:30.040
+00:28:28.320 --> 00:28:30.040
practical, you know, it's just,
-00:28:30.880 --> 00:28:31.360
+00:28:30.040 --> 00:28:31.360
It's a hassle, basically,
-00:28:32.720 --> 00:28:33.220
+00:28:31.360 --> 00:28:33.220
we don't want to sign these papers.
-00:28:35.440 --> 00:28:35.580
+00:28:33.640 --> 00:28:35.580
And I'm not really here to tell anyone that
-00:28:37.000 --> 00:28:37.160
+00:28:35.580 --> 00:28:37.160
they're wrong. I've expressed my views on
-00:28:40.280 --> 00:28:40.780
+00:28:37.160 --> 00:28:40.780
this in the past. But just for now,
-00:28:43.500 --> 00:28:43.660
+00:28:40.960 --> 00:28:43.660
I'm just very practical for the purposes of
-00:28:46.000 --> 00:28:46.500
+00:28:43.660 --> 00:28:46.500
this talk. So I signed the papers.
-00:28:48.840 --> 00:28:49.280
+00:28:46.580 --> 00:28:49.280
It's Maybe it didn't take me many minutes.
-00:28:51.400 --> 00:28:51.900
+00:28:49.280 --> 00:28:51.900
And in most cases, it shouldn't really.
-00:28:54.720 --> 00:28:55.000
+00:28:52.580 --> 00:28:55.000
And it's something that I found worth doing,
-00:28:58.100 --> 00:28:58.580
+00:28:55.000 --> 00:28:58.580
because that way I could focus on continuing
-00:29:01.200 --> 00:29:01.360
+00:28:58.580 --> 00:29:01.360
to improve Emacs instead of discussing the
-00:29:02.720 --> 00:29:03.220
+00:29:01.360 --> 00:29:03.220
finer points of copyright law.
-00:29:04.960 --> 00:29:05.280
+00:29:03.480 --> 00:29:05.280
You could write patches and stuff,
-00:29:06.340 --> 00:29:06.680
+00:29:05.280 --> 00:29:06.680
that kind of thing. So,
-00:29:08.160 --> 00:29:08.480
+00:29:06.680 --> 00:29:08.480
I mean, this is something that trips people
-00:29:10.600 --> 00:29:11.100
+00:29:08.480 --> 00:29:11.100
up and, you know, it's fine that people have
-00:29:13.940 --> 00:29:14.200
+00:29:11.320 --> 00:29:14.200
different opinions on it and so on,
-00:29:19.120 --> 00:29:19.280
+00:29:14.200 --> 00:29:19.280
but I think for now that's just something to
-00:29:22.540 --> 00:29:23.000
+00:29:19.280 --> 00:29:23.000
be aware of. So that's,
-00:29:25.920 --> 00:29:26.120
+00:29:23.000 --> 00:29:26.120
I think, I mean, there's much more that could
-00:29:27.740 --> 00:29:27.880
+00:29:26.120 --> 00:29:27.880
be said. Ideally, I would like to have a
-00:29:30.560 --> 00:29:31.060
+00:29:27.880 --> 00:29:31.060
practical part to this talk as well.
-00:29:34.200 --> 00:29:34.440
+00:29:32.020 --> 00:29:34.440
But I wanted to say something about the
-00:29:36.960 --> 00:29:37.159
+00:29:34.440 --> 00:29:37.159
packages in Emacs. Because as we know,
-00:29:40.260 --> 00:29:40.440
+00:29:37.159 --> 00:29:40.440
I mean, Emacs is the, I can't remember what
-00:29:41.240 --> 00:29:41.740
+00:29:40.440 --> 00:29:41.740
it says, it's like a visual,
-00:29:43.520 --> 00:29:43.780
+00:29:42.260 --> 00:29:43.780
there's in the manual it says,
-00:29:45.400 --> 00:29:45.900
+00:29:43.780 --> 00:29:45.900
oh, Emacs is an advanced text editor.
-00:29:47.780 --> 00:29:47.980
+00:29:46.180 --> 00:29:47.980
It's visual, which, I mean,
-00:29:49.960 --> 00:29:50.280
+00:29:47.980 --> 00:29:50.280
it's not ed, the whole Unix ed,
-00:29:52.200 --> 00:29:52.700
+00:29:50.280 --> 00:29:52.700
so that's cool. It's also customizable,
-00:29:55.680 --> 00:29:56.180
+00:29:53.300 --> 00:29:56.180
right? So that's always been a thing.
-00:29:59.480 --> 00:29:59.980
+00:29:57.800 --> 00:29:59.980
And what makes Emacs so amazing.
-00:30:01.320 --> 00:30:01.820
+00:30:00.040 --> 00:30:01.820
And some people described it as,
-00:30:03.720 --> 00:30:03.880
+00:30:01.920 --> 00:30:03.880
I can't remember who said that there has been
-00:30:09.140 --> 00:30:09.440
+00:30:03.880 --> 00:30:09.440
a Cambrian explosion of packages in Emacs.
-00:30:10.180 --> 00:30:10.440
+00:30:09.440 --> 00:30:10.440
And I think that's true.
-00:30:12.080 --> 00:30:12.400
+00:30:10.440 --> 00:30:12.400
I mean, if you look at something like Melpa,
-00:30:13.260 --> 00:30:13.760
+00:30:12.400 --> 00:30:13.760
I think they have over 5,000
-00:30:15.720 --> 00:30:16.220
+00:30:13.940 --> 00:30:16.220
packages now. It's like truly impressive,
-00:30:18.280 --> 00:30:18.760
+00:30:16.460 --> 00:30:18.760
just an immense amount of work and immense
-00:30:21.820 --> 00:30:22.320
+00:30:18.760 --> 00:30:22.320
amount of packages. And really,
-00:30:23.940 --> 00:30:24.340
+00:30:22.860 --> 00:30:24.340
this shows the strength,
-00:30:26.100 --> 00:30:26.600
+00:30:24.340 --> 00:30:26.600
I think, of the Emacs community,
-00:30:28.280 --> 00:30:28.780
+00:30:26.680 --> 00:30:28.780
of Emacs itself as an idea.
-00:30:30.960 --> 00:30:31.240
+00:30:29.060 --> 00:30:31.240
And I think it's also just tremendous work
-00:30:33.080 --> 00:30:33.580
+00:30:31.240 --> 00:30:33.580
that's been done by the maintainers.
-00:30:35.820 --> 00:30:36.040
+00:30:33.960 --> 00:30:36.040
And they do get a lot of recognition for
-00:30:38.400 --> 00:30:38.900
+00:30:36.040 --> 00:30:38.900
that. And rightly so, in my opinion.
-00:30:41.660 --> 00:30:41.920
+00:30:39.620 --> 00:30:41.920
It's done so much, I think,
-00:30:43.860 --> 00:30:44.260
+00:30:41.920 --> 00:30:44.260
for our community. The other package archive
-00:30:45.840 --> 00:30:46.340
+00:30:44.260 --> 00:30:46.340
that we have is GNU-ELPA.
-00:30:49.180 --> 00:30:49.640
+00:30:46.620 --> 00:30:49.640
And that's been enabled since when packages
-00:30:50.860 --> 00:30:51.000
+00:30:49.640 --> 00:30:51.000
first got introduced back in,
-00:30:52.660 --> 00:30:53.160
+00:30:51.000 --> 00:30:53.160
I think, Emacs, was it 23?
-00:30:59.020 --> 00:30:59.200
+00:30:55.520 --> 00:30:59.200
And probably, I mean, the main thing why a
-00:31:01.620 --> 00:31:01.860
+00:30:59.200 --> 00:31:01.860
package goes onto GNU Elpa is,
-00:31:03.900 --> 00:31:04.040
+00:31:01.860 --> 00:31:04.040
you know, it should be installable out of the
-00:31:07.500 --> 00:31:07.580
+00:31:04.040 --> 00:31:07.580
box. So, I mean, that's a big benefit in a
-00:31:10.680 --> 00:31:10.960
+00:31:07.580 --> 00:31:10.960
sense. It's also a requirement for GNU Alpa
-00:31:11.820 --> 00:31:12.240
+00:31:10.960 --> 00:31:12.240
that the copyright, again,
-00:31:14.040 --> 00:31:14.540
+00:31:12.240 --> 00:31:14.540
just as GNU Emacs, the copyright is assigned
-00:31:16.520 --> 00:31:17.020
+00:31:15.480 --> 00:31:17.020
to the Free Software Foundation.
-00:31:19.440 --> 00:31:19.940
+00:31:17.080 --> 00:31:19.940
And some very hugely popular packages,
-00:31:20.980 --> 00:31:21.420
+00:31:20.020 --> 00:31:21.420
like YaSnippet, for example,
-00:31:24.560 --> 00:31:25.060
+00:31:21.420 --> 00:31:25.060
is on GNU Alpa. And we were discussing this
-00:31:29.540 --> 00:31:30.040
+00:31:25.160 --> 00:31:30.040
just 2 months back. And Joe Tavora,
-00:31:31.280 --> 00:31:31.780
+00:31:30.060 --> 00:31:31.780
I can't say his name, G-O-A-O,
-00:31:35.600 --> 00:31:36.100
+00:31:33.280 --> 00:31:36.100
Tavora. He made the point that he's never
-00:31:40.000 --> 00:31:40.280
+00:31:36.140 --> 00:31:40.280
seen a problem in any of his packages with
-00:31:41.660 --> 00:31:42.100
+00:31:40.280 --> 00:31:42.100
copyright assignment in particular.
-00:31:44.380 --> 00:31:44.540
+00:31:42.100 --> 00:31:44.540
It's never been a problem to get people to be
-00:31:46.060 --> 00:31:46.560
+00:31:44.540 --> 00:31:46.560
involved in the development of those packages
-00:31:47.720 --> 00:31:48.220
+00:31:46.560 --> 00:31:48.220
just because of the copyright assignment
-00:31:50.140 --> 00:31:50.640
+00:31:49.160 --> 00:31:50.640
requirements. So I mean,
-00:31:53.340 --> 00:31:53.840
+00:31:51.180 --> 00:31:53.840
that's his perspective on that.
-00:32:00.180 --> 00:32:00.480
+00:31:54.320 --> 00:32:00.480
And I think it was worth relating his
-00:32:06.220 --> 00:32:06.500
+00:32:00.480 --> 00:32:06.500
experience here. So we also have this new
-00:32:08.000 --> 00:32:08.500
+00:32:06.500 --> 00:32:08.500
package archive called non-GNU-alpha,
-00:32:12.380 --> 00:32:12.880
+00:32:08.920 --> 00:32:12.880
which is now enabled by default as well.
-00:32:13.940 --> 00:32:14.440
+00:32:12.920 --> 00:32:14.440
I think for practical purposes,
-00:32:16.380 --> 00:32:16.880
+00:32:14.540 --> 00:32:16.880
you could get into it a little bit more,
-00:32:18.340 --> 00:32:18.840
+00:32:16.960 --> 00:32:18.840
you know, why we created non-NUELPA,
-00:32:21.820 --> 00:32:22.320
+00:32:19.940 --> 00:32:22.320
and perhaps that's something we can discuss
-00:32:25.740 --> 00:32:26.240
+00:32:23.360 --> 00:32:26.240
in the Q&A section. For practical purposes,
-00:32:27.980 --> 00:32:28.280
+00:32:26.380 --> 00:32:28.280
the main thing to be aware of is,
-00:32:30.740 --> 00:32:30.980
+00:32:28.280 --> 00:32:30.980
yes, we don't promote non-free software on
-00:32:36.280 --> 00:32:36.780
+00:32:30.980 --> 00:32:36.780
there, And we also don't have the copyright
-00:32:38.560 --> 00:32:39.060
+00:32:36.780 --> 00:32:39.060
assignment requirement.
-00:32:43.320 --> 00:32:43.820
+00:32:41.400 --> 00:32:43.820
I think this is probably for new packages.
-00:32:47.760 --> 00:32:48.180
+00:32:43.940 --> 00:32:48.180
It's generally better if they go to GNU Elpa,
-00:32:50.720 --> 00:32:51.220
+00:32:48.180 --> 00:32:51.220
if there is any type of idea or ambition
-00:32:53.300 --> 00:32:53.460
+00:32:51.280 --> 00:32:53.460
that, you know, at some point it would be
-00:32:56.420 --> 00:32:56.740
+00:32:53.460 --> 00:32:56.740
good or it might be good to eventually have
-00:32:58.480 --> 00:32:58.900
+00:32:56.740 --> 00:32:58.900
some type of functionality like this shipped
-00:33:01.060 --> 00:33:01.200
+00:32:58.900 --> 00:33:01.200
with Emacs itself. So I think this is
-00:33:03.800 --> 00:33:04.020
+00:33:01.200 --> 00:33:04.020
something that perhaps package authors could
-00:33:07.020 --> 00:33:07.340
+00:33:04.020 --> 00:33:07.340
also be aware of, that occasionally we do
-00:33:09.520 --> 00:33:09.780
+00:33:07.340 --> 00:33:09.780
bring in functionality from GNU Elpa into
-00:33:11.680 --> 00:33:12.180
+00:33:09.780 --> 00:33:12.180
core Emacs because we feel that it should be
-00:33:15.060 --> 00:33:15.560
+00:33:12.440 --> 00:33:15.560
better integrated with Emacs itself.
-00:33:18.340 --> 00:33:18.480
+00:33:16.420 --> 00:33:18.480
So if I could give any type of
-00:33:19.200 --> 00:33:19.400
+00:33:18.480 --> 00:33:19.400
recommendation, of course,
-00:33:21.660 --> 00:33:22.120
+00:33:19.400 --> 00:33:22.120
you do. These are your packages,
-00:33:25.240 --> 00:33:25.520
+00:33:22.120 --> 00:33:25.520
right? In an ideal world,
-00:33:28.220 --> 00:33:28.680
+00:33:25.520 --> 00:33:28.680
we would only use this for legacy packages
-00:33:30.060 --> 00:33:30.240
+00:33:28.680 --> 00:33:30.240
where people contributed in the past,
-00:33:31.640 --> 00:33:32.120
+00:33:30.240 --> 00:33:32.120
but you didn't worry about the copyright
-00:33:33.820 --> 00:33:34.200
+00:33:32.120 --> 00:33:34.200
assignment. But where possible,
-00:33:36.980 --> 00:33:37.480
+00:33:34.200 --> 00:33:37.480
I think there is benefit in putting it on GNU
-00:33:42.740 --> 00:33:42.900
+00:33:37.540 --> 00:33:42.900
Elpa. And I wanted to end a little bit on a
-00:33:44.640 --> 00:33:45.140
+00:33:42.900 --> 00:33:45.140
more, you know, the more opinionated perhaps
-00:33:47.040 --> 00:33:47.260
+00:33:45.380 --> 00:33:47.260
part of my talk and not just talk about
-00:33:49.040 --> 00:33:49.160
+00:33:47.260 --> 00:33:49.160
processes. I see that I'm running out of
-00:33:51.200 --> 00:33:51.700
+00:33:49.160 --> 00:33:51.700
time. So I will say Emacs is hackable.
-00:33:54.020 --> 00:33:54.520
+00:33:51.760 --> 00:33:54.520
And I think that's a blessing and a curse.
-00:33:55.840 --> 00:33:56.340
+00:33:54.520 --> 00:33:56.340
And if you think about something like,
-00:34:00.800 --> 00:34:01.100
+00:33:59.060 --> 00:34:01.100
the types of choices that you can make,
-00:34:02.540 --> 00:34:03.040
+00:34:01.100 --> 00:34:03.040
perhaps when you implement something,
-00:34:06.360 --> 00:34:06.680
+00:34:03.160 --> 00:34:06.680
There are choices, different choices between
-00:34:07.440 --> 00:34:07.740
+00:34:06.680 --> 00:34:07.740
something like common list,
-00:34:08.940 --> 00:34:09.440
+00:34:07.740 --> 00:34:09.440
which is like bigger, more batteries
-00:34:10.860 --> 00:34:11.320
+00:34:09.440 --> 00:34:11.320
included, and something like scheme,
-00:34:11.880 --> 00:34:12.239
+00:34:11.320 --> 00:34:12.239
which is more minimal.
-00:34:13.500 --> 00:34:13.679
+00:34:12.239 --> 00:34:13.679
And I think we have some of those,
-00:34:16.159 --> 00:34:16.280
+00:34:13.679 --> 00:34:16.280
you know, this kind of tension also in the
-00:34:17.880 --> 00:34:18.159
+00:34:16.280 --> 00:34:18.159
Emacs itself. What should be in Emacs core?
-00:34:19.440 --> 00:34:19.699
+00:34:18.159 --> 00:34:19.699
Should we have a lean Emacs core?
-00:34:21.300 --> 00:34:21.800
+00:34:19.699 --> 00:34:21.800
Should we have more stuff in Emacs core?
-00:34:26.040 --> 00:34:26.320
+00:34:22.360 --> 00:34:26.320
And I think these are good discussions to
-00:34:29.120 --> 00:34:29.380
+00:34:26.320 --> 00:34:29.380
have. And there are various challenges that
-00:34:31.440 --> 00:34:31.940
+00:34:29.380 --> 00:34:31.940
are associated with each of those choices.
-00:34:34.840 --> 00:34:35.320
+00:34:32.540 --> 00:34:35.320
I think what will never change is that Emacs
-00:34:36.780 --> 00:34:37.280
+00:34:35.320 --> 00:34:37.280
is hackable. Emacs is customizable.
-00:34:38.300 --> 00:34:38.800
+00:34:37.500 --> 00:34:38.800
This is the key strength.
-00:34:40.520 --> 00:34:40.960
+00:34:38.860 --> 00:34:40.960
This is why we love and use Emacs.
-00:34:41.320 --> 00:34:41.820
+00:34:40.960 --> 00:34:41.820
I think fundamentally,
-00:34:43.780 --> 00:34:44.280
+00:34:42.380 --> 00:34:44.280
whether you do it a lot or not,
-00:34:46.760 --> 00:34:47.260
+00:34:44.380 --> 00:34:47.260
this is what at core is bringing you that
-00:34:48.679 --> 00:34:49.179
+00:34:47.320 --> 00:34:49.179
amazing user experience.
-00:34:53.040 --> 00:34:53.199
+00:34:50.739 --> 00:34:53.199
However, the flip side of that sometimes is
-00:34:56.080 --> 00:34:56.280
+00:34:53.199 --> 00:34:56.280
that it's so easy to hack Emacs so that we
-00:34:58.120 --> 00:34:58.520
+00:34:56.280 --> 00:34:58.520
hack around bugs instead of fixing them.
-00:35:00.280 --> 00:35:00.540
+00:34:58.520 --> 00:35:00.540
We do some tweak and our customers say,
-00:35:01.420 --> 00:35:01.720
+00:35:00.540 --> 00:35:01.720
okay, this is a little bit broken,
-00:35:03.400 --> 00:35:03.560
+00:35:01.720 --> 00:35:03.560
Let me just fix it. I'll put an advice on
-00:35:05.200 --> 00:35:05.700
+00:35:03.560 --> 00:35:05.700
this function. I'll do this customization.
-00:35:08.540 --> 00:35:09.040
+00:35:06.500 --> 00:35:09.040
Or we accept limitations in Emacs core.
-00:35:11.600 --> 00:35:12.100
+00:35:09.340 --> 00:35:12.100
And I think it's fine.
-00:35:13.380 --> 00:35:13.760
+00:35:12.380 --> 00:35:13.760
I mean, this will never change.
-00:35:16.160 --> 00:35:16.560
+00:35:13.760 --> 00:35:16.560
That will always be core to what Emacs is,
-00:35:20.020 --> 00:35:20.140
+00:35:16.560 --> 00:35:20.140
right? However, I think that the flip side of
-00:35:22.300 --> 00:35:22.500
+00:35:20.140 --> 00:35:22.500
that is that I think sometimes we could be
-00:35:26.260 --> 00:35:26.760
+00:35:22.500 --> 00:35:26.760
better at just taking those few extra steps
-00:35:29.060 --> 00:35:29.260
+00:35:26.820 --> 00:35:29.260
to also make Emacs better itself and solve
-00:35:31.480 --> 00:35:31.680
+00:35:29.260 --> 00:35:31.680
this for all users. And I think if we can
-00:35:33.480 --> 00:35:33.680
+00:35:31.680 --> 00:35:33.680
build a little bit more of a culture like
-00:35:35.320 --> 00:35:35.460
+00:35:33.680 --> 00:35:35.460
that, I mean, we already have that culture to
-00:35:36.820 --> 00:35:37.200
+00:35:35.460 --> 00:35:37.200
a large extent, don't get me wrong,
-00:35:39.440 --> 00:35:39.620
+00:35:37.200 --> 00:35:39.620
we do, but if we can get a little bit more of
-00:35:41.120 --> 00:35:41.320
+00:35:39.620 --> 00:35:41.320
that culture, let's get that into core,
-00:35:43.260 --> 00:35:43.760
+00:35:41.320 --> 00:35:43.760
let's get that problem fixed,
-00:35:45.640 --> 00:35:46.140
+00:35:43.980 --> 00:35:46.140
that frustration. I can tell you that,
-00:35:48.640 --> 00:35:48.940
+00:35:47.040 --> 00:35:48.940
I just started a new assignment at work,
-00:35:51.360 --> 00:35:51.420
+00:35:48.940 --> 00:35:51.420
I already told you, so I'm going to write a
-00:35:53.860 --> 00:35:54.140
+00:35:51.420 --> 00:35:54.140
lot of Python, okay? So I need to keep track
-00:35:55.240 --> 00:35:55.740
+00:35:54.140 --> 00:35:55.740
of something called virtual environments,
-00:35:57.760 --> 00:35:58.260
+00:35:56.040 --> 00:35:58.260
and that's just a way to install these
-00:36:01.440 --> 00:36:01.640
+00:35:58.440 --> 00:36:01.640
dependencies just locally per directory or
-00:36:02.920 --> 00:36:03.420
+00:36:01.640 --> 00:36:03.420
per repository kind of thing.
-00:36:05.520 --> 00:36:05.740
+00:36:03.900 --> 00:36:05.740
And I've used various packages for that.
-00:36:07.360 --> 00:36:07.860
+00:36:05.740 --> 00:36:07.860
There are like 4 packages,
-00:36:10.120 --> 00:36:10.560
+00:36:07.940 --> 00:36:10.560
5 packages, maybe. And 1 is called VM,
-00:36:11.240 --> 00:36:11.740
+00:36:10.560 --> 00:36:11.740
and 1 is called VirtualM,
-00:36:13.140 --> 00:36:13.640
+00:36:11.820 --> 00:36:13.640
and 1 is called Python-VM.
-00:36:16.620 --> 00:36:16.980
+00:36:15.420 --> 00:36:16.980
And now I'm using, you know,
-00:36:17.780 --> 00:36:18.100
+00:36:16.980 --> 00:36:18.100
I'm using a different 1.
-00:36:19.120 --> 00:36:19.620
+00:36:18.100 --> 00:36:19.620
And it's just a little bit,
-00:36:22.000 --> 00:36:22.160
+00:36:20.080 --> 00:36:22.160
why doesn't this work out of the box in
-00:36:25.580 --> 00:36:25.680
+00:36:22.160 --> 00:36:25.680
Emacs? Why? I don't think there's a really
-00:36:28.220 --> 00:36:28.640
+00:36:25.680 --> 00:36:28.640
good fundamental good reason why something
-00:36:29.960 --> 00:36:30.460
+00:36:28.640 --> 00:36:30.460
like that doesn't work in Emacs.
-00:36:31.480 --> 00:36:31.980
+00:36:30.480 --> 00:36:31.980
So I think that's really,
-00:36:34.920 --> 00:36:35.220
+00:36:32.220 --> 00:36:35.220
I mean, I'm sure there are other things like
-00:36:36.780 --> 00:36:37.280
+00:36:35.220 --> 00:36:37.280
that, other fundamental features.
-00:36:39.480 --> 00:36:39.920
+00:36:37.740 --> 00:36:39.920
Why is it that for the last 20 years,
-00:36:43.540 --> 00:36:43.740
+00:36:39.920 --> 00:36:43.740
we've shipped Emacs with no PHP support out
-00:36:47.180 --> 00:36:47.660
+00:36:43.740 --> 00:36:47.660
of the box? I mean, I'm not a PHP programmer.
-00:36:50.540 --> 00:36:51.020
+00:36:47.660 --> 00:36:51.020
I don't really have a lot of love for PHP,
-00:36:55.520 --> 00:36:56.020
+00:36:51.020 --> 00:36:56.020
let's say. To me, it's a very funny-looking
-00:36:59.800 --> 00:37:00.060
+00:36:57.180 --> 00:37:00.060
language, but okay, still it's been very
-00:37:01.560 --> 00:37:02.060
+00:37:00.060 --> 00:37:02.060
popular. Why haven't we supported it?
-00:37:02.900 --> 00:37:03.280
+00:37:02.120 --> 00:37:03.280
I mean, it's just strange.
-00:37:04.540 --> 00:37:05.040
+00:37:03.280 --> 00:37:05.040
You install Emacs on some machine,
-00:37:06.760 --> 00:37:07.260
+00:37:05.220 --> 00:37:07.260
you open a PHP file, you get fundamental
-00:37:08.680 --> 00:37:09.160
+00:37:07.280 --> 00:37:09.160
mode. It's not the best user experience,
-00:37:12.400 --> 00:37:12.600
+00:37:09.160 --> 00:37:12.600
in my opinion. So I think there are some
-00:37:15.300 --> 00:37:15.480
+00:37:12.600 --> 00:37:15.480
things where we really could do a little bit
-00:37:19.700 --> 00:37:20.200
+00:37:15.480 --> 00:37:20.200
better. And I'm seeing this all the time.
-00:37:22.280 --> 00:37:22.500
+00:37:20.200 --> 00:37:22.500
Just this week, this new assignment was
-00:37:24.140 --> 00:37:24.640
+00:37:22.500 --> 00:37:24.640
interesting. There was this Emacs user.
-00:37:26.720 --> 00:37:26.980
+00:37:24.720 --> 00:37:26.980
Turns out we have the exact same hack in both
-00:37:29.640 --> 00:37:29.860
+00:37:26.980 --> 00:37:29.860
of our init files. So we had created the
-00:37:31.700 --> 00:37:32.140
+00:37:29.860 --> 00:37:32.140
exact same mode for DIRED,
-00:37:33.600 --> 00:37:33.920
+00:37:32.140 --> 00:37:33.920
actually, to hide dot files.
-00:37:36.560 --> 00:37:36.720
+00:37:33.920 --> 00:37:36.720
You know, dot something is supposed to be
-00:37:38.940 --> 00:37:39.440
+00:37:36.720 --> 00:37:39.440
hidden on a Unix system.
-00:37:43.700 --> 00:37:43.940
+00:37:40.240 --> 00:37:43.940
So we had DERED hide dot files mode to just
-00:37:46.800 --> 00:37:47.100
+00:37:43.940 --> 00:37:47.100
hide them. And why isn't that in DERED?
-00:37:47.920 --> 00:37:48.420
+00:37:47.100 --> 00:37:48.420
Or should it be in DERED?
-00:37:50.360 --> 00:37:50.860
+00:37:48.480 --> 00:37:50.860
Should it be a package on the new Elpa?
-00:37:52.680 --> 00:37:53.000
+00:37:51.000 --> 00:37:53.000
Where should it be? Why is it just local
-00:37:54.280 --> 00:37:54.680
+00:37:53.000 --> 00:37:54.680
hack? Should it be on a wiki somewhere?
-00:37:56.240 --> 00:37:56.740
+00:37:54.680 --> 00:37:56.740
I mean, sometimes that's the correct answer.
-00:37:58.640 --> 00:37:59.060
+00:37:56.980 --> 00:37:59.060
Sometimes the correct answer is,
-00:37:59.920 --> 00:38:00.420
+00:37:59.060 --> 00:38:00.420
yes, it should be a package.
-00:38:02.040 --> 00:38:02.360
+00:38:00.780 --> 00:38:02.360
Sometimes the correct answer is,
-00:38:03.640 --> 00:38:04.140
+00:38:02.360 --> 00:38:04.140
yes, it should really be in core.
-00:38:05.920 --> 00:38:06.420
+00:38:04.280 --> 00:38:06.420
So what I want to promote is more like,
-00:38:08.600 --> 00:38:08.900
+00:38:06.480 --> 00:38:08.900
let's just take a step back and just ask
-00:38:11.000 --> 00:38:11.180
+00:38:08.900 --> 00:38:11.180
yourself, what's the best solution if we look
-00:38:11.880 --> 00:38:12.240
+00:38:11.180 --> 00:38:12.240
at the overall picture?
-00:38:13.420 --> 00:38:13.920
+00:38:12.240 --> 00:38:13.920
Should I hack this into my configuration?
-00:38:16.720 --> 00:38:16.840
+00:38:14.600 --> 00:38:16.840
In many cases, yes, that's the right thing to
-00:38:19.040 --> 00:38:19.540
+00:38:16.840 --> 00:38:19.540
do. We don't want to proliferate just random
-00:38:21.660 --> 00:38:22.160
+00:38:19.840 --> 00:38:22.160
solutions all over Emacs for no reason.
-00:38:24.600 --> 00:38:24.760
+00:38:22.540 --> 00:38:24.760
But sometimes we want to fix it once and for
-00:38:27.200 --> 00:38:27.700
+00:38:24.760 --> 00:38:27.700
all. We want to do that in core.
-00:38:30.040 --> 00:38:30.200
+00:38:27.880 --> 00:38:30.200
So you could send stuff like that to us as
-00:38:30.980 --> 00:38:31.480
+00:38:30.200 --> 00:38:31.480
patches or as packages.
-00:38:34.060 --> 00:38:34.340
+00:38:31.560 --> 00:38:34.340
And we can discuss a little bit about where
-00:38:35.920 --> 00:38:36.420
+00:38:34.340 --> 00:38:36.420
should we solve this? What's the right level
-00:38:40.760 --> 00:38:41.100
+00:38:37.280 --> 00:38:41.100
of abstraction? I'm seeing that I'm running
-00:38:43.340 --> 00:38:43.620
+00:38:41.100 --> 00:38:43.620
out of time. I had an Emacs wish list.
-00:38:46.380 --> 00:38:46.880
+00:38:43.620 --> 00:38:46.880
Maybe we can take more of that in the Q&A.
-00:38:49.107 --> 00:38:49.226
+00:38:47.170 --> 00:38:49.226
But I want to say, like,
-00:38:50.220 --> 00:38:50.460
+00:38:49.226 --> 00:38:50.460
in VS Code, you just start VS Code.
-00:38:51.420 --> 00:38:51.660
+00:38:50.460 --> 00:38:51.660
You open a Python file,
-00:38:52.660 --> 00:38:53.040
+00:38:51.660 --> 00:38:53.040
and you get, like, hey,
-00:38:54.060 --> 00:38:54.560
+00:38:53.040 --> 00:38:54.560
are you trying to use Python?
-00:38:55.900 --> 00:38:56.280
+00:38:54.840 --> 00:38:56.280
Click here, install Python.
-00:38:58.200 --> 00:38:58.700
+00:38:56.280 --> 00:38:58.700
You get all the nice things out of the box.
-00:39:01.400 --> 00:39:01.560
+00:38:59.180 --> 00:39:01.560
And my argument is, why can't we have more of
-00:39:03.380 --> 00:39:03.880
+00:39:01.560 --> 00:39:03.880
that in Emacs? I don't think it's necessarily
-00:39:05.860 --> 00:39:06.360
+00:39:04.000 --> 00:39:06.360
hard, but it does take a little bit of work.
-00:39:08.560 --> 00:39:09.060
+00:39:06.960 --> 00:39:09.060
The challenges here are more social,
-00:39:10.380 --> 00:39:10.880
+00:39:09.060 --> 00:39:10.880
I think, than technical.
-00:39:12.480 --> 00:39:12.780
+00:39:10.900 --> 00:39:12.780
And I think it's worth doing,
-00:39:13.700 --> 00:39:14.060
+00:39:12.780 --> 00:39:14.060
because it's not just Python.
-00:39:16.280 --> 00:39:16.640
+00:39:14.060 --> 00:39:16.640
It's just There are always these small things
-00:39:18.640 --> 00:39:18.900
+00:39:16.640 --> 00:39:18.900
where it just really should work,
-00:39:20.500 --> 00:39:20.900
+00:39:18.900 --> 00:39:20.900
and that would be a much better experience.
-00:39:23.000 --> 00:39:23.360
+00:39:20.900 --> 00:39:23.360
And then you could customize not that thing
-00:39:24.100 --> 00:39:24.600
+00:39:23.360 --> 00:39:24.600
that should just work,
-00:39:26.980 --> 00:39:27.140
+00:39:24.640 --> 00:39:27.140
but you could customize more fun and
-00:39:29.320 --> 00:39:29.620
+00:39:27.140 --> 00:39:29.620
exploratory things instead of people
-00:39:31.260 --> 00:39:31.720
+00:39:29.620 --> 00:39:31.720
reinventing the wheel over and over again.
-00:39:33.340 --> 00:39:33.420
+00:39:31.720 --> 00:39:33.420
So I'm very excited about what's happening in
-00:39:35.040 --> 00:39:35.280
+00:39:33.420 --> 00:39:35.280
Emacs. I think we should be proud of what
-00:39:37.200 --> 00:39:37.360
+00:39:35.280 --> 00:39:37.360
we've accomplished. It's so many things to
-00:39:37.960 --> 00:39:38.360
+00:39:37.360 --> 00:39:38.360
many different people,
-00:39:39.160 --> 00:39:39.660
+00:39:38.360 --> 00:39:39.660
an environment for hacking,
-00:39:41.120 --> 00:39:41.620
+00:39:40.040 --> 00:39:41.620
just a productivity system.
-00:39:43.680 --> 00:39:44.020
+00:39:41.880 --> 00:39:44.020
Other sees us as a different way of looking
-00:39:45.160 --> 00:39:45.360
+00:39:44.020 --> 00:39:45.360
at computing, you know,
-00:39:47.160 --> 00:39:47.440
+00:39:45.360 --> 00:39:47.440
the embodiment of the ideal of the Lisp
-00:39:49.120 --> 00:39:49.280
+00:39:47.440 --> 00:39:49.280
machine if you want to talk big words and
-00:39:50.380 --> 00:39:50.660
+00:39:49.280 --> 00:39:50.660
stuff like that. And of course,
-00:39:52.900 --> 00:39:53.320
+00:39:50.660 --> 00:39:53.320
Emacs are all those things and so many more.
-00:39:54.940 --> 00:39:55.440
+00:39:53.320 --> 00:39:55.440
And that's what makes Emacs so amazing.
-00:40:00.580 --> 00:40:00.780
+00:39:56.280 --> 00:40:00.780
And in some sense, we should be care that
-00:40:02.720 --> 00:40:03.040
+00:40:00.780 --> 00:40:03.040
people are satisfied with using lesser text
-00:40:05.220 --> 00:40:05.600
+00:40:03.040 --> 00:40:05.600
editors. How could they be happy running
-00:40:07.180 --> 00:40:07.440
+00:40:05.600 --> 00:40:07.440
that? I mean, I'm sure it's fine,
-00:40:09.360 --> 00:40:09.800
+00:40:07.440 --> 00:40:09.800
but it sure as hell isn't Emacs.
-00:40:12.100 --> 00:40:12.340
+00:40:09.800 --> 00:40:12.340
So don't we owe it to the world and to them
-00:40:13.940 --> 00:40:14.440
+00:40:12.340 --> 00:40:14.440
and to ourselves to make a great Emacs.
-00:40:15.880 --> 00:40:16.120
+00:40:14.760 --> 00:40:16.120
That will be my ending words.
-00:40:17.520 --> 00:40:18.020
+00:40:16.120 --> 00:40:18.020
And I hope to see you all in the Q&A.
-00:40:22.360 --> 00:40:22.560
+00:40:18.120 --> 00:40:22.560
Thank you all. And thank you so much,
-00:40:23.860 --> 00:40:24.360
+00:40:22.560 --> 00:40:24.360
Stefan. That was a wonderful presentation.
-00:40:26.780 --> 00:40:27.280
+00:40:24.800 --> 00:40:27.280
And I just want to give you the opportunity.
-00:40:29.440 --> 00:40:29.940
+00:40:27.340 --> 00:40:29.940
You said that you perhaps had,
-00:40:31.260 --> 00:40:31.400
+00:40:30.480 --> 00:40:31.400
Not the practical stuff,
-00:40:33.120 --> 00:40:33.280
+00:40:31.400 --> 00:40:33.280
but you wanted to do a demo or something like
-00:40:34.280 --> 00:40:34.780
+00:40:33.280 --> 00:40:34.780
this? What did you mention exactly?
-00:40:37.960 --> 00:40:38.460
+00:40:36.180 --> 00:40:38.460
Yeah, we didn't have time really.
-00:40:41.600 --> 00:40:42.040
+00:40:38.740 --> 00:40:42.040
Yes, I'm not sure. I didn't prepare anything
-00:40:43.080 --> 00:40:43.580
+00:40:42.040 --> 00:40:43.580
so that we can do it live.
-00:40:44.540 --> 00:40:44.800
+00:40:43.620 --> 00:40:44.800
But maybe for next time,
-00:40:48.120 --> 00:40:48.620
+00:40:44.800 --> 00:40:48.620
I will do a demo. Don't hold me to it.
-00:40:50.800 --> 00:40:51.100
+00:40:49.920 --> 00:40:51.100
Or someone else could.
-00:40:52.040 --> 00:40:52.540
+00:40:51.100 --> 00:40:52.540
That would be really amazing.
-00:40:53.860 --> 00:40:54.020
+00:40:53.260 --> 00:40:54.020
Right. Well, thank you,
-00:40:56.640 --> 00:40:56.820
+00:40:54.020 --> 00:40:56.820
Stéphane. You've been already into so much
-00:41:00.060 --> 00:41:00.560
+00:40:56.820 --> 00:41:00.560
detail of so many... So much of the intricacy
-00:41:04.600 --> 00:41:05.100
+00:41:01.780 --> 00:41:05.100
of the maintenance. And as someone who's been
-00:41:07.480 --> 00:41:07.980
+00:41:05.460 --> 00:41:07.980
95% of the time developing for Melpa,
-00:41:10.920 --> 00:41:11.040
+00:41:08.260 --> 00:41:11.040
I feel like this talk was very geared to a
-00:41:13.520 --> 00:41:13.980
+00:41:11.040 --> 00:41:13.980
lot of us who tend to experiment in this
-00:41:15.920 --> 00:41:16.400
+00:41:13.980 --> 00:41:16.400
Cambrian stage of Emacs evolution,
-00:41:19.120 --> 00:41:19.620
+00:41:16.400 --> 00:41:19.620
where we get to deploy a lot of creativity
-00:41:23.760 --> 00:41:24.020
+00:41:20.600 --> 00:41:24.020
whilst also feeling pretty agile in a way we
-00:41:25.080 --> 00:41:25.580
+00:41:24.020 --> 00:41:25.580
come up with solutions to problems.
-00:41:28.820 --> 00:41:29.240
+00:41:25.640 --> 00:41:29.240
But you've won me over with your discussion
-00:41:31.100 --> 00:41:31.360
+00:41:29.240 --> 00:41:31.360
about potentially moving some of this stuff
-00:41:32.720 --> 00:41:33.220
+00:41:31.360 --> 00:41:33.220
to core. And I think this particularly
-00:41:35.940 --> 00:41:36.140
+00:41:33.280 --> 00:41:36.140
resonated at the end with this tension that
-00:41:38.160 --> 00:41:38.660
+00:41:36.140 --> 00:41:38.660
you feel about problems that you encounter.
-00:41:40.280 --> 00:41:40.760
+00:41:39.160 --> 00:41:40.760
Do you fix them in Melpa?
-00:41:41.600 --> 00:41:42.040
+00:41:40.760 --> 00:41:42.040
Do you fix them in core?
-00:41:43.680 --> 00:41:43.780
+00:41:42.040 --> 00:41:43.780
Is it not something that is supposed to be an
-00:41:46.340 --> 00:41:46.560
+00:41:43.780 --> 00:41:46.560
option? I love this tension and it's
-00:41:47.900 --> 00:41:48.040
+00:41:46.560 --> 00:41:48.040
something that we've been exploring for the
-00:41:49.300 --> 00:41:49.780
+00:41:48.040 --> 00:41:49.780
last 3 edition of Emacs Cons.
-00:41:51.980 --> 00:41:52.480
+00:41:49.780 --> 00:41:52.480
It's really what is to be the interaction
-00:41:55.160 --> 00:41:55.660
+00:41:52.600 --> 00:41:55.660
between this pool of very clever developers
-00:41:57.960 --> 00:41:58.100
+00:41:55.680 --> 00:41:58.100
who are on Melpa but who are perhaps a little
-00:42:00.380 --> 00:42:00.880
+00:41:58.100 --> 00:42:00.880
bit afraid of joining Core and the wonderful
-00:42:02.360 --> 00:42:02.860
+00:42:00.920 --> 00:42:02.860
job that you do that, yes,
-00:42:05.140 --> 00:42:05.640
+00:42:02.980 --> 00:42:05.640
seems archaic from the outside,
-00:42:07.700 --> 00:42:07.840
+00:42:05.860 --> 00:42:07.840
but as you've been at length today in your
-00:42:09.280 --> 00:42:09.480
+00:42:07.840 --> 00:42:09.480
presentation, is actually just a better way
-00:42:11.680 --> 00:42:11.780
+00:42:09.480 --> 00:42:11.780
to work, a very pragmatic way to get a lot of
-00:42:13.180 --> 00:42:13.320
+00:42:11.780 --> 00:42:13.320
work done. So, thank you so much for your
-00:42:15.020 --> 00:42:15.240
+00:42:13.320 --> 00:42:15.240
presentation. Thank you,
-00:42:20.320 --> 00:42:20.740
+00:42:15.240 --> 00:42:20.740
Leo. So, we have about 12 minutes now to go
-00:42:22.500 --> 00:42:22.950
+00:42:20.740 --> 00:42:22.950
through as many questions as possible.
-00:42:25.600 --> 00:42:26.000
+00:42:22.950 --> 00:42:26.000
You have obviously had a lot of questions
-00:42:26.680 --> 00:42:27.180
+00:42:26.000 --> 00:42:27.180
throughout your presentation.
-00:42:28.660 --> 00:42:28.940
+00:42:27.660 --> 00:42:28.940
Do you have access to the pad,
-00:42:30.240 --> 00:42:30.400
+00:42:28.940 --> 00:42:30.400
or do you want me to share the question and
-00:42:32.340 --> 00:42:32.660
+00:42:30.400 --> 00:42:32.660
feed them to you? Yes,
-00:42:34.020 --> 00:42:34.200
+00:42:32.660 --> 00:42:34.200
could you start with sharing them?
-00:42:35.500 --> 00:42:36.000
+00:42:34.200 --> 00:42:36.000
I'll see if I can get it on my screen.
-00:42:39.140 --> 00:42:39.640
+00:42:36.280 --> 00:42:39.640
Sure, I'll do that. Please let me know if my
-00:42:42.620 --> 00:42:42.980
+00:42:39.720 --> 00:42:42.980
microphone is clipping because my OBS setup
-00:42:44.060 --> 00:42:44.440
+00:42:42.980 --> 00:42:44.440
sometimes is a little bit janky.
-00:42:45.720 --> 00:42:46.080
+00:42:44.440 --> 00:42:46.080
But I'm going to try to read the questions
-00:42:47.280 --> 00:42:47.780
+00:42:46.080 --> 00:42:47.780
for now. It's tipping,
-00:42:51.660 --> 00:42:51.980
+00:42:48.080 --> 00:42:51.980
I can hear you okay. Okay,
-00:42:53.940 --> 00:42:54.400
+00:42:51.980 --> 00:42:54.400
so bear with the clicking,
-00:42:56.080 --> 00:42:56.480
+00:42:54.400 --> 00:42:56.480
we'll switch as soon as possible to Stefan
-00:42:57.800 --> 00:42:58.080
+00:42:56.480 --> 00:42:58.080
reading the question, but I'll read the first
-00:43:02.320 --> 00:43:02.820
+00:42:58.080 --> 00:43:02.820
1. Can you tell us some about your,
-00:43:03.880 --> 00:43:04.340
+00:43:02.860 --> 00:43:04.340
can you tell us some more I assume,
-00:43:05.720 --> 00:43:06.160
+00:43:04.340 --> 00:43:06.160
about your background with Emacs development
-00:43:07.000 --> 00:43:07.500
+00:43:06.160 --> 00:43:07.500
and programming in general,
-00:43:08.720 --> 00:43:09.220
+00:43:07.580 --> 00:43:09.220
your professional work possibly?
-00:43:15.060 --> 00:43:15.440
+00:43:11.400 --> 00:43:15.440
Yeah, sure. Okay, I studied computer science
-00:43:19.760 --> 00:43:19.960
+00:43:15.440 --> 00:43:19.960
at university. I started programming on a
-00:43:23.800 --> 00:43:23.960
+00:43:19.960 --> 00:43:23.960
Commodore 64. I started with BASIC and then I
-00:43:26.380 --> 00:43:26.880
+00:43:23.960 --> 00:43:26.880
did a couple of versions of BASIC as a kid.
-00:43:31.340 --> 00:43:31.540
+00:43:27.380 --> 00:43:31.540
But then really things took off when I
-00:43:33.740 --> 00:43:34.240
+00:43:31.540 --> 00:43:34.240
started using GNU Linux.
-00:43:35.320 --> 00:43:35.580
+00:43:34.300 --> 00:43:35.580
I can't remember which year,
-00:43:36.940 --> 00:43:37.440
+00:43:35.580 --> 00:43:37.440
maybe it was early 2000,
-00:43:39.240 --> 00:43:39.740
+00:43:38.480 --> 00:43:39.740
something like that, late.
-00:43:41.580 --> 00:43:42.080
+00:43:39.840 --> 00:43:42.080
No, it must've been before that actually,
-00:43:43.620 --> 00:43:44.120
+00:43:42.380 --> 00:43:44.120
because I remember I was 14.
-00:43:45.520 --> 00:43:46.020
+00:43:44.340 --> 00:43:46.020
Yeah, okay, so let's say 1999,
-00:43:48.220 --> 00:43:48.720
+00:43:46.500 --> 00:43:48.720
1998, somewhere there around.
-00:43:49.740 --> 00:43:50.200
+00:43:48.840 --> 00:43:50.200
Then I started with Perl,
-00:43:52.120 --> 00:43:52.620
+00:43:50.200 --> 00:43:52.620
and I did Perl for a good long while.
-00:43:54.960 --> 00:43:55.460
+00:43:52.700 --> 00:43:55.460
I learned C++, I learned C,
-00:43:56.640 --> 00:43:56.960
+00:43:55.680 --> 00:43:56.960
I did all kinds of stuff,
-00:43:58.140 --> 00:43:58.640
+00:43:56.960 --> 00:43:58.640
and then I went to university,
-00:44:01.220 --> 00:44:01.700
+00:43:59.440 --> 00:44:01.700
computer science, and I've been working,
-00:44:03.480 --> 00:44:03.980
+00:44:01.700 --> 00:44:03.980
you know, in various roles.
-00:44:05.800 --> 00:44:06.300
+00:44:04.160 --> 00:44:06.300
Right now, I'm coding Python.
-00:44:09.140 --> 00:44:09.640
+00:44:06.980 --> 00:44:09.640
Up until last Friday, I was writing firmware
-00:44:11.819 --> 00:44:12.319
+00:44:09.940 --> 00:44:12.319
in C for a small microcontroller,
-00:44:15.200 --> 00:44:15.600
+00:44:12.440 --> 00:44:15.600
which is pretty different than writing
-00:44:16.560 --> 00:44:17.060
+00:44:15.600 --> 00:44:17.060
Python, that's for sure.
-00:44:19.280 --> 00:44:19.600
+00:44:17.220 --> 00:44:19.600
So yeah, so that's a little bit about me.
-00:44:21.360 --> 00:44:21.860
+00:44:19.600 --> 00:44:21.860
I got interested in free software,
-00:44:24.280 --> 00:44:24.720
+00:44:22.300 --> 00:44:24.720
you know, also at a very young age.
-00:44:26.140 --> 00:44:26.320
+00:44:24.720 --> 00:44:26.320
So, I mean, I've been following these,
-00:44:28.940 --> 00:44:29.120
+00:44:26.320 --> 00:44:29.120
you know, ideological discussions and
-00:44:31.160 --> 00:44:31.560
+00:44:29.120 --> 00:44:31.560
debates, read all this stuff by Richard
-00:44:33.620 --> 00:44:33.940
+00:44:31.560 --> 00:44:33.940
Stallman and so on and so forth.
-00:44:37.500 --> 00:44:37.760
+00:44:33.940 --> 00:44:37.760
But yeah, that's it. Great,
-00:44:40.680 --> 00:44:41.120
+00:44:37.760 --> 00:44:41.120
thank you. I'll move on to the next question.
-00:44:42.640 --> 00:44:42.980
+00:44:41.120 --> 00:44:42.980
You'll have to listen to me because if I
-00:44:44.680 --> 00:44:45.020
+00:44:42.980 --> 00:44:45.020
start sharing my screen again,
-00:44:45.820 --> 00:44:46.320
+00:44:45.020 --> 00:44:46.320
we're going to get some clicks.
-00:44:50.380 --> 00:44:50.680
+00:44:48.140 --> 00:44:50.680
So the question. Do you think that 1 day
-00:44:53.914 --> 00:44:53.930
+00:44:50.680 --> 00:44:53.930
there will be a native I'll start again,
-00:44:54.065 --> 00:44:54.079
+00:44:53.930 --> 00:44:54.079
sorry. Do you think that 1 day there will be
-00:44:54.140 --> 00:44:54.440
+00:44:54.079 --> 00:44:54.440
a native... I'll start again,
-00:44:56.380 --> 00:44:56.480
+00:44:54.440 --> 00:44:56.480
sorry. Do you think that 1 day there will be
-00:44:58.840 --> 00:44:59.020
+00:44:56.480 --> 00:44:59.020
a native graphical web browser in Emacs or is
-00:45:00.340 --> 00:45:00.540
+00:44:59.020 --> 00:45:00.540
it kind of against its philosophy and
-00:45:03.320 --> 00:45:03.820
+00:45:00.540 --> 00:45:03.820
architecture? So will we stick just with EWW
-00:45:06.300 --> 00:45:06.800
+00:45:04.200 --> 00:45:06.800
and EAF or similar workaround tricks?
-00:45:10.840 --> 00:45:11.200
+00:45:08.640 --> 00:45:11.200
So if, I don't know if people have seen,
-00:45:12.240 --> 00:45:12.740
+00:45:11.200 --> 00:45:12.740
there is a talk by, I think,
-00:45:14.820 --> 00:45:15.080
+00:45:13.440 --> 00:45:15.080
Perry Metzger, is that the name?
-00:45:16.300 --> 00:45:16.800
+00:45:15.080 --> 00:45:16.800
Sorry if I got the name wrong.
-00:45:17.860 --> 00:45:18.360
+00:45:17.080 --> 00:45:18.360
Perry Metzger, I think.
-00:45:20.660 --> 00:45:20.800
+00:45:18.720 --> 00:45:20.800
It's like, he marks a text editor for the
-00:45:22.360 --> 00:45:22.640
+00:45:20.800 --> 00:45:22.640
next 40 years. He makes an excellent point
-00:45:24.440 --> 00:45:24.720
+00:45:22.640 --> 00:45:24.720
there that 1 of the things that we need to do
-00:45:27.720 --> 00:45:27.840
+00:45:24.720 --> 00:45:27.840
is really get a proper HTML rendering in
-00:45:29.900 --> 00:45:30.260
+00:45:27.840 --> 00:45:30.260
Emacs. It's like a dream at this point.
-00:45:32.000 --> 00:45:32.200
+00:45:30.260 --> 00:45:32.200
No 1 is actively working on something like
-00:45:33.960 --> 00:45:34.240
+00:45:32.200 --> 00:45:34.240
that. I think that, you know,
-00:45:35.980 --> 00:45:36.380
+00:45:34.240 --> 00:45:36.380
there, first of all, you'd need to rewrite
-00:45:39.020 --> 00:45:39.520
+00:45:36.380 --> 00:45:39.520
the display engine. So that's a big job.
-00:45:40.920 --> 00:45:41.140
+00:45:39.920 --> 00:45:41.140
It is. I'm not saying,
-00:45:42.040 --> 00:45:42.540
+00:45:41.140 --> 00:45:42.540
you know, it can't be done,
-00:45:44.160 --> 00:45:44.660
+00:45:43.040 --> 00:45:44.660
but you need to start there.
-00:45:47.300 --> 00:45:47.560
+00:45:44.660 --> 00:45:47.560
Right? Second of all, you need to think
-00:45:50.080 --> 00:45:50.460
+00:45:47.560 --> 00:45:50.460
about, you know, with all the Emacs Lisp code
-00:45:51.820 --> 00:45:52.090
+00:45:50.460 --> 00:45:52.090
out there, is really assuming,
-00:45:54.760 --> 00:45:54.960
+00:45:52.090 --> 00:45:54.960
you know, 1 paradigm, which is that you have
-00:45:57.640 --> 00:45:57.720
+00:45:54.960 --> 00:45:57.720
a square, and basically you have columns and
-00:45:59.480 --> 00:45:59.760
+00:45:57.720 --> 00:45:59.760
you have rows, and everything is in there,
-00:46:01.860 --> 00:46:02.360
+00:45:59.760 --> 00:46:02.360
even images, is basically in a column,
-00:46:04.240 --> 00:46:04.740
+00:46:02.540 --> 00:46:04.740
you know, in a column on a row somewhere.
-00:46:07.120 --> 00:46:07.360
+00:46:05.380 --> 00:46:07.360
Whereas, you know, when you just start doing
-00:46:09.280 --> 00:46:09.780
+00:46:07.360 --> 00:46:09.780
the more web stuff and web rendering,
-00:46:11.520 --> 00:46:12.020
+00:46:10.120 --> 00:46:12.020
you already have like a seaplane.
-00:46:14.340 --> 00:46:14.500
+00:46:12.040 --> 00:46:14.500
You have different types of geometries that
-00:46:16.720 --> 00:46:16.880
+00:46:14.500 --> 00:46:16.880
are possible. And what does it mean to go to
-00:46:19.200 --> 00:46:19.370
+00:46:16.880 --> 00:46:19.370
the logical next line in that kind of sense?
-00:46:21.100 --> 00:46:21.420
+00:46:19.370 --> 00:46:21.420
I mean these types of things I'm not saying
-00:46:23.260 --> 00:46:23.440
+00:46:21.420 --> 00:46:23.440
it can't be done. I'm saying there are there
-00:46:27.260 --> 00:46:27.440
+00:46:23.440 --> 00:46:27.440
are definitely some challenges there It would
-00:46:30.020 --> 00:46:30.280
+00:46:27.440 --> 00:46:30.280
be amazing I mean, but we need someone with
-00:46:32.520 --> 00:46:33.020
+00:46:30.280 --> 00:46:33.020
you know, the inclination and talent I think
-00:46:37.280 --> 00:46:37.680
+00:46:33.320 --> 00:46:37.680
to work on that's a job posting if I've ever
-00:46:40.080 --> 00:46:40.200
+00:46:37.680 --> 00:46:40.200
had 1. So good luck to whoever's willing to
-00:46:41.600 --> 00:46:42.100
+00:46:40.200 --> 00:46:42.100
apply for this 1. I think it's a tough 1.
-00:46:45.940 --> 00:46:46.440
+00:46:43.180 --> 00:46:46.440
It is, yes. Go on. Okay,
-00:46:47.860 --> 00:46:48.040
+00:46:46.560 --> 00:46:48.040
do you happen to have the questions in front
-00:46:50.160 --> 00:46:50.320
+00:46:48.040 --> 00:46:50.320
of you? Can I just read them to you so that
-00:46:52.160 --> 00:46:52.660
+00:46:50.320 --> 00:46:52.660
you can also have a feedback in front of you?
-00:46:56.180 --> 00:46:56.680
+00:46:54.780 --> 00:46:56.680
Yes, I have the pad here.
-00:46:58.580 --> 00:46:58.860
+00:46:57.260 --> 00:46:58.860
Okay, cool. So I'll read the next question
-00:47:00.060 --> 00:47:00.260
+00:46:58.860 --> 00:47:00.260
and this way I don't have to worry too much
-00:47:02.160 --> 00:47:02.320
+00:47:00.260 --> 00:47:02.320
about me butchering every word in the
-00:47:04.340 --> 00:47:04.540
+00:47:02.320 --> 00:47:04.540
sentence. So, Emacs development and
-00:47:06.300 --> 00:47:06.460
+00:47:04.540 --> 00:47:06.460
communication still is very much focused on
-00:47:08.300 --> 00:47:08.640
+00:47:06.460 --> 00:47:08.640
email mailing lists. I like this,
-00:47:10.120 --> 00:47:10.380
+00:47:08.640 --> 00:47:10.380
but what do you think about introducing other
-00:47:11.820 --> 00:47:12.320
+00:47:10.380 --> 00:47:12.320
channels for talking to users,
-00:47:14.980 --> 00:47:15.140
+00:47:12.440 --> 00:47:15.140
like the Emacs project community could set up
-00:47:16.880 --> 00:47:17.120
+00:47:15.140 --> 00:47:17.120
a master on instance of its own,
-00:47:19.780 --> 00:47:20.280
+00:47:17.120 --> 00:47:20.280
for instance? I think from the point of view
-00:47:21.500 --> 00:47:21.760
+00:47:20.280 --> 00:47:21.760
of the Emacs core team,
-00:47:23.680 --> 00:47:23.860
+00:47:21.760 --> 00:47:23.860
we don't really have a lot of resources or
-00:47:25.760 --> 00:47:25.960
+00:47:23.860 --> 00:47:25.960
people inclined to be working on stuff like
-00:47:27.700 --> 00:47:27.880
+00:47:25.960 --> 00:47:27.880
that. But I mean, there is so much going on.
-00:47:28.860 --> 00:47:29.360
+00:47:27.880 --> 00:47:29.360
Emacs is a very, you know,
-00:47:32.080 --> 00:47:32.580
+00:47:30.420 --> 00:47:32.580
It's a big community, frankly,
-00:47:34.000 --> 00:47:34.500
+00:47:32.580 --> 00:47:34.500
right? So people working on emacs.com,
-00:47:36.900 --> 00:47:37.400
+00:47:34.760 --> 00:47:37.400
there are people in the IRC channel,
-00:47:38.700 --> 00:47:39.200
+00:47:37.500 --> 00:47:39.200
the emacs IRC channel,
-00:47:40.320 --> 00:47:40.820
+00:47:39.400 --> 00:47:40.820
there's the emacs subreddit.
-00:47:42.780 --> 00:47:43.280
+00:47:40.960 --> 00:47:43.280
And I mean, people are doing an incredible
-00:47:45.280 --> 00:47:45.480
+00:47:43.380 --> 00:47:45.480
job. And I think if people wanna do more
-00:47:46.359 --> 00:47:46.400
+00:47:45.480 --> 00:47:46.400
stuff like that, I mean,
-00:47:48.340 --> 00:47:48.840
+00:47:46.400 --> 00:47:48.840
Don't wait for Argo, just go for it.
-00:47:54.000 --> 00:47:54.340
+00:47:52.000 --> 00:47:54.340
Great. Moving on to the next question.
-00:47:56.400 --> 00:47:56.520
+00:47:54.340 --> 00:47:56.520
Sorry, I'm not commenting anymore because we
-00:47:58.080 --> 00:47:58.180
+00:47:56.520 --> 00:47:58.180
have so many questions and I'd love for you
-00:48:00.060 --> 00:48:00.260
+00:47:58.180 --> 00:48:00.260
to answer as many people as possible because
-00:48:02.040 --> 00:48:02.540
+00:48:00.260 --> 00:48:02.540
we have about 6 minutes technically,
-00:48:04.320 --> 00:48:04.820
+00:48:02.640 --> 00:48:04.820
but we can go perhaps a little bit over.
-00:48:05.860 --> 00:48:06.220
+00:48:05.080 --> 00:48:06.220
If you have the time, Stefan,
-00:48:08.180 --> 00:48:08.680
+00:48:06.220 --> 00:48:08.680
though. Yeah. Okay, great.
-00:48:11.000 --> 00:48:11.140
+00:48:09.340 --> 00:48:11.140
What are some features or packages you'd like
-00:48:12.040 --> 00:48:12.540
+00:48:11.140 --> 00:48:12.540
to see developed by the community?
-00:48:15.060 --> 00:48:15.560
+00:48:12.560 --> 00:48:15.560
We've already talked about the native HTTP
-00:48:17.120 --> 00:48:17.620
+00:48:15.920 --> 00:48:17.620
display, but do you have any others?
-00:48:21.580 --> 00:48:22.080
+00:48:19.540 --> 00:48:22.080
So, I mean, developed by the community,
-00:48:23.040 --> 00:48:23.240
+00:48:22.360 --> 00:48:23.240
it depends what you mean.
-00:48:27.280 --> 00:48:27.720
+00:48:23.240 --> 00:48:27.720
So do you mean sending stuff that people
-00:48:29.220 --> 00:48:29.720
+00:48:27.720 --> 00:48:29.720
could be working on in general?
-00:48:32.820 --> 00:48:33.320
+00:48:30.480 --> 00:48:33.320
I think for now, like let's say the roadmap,
-00:48:34.960 --> 00:48:35.140
+00:48:33.420 --> 00:48:35.140
I'll just give some of the things that I
-00:48:36.820 --> 00:48:36.940
+00:48:35.140 --> 00:48:36.940
think should happen right now and that I
-00:48:38.720 --> 00:48:39.060
+00:48:36.940 --> 00:48:39.060
would love for people to send patches for.
-00:48:40.920 --> 00:48:41.120
+00:48:39.060 --> 00:48:41.120
That's what I'm gonna be answering because
-00:48:42.360 --> 00:48:42.860
+00:48:41.120 --> 00:48:42.860
that's what I think I can answer.
-00:48:44.720 --> 00:48:45.220
+00:48:43.280 --> 00:48:45.220
Tree-sitter is a new thing,
-00:48:48.120 --> 00:48:48.620
+00:48:45.280 --> 00:48:48.620
right? Improving and working on new modes
-00:48:49.540 --> 00:48:50.040
+00:48:48.860 --> 00:48:50.040
for, you know, TreeSitter,
-00:48:52.360 --> 00:48:52.860
+00:48:50.200 --> 00:48:52.860
it's not very hard. I think many people get
-00:48:55.400 --> 00:48:55.560
+00:48:52.900 --> 00:48:55.560
into it and make sure to integrate them in
-00:48:57.040 --> 00:48:57.540
+00:48:55.560 --> 00:48:57.540
Emacs core. I think that would be,
-00:48:59.700 --> 00:49:00.140
+00:48:58.140 --> 00:49:00.140
I mean, on my wishlist.
-00:49:01.820 --> 00:49:01.960
+00:49:00.140 --> 00:49:01.960
The other thing that is that we've asked for
-00:49:03.260 --> 00:49:03.740
+00:49:01.960 --> 00:49:03.740
someone perhaps with a little bit more
-00:49:05.800 --> 00:49:05.940
+00:49:03.740 --> 00:49:05.940
experience, I think, but working on
-00:49:08.880 --> 00:49:09.080
+00:49:05.940 --> 00:49:09.080
refactoring capabilities in Emacs and a more
-00:49:11.100 --> 00:49:11.320
+00:49:09.080 --> 00:49:11.320
general framework, I think,
-00:49:13.180 --> 00:49:13.680
+00:49:11.320 --> 00:49:13.680
for that. There are probably many more ideas
-00:49:14.900 --> 00:49:15.300
+00:49:13.780 --> 00:49:15.300
that I could give people,
-00:49:17.420 --> 00:49:17.720
+00:49:15.300 --> 00:49:17.720
but those would be the 2 big ones,
-00:49:19.640 --> 00:49:20.140
+00:49:17.720 --> 00:49:20.140
I think, that are also very uncontroversial.
-00:49:23.460 --> 00:49:23.960
+00:49:22.360 --> 00:49:23.960
It's funny because for me,
-00:49:26.580 --> 00:49:26.760
+00:49:24.400 --> 00:49:26.760
I don't think refactoring would count as a
-00:49:29.260 --> 00:49:29.760
+00:49:26.760 --> 00:49:29.760
feature, but it's so vital to allowing
-00:49:31.280 --> 00:49:31.780
+00:49:30.360 --> 00:49:31.780
further features to be developed.
-00:49:33.940 --> 00:49:34.160
+00:49:31.780 --> 00:49:34.160
Otherwise, I remember the way Org Mode used
-00:49:36.020 --> 00:49:36.300
+00:49:34.160 --> 00:49:36.300
to be before we had Org Element and stuff
-00:49:38.680 --> 00:49:38.940
+00:49:36.300 --> 00:49:38.940
like this. It was really complicated to write
-00:49:40.920 --> 00:49:41.200
+00:49:38.940 --> 00:49:41.200
any kind of parsing stuff for it.
-00:49:42.100 --> 00:49:42.340
+00:49:41.200 --> 00:49:42.340
And now that we've got it,
-00:49:43.580 --> 00:49:44.080
+00:49:42.340 --> 00:49:44.080
it just opened up a world of possibility
-00:49:45.920 --> 00:49:46.160
+00:49:44.180 --> 00:49:46.160
where parsing an Org Mode file is just made
-00:49:47.920 --> 00:49:48.280
+00:49:46.160 --> 00:49:48.280
so much easier. So I think that's a wonderful
-00:49:49.120 --> 00:49:49.620
+00:49:48.280 --> 00:49:49.620
answer because it goes,
-00:49:51.780 --> 00:49:52.080
+00:49:49.760 --> 00:49:52.080
it's multi-layered as you would expect from
-00:49:53.420 --> 00:49:53.920
+00:49:52.080 --> 00:49:53.920
something that concerns the whole of Emacs.
-00:49:56.660 --> 00:49:57.160
+00:49:55.800 --> 00:49:57.160
Moving on to the next question.
-00:49:59.600 --> 00:49:59.960
+00:49:57.440 --> 00:49:59.960
What is the hardest decision being made
-00:50:02.240 --> 00:50:02.480
+00:49:59.960 --> 00:50:02.480
within Emacs dev for the last 3 years.
-00:50:04.760 --> 00:50:04.960
+00:50:02.480 --> 00:50:04.960
I'm not sure, is it the decision in the last
-00:50:07.340 --> 00:50:07.480
+00:50:04.960 --> 00:50:07.480
3 years or I'll let you interpret the
-00:50:08.260 --> 00:50:08.760
+00:50:07.480 --> 00:50:08.760
question however you want.
-00:50:10.460 --> 00:50:10.960
+00:50:09.280 --> 00:50:10.960
Okay, well, I'll say this.
-00:50:13.940 --> 00:50:14.220
+00:50:11.640 --> 00:50:14.220
I started in August and I haven't had any
-00:50:16.480 --> 00:50:16.920
+00:50:14.220 --> 00:50:16.920
really hard decisions so far.
-00:50:20.360 --> 00:50:20.540
+00:50:16.920 --> 00:50:20.540
So good news. Maybe Eli will have more for
-00:50:22.320 --> 00:50:22.820
+00:50:20.540 --> 00:50:22.820
the last 3 years. Keep it simple.
-00:50:28.160 --> 00:50:28.660
+00:50:25.240 --> 00:50:28.660
Thanks. Cool. Next question.
-00:50:31.420 --> 00:50:31.920
+00:50:28.860 --> 00:50:31.920
Any plans to integrate XWM into core?
-00:50:33.900 --> 00:50:34.400
+00:50:31.940 --> 00:50:34.400
Emacs is a really good Winters manager.
-00:50:37.580 --> 00:50:38.080
+00:50:34.780 --> 00:50:38.080
That's super cool. I think EXWM is cool.
-00:50:39.640 --> 00:50:40.140
+00:50:38.100 --> 00:50:40.140
I think they need to upgrade to Wayland
-00:50:41.580 --> 00:50:41.880
+00:50:40.260 --> 00:50:41.880
somehow and that's not clear yet,
-00:50:44.600 --> 00:50:44.880
+00:50:41.880 --> 00:50:44.880
but you know, we don't have any current plans
-00:50:48.400 --> 00:50:48.900
+00:50:44.880 --> 00:50:48.900
to integrate it, no. Right,
-00:50:51.180 --> 00:50:51.600
+00:50:49.020 --> 00:50:51.600
Next question. Do you think it is a good idea
-00:50:53.040 --> 00:50:53.540
+00:50:51.600 --> 00:50:53.540
to choose Org Mode for writing documentation
-00:50:57.260 --> 00:50:57.740
+00:50:53.680 --> 00:50:57.740
instead of tech info? I think that whatever
-00:50:59.440 --> 00:50:59.680
+00:50:57.740 --> 00:50:59.680
we do, it should be the people that are
-00:51:01.520 --> 00:51:01.760
+00:50:59.680 --> 00:51:01.760
working on the documentation that should make
-00:51:03.240 --> 00:51:03.420
+00:51:01.760 --> 00:51:03.420
that choice. Currently we have,
-00:51:05.740 --> 00:51:05.920
+00:51:03.420 --> 00:51:05.920
I think, Modus themes and Org Mode itself is
-00:51:07.560 --> 00:51:08.060
+00:51:05.920 --> 00:51:08.060
writing their documentation in Org Mode,
-00:51:10.440 --> 00:51:10.940
+00:51:08.080 --> 00:51:10.940
that's fine by me. It has some drawbacks,
-00:51:12.940 --> 00:51:13.440
+00:51:10.960 --> 00:51:13.440
it has some benefits, but most documentation
-00:51:14.340 --> 00:51:14.840
+00:51:13.580 --> 00:51:14.840
is still in tech info.
-00:51:17.120 --> 00:51:17.360
+00:51:15.240 --> 00:51:17.360
Maybe we'd need to replace that at some
-00:51:19.600 --> 00:51:19.840
+00:51:17.360 --> 00:51:19.840
point, I don't know. But for now,
-00:51:21.960 --> 00:51:22.280
+00:51:19.840 --> 00:51:22.280
that's what people know and use.
-00:51:24.140 --> 00:51:24.280
+00:51:22.280 --> 00:51:24.280
And if you find that as a barrier to
-00:51:25.440 --> 00:51:25.600
+00:51:24.280 --> 00:51:25.600
contribute to Emacs, I mean,
-00:51:26.920 --> 00:51:27.420
+00:51:25.600 --> 00:51:27.420
just really write it as plain text.
-00:51:28.940 --> 00:51:29.380
+00:51:27.540 --> 00:51:29.380
We'll be happy to help you with the markup.
-00:51:30.140 --> 00:51:30.280
+00:51:29.380 --> 00:51:30.280
It's a little bit, you know,
-00:51:31.260 --> 00:51:31.760
+00:51:30.280 --> 00:51:31.760
finicky and stuff like that.
-00:51:34.560 --> 00:51:35.060
+00:51:33.340 --> 00:51:35.060
Great. Thanks for that.
-00:51:37.900 --> 00:51:38.000
+00:51:35.620 --> 00:51:38.000
Next question. What do you plan to work on in
-00:51:38.860 --> 00:51:39.360
+00:51:38.000 --> 00:51:39.360
Emacs Core in the future?
-00:51:42.440 --> 00:51:42.660
+00:51:40.460 --> 00:51:42.660
I'm a little bit hesitant to reply to that.
-00:51:43.280 --> 00:51:43.740
+00:51:42.660 --> 00:51:43.740
Of course I have ideas.
-00:51:45.360 --> 00:51:45.760
+00:51:43.740 --> 00:51:45.760
Of course there are projects that I'm working
-00:51:47.360 --> 00:51:47.640
+00:51:45.760 --> 00:51:47.640
on. However, if I say it here,
-00:51:48.280 --> 00:51:48.480
+00:51:47.640 --> 00:51:48.480
I feel like, you know,
-00:51:50.740 --> 00:51:51.240
+00:51:48.480 --> 00:51:51.240
then you'll hold me to it later and come ask,
-00:51:51.980 --> 00:51:52.480
+00:51:51.300 --> 00:51:52.480
where is that feature?
-00:51:54.940 --> 00:51:55.180
+00:51:52.640 --> 00:51:55.180
So I'll just say there is plenty of stuff
-00:51:57.100 --> 00:51:57.340
+00:51:55.180 --> 00:51:57.340
that I'm working on, and if you want to know
-00:51:58.520 --> 00:51:58.780
+00:51:57.340 --> 00:51:58.780
some of the stuff that I have been working
-00:51:59.540 --> 00:52:00.040
+00:51:58.780 --> 00:52:00.040
on, check the Git log.
-00:52:02.240 --> 00:52:02.400
+00:52:00.060 --> 00:52:02.400
I think that's just really as much as I want
-00:52:04.540 --> 00:52:05.040
+00:52:02.400 --> 00:52:05.040
to say about that right now.
-00:52:07.180 --> 00:52:07.360
+00:52:05.660 --> 00:52:07.360
You've added folks to just look at the path
-00:52:09.120 --> 00:52:09.620
+00:52:07.360 --> 00:52:09.620
with the changelog and that's all you need.
-00:52:12.840 --> 00:52:13.340
+00:52:11.600 --> 00:52:13.340
All right, moving on to the next question.
-00:52:15.880 --> 00:52:16.120
+00:52:14.020 --> 00:52:16.120
What do you use Emacs for in your life other
-00:52:17.080 --> 00:52:17.580
+00:52:16.120 --> 00:52:17.580
than working on Emacs itself?
-00:52:20.560 --> 00:52:21.060
+00:52:18.080 --> 00:52:21.060
Oh shit. So the big thing is programming,
-00:52:23.520 --> 00:52:24.020
+00:52:21.140 --> 00:52:24.020
right? Now I work as a programmer.
-00:52:28.780 --> 00:52:29.280
+00:52:27.040 --> 00:52:29.280
But in general, I use org mode heavily.
-00:52:30.280 --> 00:52:30.780
+00:52:29.340 --> 00:52:30.780
I use it for all my writing.
-00:52:32.960 --> 00:52:33.460
+00:52:30.820 --> 00:52:33.460
I use it to write, prepare this talk.
-00:52:34.860 --> 00:52:35.360
+00:52:33.480 --> 00:52:35.360
I use it as a productivity system.
-00:52:41.480 --> 00:52:41.980
+00:52:35.380 --> 00:52:41.980
I use it for emails. I use it as an RSS
-00:52:43.980 --> 00:52:44.480
+00:52:41.980 --> 00:52:44.480
reader. I do most of my computing.
-00:52:46.840 --> 00:52:47.040
+00:52:44.760 --> 00:52:47.040
I also have Firefox. So it's like Emacs and
-00:52:48.320 --> 00:52:48.820
+00:52:47.040 --> 00:52:48.820
Firefox for some reason.
-00:52:51.740 --> 00:52:51.900
+00:52:48.900 --> 00:52:51.900
I do read documentation in Emacs as well in
-00:52:57.940 --> 00:52:58.440
+00:52:51.900 --> 00:52:58.440
you, but yeah. Great. I'm still,
-00:53:00.540 --> 00:53:00.720
+00:52:59.180 --> 00:53:00.720
I do very much the same thing with you.
-00:53:01.880 --> 00:53:02.040
+00:53:00.720 --> 00:53:02.040
Like You've described exactly what I do.
-00:53:02.560 --> 00:53:02.960
+00:53:02.040 --> 00:53:02.960
I work as a programmer,
-00:53:04.340 --> 00:53:04.640
+00:53:02.960 --> 00:53:04.640
I use Augment for a lot of stuff,
-00:53:06.220 --> 00:53:06.340
+00:53:04.640 --> 00:53:06.340
and I think that describes a whole lot of
-00:53:07.600 --> 00:53:08.100
+00:53:06.340 --> 00:53:08.100
people currently watching the stream.
-00:53:10.180 --> 00:53:10.680
+00:53:09.380 --> 00:53:10.680
Moving on to the next question.
-00:53:12.540 --> 00:53:12.740
+00:53:10.840 --> 00:53:12.740
What could we do in order to make Emacs more
-00:53:13.780 --> 00:53:14.280
+00:53:12.740 --> 00:53:14.280
attractive for younger users?
-00:53:17.440 --> 00:53:17.940
+00:53:14.820 --> 00:53:17.940
This is an amazing question and I feel wholly
-00:53:20.220 --> 00:53:20.720
+00:53:18.480 --> 00:53:20.720
unprepared to answer this.
-00:53:23.680 --> 00:53:24.180
+00:53:21.180 --> 00:53:24.180
Probably more introductory material aimed at
-00:53:26.180 --> 00:53:26.580
+00:53:24.320 --> 00:53:26.580
that age group. What do you mean by younger
-00:53:28.580 --> 00:53:28.740
+00:53:26.580 --> 00:53:28.740
users? You know what would be really cool if
-00:53:30.240 --> 00:53:30.740
+00:53:28.740 --> 00:53:30.740
you had an Emacs for kids project?
-00:53:31.560 --> 00:53:32.060
+00:53:31.020 --> 00:53:32.060
That would be amazing.
-00:53:34.640 --> 00:53:34.920
+00:53:32.680 --> 00:53:34.920
I'm not sure if that's what people are
-00:53:36.380 --> 00:53:36.880
+00:53:34.920 --> 00:53:36.880
thinking about, but yeah,
-00:53:39.280 --> 00:53:39.780
+00:53:37.200 --> 00:53:39.780
that's about what I can say for now.
-00:53:43.000 --> 00:53:43.320
+00:53:40.380 --> 00:53:43.320
Good question. It is a very good question,
-00:53:45.760 --> 00:53:45.880
+00:53:43.320 --> 00:53:45.880
like it comes back always to a key topic in
-00:53:47.480 --> 00:53:47.720
+00:53:45.880 --> 00:53:47.720
EmacsConf, which is, how do we get more
-00:53:49.040 --> 00:53:49.360
+00:53:47.720 --> 00:53:49.360
people to join us? Because it's a wonderful
-00:53:51.560 --> 00:53:51.760
+00:53:49.360 --> 00:53:51.760
community. And how do we onboard people who
-00:53:53.720 --> 00:53:54.220
+00:53:51.760 --> 00:53:54.220
are not programmers or people who are younger
-00:53:56.220 --> 00:53:56.720
+00:53:54.400 --> 00:53:56.720
than the average Joe coming in those
-00:54:01.240 --> 00:54:01.560
+00:53:57.120 --> 00:54:01.560
meetings? There's this Excellent article by
-00:54:05.460 --> 00:54:05.960
+00:54:01.560 --> 00:54:05.960
Paul Graham, I think, where he was describing
-00:54:08.640 --> 00:54:09.140
+00:54:06.140 --> 00:54:09.140
how they used Emacs as the sort of customer
-00:54:11.120 --> 00:54:11.520
+00:54:09.320 --> 00:54:11.520
service system. They built the customer
-00:54:13.440 --> 00:54:13.940
+00:54:11.520 --> 00:54:13.940
service system for the early days of Amazon
-00:54:17.080 --> 00:54:17.200
+00:54:14.700 --> 00:54:17.200
in Emacs Lisp. And then they switched and all
-00:54:18.280 --> 00:54:18.680
+00:54:17.200 --> 00:54:18.680
the employees were sad.
-00:54:21.480 --> 00:54:21.680
+00:54:18.680 --> 00:54:21.680
So definitely there's more stuff that could
-00:54:24.660 --> 00:54:25.160
+00:54:21.680 --> 00:54:25.160
be done in Emacs and be done better in Emacs.
-00:54:27.240 --> 00:54:27.440
+00:54:25.240 --> 00:54:27.440
So for sure, if people want to explore more
-00:54:28.380 --> 00:54:28.880
+00:54:27.440 --> 00:54:28.880
stuff like that, that's amazing.
-00:54:31.560 --> 00:54:32.040
+00:54:29.720 --> 00:54:32.040
Yeah. And for people who weren't around
-00:54:33.540 --> 00:54:33.740
+00:54:32.040 --> 00:54:33.740
earlier today, we've had a presentation about
-00:54:36.320 --> 00:54:36.820
+00:54:33.740 --> 00:54:36.820
how to get computer science students to use
-00:54:40.900 --> 00:54:41.100
+00:54:36.860 --> 00:54:41.100
Emacs and trying to provide as much
-00:54:43.200 --> 00:54:43.500
+00:54:41.100 --> 00:54:43.500
information and as much tutorial as needed
-00:54:45.060 --> 00:54:45.480
+00:54:43.500 --> 00:54:45.480
for them to understand what is the philosophy
-00:54:47.980 --> 00:54:48.420
+00:54:45.480 --> 00:54:48.420
behind Emacs and how it influences the way
-00:54:49.300 --> 00:54:49.540
+00:54:48.420 --> 00:54:49.540
you work and so forth.
-00:54:51.000 --> 00:54:51.420
+00:54:49.540 --> 00:54:51.420
So you might want to revisit this discussion.
-00:54:53.100 --> 00:54:53.400
+00:54:51.420 --> 00:54:53.400
And we also have plenty of talks talking
-00:54:57.540 --> 00:54:57.720
+00:54:53.400 --> 00:54:57.720
about this issue. And I can just add that I
-00:55:00.220 --> 00:55:00.320
+00:54:57.720 --> 00:55:00.320
think it's very important for us as a
-00:55:02.880 --> 00:55:03.120
+00:55:00.320 --> 00:55:03.120
community to just be enthusiastic to get more
-00:55:04.400 --> 00:55:04.640
+00:55:03.120 --> 00:55:04.640
people involved. Because I mean,
-00:55:06.260 --> 00:55:06.660
+00:55:04.640 --> 00:55:06.660
look, there's this meme where it's like,
-00:55:08.300 --> 00:55:08.620
+00:55:06.660 --> 00:55:08.620
I use Arch Linux, by the way,
-00:55:09.520 --> 00:55:10.020
+00:55:08.620 --> 00:55:10.020
I use Arch, by the way.
-00:55:12.160 --> 00:55:12.380
+00:55:10.080 --> 00:55:12.380
And for some reason, people using Arch keep
-00:55:13.580 --> 00:55:14.080
+00:55:12.380 --> 00:55:14.080
telling you that they're using Arch.
-00:55:15.860 --> 00:55:16.160
+00:55:14.600 --> 00:55:16.160
That's fine. Use whatever you want.
-00:55:17.760 --> 00:55:18.260
+00:55:16.160 --> 00:55:18.260
It's free software, I don't care.
-00:55:21.500 --> 00:55:21.900
+00:55:20.140 --> 00:55:21.900
I think if you look at Vim users,
-00:55:22.940 --> 00:55:23.440
+00:55:21.900 --> 00:55:23.440
they're very almost militant,
-00:55:25.280 --> 00:55:25.780
+00:55:23.540 --> 00:55:25.780
oh, we're Vim, and Vim is the thing.
-00:55:26.980 --> 00:55:27.480
+00:55:25.920 --> 00:55:27.480
And Emacs users sometimes,
-00:55:29.540 --> 00:55:29.960
+00:55:27.700 --> 00:55:29.960
and it's fine. We take a bit of a more
-00:55:30.860 --> 00:55:31.160
+00:55:29.960 --> 00:55:31.160
laid-back approach. We're like,
-00:55:32.400 --> 00:55:32.720
+00:55:31.160 --> 00:55:32.720
yeah, I use Emacs, you use Vim,
-00:55:35.080 --> 00:55:35.320
+00:55:32.720 --> 00:55:35.320
whatever. And that's fine.
-00:55:36.460 --> 00:55:36.820
+00:55:35.320 --> 00:55:36.820
I mean, that's the correct approach,
-00:55:38.300 --> 00:55:38.480
+00:55:36.820 --> 00:55:38.480
I think. You should respect what people want
-00:55:40.520 --> 00:55:40.840
+00:55:38.480 --> 00:55:40.840
to use. I don't care that people use VS Code
-00:55:42.380 --> 00:55:42.540
+00:55:40.840 --> 00:55:42.540
or whatever. I'm not going to use that
-00:55:43.520 --> 00:55:43.940
+00:55:42.540 --> 00:55:43.940
because it's too limiting.
-00:55:45.280 --> 00:55:45.780
+00:55:43.940 --> 00:55:45.780
It's not really a workable environment.
-00:55:48.120 --> 00:55:48.620
+00:55:46.400 --> 00:55:48.620
But I think it's OK to be enthusiastic.
-00:55:51.180 --> 00:55:51.360
+00:55:48.740 --> 00:55:51.360
I think it's okay to talk about that type of
-00:55:53.600 --> 00:55:54.100
+00:55:51.360 --> 00:55:54.100
enthusiasm and anything that can help
-00:55:56.600 --> 00:55:56.880
+00:55:54.400 --> 00:55:56.880
increase the enthusiasm around Emacs can only
-00:56:00.600 --> 00:56:01.100
+00:55:56.880 --> 00:56:01.100
help the longevity of Emacs.
-00:56:04.080 --> 00:56:04.280
+00:56:02.520 --> 00:56:04.280
I agree and that's also 1 of the key
-00:56:04.840 --> 00:56:05.340
+00:56:04.280 --> 00:56:05.340
objectives of EmacsConf.
-00:56:07.280 --> 00:56:07.660
+00:56:05.460 --> 00:56:07.660
It's about bringing a lot of amazing people
-00:56:08.600 --> 00:56:09.100
+00:56:07.660 --> 00:56:09.100
to come talk, like you,
-00:56:10.920 --> 00:56:11.400
+00:56:09.140 --> 00:56:11.400
about stuff that is very dear to you.
-00:56:13.740 --> 00:56:14.180
+00:56:11.400 --> 00:56:14.180
And it's very tangible how much you care,
-00:56:15.540 --> 00:56:15.920
+00:56:14.180 --> 00:56:15.920
all of you, about what you're presenting.
-00:56:18.340 --> 00:56:18.560
+00:56:15.920 --> 00:56:18.560
And it's amazing to put all of you people on
-00:56:20.640 --> 00:56:20.800
+00:56:18.560 --> 00:56:20.800
just 48 hours talking about all of this and
-00:56:22.720 --> 00:56:22.920
+00:56:20.800 --> 00:56:22.920
then creating so much content for people to
-00:56:24.280 --> 00:56:24.480
+00:56:22.920 --> 00:56:24.480
watch. And I think it's really helping the
-00:56:27.900 --> 00:56:28.140
+00:56:24.480 --> 00:56:28.140
enthusiasm to live on and to gather a little
-00:56:29.160 --> 00:56:29.660
+00:56:28.140 --> 00:56:29.660
more snow as it comes down.
-00:56:31.440 --> 00:56:31.720
+00:56:29.920 --> 00:56:31.720
Yeah, I watch you Max Conf every year.
-00:56:32.960 --> 00:56:33.460
+00:56:31.720 --> 00:56:33.460
I think it's a lot of fun.
-00:56:37.120 --> 00:56:37.360
+00:56:34.300 --> 00:56:37.360
Thank you. I'll take the compliment for
-00:56:38.120 --> 00:56:38.620
+00:56:37.360 --> 00:56:38.620
everyone else in the team.
-00:56:40.960 --> 00:56:41.120
+00:56:39.620 --> 00:56:41.120
We're going to go a little bit longer with
-00:56:42.720 --> 00:56:42.800
+00:56:41.120 --> 00:56:42.800
the Q&A because we still have a lot of
-00:56:44.380 --> 00:56:44.480
+00:56:42.800 --> 00:56:44.480
questions and if Stéphane is still willing to
-00:56:47.860 --> 00:56:48.160
+00:56:44.480 --> 00:56:48.160
answer, I'm still willing to not go too bad
-00:56:49.540 --> 00:56:49.740
+00:56:48.160 --> 00:56:49.740
to hear a lot more of it.
-00:56:50.140 --> 00:56:50.580
+00:56:49.740 --> 00:56:50.580
Yeah, for me it's fine.
-00:56:55.580 --> 00:56:55.760
+00:56:50.580 --> 00:56:55.760
I have time. Great. So I think I've done this
-00:56:56.960 --> 00:56:57.460
+00:56:55.760 --> 00:56:57.460
question. So, all right.
-00:56:59.820 --> 00:57:00.060
+00:56:58.080 --> 00:57:00.060
How are we going to make sure that a cool
-00:57:01.760 --> 00:57:01.960
+00:57:00.060 --> 00:57:01.960
idea is going to pass it through for the next
-00:57:03.600 --> 00:57:04.100
+00:57:01.960 --> 00:57:04.100
generation, let's say 20 years later,
-00:57:05.540 --> 00:57:05.860
+00:57:04.120 --> 00:57:05.860
the generation still have the good knowledge
-00:57:09.600 --> 00:57:09.940
+00:57:05.860 --> 00:57:09.940
we have today. Yeah, so I mean,
-00:57:12.440 --> 00:57:12.840
+00:57:09.940 --> 00:57:12.840
if you think about what does EMAX need to
-00:57:14.880 --> 00:57:15.180
+00:57:12.840 --> 00:57:15.180
have staying power, so in general,
-00:57:16.840 --> 00:57:17.020
+00:57:15.180 --> 00:57:17.020
they say, you know, if if when you start a
-00:57:18.900 --> 00:57:19.340
+00:57:17.020 --> 00:57:19.340
company, if you have a company for 1 year,
-00:57:19.900 --> 00:57:20.220
+00:57:19.340 --> 00:57:20.220
then in all likelihood,
-00:57:21.560 --> 00:57:21.820
+00:57:20.220 --> 00:57:21.820
you're going to have it for 2 years because,
-00:57:23.320 --> 00:57:23.680
+00:57:21.820 --> 00:57:23.680
you know, it's just so if you've had Emacs
-00:57:25.760 --> 00:57:25.840
+00:57:23.680 --> 00:57:25.840
for 4 years, I'm saying that we're going to
-00:57:27.520 --> 00:57:27.980
+00:57:25.840 --> 00:57:27.980
have Emacs for the next 4 years as well.
-00:57:30.200 --> 00:57:30.540
+00:57:27.980 --> 00:57:30.540
Just based on that, I'm not sure the logic
-00:57:31.700 --> 00:57:32.200
+00:57:30.540 --> 00:57:32.200
holds up, but you know,
-00:57:33.820 --> 00:57:34.320
+00:57:32.440 --> 00:57:34.320
how does Emacs stay relevant?
-00:57:35.120 --> 00:57:35.500
+00:57:34.340 --> 00:57:35.500
I think is the question.
-00:57:37.900 --> 00:57:38.400
+00:57:35.500 --> 00:57:38.400
Well, I think we need to continue working on
-00:57:41.540 --> 00:57:41.840
+00:57:38.520 --> 00:57:41.840
all the types of exploratory work that people
-00:57:43.360 --> 00:57:43.820
+00:57:41.840 --> 00:57:43.820
are doing in the community.
-00:57:45.460 --> 00:57:45.720
+00:57:43.820 --> 00:57:45.720
I think there is fundamental stuff that needs
-00:57:47.440 --> 00:57:47.720
+00:57:45.720 --> 00:57:47.720
to be done. I mean, if people want to work
-00:57:49.000 --> 00:57:49.400
+00:57:47.720 --> 00:57:49.400
on, you know, web rendering and Emacs,
-00:57:50.060 --> 00:57:50.240
+00:57:49.400 --> 00:57:50.240
maybe that's the next,
-00:57:53.000 --> 00:57:53.240
+00:57:50.240 --> 00:57:53.240
you know, revolutionary step that we need
-00:57:55.020 --> 00:57:55.320
+00:57:53.240 --> 00:57:55.320
that could, you know, really showcase what
-00:57:57.380 --> 00:57:57.640
+00:57:55.320 --> 00:57:57.640
Emacs, you know, as, you know,
-00:58:00.140 --> 00:58:00.620
+00:57:57.640 --> 00:58:00.620
an idea, even if not Emacs as a software
-00:58:01.680 --> 00:58:01.960
+00:58:00.620 --> 00:58:01.960
could be and, you know,
-00:58:04.600 --> 00:58:05.000
+00:58:01.960 --> 00:58:05.000
Because there is huge potential in the idea
-00:58:06.600 --> 00:58:07.100
+00:58:05.000 --> 00:58:07.100
as such. So maybe that's something.
-00:58:09.340 --> 00:58:09.600
+00:58:07.960 --> 00:58:09.600
But I mean, from the point of view of core
-00:58:11.380 --> 00:58:11.840
+00:58:09.600 --> 00:58:11.840
development, I think we need to just continue
-00:58:14.540 --> 00:58:15.040
+00:58:11.840 --> 00:58:15.040
working on the fundamental technologies.
-00:58:17.760 --> 00:58:17.980
+00:58:15.260 --> 00:58:17.980
1 thing that I would like to eventually see
-00:58:19.200 --> 00:58:19.700
+00:58:17.980 --> 00:58:19.700
is a better garbage collector.
-00:58:22.020 --> 00:58:22.280
+00:58:19.900 --> 00:58:22.280
We've talked about that for a long time,
-00:58:24.640 --> 00:58:25.140
+00:58:22.280 --> 00:58:25.140
but I mean, we need someone to do the job
-00:58:27.720 --> 00:58:27.980
+00:58:25.380 --> 00:58:27.980
really. It's not very easy.
-00:58:29.280 --> 00:58:29.780
+00:58:27.980 --> 00:58:29.780
It's very hard, actually.
-00:58:33.780 --> 00:58:34.000
+00:58:31.100 --> 00:58:34.000
So just continues working on stuff like that,
-00:58:34.680 --> 00:58:35.180
+00:58:34.000 --> 00:58:35.180
continue with the exploration,
-00:58:39.860 --> 00:58:40.260
+00:58:35.800 --> 00:58:40.260
continue using and being excited about Emacs.
-00:58:42.980 --> 00:58:43.180
+00:58:40.260 --> 00:58:43.180
I think that's the best guarantee that we
-00:58:45.480 --> 00:58:45.800
+00:58:43.180 --> 00:58:45.800
have. Yeah, and perhaps to echo something
-00:58:46.280 --> 00:58:46.780
+00:58:45.800 --> 00:58:46.780
that you said earlier,
-00:58:47.580 --> 00:58:47.960
+00:58:46.840 --> 00:58:47.960
the tools that you're using,
-00:58:49.540 --> 00:58:49.920
+00:58:47.960 --> 00:58:49.920
like the emails, they've been around forever,
-00:58:50.600 --> 00:58:51.100
+00:58:49.920 --> 00:58:51.100
they will be around forever.
-00:58:53.320 --> 00:58:53.480
+00:58:51.500 --> 00:58:53.480
This pragmatic stance on the tools that
-00:58:56.120 --> 00:58:56.240
+00:58:53.480 --> 00:58:56.240
you're using, they might look stayed from the
-00:58:58.380 --> 00:58:58.880
+00:58:56.240 --> 00:58:58.880
outside, but ultimately they are what permits
-00:59:01.780 --> 00:59:02.280
+00:58:59.220 --> 00:59:02.280
a sense of longevity to any kind of project
-00:59:05.200 --> 00:59:05.460
+00:59:03.300 --> 00:59:05.460
you embark upon. Also,
-00:59:06.760 --> 00:59:07.260
+00:59:05.460 --> 00:59:07.260
in a sense, I think that the expectations
-00:59:09.140 --> 00:59:09.320
+00:59:07.740 --> 00:59:09.320
might be changing in the sense that,
-00:59:12.320 --> 00:59:12.820
+00:59:09.320 --> 00:59:12.820
you know, when I started using GNU Linux,
-00:59:14.580 --> 00:59:15.060
+00:59:12.980 --> 00:59:15.060
you know what the first thing I did was,
-00:59:16.560 --> 00:59:16.960
+00:59:15.060 --> 00:59:16.960
because I couldn't get Xorg to run.
-00:59:18.840 --> 00:59:19.040
+00:59:16.960 --> 00:59:19.040
So the first thing you had to do was you had
-00:59:20.440 --> 00:59:20.820
+00:59:19.040 --> 00:59:20.820
to compile your own Linux kernel.
-00:59:22.800 --> 00:59:22.960
+00:59:20.820 --> 00:59:22.960
So you sit there and make manuconfig and
-00:59:24.640 --> 00:59:24.880
+00:59:22.960 --> 00:59:24.880
you'll like, try to read it and you've never
-00:59:25.840 --> 00:59:26.320
+00:59:24.880 --> 00:59:26.320
done anything like this before.
-00:59:27.440 --> 00:59:27.800
+00:59:26.320 --> 00:59:27.800
You know, I was just a kid.
-00:59:29.340 --> 00:59:29.540
+00:59:27.800 --> 00:59:29.540
I had never been at this kind of,
-00:59:31.360 --> 00:59:31.560
+00:59:29.540 --> 00:59:31.560
you know, whatever. So I had to start with
-00:59:33.740 --> 00:59:34.200
+00:59:31.560 --> 00:59:34.200
that. And then you have to write the X or
-00:59:35.820 --> 00:59:36.100
+00:59:34.200 --> 00:59:36.100
configuration file. And I had the patience
-00:59:36.600 --> 00:59:37.100
+00:59:36.100 --> 00:59:37.100
for that. But nowadays,
-00:59:38.100 --> 00:59:38.600
+00:59:37.200 --> 00:59:38.600
people have different expectations.
-00:59:39.960 --> 00:59:40.460
+00:59:38.740 --> 00:59:40.460
You just install something,
-00:59:42.600 --> 00:59:42.720
+00:59:40.640 --> 00:59:42.720
and it works. And we need to keep that in
-00:59:45.100 --> 00:59:45.280
+00:59:42.720 --> 00:59:45.280
mind as well. So that's why I keep pushing as
-00:59:48.220 --> 00:59:48.720
+00:59:45.280 --> 00:59:48.720
1 of my big things. We need to build a more
-00:59:50.920 --> 00:59:51.180
+00:59:48.740 --> 00:59:51.180
cohesive experience out of the box.
-00:59:52.040 --> 00:59:52.540
+00:59:51.180 --> 00:59:52.540
Of course, that can be customizable.
-00:59:55.080 --> 00:59:55.240
+00:59:52.940 --> 00:59:55.240
You shouldn't shoehorn anything in just for
-00:59:58.260 --> 00:59:58.760
+00:59:55.240 --> 00:59:58.760
the sake of it. But you could get some things
-01:00:00.420 --> 01:00:00.920
+00:59:58.940 --> 01:00:00.920
a little bit more for free.
-01:00:02.860 --> 01:00:03.080
+01:00:01.220 --> 01:00:03.080
And maybe some of us that have our own
-01:00:04.640 --> 01:00:04.780
+01:00:03.080 --> 01:00:04.780
configs and we've been doing this for you
-01:00:07.220 --> 01:00:07.720
+01:00:04.780 --> 01:00:07.720
know, 2, 05:10, even 20 years,
-01:00:09.480 --> 01:00:09.660
+01:00:08.480 --> 01:00:09.660
we could also see, you know,
-01:00:11.400 --> 01:00:11.640
+01:00:09.660 --> 01:00:11.640
from the point of view of a new user that
-01:00:13.440 --> 01:00:13.780
+01:00:11.640 --> 01:00:13.780
just installs VS Code and then they click,
-01:00:15.420 --> 01:00:15.680
+01:00:13.780 --> 01:00:15.680
yes I use Python, yes I use that,
-01:00:18.340 --> 01:00:18.840
+01:00:15.680 --> 01:00:18.840
and then it just automatically works.
-01:00:20.280 --> 01:00:20.600
+01:00:19.200 --> 01:00:20.600
You know what I mean? I mean,
-01:00:24.020 --> 01:00:24.140
+01:00:20.600 --> 01:00:24.140
then could we get closer to that perhaps a
-01:00:25.560 --> 01:00:26.060
+01:00:24.140 --> 01:00:26.060
little bit? I think that would also help.
-01:00:28.500 --> 01:00:28.700
+01:00:26.760 --> 01:00:28.700
Yeah, I think that's what we call the
-01:00:30.280 --> 01:00:30.580
+01:00:28.700 --> 01:00:30.580
configuration wizard. And we were talking
-01:00:32.440 --> 01:00:32.520
+01:00:30.580 --> 01:00:32.520
about this, I think, a couple of years ago at
-01:00:34.000 --> 01:00:34.200
+01:00:32.520 --> 01:00:34.200
EmacsConf. I can't remember if it was with
-01:00:35.380 --> 01:00:35.740
+01:00:34.200 --> 01:00:35.740
Adam in the chat. Adam,
-01:00:37.760 --> 01:00:38.240
+01:00:35.740 --> 01:00:38.240
I mean Alpha Papa, or if it was with Bastien,
-01:00:40.200 --> 01:00:40.440
+01:00:38.240 --> 01:00:40.440
but I remember the idea cropping off.
-01:00:42.380 --> 01:00:42.520
+01:00:40.440 --> 01:00:42.520
Like, it's either you get a tutorial for
-01:00:43.240 --> 01:00:43.520
+01:00:42.520 --> 01:00:43.520
Emacs, a proper tutorial,
-01:00:45.140 --> 01:00:45.640
+01:00:43.520 --> 01:00:45.640
or you get a wizard, or you get both,
-01:00:47.160 --> 01:00:47.520
+01:00:45.640 --> 01:00:47.520
and then all is right for the world.
-01:00:48.920 --> 01:00:49.420
+01:00:47.520 --> 01:00:49.420
But definitely cool ideas being evoked.
-01:00:52.120 --> 01:00:52.280
+01:00:50.280 --> 01:00:52.280
I'm gonna say I need to decree the time when
-01:00:53.940 --> 01:00:54.440
+01:00:52.280 --> 01:00:54.440
we finish because for me it is 11.15
-01:00:59.060 --> 01:00:59.300
+01:00:55.080 --> 01:00:59.300
p.m. And I think my co-organizers are also
-01:01:01.440 --> 01:01:01.680
+01:00:59.300 --> 01:01:01.680
willing to end the day and go rest because
-01:01:03.040 --> 01:01:03.540
+01:01:01.680 --> 01:01:03.540
we've got another day to go tomorrow.
-01:01:05.920 --> 01:01:06.280
+01:01:03.760 --> 01:01:06.280
So how about we take 3 minutes and 30 seconds
-01:01:07.800 --> 01:01:08.300
+01:01:06.280 --> 01:01:08.300
to try to answer a little bit more succinctly
-01:01:09.520 --> 01:01:09.780
+01:01:08.560 --> 01:01:09.780
the questions we've got left.
-01:01:10.440 --> 01:01:10.940
+01:01:09.780 --> 01:01:10.940
How does that sound, Stefan?
-01:01:15.040 --> 01:01:15.200
+01:01:11.320 --> 01:01:15.200
Sounds great. Cool, so I'll start reading the
-01:01:16.640 --> 01:01:17.140
+01:01:15.200 --> 01:01:17.140
questions then that we've got left.
-01:01:20.680 --> 01:01:20.840
+01:01:18.340 --> 01:01:20.840
So this 1 we've got. If you're willing to
-01:01:22.200 --> 01:01:22.360
+01:01:20.840 --> 01:01:22.360
discuss it, what do you think about the
-01:01:24.520 --> 01:01:24.720
+01:01:22.360 --> 01:01:24.720
recent controversy about use of CLLib in
-01:01:29.920 --> 01:01:29.980
+01:01:24.720 --> 01:01:29.980
Emacs call code? Am I willing to discuss
-01:01:35.460 --> 01:01:35.960
+01:01:29.980 --> 01:01:35.960
that? I have said my opinion on Emacs,
-01:01:40.080 --> 01:01:40.580
+01:01:36.420 --> 01:01:40.580
Devel, I think. And I think I understand,
-01:01:44.540 --> 01:01:44.820
+01:01:40.680 --> 01:01:44.820
I think, the viewpoints of both sides in that
-01:01:46.320 --> 01:01:46.720
+01:01:44.820 --> 01:01:46.720
discussion. It is true that some things,
-01:01:49.060 --> 01:01:49.280
+01:01:46.720 --> 01:01:49.280
I mean, we have to think about that.
-01:01:49.960 --> 01:01:50.340
+01:01:49.280 --> 01:01:50.340
There is a real problem,
-01:01:53.300 --> 01:01:53.520
+01:01:50.340 --> 01:01:53.520
I think, when we have 3 different APIs for
-01:01:54.640 --> 01:01:55.140
+01:01:53.520 --> 01:01:55.140
doing the same thing in Emacs.
-01:01:56.580 --> 01:01:57.080
+01:01:55.320 --> 01:01:57.080
And can we make that a little bit better?
-01:01:58.780 --> 01:01:59.280
+01:01:57.280 --> 01:01:59.280
I mean, perhaps we could,
-01:02:03.840 --> 01:02:04.040
+01:01:59.760 --> 01:02:04.040
right? So that's about as much as I'd like to
-01:02:06.560 --> 01:02:06.940
+01:02:04.040 --> 01:02:06.940
say. Fair enough. I would have also accepted
-01:02:09.060 --> 01:02:09.160
+01:02:06.940 --> 01:02:09.160
that CL loops are ugly to write and they
-01:02:09.840 --> 01:02:10.320
+01:02:09.160 --> 01:02:10.320
don't feel very lispy.
-01:02:11.540 --> 01:02:12.040
+01:02:10.320 --> 01:02:12.040
But I'll take your answer as well.
-01:02:14.860 --> 01:02:15.360
+01:02:13.260 --> 01:02:15.360
Yeah, some people think that.
-01:02:17.900 --> 01:02:18.400
+01:02:15.660 --> 01:02:18.400
I understand that position as well.
-01:02:20.720 --> 01:02:21.220
+01:02:19.200 --> 01:02:21.220
Right. Okay, next question.
-01:02:22.600 --> 01:02:23.100
+01:02:21.260 --> 01:02:23.100
When we find a bug in our Emacs,
-01:02:24.840 --> 01:02:25.200
+01:02:23.100 --> 01:02:25.200
do we need to try to replicate it on our side
-01:02:26.380 --> 01:02:26.780
+01:02:25.200 --> 01:02:26.780
version, on our SID version,
-01:02:29.040 --> 01:02:29.340
+01:02:26.780 --> 01:02:29.340
sorry, then update all the usual list package
-01:02:31.320 --> 01:02:31.480
+01:02:29.340 --> 01:02:31.480
we use, and if we succeed to replicate the
-01:02:33.160 --> 01:02:33.340
+01:02:31.480 --> 01:02:33.340
bug in this version, only then go to
-01:02:34.920 --> 01:02:35.420
+01:02:33.340 --> 01:02:35.420
development version 30 and do the same.
-01:02:37.480 --> 01:02:37.580
+01:02:35.660 --> 01:02:37.580
Then only ask for assistance in reporting the
-01:02:40.080 --> 01:02:40.260
+01:02:37.580 --> 01:02:40.260
bug we found. So I believe when they
-01:02:43.220 --> 01:02:43.540
+01:02:40.260 --> 01:02:43.540
encounter a bug, are people supposed to go to
-01:02:47.220 --> 01:02:47.500
+01:02:43.540 --> 01:02:47.500
master to pull main and just to make sure
-01:02:48.420 --> 01:02:48.740
+01:02:47.500 --> 01:02:48.740
that they are on the latest version.
-01:02:49.480 --> 01:02:49.980
+01:02:48.740 --> 01:02:49.980
Is this something that you require?
-01:02:51.460 --> 01:02:51.860
+01:02:50.660 --> 01:02:51.860
We don't require that,
-01:02:54.440 --> 01:02:54.940
+01:02:51.860 --> 01:02:54.940
but we do try to encourage you to reproduce
-01:02:56.880 --> 01:02:57.380
+01:02:54.960 --> 01:02:57.380
it on master if we think that it matters.
-01:03:00.420 --> 01:03:00.920
+01:02:57.720 --> 01:03:00.920
Yeah, so if you can, that's even better.
-01:03:03.540 --> 01:03:03.940
+01:03:01.620 --> 01:03:03.940
But if the bug is there in Emacs 29,
-01:03:05.500 --> 01:03:06.000
+01:03:03.940 --> 01:03:06.000
maybe we want to fix it in Emacs 29.2.
-01:03:09.320 --> 01:03:09.820
+01:03:06.340 --> 01:03:09.820
So the latest point release is also fine.
-01:03:12.540 --> 01:03:12.940
+01:03:10.400 --> 01:03:12.940
Bugs in Emacs 28 at this point,
-01:03:14.280 --> 01:03:14.780
+01:03:12.940 --> 01:03:14.780
like the previous major version,
-01:03:17.560 --> 01:03:17.720
+01:03:15.060 --> 01:03:17.720
we might ask you to try to reproduce it on
-01:03:19.400 --> 01:03:19.600
+01:03:17.720 --> 01:03:19.600
Emacs 29 because we're not planning more
-01:03:21.200 --> 01:03:21.600
+01:03:19.600 --> 01:03:21.600
releases of old major versions.
-01:03:23.160 --> 01:03:23.660
+01:03:21.600 --> 01:03:23.660
So that's the fundamental reason for that.
-01:03:25.320 --> 01:03:25.820
+01:03:24.480 --> 01:03:25.820
Great. Thank you for your answer.
-01:03:27.180 --> 01:03:27.680
+01:03:25.900 --> 01:03:27.680
All right. Moving on to the next question.
-01:03:28.780 --> 01:03:29.280
+01:03:27.840 --> 01:03:29.280
On branching off sub-threads,
-01:03:31.720 --> 01:03:31.840
+01:03:29.680 --> 01:03:31.840
I note that they are less visible compared to
-01:03:32.880 --> 01:03:33.380
+01:03:31.840 --> 01:03:33.380
starting a new thread in practice.
-01:03:35.440 --> 01:03:35.680
+01:03:33.520 --> 01:03:35.680
I am wondering if it is just my impression or
-01:03:36.900 --> 01:03:37.400
+01:03:35.680 --> 01:03:37.400
something devs also observe.
-01:03:39.280 --> 01:03:39.780
+01:03:37.920 --> 01:03:39.780
Yeah, it's true. That's correct.
-01:03:42.660 --> 01:03:42.840
+01:03:41.400 --> 01:03:42.840
I don't know what to do about it.
-01:03:43.660 --> 01:03:44.160
+01:03:42.840 --> 01:03:44.160
If you want more visibility,
-01:03:45.420 --> 01:03:45.920
+01:03:44.180 --> 01:03:45.920
I guess just start a new thread.
-01:03:48.480 --> 01:03:48.960
+01:03:47.080 --> 01:03:48.960
I don't know. I can only agree,
-01:03:50.380 --> 01:03:50.880
+01:03:48.960 --> 01:03:50.880
really. I concur. That's true.
-01:03:53.760 --> 01:03:54.260
+01:03:51.720 --> 01:03:54.260
Okay. Next question. What about rewriting
-01:03:56.600 --> 01:03:57.100
+01:03:54.340 --> 01:03:57.100
Emacs in Rust? Use Guile instead of Elisp.
-01:03:59.380 --> 01:03:59.580
+01:03:57.260 --> 01:03:59.580
Multi-threaded Emacs. Make Emacs prettier and
-01:04:01.260 --> 01:04:01.760
+01:03:59.580 --> 01:04:01.760
shiny. And of course, same defaults.
-01:04:04.120 --> 01:04:04.440
+01:04:02.220 --> 01:04:04.440
Just kidding. We are spoiled children because
-01:04:07.280 --> 01:04:07.780
+01:04:04.440 --> 01:04:07.780
you and Eli, Lars, and etc do an impressive
-01:04:10.120 --> 01:04:10.620
+01:04:08.420 --> 01:04:10.620
work. I live in Emacs since 2001.
-01:04:13.980 --> 01:04:14.220
+01:04:11.040 --> 01:04:14.220
Thanks. That was a good 1.
-01:04:17.380 --> 01:04:17.880
+01:04:14.220 --> 01:04:17.880
Sane defaults. Okay, Well,
-01:04:20.080 --> 01:04:20.580
+01:04:18.900 --> 01:04:20.580
thank you. Thanks for that comment.
-01:04:23.300 --> 01:04:23.440
+01:04:20.580 --> 01:04:23.440
That made me chuckle. Next question by the
-01:04:24.060 --> 01:04:24.520
+01:04:23.440 --> 01:04:24.520
same person, I assume.
-01:04:26.120 --> 01:04:26.580
+01:04:24.520 --> 01:04:26.580
The only downside I see with copyright
-01:04:28.400 --> 01:04:28.900
+01:04:26.580 --> 01:04:28.900
assignment is that 1 has to disclose their
-01:04:31.120 --> 01:04:31.240
+01:04:28.900 --> 01:04:31.240
real identity. Would it be a possibility to
-01:04:32.360 --> 01:04:32.860
+01:04:31.240 --> 01:04:32.860
assign a copyright under a nickname?
-01:04:34.640 --> 01:04:34.840
+01:04:33.160 --> 01:04:34.840
Yeah, you don't have to say a real name.
-01:04:36.760 --> 01:04:37.260
+01:04:34.840 --> 01:04:37.260
Just register some pseudonym.
-01:04:39.080 --> 01:04:39.440
+01:04:37.360 --> 01:04:39.440
The FSF does need your real name,
-01:04:40.920 --> 01:04:41.420
+01:04:39.440 --> 01:04:41.420
but that's kept private only.
-01:04:45.660 --> 01:04:45.920
+01:04:41.500 --> 01:04:45.920
So feel free to reach out to assign at
-01:04:47.860 --> 01:04:48.360
+01:04:45.920 --> 01:04:48.360
gnu.org and ask more about that.
-01:04:51.180 --> 01:04:51.680
+01:04:49.860 --> 01:04:51.680
Right. All right, next question.
-01:04:53.240 --> 01:04:53.400
+01:04:51.820 --> 01:04:53.400
Do you think it is possible to reach an
-01:04:54.880 --> 01:04:55.240
+01:04:53.400 --> 01:04:55.240
agreement on sane defaults for better
-01:04:56.720 --> 01:04:57.220
+01:04:55.240 --> 01:04:57.220
out-of-the-box experience?
-01:04:59.540 --> 01:05:00.040
+01:04:57.800 --> 01:05:00.040
Yeah, so your sane is not my sane
-01:05:01.260 --> 01:05:01.760
+01:05:00.060 --> 01:05:01.760
necessarily. So that's the fundamental
-01:05:02.800 --> 01:05:02.960
+01:05:01.780 --> 01:05:02.960
problem that we're discussing here.
-01:05:03.620 --> 01:05:03.960
+01:05:02.960 --> 01:05:03.960
I think it's a social,
-01:05:04.740 --> 01:05:05.240
+01:05:03.960 --> 01:05:05.240
not a technical problem.
-01:05:07.080 --> 01:05:07.580
+01:05:05.380 --> 01:05:07.580
We do change defaults sometimes,
-01:05:09.620 --> 01:05:09.880
+01:05:07.640 --> 01:05:09.880
but I mean, there is also some staying power.
-01:05:11.980 --> 01:05:12.260
+01:05:09.880 --> 01:05:12.260
So it's understandable that,
-01:05:13.780 --> 01:05:13.940
+01:05:12.260 --> 01:05:13.940
you know, it's, we can't just change them
-01:05:15.580 --> 01:05:15.920
+01:05:13.940 --> 01:05:15.920
willy nilly and then flip flop between,
-01:05:18.080 --> 01:05:18.340
+01:05:15.920 --> 01:05:18.340
you know, 1 or the other kind of thing.
-01:05:19.760 --> 01:05:20.060
+01:05:18.340 --> 01:05:20.060
So it does take a little bit more time.
-01:05:22.360 --> 01:05:22.860
+01:05:20.060 --> 01:05:22.860
But yeah, sure, we can.
-01:05:25.360 --> 01:05:25.860
+01:05:23.000 --> 01:05:25.860
We do change defaults at times.
-01:05:29.540 --> 01:05:29.780
+01:05:26.380 --> 01:05:29.780
But it's perhaps more slower than what some
-01:05:30.920 --> 01:05:31.420
+01:05:29.780 --> 01:05:31.420
people would prefer, for sure.
-01:05:35.660 --> 01:05:36.000
+01:05:31.640 --> 01:05:36.000
So that's, yeah. Right,
-01:05:37.120 --> 01:05:37.620
+01:05:36.000 --> 01:05:37.620
all right. We have 2 more questions.
-01:05:39.520 --> 01:05:40.020
+01:05:37.920 --> 01:05:40.020
So will XWidgets have a future?
-01:05:41.680 --> 01:05:42.180
+01:05:40.120 --> 01:05:42.180
Seeing the new bugs popping up in the latest
-01:05:45.020 --> 01:05:45.280
+01:05:42.740 --> 01:05:45.280
XWidget dev. Not sure if there was the rest
-01:05:46.220 --> 01:05:46.640
+01:05:45.280 --> 01:05:46.640
of the question, But on XWidgets,
-01:05:47.440 --> 01:05:47.940
+01:05:46.640 --> 01:05:47.940
can you tell us a little more?
-01:05:50.380 --> 01:05:50.580
+01:05:48.740 --> 01:05:50.580
I'm not really following now.
-01:05:51.900 --> 01:05:52.400
+01:05:50.580 --> 01:05:52.400
I mean, I'm not seeing a lot of development
-01:05:53.680 --> 01:05:54.180
+01:05:52.500 --> 01:05:54.180
on XWidgets currently.
-01:05:56.820 --> 01:05:57.100
+01:05:54.480 --> 01:05:57.100
Some people have done work in fixing up a few
-01:05:59.820 --> 01:06:00.320
+01:05:57.100 --> 01:06:00.320
bugs, but I think that feature really needs
-01:06:01.800 --> 01:06:02.180
+01:06:00.380 --> 01:06:02.180
more love. So I think we need,
-01:06:03.120 --> 01:06:03.600
+01:06:02.180 --> 01:06:03.600
you know, help is welcome,
-01:06:05.740 --> 01:06:05.920
+01:06:03.600 --> 01:06:05.920
patch is welcome. That's what I can say about
-01:06:11.040 --> 01:06:11.180
+01:06:05.920 --> 01:06:11.180
that. All right, and our final question of
-01:06:13.040 --> 01:06:13.140
+01:06:11.180 --> 01:06:13.140
the day. Have you voted for Emacs as the
-01:06:14.760 --> 01:06:15.140
+01:06:13.140 --> 01:06:15.140
software of the year on the Tuxes by Jupyter
-01:06:17.320 --> 01:06:17.480
+01:06:15.140 --> 01:06:17.480
Broadcasting? I did because Emacs 29 is
-01:06:19.020 --> 01:06:19.300
+01:06:17.480 --> 01:06:19.300
great. Thank you. Okay,
-01:06:20.160 --> 01:06:20.580
+01:06:19.300 --> 01:06:20.580
well, good job voting.
-01:06:22.760 --> 01:06:22.960
+01:06:20.580 --> 01:06:22.960
I didn't know, I don't know what Tuxy is on
-01:06:25.520 --> 01:06:25.680
+01:06:22.960 --> 01:06:25.680
Jupyter broadcasting, but look it up and go
-01:06:27.660 --> 01:06:28.040
+01:06:25.680 --> 01:06:28.040
vote. So I wish I could tell you,
-01:06:29.220 --> 01:06:29.500
+01:06:28.040 --> 01:06:29.500
I assume with Tux, it might be something
-01:06:32.680 --> 01:06:32.900
+01:06:29.500 --> 01:06:32.900
related to Linux, but that's as much as I can
-01:06:34.340 --> 01:06:34.840
+01:06:32.900 --> 01:06:34.840
say. All right, well, Stefan,
-01:06:36.420 --> 01:06:36.600
+01:06:34.960 --> 01:06:36.600
thank you so much for taking the time not
-01:06:37.540 --> 01:06:38.000
+01:06:36.600 --> 01:06:38.000
only to do a wonderful presentation,
-01:06:39.520 --> 01:06:39.640
+01:06:38.000 --> 01:06:39.640
but also for answering all the questions of
-01:06:41.040 --> 01:06:41.240
+01:06:39.640 --> 01:06:41.240
the community. Do you have anything else to
-01:06:44.900 --> 01:06:45.360
+01:06:41.240 --> 01:06:45.360
add? Just really thanks for all the questions
-01:06:46.260 --> 01:06:46.760
+01:06:45.360 --> 01:06:46.760
and thanks for staying.
-01:06:49.120 --> 01:06:49.600
+01:06:47.780 --> 01:06:49.600
It's been a long day, a long conference,
-01:06:51.020 --> 01:06:51.180
+01:06:49.600 --> 01:06:51.180
so thanks for staying and listening to my
-01:06:52.360 --> 01:06:52.540
+01:06:51.180 --> 01:06:52.540
talk as well. Really appreciate it.
-01:06:54.000 --> 01:06:54.280
+01:06:52.540 --> 01:06:54.280
Appreciate the good work you guys are doing
-01:06:54.960 --> 01:06:55.460
+01:06:54.280 --> 01:06:55.460
behind the scenes, organizing,
-01:06:56.240 --> 01:06:56.740
+01:06:55.520 --> 01:06:56.740
setting everything up.
-01:07:00.220 --> 01:07:00.420
+01:06:57.040 --> 01:07:00.420
And really humbled to be a part of this
-01:07:01.560 --> 01:07:02.060
+01:07:00.420 --> 01:07:02.060
community. So thank you all.
-01:07:05.740 --> 01:07:05.860
+01:07:02.680 --> 01:07:05.860
Well I can assure you that no 1 either in the
-01:07:07.540 --> 01:07:08.040
+01:07:05.860 --> 01:07:08.040
organization team or the people watching now
-01:07:10.760 --> 01:07:10.900
+01:07:08.040 --> 01:07:10.900
felt like it was tiring to stay and listen to
-01:07:12.260 --> 01:07:12.760
+01:07:10.900 --> 01:07:12.760
your answers. So thank you so much Stefan.
diff --git a/2023/captions/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.vtt b/2023/captions/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.vtt
index 71d59b09..7a93ee4c 100644
--- a/2023/captions/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.vtt
+++ b/2023/captions/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.vtt
@@ -1,1652 +1,1652 @@
WEBVTT
-00:00:08.099 --> 00:00:08.480
+00:00:02.419 --> 00:00:08.480
2 seconds. All right. I think we are live.
-00:00:09.780 --> 00:00:10.280
+00:00:08.480 --> 00:00:10.280
Yes. So, hi again, everyone.
-00:00:13.259 --> 00:00:13.620
-I have the pleasure to welcome John Wheatley
+00:00:10.580 --> 00:00:13.620
+I have the pleasure to welcome John Wiegley
-00:00:14.940 --> 00:00:15.440
+00:00:13.620 --> 00:00:15.440
in person to this EmacsConf.
-00:00:16.760 --> 00:00:17.260
+00:00:15.700 --> 00:00:17.260
Hi, John. Hello there.
-00:00:18.592 --> 00:00:18.820
+00:00:17.680 --> 00:00:18.820
How are you doing, Leo?
-00:00:20.940 --> 00:00:21.100
+00:00:18.820 --> 00:00:21.100
I am doing fantastic, and even more now that
-00:00:23.040 --> 00:00:23.540
+00:00:21.100 --> 00:00:23.540
I am in a room with you because we've been,
-00:00:25.279 --> 00:00:25.640
-we were reminiscing with Sasha.
+00:00:24.279 --> 00:00:25.640
+we were reminiscing with Sacha.
-00:00:30.660 --> 00:00:30.860
+00:00:25.640 --> 00:00:30.860
So you had been there in person in 2013 And
-00:00:32.240 --> 00:00:32.680
+00:00:30.860 --> 00:00:32.680
since we started doing those online,
-00:00:34.840 --> 00:00:35.020
+00:00:32.680 --> 00:00:35.020
Juan, since 2019, I think you've always been
-00:00:37.960 --> 00:00:38.460
+00:00:35.020 --> 00:00:38.460
online, right? Usually it's a pre-recorded
-00:00:40.239 --> 00:00:40.440
+00:00:38.520 --> 00:00:40.440
video. I think this will be the first 1 I do
-00:00:42.340 --> 00:00:42.540
+00:00:40.440 --> 00:00:42.540
live in a long time. You're right.
-00:00:44.059 --> 00:00:44.239
+00:00:42.540 --> 00:00:44.239
I'm saying we are online right now,
-00:00:45.600 --> 00:00:45.920
+00:00:44.239 --> 00:00:45.920
but I just meant pre-recorded video.
-00:00:48.240 --> 00:00:48.400
+00:00:45.920 --> 00:00:48.400
So it's good to have you almost in person or
-00:00:50.739 --> 00:00:50.900
+00:00:48.400 --> 00:00:50.900
at least live and we are excited to hear
-00:00:52.000 --> 00:00:52.360
+00:00:50.900 --> 00:00:52.360
about some of the Emacs news.
-00:00:54.280 --> 00:00:54.780
+00:00:52.360 --> 00:00:54.780
So the floor is yours.
-00:00:56.400 --> 00:00:56.900
+00:00:55.080 --> 00:00:56.900
All right, well welcome everybody.
-00:00:59.900 --> 00:01:00.239
+00:00:57.260 --> 00:01:00.239
This is the yearly state of the Emacs union,
-00:01:02.720 --> 00:01:02.860
+00:01:00.239 --> 00:01:02.860
I guess, about how Emacs development is
-00:01:05.220 --> 00:01:05.379
+00:01:02.860 --> 00:01:05.379
going. Just to note, I am not currently a
-00:01:07.540 --> 00:01:07.760
+00:01:05.379 --> 00:01:07.760
maintainer of Emacs. So what I do to get
-00:01:09.520 --> 00:01:09.920
+00:01:07.760 --> 00:01:09.920
these notes is I call up my friend,
-00:01:11.640 --> 00:01:12.040
+00:01:09.920 --> 00:01:12.040
Eli Zaretsky, 1 of the current Emacs
-00:01:13.700 --> 00:01:13.820
+00:01:12.040 --> 00:01:13.820
maintainers, and he and I sit down for an
-00:01:16.880 --> 00:01:17.160
+00:01:13.820 --> 00:01:17.160
hour, and he just gives me his dump of what's
-00:01:19.000 --> 00:01:19.400
+00:01:17.160 --> 00:01:19.400
been going on. So I'm sort of just the
-00:01:21.960 --> 00:01:22.200
+00:01:19.400 --> 00:01:22.200
messenger here. But thanks to Eli for these
-00:01:24.000 --> 00:01:24.400
+00:01:22.200 --> 00:01:24.400
notes and all of the efforts that he
-00:01:27.160 --> 00:01:27.400
+00:01:24.400 --> 00:01:27.400
contributes. So what he's been telling me is
-00:01:29.760 --> 00:01:30.060
+00:01:27.400 --> 00:01:30.060
that this Emacs 29 release that we had
-00:01:31.480 --> 00:01:31.720
+00:01:30.060 --> 00:01:31.720
recently looks to have been very,
-00:01:33.240 --> 00:01:33.580
+00:01:31.720 --> 00:01:33.580
very successful, which is some good news,
-00:01:34.920 --> 00:01:35.420
+00:01:33.580 --> 00:01:35.420
because there were a lot of new features,
-00:01:37.020 --> 00:01:37.360
+00:01:35.660 --> 00:01:37.360
and some of those features were actually
-00:01:39.280 --> 00:01:39.520
+00:01:37.360 --> 00:01:39.520
quite radical. So far,
-00:01:40.280 --> 00:01:40.680
+00:01:39.520 --> 00:01:40.680
it's been quite a success,
-00:01:41.940 --> 00:01:42.440
+00:01:40.680 --> 00:01:42.440
no serious problems with it,
-00:01:43.580 --> 00:01:44.080
+00:01:42.440 --> 00:01:44.080
and we have Emacs 29.2
-00:01:46.240 --> 00:01:46.740
+00:01:45.140 --> 00:01:46.740
will be released very soon.
-00:01:49.780 --> 00:01:50.020
+00:01:47.260 --> 00:01:50.020
They are thinking now about starting the
-00:01:52.580 --> 00:01:53.080
+00:01:50.020 --> 00:01:53.080
Emacs 30 release cycle soon after 29.2
-00:01:55.400 --> 00:01:55.880
+00:01:53.520 --> 00:01:55.880
is released, where the release branch,
-00:01:57.620 --> 00:01:58.120
+00:01:55.880 --> 00:01:58.120
which is called Emacs-30 usually,
-00:02:01.080 --> 00:02:01.400
+00:01:59.060 --> 00:02:01.400
will be cut and then development will become
-00:02:03.800 --> 00:02:03.960
+00:02:01.400 --> 00:02:03.960
frozen with only bug fixes going into that
-00:02:06.940 --> 00:02:07.200
+00:02:03.960 --> 00:02:07.200
branch. That may take quite some time until
-00:02:09.199 --> 00:02:09.639
+00:02:07.200 --> 00:02:09.639
it actually comes to fruition as a release,
-00:02:11.500 --> 00:02:11.660
+00:02:09.639 --> 00:02:11.660
but at least it means that the release is
-00:02:13.380 --> 00:02:13.860
+00:02:11.660 --> 00:02:13.860
going to start taking shape in that branch
-00:02:17.420 --> 00:02:17.720
+00:02:13.860 --> 00:02:17.720
soon. So, for now, Emacs 30 looks like maybe
-00:02:19.040 --> 00:02:19.540
+00:02:17.720 --> 00:02:19.540
it's going to be a little less interesting
-00:02:22.860 --> 00:02:23.160
+00:02:19.600 --> 00:02:23.160
than Emacs 29 was, meaning not a huge number
-00:02:24.860 --> 00:02:25.120
+00:02:23.160 --> 00:02:25.120
of changing features. But there are still
-00:02:26.320 --> 00:02:26.820
+00:02:25.120 --> 00:02:26.820
some new things going in.
-00:02:29.760 --> 00:02:29.960
+00:02:26.980 --> 00:02:29.960
So 1 of them is that Emacs 30 is going to
-00:02:32.160 --> 00:02:32.300
+00:02:29.960 --> 00:02:32.300
have Android support. So you will be able to
-00:02:34.400 --> 00:02:34.900
+00:02:32.300 --> 00:02:34.900
run Emacs 30 on your Android devices.
-00:02:36.820 --> 00:02:37.120
+00:02:35.140 --> 00:02:37.120
So if you've ever wanted to have native Emacs
-00:02:39.000 --> 00:02:39.500
+00:02:37.120 --> 00:02:39.500
on a tablet, which I know I've always wanted,
-00:02:42.440 --> 00:02:42.940
+00:02:40.140 --> 00:02:42.940
that will become possible with Emacs 30.
-00:02:45.060 --> 00:02:45.480
+00:02:43.140 --> 00:02:45.480
There's also going to be much better support
-00:02:46.280 --> 00:02:46.780
+00:02:45.480 --> 00:02:46.780
for touchscreen devices,
-00:02:49.760 --> 00:02:50.260
+00:02:47.440 --> 00:02:50.260
coincidentally, both laptops and tablets.
-00:02:52.740 --> 00:02:53.240
+00:02:50.740 --> 00:02:53.240
So that'll enhance that Android support.
-00:02:56.680 --> 00:02:57.180
+00:02:54.860 --> 00:02:57.180
There will be some recently gained support
-00:03:01.480 --> 00:03:01.720
+00:02:57.240 --> 00:03:01.720
for LLDB in GUD.dl. So if you're on a Mac OS
-00:03:05.440 --> 00:03:05.580
+00:03:01.720 --> 00:03:05.580
machine or a machine that uses just LLVM as
-00:03:06.560 --> 00:03:07.060
+00:03:05.580 --> 00:03:07.060
part of the compilation process,
-00:03:10.020 --> 00:03:10.180
+00:03:07.400 --> 00:03:10.180
then you probably are familiar with LLDB as
-00:03:10.880 --> 00:03:11.380
+00:03:10.180 --> 00:03:11.380
the command line debugger.
-00:03:14.440 --> 00:03:14.940
+00:03:11.720 --> 00:03:14.940
And that support for using LLDB through a GUD
-00:03:16.920 --> 00:03:17.320
+00:03:15.040 --> 00:03:17.320
will become possible in Emacs 30.
-00:03:18.900 --> 00:03:19.000
+00:03:17.320 --> 00:03:19.000
I'm looking forward to this actually quite a
-00:03:22.120 --> 00:03:22.620
+00:03:19.000 --> 00:03:22.620
bit as well. C Perl mode is being deprecated,
-00:03:25.640 --> 00:03:25.920
+00:03:23.200 --> 00:03:25.920
and all future work now is only being put
-00:03:30.480 --> 00:03:30.660
+00:03:25.920 --> 00:03:30.660
towards C Perl mode. Another 1 is that there
-00:03:32.840 --> 00:03:33.000
+00:03:30.660 --> 00:03:33.000
are going to be some new major modes based on
-00:03:35.280 --> 00:03:35.780
+00:03:33.000 --> 00:03:35.780
TreeSitter. They will be for the languages
-00:03:37.660 --> 00:03:38.160
+00:03:35.860 --> 00:03:38.160
Lua, Elixir, and HTML.
-00:03:39.480 --> 00:03:39.980
+00:03:38.800 --> 00:03:39.980
And if you're not familiar,
-00:03:42.260 --> 00:03:42.620
+00:03:40.160 --> 00:03:42.620
I think TreeSitter was introduced in Emacs
-00:03:46.160 --> 00:03:46.660
+00:03:42.620 --> 00:03:46.660
29. It's a library that allows you to specify
-00:03:49.760 --> 00:03:49.900
+00:03:47.460 --> 00:03:49.900
the grammar of a programming language as a
-00:03:52.800 --> 00:03:53.300
+00:03:49.900 --> 00:03:53.300
BNF file, and I think using JavaScript,
-00:03:56.160 --> 00:03:56.600
+00:03:53.540 --> 00:03:56.600
and then with that file as input to Emacs,
-00:03:59.340 --> 00:03:59.840
+00:03:56.600 --> 00:03:59.840
it is then able to do syntax highlighting,
-00:04:02.860 --> 00:04:03.080
+00:04:00.940 --> 00:04:03.080
syntax discovery, all of those things within
-00:04:05.640 --> 00:04:06.140
+00:04:03.080 --> 00:04:06.140
Emacs without having to use elisp and regexps
-00:04:07.800 --> 00:04:08.300
+00:04:06.460 --> 00:04:08.300
to discover the structure of the language.
-00:04:10.240 --> 00:04:10.440
+00:04:08.300 --> 00:04:10.440
It defers the structure gathering to
-00:04:13.080 --> 00:04:13.420
+00:04:10.440 --> 00:04:13.420
TreeSitter and then uses that information to
-00:04:14.060 --> 00:04:14.560
+00:04:13.420 --> 00:04:14.560
navigate the language.
-00:04:17.079 --> 00:04:17.300
+00:04:15.200 --> 00:04:17.300
So, As time goes on, you'll see more and more
-00:04:19.160 --> 00:04:19.540
+00:04:17.300 --> 00:04:19.540
languages taking on TreeSetter support.
-00:04:20.899 --> 00:04:21.160
+00:04:19.540 --> 00:04:21.160
So the next 3 coming up,
-00:04:22.160 --> 00:04:22.660
+00:04:21.160 --> 00:04:22.660
Lua, Elixir, and HTML.
-00:04:26.500 --> 00:04:26.680
+00:04:24.060 --> 00:04:26.680
And then the last feature for Emacs 30 is
-00:04:29.640 --> 00:04:29.860
+00:04:26.680 --> 00:04:29.860
that the byte compiler will now detect and
-00:04:32.420 --> 00:04:32.920
+00:04:29.860 --> 00:04:32.920
warn about many more questionable constructs.
-00:04:34.800 --> 00:04:35.300
+00:04:33.340 --> 00:04:35.300
Things like empty macro bodies,
-00:04:36.660 --> 00:04:37.160
+00:04:35.740 --> 00:04:37.160
missing lexical constructs,
-00:04:39.720 --> 00:04:40.220
+00:04:37.580 --> 00:04:40.220
or say, condition case without any handlers.
-00:04:43.040 --> 00:04:43.340
+00:04:40.580 --> 00:04:43.340
Just silly stuff that might litter the code,
-00:04:45.040 --> 00:04:45.180
+00:04:43.340 --> 00:04:45.180
but now you'll get a warning about it from
-00:04:46.760 --> 00:04:46.920
+00:04:45.180 --> 00:04:46.920
the byte compiler to help you clean up the
-00:04:49.000 --> 00:04:49.160
+00:04:46.920 --> 00:04:49.160
code and get rid of those potential sites of
-00:04:52.600 --> 00:04:52.740
+00:04:49.160 --> 00:04:52.740
error. So this is the main thing that will be
-00:04:54.960 --> 00:04:55.160
+00:04:52.740 --> 00:04:55.160
worked on for Emacs 30 and what's looked like
-00:04:55.900 --> 00:04:56.400
+00:04:55.160 --> 00:04:56.400
shaping up for the release.
-00:04:58.680 --> 00:04:58.940
+00:04:56.680 --> 00:04:58.940
And also, he wanted me to announce that
-00:05:00.840 --> 00:05:01.340
+00:04:58.940 --> 00:05:01.340
Stefan Kongas is now a new co-maintainer.
-00:05:02.900 --> 00:05:03.260
+00:05:01.980 --> 00:05:03.260
And Stefan is, I believe,
-00:05:05.340 --> 00:05:05.500
+00:05:03.260 --> 00:05:05.500
here with us in the conference and he'll be
-00:05:07.440 --> 00:05:07.940
+00:05:05.500 --> 00:05:07.940
able, I hope, to help me answer any questions
-00:05:09.960 --> 00:05:10.120
+00:05:08.080 --> 00:05:10.120
about future Emacs development because I'm
-00:05:12.040 --> 00:05:12.240
+00:05:10.120 --> 00:05:12.240
not in the heat of it and don't have all
-00:05:13.100 --> 00:05:13.600
+00:05:12.240 --> 00:05:13.600
those answers at the moment.
-00:05:17.080 --> 00:05:17.180
+00:05:14.580 --> 00:05:17.180
So That is all there is as far as a
-00:05:18.340 --> 00:05:18.840
+00:05:17.180 --> 00:05:18.840
development update for now.
-00:05:21.480 --> 00:05:21.980
+00:05:19.340 --> 00:05:21.980
And I am available to take any questions.
-00:05:26.000 --> 00:05:26.200
+00:05:24.860 --> 00:05:26.200
All right. Thank you so much,
-00:05:29.180 --> 00:05:29.340
+00:05:26.200 --> 00:05:29.340
Sean, for being the messenger of all this
-00:05:31.500 --> 00:05:31.820
+00:05:29.340 --> 00:05:31.820
good news. I mean, you did start by saying
-00:05:32.980 --> 00:05:33.480
+00:05:31.820 --> 00:05:33.480
this would not be as exciting,
-00:05:35.860 --> 00:05:36.280
+00:05:33.600 --> 00:05:36.280
perhaps, as prior releases of Emacs,
-00:05:38.800 --> 00:05:38.980
+00:05:36.280 --> 00:05:38.980
but you then proceeded to say a lot of stuff
-00:05:40.380 --> 00:05:40.760
+00:05:38.980 --> 00:05:40.760
that it felt very exciting to me.
-00:05:43.120 --> 00:05:43.620
+00:05:40.760 --> 00:05:43.620
So good, good. Glad to hear that.
-00:05:47.040 --> 00:05:47.180
+00:05:44.540 --> 00:05:47.180
Right. So we do have questions coming in
-00:05:49.960 --> 00:05:50.380
+00:05:47.180 --> 00:05:50.380
already and again people the link is on IRC
-00:05:51.980 --> 00:05:52.120
+00:05:50.380 --> 00:05:52.120
and also on the talks page if you want to
-00:05:52.760 --> 00:05:53.260
+00:05:52.120 --> 00:05:53.260
start asking questions.
-00:05:54.720 --> 00:05:54.840
+00:05:53.480 --> 00:05:54.840
So John what I'm going to do I'm going to
-00:05:56.400 --> 00:05:56.580
+00:05:54.840 --> 00:05:56.580
read you the questions and then you can
-00:05:57.800 --> 00:05:58.300
+00:05:56.580 --> 00:05:58.300
answer them. Is that okay with you?
-00:06:01.320 --> 00:06:01.620
+00:05:58.320 --> 00:06:01.620
Absolutely. So starting with the first
-00:06:04.120 --> 00:06:04.440
+00:06:01.620 --> 00:06:04.440
question which changes in recent Emacs
-00:06:06.040 --> 00:06:06.540
+00:06:04.440 --> 00:06:06.540
releases are you enjoying using?
-00:06:11.320 --> 00:06:11.820
+00:06:08.360 --> 00:06:11.820
I have really liked the visual line mode.
-00:06:14.780 --> 00:06:15.060
+00:06:13.140 --> 00:06:15.060
I'm not sure how recent that is.
-00:06:16.320 --> 00:06:16.820
+00:06:15.060 --> 00:06:16.820
Some of these features I only discovered
-00:06:19.080 --> 00:06:19.580
+00:06:16.840 --> 00:06:19.580
quite late, the new display line number
-00:06:21.020 --> 00:06:21.380
+00:06:19.700 --> 00:06:21.380
functionality, where it's much,
-00:06:22.760 --> 00:06:23.040
+00:06:21.380 --> 00:06:23.040
much, much faster, and of course,
-00:06:25.160 --> 00:06:25.320
+00:06:23.040 --> 00:06:25.320
native compilation. Native compilation has
-00:06:27.040 --> 00:06:27.360
+00:06:25.320 --> 00:06:27.360
been quite brilliant for some of the larger
-00:06:29.380 --> 00:06:29.480
+00:06:27.360 --> 00:06:29.480
packages that I use. I do a lot of stuff in
-00:06:31.340 --> 00:06:31.820
+00:06:29.480 --> 00:06:31.820
Emacs. I use GNU's, I use E-Shell,
-00:06:33.040 --> 00:06:33.540
+00:06:31.820 --> 00:06:33.540
I use Org Mode quite a lot.
-00:06:35.740 --> 00:06:36.100
+00:06:33.580 --> 00:06:36.100
So native compilation has brought the user
-00:06:39.760 --> 00:06:39.960
+00:06:36.100 --> 00:06:39.960
experience much closer to a modern app than
-00:06:41.980 --> 00:06:42.180
+00:06:39.960 --> 00:06:42.180
some of the lagging and slowness that I might
-00:06:43.080 --> 00:06:43.580
+00:06:42.180 --> 00:06:43.580
have experienced in the past.
-00:06:46.680 --> 00:06:47.180
+00:06:44.340 --> 00:06:47.180
Definitely. Moving on to the next question.
-00:06:49.020 --> 00:06:49.200
+00:06:47.260 --> 00:06:49.200
What do you think the future in the area of
-00:06:50.540 --> 00:06:51.040
+00:06:49.200 --> 00:06:51.040
artificial intelligence from the developer
-00:06:53.420 --> 00:06:53.580
+00:06:51.060 --> 00:06:53.580
point of view? Could you say that 1 more
-00:06:54.860 --> 00:06:54.876
+00:06:53.580 --> 00:06:54.876
time? Your voice broke up a little bit.
-00:06:55.009 --> 00:06:55.025
+00:06:54.876 --> 00:06:55.025
Oh, sorry. What do you think the future in
-00:06:55.125 --> 00:06:55.141
+00:06:55.025 --> 00:06:55.141
the area of artificial intelligence from the
-00:06:55.191 --> 00:06:55.208
+00:06:55.141 --> 00:06:55.208
developer point of view?
-00:06:55.307 --> 00:06:55.324
+00:06:55.208 --> 00:06:55.324
Could you say that 1 more time?
-00:06:55.423 --> 00:06:55.440
+00:06:55.324 --> 00:06:55.440
Your voice broke up a little bit.
-00:06:57.880 --> 00:06:58.100
+00:06:55.440 --> 00:06:58.100
Oh, sorry. What do you think the future in
-00:07:00.380 --> 00:07:00.580
+00:06:58.100 --> 00:07:00.580
the area of artificial intelligence from the
-00:07:01.400 --> 00:07:01.560
+00:07:00.580 --> 00:07:01.560
developer point of view?
-00:07:02.520 --> 00:07:02.860
+00:07:01.560 --> 00:07:02.860
It's also a shaky question,
-00:07:04.000 --> 00:07:04.500
+00:07:02.860 --> 00:07:04.500
I think, but you get the point.
-00:07:08.940 --> 00:07:09.220
+00:07:04.960 --> 00:07:09.220
I do use chat-gpt-shell inside of Emacs quite
-00:07:10.760 --> 00:07:10.920
+00:07:09.220 --> 00:07:10.920
a bit, actually, when doing development in
-00:07:12.180 --> 00:07:12.440
+00:07:10.920 --> 00:07:12.440
other languages. Just the other day,
-00:07:14.700 --> 00:07:15.200
+00:07:12.440 --> 00:07:15.200
I was working on my Ledger accounting
-00:07:17.900 --> 00:07:18.080
+00:07:15.220 --> 00:07:18.080
program, and I haven't done a lot of C++ in
-00:07:20.920 --> 00:07:21.180
+00:07:18.080 --> 00:07:21.180
recent years. So I had forgotten how to
-00:07:23.620 --> 00:07:23.760
+00:07:21.180 --> 00:07:23.760
exactly compare 2 strings only up to the
-00:07:24.600 --> 00:07:25.020
+00:07:23.760 --> 00:07:25.020
length of the shortest string.
-00:07:26.720 --> 00:07:26.940
+00:07:25.020 --> 00:07:26.940
I know I could have cranked that out just
-00:07:28.380 --> 00:07:28.740
+00:07:26.940 --> 00:07:28.740
writing it C style, but I didn't remember
-00:07:30.300 --> 00:07:30.800
+00:07:28.740 --> 00:07:30.800
what the current state of the art is for C++
-00:07:32.960 --> 00:07:33.460
+00:07:30.940 --> 00:07:33.460
and the STL. So I just asked chatGPT.
-00:07:35.940 --> 00:07:36.140
+00:07:33.680 --> 00:07:36.140
I asked the exact question that I just said
-00:07:38.040 --> 00:07:38.220
+00:07:36.140 --> 00:07:38.220
to you and sure enough it popped out the
-00:07:39.640 --> 00:07:40.080
+00:07:38.220 --> 00:07:40.080
one-liner that was exactly what I needed.
-00:07:41.740 --> 00:07:42.240
+00:07:40.080 --> 00:07:42.240
So I think in terms of developer assistance,
-00:07:45.320 --> 00:07:45.820
+00:07:42.800 --> 00:07:45.820
not having to keep all of standard libraries
-00:07:46.960 --> 00:07:47.460
+00:07:45.860 --> 00:07:47.460
or common idioms in memory.
-00:07:48.960 --> 00:07:49.460
+00:07:47.520 --> 00:07:49.460
I don't know if other people are familiar
-00:07:50.580 --> 00:07:51.080
+00:07:49.480 --> 00:07:51.080
with Rosetta Stone projects.
-00:07:53.200 --> 00:07:53.680
+00:07:51.460 --> 00:07:53.680
They're projects where you have say a hundred
-00:07:55.280 --> 00:07:55.780
+00:07:53.680 --> 00:07:55.780
different languages and there's a particular
-00:07:58.320 --> 00:07:58.640
+00:07:55.860 --> 00:07:58.640
question, say, how do I read a file and copy
-00:07:59.220 --> 00:07:59.720
+00:07:58.640 --> 00:07:59.720
it to another location?
-00:08:01.680 --> 00:08:01.880
+00:07:59.820 --> 00:08:01.880
And then it has an instance of doing that
-00:08:03.320 --> 00:08:03.820
+00:08:01.880 --> 00:08:03.820
activity for every 1 of those languages.
-00:08:04.780 --> 00:08:05.140
+00:08:04.180 --> 00:08:05.140
That's a great database,
-00:08:06.880 --> 00:08:07.160
+00:08:05.140 --> 00:08:07.160
and I've used them quite a bit in the past
-00:08:08.760 --> 00:08:09.260
+00:08:07.160 --> 00:08:09.260
for remembering how to do certain things,
-00:08:12.040 --> 00:08:12.540
+00:08:09.440 --> 00:08:12.540
say, converting a string to UTF-8.
-00:08:15.480 --> 00:08:15.660
+00:08:13.280 --> 00:08:15.660
I think that AI does a great job of
-00:08:17.280 --> 00:08:17.780
+00:08:15.660 --> 00:08:17.780
completely replacing the need for databases
-00:08:19.740 --> 00:08:19.920
+00:08:17.900 --> 00:08:19.920
like that because you can just ask how do I
-00:08:21.480 --> 00:08:21.980
+00:08:19.920 --> 00:08:21.980
copy a convert a string to UTF-8.
-00:08:27.240 --> 00:08:27.440
+00:08:23.760 --> 00:08:27.440
Yeah exactly and you know especially with
-00:08:30.440 --> 00:08:30.480
+00:08:27.440 --> 00:08:30.480
languages which are tried well tried you know
-00:08:32.200 --> 00:08:32.360
+00:08:30.480 --> 00:08:32.360
it's very easy to get an answer that is
-00:08:34.600 --> 00:08:34.940
+00:08:32.360 --> 00:08:34.940
correct. But sometimes what I find bothersome
-00:08:37.020 --> 00:08:37.460
+00:08:34.940 --> 00:08:37.460
with this type of coding,
-00:08:39.520 --> 00:08:39.840
+00:08:37.460 --> 00:08:39.840
I think it's AI-aided coding,
-00:08:40.320 --> 00:08:40.820
+00:08:39.840 --> 00:08:40.820
but it's still coding,
-00:08:42.799 --> 00:08:43.140
+00:08:41.120 --> 00:08:43.140
is that, especially with C languages,
-00:08:44.140 --> 00:08:44.240
+00:08:43.140 --> 00:08:44.240
sometimes you're going to end up with
-00:08:45.660 --> 00:08:45.860
+00:08:44.240 --> 00:08:45.860
undefined behaviors and stuff like this just
-00:08:47.420 --> 00:08:47.900
+00:08:45.860 --> 00:08:47.900
because other people have been doing it,
-00:08:50.740 --> 00:08:50.860
+00:08:47.900 --> 00:08:50.860
not because the algorithm or the model was
-00:08:53.340 --> 00:08:53.680
+00:08:50.860 --> 00:08:53.680
trained with data that dates back to 10 years
-00:08:59.640 --> 00:09:00.060
+00:08:53.680 --> 00:09:00.060
ago. At the time, C++ was a little different.
-00:09:01.220 --> 00:09:01.400
+00:09:00.060 --> 00:09:01.400
Anyway, I'm not here to talk,
-00:09:03.740 --> 00:09:03.960
+00:09:01.400 --> 00:09:03.960
you are here to talk. Moving on to the next
-00:09:06.200 --> 00:09:06.560
+00:09:03.960 --> 00:09:06.560
question. People already get to hear my voice
-00:09:09.140 --> 00:09:09.640
+00:09:06.560 --> 00:09:09.640
plenty, whereas yours are much sparser.
-00:09:13.360 --> 00:09:13.580
+00:09:10.520 --> 00:09:13.580
All right. So, what is the future of Emacs on
-00:09:15.800 --> 00:09:16.080
+00:09:13.580 --> 00:09:16.080
macOS? I understand that there are too few
-00:09:16.920 --> 00:09:17.420
+00:09:16.080 --> 00:09:17.420
developers for the platform.
-00:09:21.160 --> 00:09:21.600
+00:09:17.440 --> 00:09:21.600
Is that still true? That's a good question.
-00:09:23.300 --> 00:09:23.620
+00:09:21.600 --> 00:09:23.620
I don't know what the current statistics are.
-00:09:26.640 --> 00:09:27.040
+00:09:23.620 --> 00:09:27.040
I've been a user of Emacs on Mac OS for
-00:09:29.540 --> 00:09:29.920
+00:09:27.040 --> 00:09:29.920
decades now. It feels like the,
-00:09:32.980 --> 00:09:33.480
+00:09:30.140 --> 00:09:33.480
There's also that Mac port version of Emacs,
-00:09:35.720 --> 00:09:35.920
+00:09:33.480 --> 00:09:35.920
which builds Emacs more directly using the
-00:09:37.360 --> 00:09:37.860
+00:09:35.920 --> 00:09:37.860
GUI libraries on the platform.
-00:09:40.080 --> 00:09:40.320
+00:09:38.300 --> 00:09:40.320
That continues to be updated with every
-00:09:41.540 --> 00:09:42.040
+00:09:40.320 --> 00:09:42.040
single new release that comes out.
-00:09:45.060 --> 00:09:45.220
+00:09:42.620 --> 00:09:45.220
So I'd say that the support may not be as
-00:09:47.040 --> 00:09:47.540
+00:09:45.220 --> 00:09:47.540
great as it is on Linux and other platforms,
-00:09:50.280 --> 00:09:50.500
+00:09:47.640 --> 00:09:50.500
but to this day I haven't suffered from being
-00:09:54.720 --> 00:09:55.220
+00:09:50.500 --> 00:09:55.220
a Mac user. Great. The only thing I remember
-00:10:00.060 --> 00:10:00.480
+00:09:55.240 --> 00:10:00.480
about Emacs on macOS was that emojis made it
-00:10:03.420 --> 00:10:03.540
+00:10:00.480 --> 00:10:03.540
inside the GUI first before they did it
-00:10:05.660 --> 00:10:05.820
+00:10:03.540 --> 00:10:05.820
anywhere else. That's the 1 anecdote that I
-00:10:09.160 --> 00:10:09.520
+00:10:05.820 --> 00:10:09.520
have on MacOS. Right. And historically that
-00:10:12.400 --> 00:10:12.720
+00:10:09.520 --> 00:10:12.720
feature was removed in order to prevent Mac
-00:10:14.340 --> 00:10:14.840
+00:10:12.720 --> 00:10:14.840
from having features that Linux did not.
-00:10:16.660 --> 00:10:16.860
+00:10:15.160 --> 00:10:16.860
I didn't want to go into that point.
-00:10:18.220 --> 00:10:18.340
+00:10:16.860 --> 00:10:18.340
I just wanted to mention the beginning of the
-00:10:19.600 --> 00:10:19.840
+00:10:18.340 --> 00:10:19.840
anecdote and people can find it out.
-00:10:21.540 --> 00:10:22.040
+00:10:19.840 --> 00:10:22.040
But yes, that's also what it led to.
-00:10:24.840 --> 00:10:25.340
+00:10:24.020 --> 00:10:25.340
Moving on to the next question.
-00:10:27.620 --> 00:10:28.120
+00:10:25.640 --> 00:10:28.120
Why aren't you contributing to Emacs anymore?
-00:10:28.860 --> 00:10:29.360
+00:10:28.140 --> 00:10:29.360
Lack of time, I guess?
-00:10:31.340 --> 00:10:31.840
+00:10:30.240 --> 00:10:31.840
Lack of time, primarily.
-00:10:33.340 --> 00:10:33.840
+00:10:32.300 --> 00:10:33.840
Work has been very consuming.
-00:10:35.740 --> 00:10:36.020
+00:10:33.900 --> 00:10:36.020
There are a lot of other projects and things
-00:10:38.640 --> 00:10:39.000
+00:10:36.020 --> 00:10:39.000
that I like doing. I still find Emacs Lisp
-00:10:39.960 --> 00:10:40.460
+00:10:39.000 --> 00:10:40.460
very, very fun to write.
-00:10:42.980 --> 00:10:43.260
+00:10:40.840 --> 00:10:43.260
Just the other day, I was hacking up some
-00:10:45.260 --> 00:10:45.760
+00:10:43.260 --> 00:10:45.760
extension macros for myself for org mode.
-00:10:48.720 --> 00:10:48.900
+00:10:45.920 --> 00:10:48.900
But to have the time needed to sit down and
-00:10:51.140 --> 00:10:51.580
+00:10:48.900 --> 00:10:51.580
design a whole new mode and work on it.
-00:10:53.480 --> 00:10:53.660
+00:10:51.580 --> 00:10:53.660
I've been spending a lot of my time now in
-00:10:55.200 --> 00:10:55.580
+00:10:53.660 --> 00:10:55.580
functional languages, especially theorem
-00:10:57.340 --> 00:10:57.840
+00:10:55.580 --> 00:10:57.840
provers. I just find that so intellectually
-00:10:59.120 --> 00:10:59.620
+00:10:58.100 --> 00:10:59.620
satisfying and interesting.
-00:11:01.460 --> 00:11:01.860
+00:11:00.400 --> 00:11:01.860
Plus it pays a lot better.
-00:11:03.440 --> 00:11:03.680
+00:11:01.860 --> 00:11:03.680
Never had a paying job as an Emacs list
-00:11:06.220 --> 00:11:06.420
+00:11:03.680 --> 00:11:06.420
developer. So when it comes to now just being
-00:11:07.880 --> 00:11:08.380
+00:11:06.420 --> 00:11:08.380
a fun language or a hobby language,
-00:11:10.480 --> 00:11:10.680
+00:11:08.420 --> 00:11:10.680
it is relegated to the time that I have free
-00:11:13.180 --> 00:11:13.680
+00:11:10.680 --> 00:11:13.680
when it's available. Right.
-00:11:15.280 --> 00:11:15.420
+00:11:13.700 --> 00:11:15.420
Well, the good thing is that it's kind of
-00:11:15.920 --> 00:11:16.360
+00:11:15.420 --> 00:11:16.360
like riding a bicycle,
-00:11:17.640 --> 00:11:17.980
+00:11:16.360 --> 00:11:17.980
you know, writing a major mode,
-00:11:19.860 --> 00:11:20.160
+00:11:17.980 --> 00:11:20.160
it comes back relatively quickly and still
-00:11:22.240 --> 00:11:22.600
+00:11:20.160 --> 00:11:22.600
enjoyable. You know, the other day,
-00:11:25.040 --> 00:11:25.200
+00:11:22.600 --> 00:11:25.200
actually, I took notes on a mode that I
-00:11:27.980 --> 00:11:28.100
+00:11:25.200 --> 00:11:28.100
wanted to write. There's an app I use on the
-00:11:30.020 --> 00:11:30.060
+00:11:28.100 --> 00:11:30.060
Mac called drafts, and I really love it.
-00:11:30.960 --> 00:11:31.460
+00:11:30.060 --> 00:11:31.460
I use it all the time.
-00:11:34.300 --> 00:11:34.600
+00:11:31.720 --> 00:11:34.600
I wanted to mimic the interface of this app
-00:11:37.120 --> 00:11:37.620
+00:11:34.600 --> 00:11:37.620
in Emacs. So I could use Emacs as my drafts
-00:11:39.560 --> 00:11:40.060
+00:11:37.680 --> 00:11:40.060
application rather than this separate 1.
-00:11:42.280 --> 00:11:42.720
+00:11:40.440 --> 00:11:42.720
So I noted down all the different user
-00:11:44.440 --> 00:11:44.580
+00:11:42.720 --> 00:11:44.580
parameters and how it should function and
-00:11:47.040 --> 00:11:47.240
+00:11:44.580 --> 00:11:47.240
everything to describe the app to myself as
-00:11:50.080 --> 00:11:50.320
+00:11:47.240 --> 00:11:50.320
sort of notes to get me started on that work
-00:11:51.960 --> 00:11:52.460
+00:11:50.320 --> 00:11:52.460
when I did have free time to work on it.
-00:11:54.480 --> 00:11:54.760
+00:11:52.540 --> 00:11:54.760
Somebody out there on the internet just saw
-00:11:56.680 --> 00:11:57.040
+00:11:54.760 --> 00:11:57.040
these notes, because I keep a lot of my stuff
-00:11:59.180 --> 00:11:59.680
+00:11:57.040 --> 00:11:59.680
on GitHub. They fed it to chat GPT,
-00:12:01.460 --> 00:12:01.960
+00:12:00.280 --> 00:12:01.960
going back to your AI question.
-00:12:04.360 --> 00:12:04.540
+00:12:02.220 --> 00:12:04.540
And they actually sent back to me a mode that
-00:12:06.140 --> 00:12:06.640
+00:12:04.540 --> 00:12:06.640
implemented everything that I had said,
-00:12:07.240 --> 00:12:07.740
+00:12:06.820 --> 00:12:07.740
which was effectively,
-00:12:10.460 --> 00:12:10.960
+00:12:08.200 --> 00:12:10.960
chat GPT, seeing that what I had described
-00:12:14.380 --> 00:12:14.500
+00:12:10.960 --> 00:12:14.500
was clear enough for it to derive most of the
-00:12:16.120 --> 00:12:16.560
+00:12:14.500 --> 00:12:16.560
code that I would have wanted to write.
-00:12:19.000 --> 00:12:19.200
+00:12:16.560 --> 00:12:19.200
So maybe, maybe another thing that AI can do
-00:12:20.380 --> 00:12:20.880
+00:12:19.200 --> 00:12:20.880
is it can increase the value,
-00:12:22.900 --> 00:12:23.400
+00:12:21.340 --> 00:12:23.400
the efficiency of my free time.
-00:12:26.320 --> 00:12:26.820
+00:12:24.360 --> 00:12:26.820
Exactly. I think that's a wonderful point.
-00:12:29.380 --> 00:12:29.540
+00:12:27.120 --> 00:12:29.540
And phrasing it as efficiency of free time is
-00:12:30.860 --> 00:12:31.360
+00:12:29.540 --> 00:12:31.360
great because you still have the expertise,
-00:12:33.280 --> 00:12:33.420
+00:12:31.360 --> 00:12:33.420
obviously, that you're mobilizing into the
-00:12:35.060 --> 00:12:35.560
+00:12:33.420 --> 00:12:35.560
design that you're formulating to charge DPT,
-00:12:37.460 --> 00:12:37.680
+00:12:35.860 --> 00:12:37.680
but then this expertise is turned into
-00:12:38.560 --> 00:12:39.060
+00:12:37.680 --> 00:12:39.060
something that actually works.
-00:12:41.400 --> 00:12:41.780
+00:12:40.080 --> 00:12:41.780
Perhaps we're all going to become software
-00:12:42.540 --> 00:12:42.980
+00:12:41.780 --> 00:12:42.980
architects at some point,
-00:12:45.640 --> 00:12:45.800
+00:12:42.980 --> 00:12:45.800
and then the busy work of actually coding the
-00:12:48.560 --> 00:12:48.760
+00:12:45.800 --> 00:12:48.760
library and the software will be relegated to
-00:12:50.800 --> 00:12:51.000
+00:12:48.760 --> 00:12:51.000
AI. That's an interesting future where we
-00:12:54.960 --> 00:12:55.240
+00:12:51.000 --> 00:12:55.240
still, however, need to acquire the skills to
-00:12:56.320 --> 00:12:56.660
+00:12:55.240 --> 00:12:56.660
know what is code, I suppose.
-00:12:58.380 --> 00:12:58.880
+00:12:56.660 --> 00:12:58.880
But that's an interesting future to think of.
-00:13:01.580 --> 00:13:02.060
+00:13:00.940 --> 00:13:02.060
A fairly long question.
-00:13:03.960 --> 00:13:04.280
+00:13:02.060 --> 00:13:04.280
So 1 of the tricky things about running Emacs
-00:13:06.760 --> 00:13:06.900
+00:13:04.280 --> 00:13:06.900
on Android is do you use anything that
-00:13:07.820 --> 00:13:08.320
+00:13:06.900 --> 00:13:08.320
requires extra packages?
-00:13:11.400 --> 00:13:11.600
+00:13:08.420 --> 00:13:11.600
Example like PDF tools with new PDF or going
-00:13:13.640 --> 00:13:13.820
+00:13:11.600 --> 00:13:13.820
with a database, playing music or video with
-00:13:15.340 --> 00:13:15.840
+00:13:13.820 --> 00:13:15.840
MPD or MPV on Bonga, LFeed.
-00:13:17.400 --> 00:13:17.900
+00:13:16.320 --> 00:13:17.900
Do you run Emacs Termex,
-00:13:19.740 --> 00:13:20.200
+00:13:18.040 --> 00:13:20.200
Emacs APK, Emacs in virtual machine?
-00:13:22.260 --> 00:13:22.420
+00:13:20.200 --> 00:13:22.420
This is also the case on Emacs for Windows to
-00:13:23.480 --> 00:13:23.980
+00:13:22.420 --> 00:13:23.980
a lesser degree. So summarizing,
-00:13:27.080 --> 00:13:27.240
+00:13:24.280 --> 00:13:27.240
how do you make Emacs work on Android if you
-00:13:29.700 --> 00:13:30.040
+00:13:27.240 --> 00:13:30.040
do not have the synergy of stuff that you
-00:13:32.360 --> 00:13:32.560
+00:13:30.040 --> 00:13:32.560
usually find on Linux systems like MPV and
-00:13:33.920 --> 00:13:34.420
+00:13:32.560 --> 00:13:34.420
all the fancy applications like this?
-00:13:38.220 --> 00:13:38.380
+00:13:35.340 --> 00:13:38.380
It's a good question. Since I'm not an
-00:13:40.140 --> 00:13:40.460
+00:13:38.380 --> 00:13:40.460
Android user and I've never tried running
-00:13:41.520 --> 00:13:42.020
+00:13:40.460 --> 00:13:42.020
Emacs on Android platforms,
-00:13:44.760 --> 00:13:44.920
+00:13:42.100 --> 00:13:44.920
I'm not sure what's available out there to
-00:13:46.080 --> 00:13:46.440
+00:13:44.920 --> 00:13:46.440
plug Emacs into. I mean,
-00:13:48.040 --> 00:13:48.160
+00:13:46.440 --> 00:13:48.160
effectively, that question comes down to
-00:13:49.920 --> 00:13:50.420
+00:13:48.160 --> 00:13:50.420
external dependencies and system support.
-00:13:53.120 --> 00:13:53.320
+00:13:50.940 --> 00:13:53.320
That would be a great question for Stefan or
-00:13:55.240 --> 00:13:55.740
+00:13:53.320 --> 00:13:55.740
somebody who has tried using Emacs,
-00:13:58.100 --> 00:13:58.600
+00:13:56.200 --> 00:13:58.600
the development version of Emacs on Android.
-00:14:03.480 --> 00:14:03.980
+00:14:00.660 --> 00:14:03.980
Great. We'll put a pin in this for Stéphane
-00:14:07.360 --> 00:14:07.580
+00:14:04.540 --> 00:14:07.580
afterwards. Great, so moving on to the next
-00:14:09.720 --> 00:14:09.860
+00:14:07.580 --> 00:14:09.860
question. Will Org Tech someday become the
-00:14:10.860 --> 00:14:11.320
+00:14:09.860 --> 00:14:11.320
default tech mode in Emacs?
-00:14:14.380 --> 00:14:14.880
+00:14:11.320 --> 00:14:14.880
And if so, when? Will Org what become?
-00:14:17.480 --> 00:14:17.980
+00:14:15.240 --> 00:14:17.980
Org Tech, you know, the LaTeX mode.
-00:14:24.640 --> 00:14:24.840
+00:14:19.120 --> 00:14:24.840
I do not know. It's been a while since I've
-00:14:26.420 --> 00:14:26.880
+00:14:24.840 --> 00:14:26.880
done LaTeX. It must have been like 4 years,
-00:14:30.040 --> 00:14:30.280
+00:14:26.880 --> 00:14:30.280
but it was a pretty, the major mode for
-00:14:32.280 --> 00:14:32.560
+00:14:30.280 --> 00:14:32.560
editing documents, like the state of the art
-00:14:34.340 --> 00:14:34.840
+00:14:32.560 --> 00:14:34.840
for editing latex documents in Emacs.
-00:14:35.820 --> 00:14:36.320
+00:14:34.940 --> 00:14:36.320
And apparently it's not default.
-00:14:38.200 --> 00:14:38.360
+00:14:36.340 --> 00:14:38.360
I assume there's latex mode or something that
-00:14:41.080 --> 00:14:41.580
+00:14:38.360 --> 00:14:41.580
is doing it. So were you saying octech,
-00:14:44.860 --> 00:14:45.020
+00:14:41.760 --> 00:14:45.020
like A-U-C tech? Oh, did I not pronounce the
-00:14:47.860 --> 00:14:48.140
+00:14:45.020 --> 00:14:48.140
C? Octech, yes. I thought you said org tech.
-00:14:49.120 --> 00:14:49.620
+00:14:48.140 --> 00:14:49.620
I wasn't familiar with that.
-00:14:52.040 --> 00:14:52.540
+00:14:50.280 --> 00:14:52.540
Octech is the only 1 I've ever used.
-00:14:54.860 --> 00:14:55.360
+00:14:52.640 --> 00:14:55.360
I know there is a built-in LaTeX mode,
-00:14:56.880 --> 00:14:57.240
+00:14:55.580 --> 00:14:57.240
but I've never used it.
-00:14:58.780 --> 00:14:59.140
+00:14:57.240 --> 00:14:59.140
I always just download whatever the latest
-00:15:00.660 --> 00:15:01.160
+00:14:59.140 --> 00:15:01.160
version of Org Tech is and use that.
-00:15:03.440 --> 00:15:03.840
+00:15:01.280 --> 00:15:03.840
I don't know why it's not a standard package.
-00:15:06.860 --> 00:15:07.360
+00:15:03.840 --> 00:15:07.360
Becoming a standard package has its own costs
-00:15:09.400 --> 00:15:09.860
+00:15:07.360 --> 00:15:09.860
for the development cycle because it slows
-00:15:11.240 --> 00:15:11.740
+00:15:09.860 --> 00:15:11.740
down release cycle quite a bit.
-00:15:14.480 --> 00:15:14.680
+00:15:12.120 --> 00:15:14.680
It's now you have to create PRs that are
-00:15:16.740 --> 00:15:17.240
+00:15:14.680 --> 00:15:17.240
reviewed by the Emacs Devel mailing list.
-00:15:18.900 --> 00:15:19.340
+00:15:17.620 --> 00:15:19.340
It is a little more inertia.
-00:15:21.180 --> 00:15:21.680
+00:15:19.340 --> 00:15:21.680
Of course, it gets you more distribution
-00:15:23.560 --> 00:15:24.020
+00:15:21.940 --> 00:15:24.020
because it's a default package now,
-00:15:25.600 --> 00:15:26.100
+00:15:24.020 --> 00:15:26.100
and everybody can be using that.
-00:15:28.100 --> 00:15:28.600
+00:15:26.140 --> 00:15:28.600
But it's not something every developer
-00:15:30.960 --> 00:15:31.400
+00:15:28.660 --> 00:15:31.400
decides to do. It took a few years,
-00:15:34.120 --> 00:15:34.620
+00:15:31.400 --> 00:15:34.620
in fact, to get usePackage into Emacs core.
-00:15:36.760 --> 00:15:37.200
+00:15:34.660 --> 00:15:37.200
And that only happened after it was so stable
-00:15:38.860 --> 00:15:39.360
+00:15:37.200 --> 00:15:39.360
that it really wasn't receiving many changes
-00:15:44.540 --> 00:15:44.760
+00:15:39.360 --> 00:15:44.760
anymore. Yeah, yeah it's it's the thing when
-00:15:46.560 --> 00:15:46.720
+00:15:44.760 --> 00:15:46.720
you move into core you lose a lot of your
-00:15:49.120 --> 00:15:49.280
+00:15:46.720 --> 00:15:49.280
agility in terms of how you're writing the
-00:15:50.440 --> 00:15:50.940
+00:15:49.280 --> 00:15:50.940
code or how you expand code.
-00:15:54.000 --> 00:15:54.220
+00:15:51.300 --> 00:15:54.220
That's why you have this vibrant community on
-00:15:57.180 --> 00:15:57.680
+00:15:54.220 --> 00:15:57.680
Melpa compared to core but you know it
-00:15:59.380 --> 00:15:59.480
+00:15:57.740 --> 00:15:59.480
doesn't necessarily ought to be this way it
-00:16:02.160 --> 00:16:02.320
+00:15:59.480 --> 00:16:02.320
could be a little different you know And it
-00:16:04.080 --> 00:16:04.580
+00:16:02.320 --> 00:16:04.580
feels like there's this repetition between
-00:16:06.500 --> 00:16:06.820
+00:16:04.760 --> 00:16:06.820
repartition, sorry, between people developing
-00:16:08.220 --> 00:16:08.600
+00:16:06.820 --> 00:16:08.600
for the core of Emacs and people developing
-00:16:10.600 --> 00:16:10.760
+00:16:08.600 --> 00:16:10.760
on Melpa, but at the end of the day those 2
-00:16:12.520 --> 00:16:13.020
+00:16:10.760 --> 00:16:13.020
groups are constantly talking to 1 another
-00:16:14.860 --> 00:16:15.240
+00:16:13.180 --> 00:16:15.240
and taking cues from 1 another as well.
-00:16:17.040 --> 00:16:17.540
+00:16:15.240 --> 00:16:17.540
So that's great. And there's of course...
-00:16:21.380 --> 00:16:21.880
+00:16:18.820 --> 00:16:21.880
May I jump in about this particular question
-00:16:24.840 --> 00:16:25.080
+00:16:21.900 --> 00:16:25.080
because I think I mean You know,
-00:16:27.100 --> 00:16:27.540
+00:16:25.080 --> 00:16:27.540
Org Mode doesn't really have any problems
-00:16:28.980 --> 00:16:29.380
+00:16:27.540 --> 00:16:29.380
with releases Correct.
-00:16:32.320 --> 00:16:32.820
+00:16:29.380 --> 00:16:32.820
Just because it's distributed with Emacs so
-00:16:34.900 --> 00:16:35.020
+00:16:32.860 --> 00:16:35.020
there is a difference between being in the
-00:16:37.460 --> 00:16:37.960
+00:16:35.020 --> 00:16:37.960
core proper and being distributed with Emacs.
-00:16:39.640 --> 00:16:40.080
+00:16:38.520 --> 00:16:40.080
And for something like use packages,
-00:16:41.780 --> 00:16:42.280
+00:16:40.080 --> 00:16:42.280
it's really necessary to be in the core.
-00:16:44.340 --> 00:16:44.840
+00:16:42.600 --> 00:16:44.840
But for something like major mode,
-00:16:48.620 --> 00:16:48.740
+00:16:45.060 --> 00:16:48.740
it's a bit easier. That's a very very good
-00:16:50.200 --> 00:16:50.400
+00:16:48.740 --> 00:16:50.400
point. Yeah, I'd forgotten about that
-00:16:52.740 --> 00:16:53.000
+00:16:50.400 --> 00:16:53.000
distinction. Org mode does advance pretty
-00:16:55.760 --> 00:16:55.900
+00:16:53.000 --> 00:16:55.900
rapidly and then it makes releases into the
-00:16:59.320 --> 00:16:59.640
+00:16:55.900 --> 00:16:59.640
core distribution. Gianni,
-00:17:01.000 --> 00:17:01.480
+00:16:59.640 --> 00:17:01.480
I believe you also wanted to say something
-00:17:03.680 --> 00:17:03.840
+00:17:01.480 --> 00:17:03.840
before someone started jumped in with a
-00:17:08.460 --> 00:17:08.700
+00:17:03.840 --> 00:17:08.700
question do you happen to remember okay
-00:17:11.520 --> 00:17:12.020
+00:17:08.700 --> 00:17:12.020
that's fine I lost her to lost to their time
-00:17:14.060 --> 00:17:14.560
+00:17:12.560 --> 00:17:14.560
I'll be moving on to the next question then
-00:17:17.280 --> 00:17:17.460
+00:17:15.700 --> 00:17:17.460
and by the way feel free to interrupt us you
-00:17:19.440 --> 00:17:19.619
+00:17:17.460 --> 00:17:19.619
know The whole point of this discussion is
-00:17:20.740 --> 00:17:21.140
+00:17:19.619 --> 00:17:21.140
for you to ask questions to John Wheatley.
-00:17:23.240 --> 00:17:23.520
+00:17:21.140 --> 00:17:23.520
So whether it be via the other pad or via
-00:17:25.680 --> 00:17:26.180
+00:17:23.520 --> 00:17:26.180
BBB, choose your weapon.
-00:17:28.700 --> 00:17:28.820
+00:17:27.260 --> 00:17:28.820
All right, moving on to the next question in
-00:17:30.220 --> 00:17:30.520
+00:17:28.820 --> 00:17:30.520
the meantime. And we have about 7 minutes
-00:17:32.600 --> 00:17:32.760
+00:17:30.520 --> 00:17:32.760
left of Q&A and then we'll be moving on to
-00:17:35.580 --> 00:17:35.780
+00:17:32.760 --> 00:17:35.780
Stéphane. So, do you use other IDEs for
-00:17:37.840 --> 00:17:38.040
+00:17:35.780 --> 00:17:38.040
theorem proving work, notably VS Code for
-00:17:42.180 --> 00:17:42.340
+00:17:38.040 --> 00:17:42.340
Lean? Which languages and provers can or do
-00:17:45.420 --> 00:17:45.920
+00:17:42.340 --> 00:17:45.920
you use Emacs for? I've only used Emacs.
-00:17:49.340 --> 00:17:49.840
+00:17:46.120 --> 00:17:49.840
I've used Emacs for working with ACL 2,
-00:17:53.300 --> 00:17:53.480
+00:17:49.960 --> 00:17:53.480
Coq, Agda, and Lean, and I really love
-00:17:55.560 --> 00:17:55.680
+00:17:53.480 --> 00:17:55.680
Proof-General. Coq is my favorite language to
-00:17:57.380 --> 00:17:57.740
+00:17:55.680 --> 00:17:57.740
be working in. Agda has really great support
-00:17:59.120 --> 00:17:59.540
+00:17:57.740 --> 00:17:59.540
as well, has a very nice Emacs mode.
-00:18:02.500 --> 00:18:02.920
+00:17:59.540 --> 00:18:02.920
I'm only just now starting to get into Lean
-00:18:04.640 --> 00:18:05.140
+00:18:02.920 --> 00:18:05.140
4. So I have everything installed,
-00:18:07.080 --> 00:18:07.240
+00:18:05.280 --> 00:18:07.240
but I haven't really started coding in
-00:18:08.680 --> 00:18:08.800
+00:18:07.240 --> 00:18:08.800
earnest. I'm still reading a lot of the
-00:18:10.760 --> 00:18:10.920
+00:18:08.800 --> 00:18:10.920
tutorials and learning a bit about the
-00:18:13.260 --> 00:18:13.440
+00:18:10.920 --> 00:18:13.440
language. There was a while there where I
-00:18:17.360 --> 00:18:17.540
+00:18:13.440 --> 00:18:17.540
used a IDE for ACL 2 that was outside of
-00:18:19.760 --> 00:18:19.920
+00:18:17.540 --> 00:18:19.920
Emacs, only because it was the same IDE all
-00:18:21.820 --> 00:18:22.040
+00:18:19.920 --> 00:18:22.040
my co-workers were using and it was easier to
-00:18:23.740 --> 00:18:24.240
+00:18:22.040 --> 00:18:24.240
share tips and tricks with them.
-00:18:27.780 --> 00:18:28.240
+00:18:24.520 --> 00:18:28.240
But yeah, no, I found Emacs to be a great
-00:18:29.360 --> 00:18:29.860
+00:18:28.240 --> 00:18:29.860
home for doing theorem proving.
-00:18:36.160 --> 00:18:36.580
+00:18:32.120 --> 00:18:36.580
Right. Next question. Can we see that AI
-00:18:40.520 --> 00:18:40.760
+00:18:36.580 --> 00:18:40.760
generated draft? You know what you mentioned
-00:18:43.200 --> 00:18:43.420
+00:18:40.760 --> 00:18:43.420
before about the draft that you then fed into
-00:18:45.160 --> 00:18:45.480
+00:18:43.420 --> 00:18:45.480
ChargPT? Do you happen to have this draft
-00:18:50.940 --> 00:18:51.440
+00:18:45.480 --> 00:18:51.440
anywhere? Let me see if it's still on GitHub.
-00:18:53.800 --> 00:18:54.300
+00:18:51.760 --> 00:18:54.300
Just take me 1 second to take a look here.
-00:18:59.440 --> 00:18:59.820
+00:18:55.260 --> 00:18:59.820
Take your time. The problem is I don't quite
-00:19:01.320 --> 00:19:01.820
+00:18:59.820 --> 00:19:01.820
remember where I made the note.
-00:19:06.760 --> 00:19:07.260
+00:19:04.700 --> 00:19:07.260
But no, I don't see it on GitHub,
-00:19:09.340 --> 00:19:09.840
+00:19:07.340 --> 00:19:09.840
so I don't have it readily at hand.
-00:19:12.740 --> 00:19:13.240
+00:19:10.580 --> 00:19:13.240
Well, that's fine. We'll be able to...
-00:19:14.760 --> 00:19:15.060
+00:19:13.520 --> 00:19:15.060
Well, if you happen to find it,
-00:19:17.120 --> 00:19:17.280
+00:19:15.060 --> 00:19:17.280
we'll make sure to add it on the pad and then
-00:19:20.740 --> 00:19:20.940
+00:19:17.280 --> 00:19:20.940
on the talks page. And I think we would all
-00:19:22.120 --> 00:19:22.440
+00:19:20.940 --> 00:19:22.440
be interested to see what this design
-00:19:26.680 --> 00:19:27.160
+00:19:22.440 --> 00:19:27.160
document that actually made something work
-00:19:28.660 --> 00:19:28.980
+00:19:27.160 --> 00:19:28.980
afterwards in JudgeDPT with Elisp.
-00:19:30.440 --> 00:19:30.720
+00:19:28.980 --> 00:19:30.720
I'm very interested to see what it would do
-00:19:32.480 --> 00:19:32.720
+00:19:30.720 --> 00:19:32.720
because I tend to be very interested about
-00:19:34.640 --> 00:19:34.780
+00:19:32.720 --> 00:19:34.780
this type of stuff I had generated but I
-00:19:36.360 --> 00:19:36.860
+00:19:34.780 --> 00:19:36.860
never thought about doing it with Elisp
-00:19:38.720 --> 00:19:39.000
+00:19:37.040 --> 00:19:39.000
because somehow it feels like 2 different
-00:19:40.520 --> 00:19:41.020
+00:19:39.000 --> 00:19:41.020
worlds, like Elisp is kind of from the past,
-00:19:43.540 --> 00:19:44.040
+00:19:41.260 --> 00:19:44.040
don't going me wrong, I love it and I use it
-00:19:46.720 --> 00:19:46.920
+00:19:44.140 --> 00:19:46.920
every day But it's 2 different parts of my
-00:19:48.480 --> 00:19:48.820
+00:19:46.920 --> 00:19:48.820
brain that I didn't think about linking.
-00:19:50.600 --> 00:19:51.100
+00:19:48.820 --> 00:19:51.100
So I'd be very excited to see this as well.
-00:19:54.160 --> 00:19:54.640
+00:19:53.040 --> 00:19:54.640
Moving on to the next question.
-00:19:56.480 --> 00:19:56.980
+00:19:54.640 --> 00:19:56.980
Oh, go on, please. I did find it.
-00:20:00.600 --> 00:20:01.080
+00:19:57.260 --> 00:20:01.080
I'm gonna have to give it to you as a link
-00:20:03.120 --> 00:20:03.380
+00:20:01.080 --> 00:20:03.380
here. Sure, you can do it on the blue button
-00:20:05.400 --> 00:20:05.900
+00:20:03.380 --> 00:20:05.900
and I'll put it on the pad.
-00:20:12.040 --> 00:20:12.540
+00:20:10.160 --> 00:20:12.540
I put it into the public chat for Bibi.
-00:20:15.520 --> 00:20:15.920
+00:20:12.960 --> 00:20:15.920
Yes. So if anyone is interested,
-00:20:18.120 --> 00:20:18.280
+00:20:15.920 --> 00:20:18.280
I'm putting it right in the answer to the
-00:20:19.740 --> 00:20:20.200
+00:20:18.280 --> 00:20:20.200
question right here on my screen.
-00:20:21.820 --> 00:20:22.120
+00:20:20.200 --> 00:20:22.120
So feel free to click on it and explore it.
-00:20:23.320 --> 00:20:23.680
+00:20:22.120 --> 00:20:23.680
I'm kind of curious, so I'm gonna...
-00:20:25.400 --> 00:20:25.560
+00:20:23.680 --> 00:20:25.560
Can I click it on stream and can we look at
-00:20:26.120 --> 00:20:26.620
+00:20:25.560 --> 00:20:26.620
it a little bit together?
-00:20:28.680 --> 00:20:29.020
+00:20:26.740 --> 00:20:29.020
Sure, sure. I haven't tried running it,
-00:20:31.300 --> 00:20:31.680
+00:20:29.020 --> 00:20:31.680
I can't say for its fitness,
-00:20:33.720 --> 00:20:34.220
+00:20:31.680 --> 00:20:34.220
but it's definitely enough of the groundwork
-00:20:36.160 --> 00:20:36.660
+00:20:34.400 --> 00:20:36.660
done that it's absolutely an assistance.
-00:20:39.760 --> 00:20:40.260
+00:20:38.100 --> 00:20:40.260
Right. Okay, so it's loading up right now?
-00:20:42.180 --> 00:20:42.620
+00:20:41.540 --> 00:20:42.620
You can see my webcam,
-00:20:45.480 --> 00:20:45.680
+00:20:42.620 --> 00:20:45.680
right? I can see your browser attempting to
-00:20:47.080 --> 00:20:47.360
+00:20:45.680 --> 00:20:47.360
load. There we go. Okay,
-00:20:49.860 --> 00:20:50.060
+00:20:47.360 --> 00:20:50.060
cool. So I'm not sure what GitHub is doing.
-00:20:51.240 --> 00:20:51.460
+00:20:50.060 --> 00:20:51.460
Let me give it a little more room.
-00:20:53.860 --> 00:20:54.360
+00:20:51.460 --> 00:20:54.360
The reactive setup is not working too well.
-00:20:58.340 --> 00:20:58.840
+00:20:57.260 --> 00:20:58.840
Oh, I see. You're viewing the...
-00:21:01.960 --> 00:21:02.220
+00:20:59.540 --> 00:21:02.220
I see. Can I see the file then?
-00:21:03.520 --> 00:21:04.020
+00:21:02.220 --> 00:21:04.020
I should be able to see the file.
-00:21:08.800 --> 00:21:09.060
+00:21:06.460 --> 00:21:09.060
I think he just mentions the code in that
-00:21:11.480 --> 00:21:11.640
+00:21:09.060 --> 00:21:11.640
comment. So if there's a way to view only the
-00:21:14.765 --> 00:21:14.897
+00:21:11.640 --> 00:21:14.897
comment it would make it clear.
-00:21:16.160 --> 00:21:16.660
+00:21:14.897 --> 00:21:16.660
Right. Okay. I'm loading the file separately.
-00:21:18.000 --> 00:21:18.500
+00:21:17.320 --> 00:21:18.500
I'm checking the time.
-00:21:21.220 --> 00:21:21.340
+00:21:18.740 --> 00:21:21.340
We have about 3 minutes left and I think we
-00:21:22.420 --> 00:21:22.900
+00:21:21.340 --> 00:21:22.900
have a question. In the meantime,
-00:21:25.680 --> 00:21:25.760
+00:21:22.900 --> 00:21:25.760
whilst I show this, I'm gonna launch another
-00:21:28.320 --> 00:21:28.820
+00:21:25.760 --> 00:21:28.820
question, which was about Drafts.
-00:21:30.580 --> 00:21:30.740
+00:21:29.440 --> 00:21:30.740
You are carrying, you're talking about
-00:21:32.320 --> 00:21:32.480
+00:21:30.740 --> 00:21:32.480
Drafts, but does that mean you're not using
-00:21:35.720 --> 00:21:35.920
+00:21:32.480 --> 00:21:35.920
org anymore? Oh, no, I use org all the time.
-00:21:37.600 --> 00:21:38.100
+00:21:35.920 --> 00:21:38.100
In fact, the way that I've configured drafts
-00:21:40.240 --> 00:21:40.580
+00:21:38.160 --> 00:21:40.580
is that after I type the thing in the note
-00:21:43.080 --> 00:21:43.260
+00:21:40.580 --> 00:21:43.260
into drafts, I hit a key and it creates an
-00:21:44.920 --> 00:21:45.420
+00:21:43.260 --> 00:21:45.420
org mode capture item for it.
-00:21:48.060 --> 00:21:48.560
+00:21:45.540 --> 00:21:48.560
The reason why I use Drafts instead of Emacs
-00:21:50.160 --> 00:21:50.660
+00:21:48.560 --> 00:21:50.660
is because it's always available.
-00:21:53.680 --> 00:21:53.960
+00:21:51.100 --> 00:21:53.960
If Emacs is currently doing some job for me,
-00:21:55.840 --> 00:21:56.340
+00:21:53.960 --> 00:21:56.340
say I'm running some long-running subshell
-00:21:58.940 --> 00:21:59.440
+00:21:57.060 --> 00:21:59.440
and the UI is frozen up whatnot,
-00:22:02.020 --> 00:22:02.360
+00:21:59.700 --> 00:22:02.360
Drafts is always 100% of the time instantly
-00:22:04.600 --> 00:22:04.900
+00:22:02.360 --> 00:22:04.900
available. So that's why I tend to then lean
-00:22:07.740 --> 00:22:07.920
+00:22:04.900 --> 00:22:07.920
on it a bit, but all of the destination of
-00:22:09.760 --> 00:22:10.240
+00:22:07.920 --> 00:22:10.240
that data is still Org Mode and everything
-00:22:11.960 --> 00:22:12.460
+00:22:10.240 --> 00:22:12.460
that I do gets tracked through Org Mode.
-00:22:15.720 --> 00:22:16.160
+00:22:13.080 --> 00:22:16.160
That's also why I wanted to implement the UI
-00:22:18.580 --> 00:22:18.800
+00:22:16.160 --> 00:22:18.800
scheme of drafts in Emacs so that I could
-00:22:20.360 --> 00:22:20.860
+00:22:18.800 --> 00:22:20.860
drop the use of this external application.
-00:22:23.040 --> 00:22:23.160
+00:22:21.540 --> 00:22:23.160
And then, I mean, I would still have the
-00:22:25.080 --> 00:22:25.580
+00:22:23.160 --> 00:22:25.580
problem of sometimes Emacs being unavailable,
-00:22:29.760 --> 00:22:30.040
+00:22:26.060 --> 00:22:30.040
but I would pay that price in order to have
-00:22:32.200 --> 00:22:32.700
+00:22:30.040 --> 00:22:32.700
that good UI of drafts inside Emacs.
-00:22:37.200 --> 00:22:37.700
+00:22:34.640 --> 00:22:37.700
Great. I think we have,
-00:22:39.520 --> 00:22:39.720
+00:22:38.420 --> 00:22:39.720
we might be too tight on time.
-00:22:41.200 --> 00:22:41.640
+00:22:39.720 --> 00:22:41.640
We only have about 2 minutes and I need to
-00:22:43.680 --> 00:22:44.180
+00:22:41.640 --> 00:22:44.180
jump room to go into Stephane's room as well.
-00:22:47.160 --> 00:22:47.380
+00:22:44.440 --> 00:22:47.380
So John, where I get to thank you so much for
-00:22:52.660 --> 00:22:53.160
+00:22:47.380 --> 00:22:53.160
taking the time to answer our questions,
-00:22:54.920 --> 00:22:55.040
+00:22:53.260 --> 00:22:55.040
but also doing a little bit of reporting on
-00:22:57.900 --> 00:22:58.380
+00:22:55.040 --> 00:22:58.380
the state of Emacs. And now we'll get to
-00:22:58.940 --> 00:22:59.280
+00:22:58.380 --> 00:22:59.280
continue this with Stéphane.
-00:23:00.900 --> 00:23:01.300
+00:22:59.280 --> 00:23:01.300
So do you have any last words for everyone,
-00:23:03.380 --> 00:23:03.660
+00:23:01.300 --> 00:23:03.660
John? No, no. I look forward to hearing
-00:23:05.940 --> 00:23:06.420
+00:23:03.660 --> 00:23:06.420
Stéphane speak. Okay, great.
-00:23:07.000 --> 00:23:07.360
+00:23:06.420 --> 00:23:07.360
And we'll look forward,
-00:23:08.800 --> 00:23:09.300
+00:23:07.360 --> 00:23:09.300
potentially, to having you again next year,
-00:23:12.180 --> 00:23:12.680
+00:23:10.520 --> 00:23:12.680
potentially still doing news like this,
-00:23:15.620 --> 00:23:15.920
+00:23:12.980 --> 00:23:15.920
and, fingers crossed, maybe having you live
-00:23:18.160 --> 00:23:18.660
+00:23:15.920 --> 00:23:18.660
again. Maybe, maybe let's see what happens.
-00:23:20.680 --> 00:23:20.860
+00:23:19.700 --> 00:23:20.860
All right, John. Thank you so much.
-00:23:21.780 --> 00:23:22.280
+00:23:20.860 --> 00:23:22.280
Bye bye. Bye bye.
diff --git a/2023/captions/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.vtt b/2023/captions/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.vtt
new file mode 100644
index 00000000..e6ae083a
--- /dev/null
+++ b/2023/captions/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.vtt
@@ -0,0 +1,4022 @@
+WEBVTT
+
+
+00:00:01.719 --> 00:00:02.600
+[Speaker 0]: 5 seconds. Oh, actually,
+
+00:00:07.279 --> 00:00:08.320
+[Speaker 1]: Sorry, I keep delaying.
+
+00:00:08.320 --> 00:00:09.559
+I keep forgetting that we have an
+
+00:00:09.559 --> 00:00:11.639
+introduction now. The introduction is flying.
+
+00:00:02.600 --> 00:00:18.883
+[Speaker 0]: a little more. You're going to give a
+
+00:00:22.260 --> 00:00:24.320
+[Speaker 1]: Well, it's about 5 seconds now.
+
+00:00:19.675 --> 00:00:27.560
+[Speaker 0]: 30-second, right? Just say go when you want
+
+00:00:29.060 --> 00:00:31.280
+[Speaker 1]: Sure. You'll hear me anyway.
+
+00:00:27.560 --> 00:00:32.299
+[Speaker 0]: me to go. Okay.
+
+00:00:33.260 --> 00:00:35.220
+[Speaker 1]: All right, I think we are live now.
+
+00:00:35.220 --> 00:00:36.100
+So hi again, everyone.
+
+00:00:36.100 --> 00:00:37.900
+I promised you we would be back in about 30
+
+00:00:37.900 --> 00:00:39.940
+seconds. I lied, it was actually 1 minute,
+
+00:00:40.160 --> 00:00:41.760
+but we are here with Bob.
+
+00:00:41.760 --> 00:00:42.840
+Hi, Bob, how are you doing?
+
+00:00:43.380 --> 00:00:46.940
+[Speaker 0]: Hi, doing great. Glad to
+
+00:00:46.940 --> 00:00:50.600
+[Speaker 1]: be with you. Yeah, glad to be here,
+
+00:00:50.600 --> 00:00:52.580
+and so are we. We're glad to have you again
+
+00:00:52.580 --> 00:00:54.440
+this year. So what we're going to do,
+
+00:00:54.440 --> 00:00:56.140
+we're not going to waste any time right now
+
+00:00:56.140 --> 00:00:57.880
+with chit-chats. What we're going to do,
+
+00:00:57.880 --> 00:00:59.059
+we're going to move straight into your
+
+00:00:59.059 --> 00:01:01.120
+presentation, Bob, so that you have as much
+
+00:01:01.120 --> 00:01:04.239
+time as you can. I'm going to recede into the
+
+00:01:04.239 --> 00:01:07.440
+background. I am going to full screen your
+
+00:01:07.440 --> 00:01:08.979
+presentation on a stream.
+
+00:01:09.860 --> 00:01:11.680
+And Bob, the floor is all yours.
+
+00:01:12.940 --> 00:01:14.720
+[Speaker 0]: Thank you very much, Leo.
+
+00:01:15.040 --> 00:01:18.400
+Glad to be here. I hope everybody has an idea
+
+00:01:18.400 --> 00:01:22.780
+of what Hyperbole is, but it's a broad
+
+00:01:22.900 --> 00:01:25.880
+information management system inside Emacs
+
+00:01:26.400 --> 00:01:28.540
+that works in all major modes.
+
+00:01:28.860 --> 00:01:31.760
+It's a global minor mode that you can turn on
+
+00:01:31.760 --> 00:01:34.760
+and off very rapidly so that you can just get
+
+00:01:34.760 --> 00:01:36.160
+in and out of hyperbole.
+
+00:01:36.760 --> 00:01:40.940
+And it works mostly from a mini buffer menu
+
+00:01:41.400 --> 00:01:44.040
+that if we just hit ctrl H H we see at the
+
+00:01:44.040 --> 00:01:47.420
+bottom of the screen here and as you see in
+
+00:01:47.420 --> 00:01:48.980
+some of this text right here,
+
+00:01:51.040 --> 00:01:55.680
+Dee will show you a demo with all these video
+
+00:01:55.680 --> 00:01:57.680
+links of Hyperbole now.
+
+00:01:57.900 --> 00:02:01.780
+But let's just get into the top 10 reasons to
+
+00:02:01.780 --> 00:02:08.840
+use Hyperbole. Number 10 is a key series
+
+00:02:10.160 --> 00:02:12.600
+curly braces. So you just put curly braces
+
+00:02:12.600 --> 00:02:17.620
+around any set of key sequences that you want
+
+00:02:19.760 --> 00:02:22.440
+and hyperbole magically turns that into what
+
+00:02:22.440 --> 00:02:25.640
+we call an implicit button a hyper button and
+
+00:02:25.640 --> 00:02:28.580
+any kind of text that you have so if we go
+
+00:02:28.580 --> 00:02:35.760
+down here and we just click click here we see
+
+00:02:35.820 --> 00:02:40.220
+it that was a complex button that said let's
+
+00:02:40.400 --> 00:02:43.200
+start a shell, let's set an environment
+
+00:02:43.320 --> 00:02:45.140
+variable as you see the command right up
+
+00:02:45.140 --> 00:02:47.420
+there, and then let's do a grep over the
+
+00:02:47.420 --> 00:02:50.680
+hyperbole code and find all instances of a
+
+00:02:50.680 --> 00:02:55.360
+particular label. So if we hit made a return,
+
+00:02:55.400 --> 00:02:57.260
+that's called the action key.
+
+00:02:57.280 --> 00:02:59.340
+That's what you use throughout hyperbole when
+
+00:02:59.340 --> 00:03:01.900
+you just want to activate any kind of button.
+
+00:03:02.020 --> 00:03:06.380
+So you see it jumped to the grep output and
+
+00:03:06.380 --> 00:03:08.440
+this is in a shell buffer it's not in a
+
+00:03:08.440 --> 00:03:11.180
+compilation buffer so anywhere that you have
+
+00:03:11.180 --> 00:03:13.760
+this sort of thing it's also an implicit
+
+00:03:13.780 --> 00:03:17.040
+button and any sort of grep output or
+
+00:03:17.040 --> 00:03:20.780
+compiler output you can just jump to with the
+
+00:03:22.120 --> 00:03:23.580
+same key, made a return.
+
+00:03:23.960 --> 00:03:29.240
+So that's key series, the first part.
+
+00:03:29.440 --> 00:03:33.880
+And then just to note that you can also just
+
+00:03:33.880 --> 00:03:39.000
+do a, well I'll just do it here and show you
+
+00:03:39.000 --> 00:03:43.380
+that you can do a recursive grep with this
+
+00:03:43.380 --> 00:03:45.840
+hyperbole command, HYPBR grep.
+
+00:03:46.060 --> 00:03:49.000
+And if you're in an Emacs list buffer,
+
+00:03:50.860 --> 00:03:54.740
+it will only grep across the Emacs list.
+
+00:03:54.760 --> 00:03:58.340
+So a very handy way to just go through your
+
+00:03:58.340 --> 00:04:01.040
+code very rapidly and then jump to various
+
+00:04:01.040 --> 00:04:04.280
+points in it. So we have a lot to cover
+
+00:04:04.280 --> 00:04:05.800
+today, so I'm going to go through this
+
+00:04:05.800 --> 00:04:07.560
+rapidly. This isn't a tutorial,
+
+00:04:07.800 --> 00:04:10.340
+it's just to get you interested in some of
+
+00:04:10.340 --> 00:04:13.060
+the features, and then there's a ton of
+
+00:04:13.060 --> 00:04:15.920
+reference material and videos now available
+
+00:04:15.980 --> 00:04:18.860
+for Hyperlink. So let's go to number 9.
+
+00:04:20.019 --> 00:04:22.360
+Path names become implicit buttons.
+
+00:04:22.500 --> 00:04:24.060
+You don't even have to quote them.
+
+00:04:24.060 --> 00:04:26.920
+You can add environment variables or elist
+
+00:04:26.920 --> 00:04:29.200
+variables with the syntax right here.
+
+00:04:29.380 --> 00:04:32.180
+So here we have a shell script that's
+
+00:04:32.180 --> 00:04:33.500
+somewhere on our path.
+
+00:04:33.680 --> 00:04:36.380
+And notice path is an environment variable
+
+00:04:36.380 --> 00:04:39.140
+with many different paths within it,
+
+00:04:39.140 --> 00:04:42.600
+right? But Hyperbole knows that and it
+
+00:04:42.600 --> 00:04:44.980
+searches the path, gets the first match,
+
+00:04:45.600 --> 00:04:48.620
+finds it, and finds the actual shell script.
+
+00:04:48.660 --> 00:04:50.420
+So you can just embed that anywhere.
+
+00:04:50.540 --> 00:04:52.160
+Here we have a list variable,
+
+00:04:52.280 --> 00:04:54.360
+hyperbdur, which is the home directory for
+
+00:04:54.360 --> 00:04:58.120
+hyperbole, and then a markdown file,
+
+00:04:58.320 --> 00:05:01.680
+and a link to a direct section in the file,
+
+00:05:01.780 --> 00:05:05.220
+and the 5 colon 5 means go to line 5 within
+
+00:05:05.220 --> 00:05:07.260
+that section and column 5.
+
+00:05:07.380 --> 00:05:09.400
+So let's just try it. Boom,
+
+00:05:09.420 --> 00:05:11.500
+we're right there, and we're on another link
+
+00:05:11.500 --> 00:05:13.220
+that we could activate as well.
+
+00:05:13.420 --> 00:05:17.960
+So notice the next line is the same link but
+
+00:05:17.960 --> 00:05:20.280
+this is how you normally have to do it in a
+
+00:05:20.280 --> 00:05:23.160
+markdown file. You have to change the section
+
+00:05:23.160 --> 00:05:25.640
+header to have dashes but with hyperbole you
+
+00:05:25.640 --> 00:05:28.120
+don't have to. You can just put it exactly
+
+00:05:28.140 --> 00:05:29.840
+like you see it in your file.
+
+00:05:30.540 --> 00:05:34.660
+Here the pound syntax for sections is really
+
+00:05:34.660 --> 00:05:36.640
+a generic syntax in the hyperbole.
+
+00:05:37.360 --> 00:05:39.840
+And so it works in all different kinds of
+
+00:05:39.840 --> 00:05:41.500
+files, your programming files.
+
+00:05:42.100 --> 00:05:45.240
+Here's a shell script and we said let's just
+
+00:05:45.240 --> 00:05:49.120
+go to the first comment that has alias in it.
+
+00:05:49.120 --> 00:05:51.700
+Notice we didn't have to say the whole line,
+
+00:05:51.700 --> 00:05:53.160
+just the first part of it.
+
+00:05:53.160 --> 00:05:58.140
+And it matched to it. Here we have a link to
+
+00:05:58.140 --> 00:06:01.680
+our hyperbole structured outliner called the
+
+00:06:01.680 --> 00:06:04.660
+K Outliner. And you can see it auto-numbers
+
+00:06:05.080 --> 00:06:08.000
+all these cells. But in addition to just
+
+00:06:08.000 --> 00:06:10.640
+displaying, you can also add a pipe symbol
+
+00:06:10.640 --> 00:06:14.900
+near the end and use this view syntax to clip
+
+00:06:14.900 --> 00:06:17.500
+to 2 lines and show blank lines.
+
+00:06:17.500 --> 00:06:19.920
+So let's see if each node gets clipped to 2
+
+00:06:19.920 --> 00:06:22.680
+lines. So you see they're all just 2 now with
+
+00:06:22.680 --> 00:06:25.280
+the ellipses and then we can expand them.
+
+00:06:25.320 --> 00:06:28.760
+So a lot of power there just with path names.
+
+00:06:29.380 --> 00:06:31.120
+Let's continue to number 8.
+
+00:06:31.120 --> 00:06:32.940
+[Speaker 1]: Can I just interrupt you just a bit?
+
+00:06:33.420 --> 00:06:33.920
+[Speaker 0]: Yes.
+
+00:06:34.740 --> 00:06:37.720
+[Speaker 1]: I think your phone, so we have your phone set
+
+00:06:37.720 --> 00:06:40.460
+up in case your internet misbehaves and we've
+
+00:06:40.640 --> 00:06:42.080
+set this up before we started,
+
+00:06:42.100 --> 00:06:44.380
+but I think the vibration is a little loud
+
+00:06:44.380 --> 00:06:46.160
+whenever it does. Can you maybe move it a
+
+00:06:46.160 --> 00:06:50.380
+little bit? I think so.
+
+00:06:50.380 --> 00:06:51.880
+It will have to vibrate again.
+
+00:06:47.740 --> 00:06:54.220
+[Speaker 0]: Is that okay? No, my phone...
+
+00:06:54.380 --> 00:06:56.880
+Okay. It shouldn't have been vibrating.
+
+00:06:59.480 --> 00:07:01.260
+[Speaker 1]: have been another device,
+
+00:07:01.280 --> 00:07:02.800
+but definitely we had vibration.
+
+00:07:02.800 --> 00:07:04.500
+Anyway, carry on. Sorry for the interruption.
+
+00:06:57.640 --> 00:07:06.920
+[Speaker 0]: It could be me. It might So number 8,
+
+00:07:07.800 --> 00:07:10.520
+special prefixes. There are 3 prefixes you
+
+00:07:10.520 --> 00:07:11.820
+can attach to path names.
+
+00:07:11.820 --> 00:07:13.680
+The first, if you want to load,
+
+00:07:13.820 --> 00:07:16.040
+instead of just finding a file,
+
+00:07:16.620 --> 00:07:19.460
+an ELIST file, you can actually load it.
+
+00:07:19.540 --> 00:07:22.060
+And so I can just hit made a return on this,
+
+00:07:22.200 --> 00:07:24.300
+and you see in the mini buffer,
+
+00:07:25.200 --> 00:07:27.100
+it loaded it as compiled e-list.
+
+00:07:27.240 --> 00:07:29.340
+I could put a .el on here,
+
+00:07:29.500 --> 00:07:33.500
+a .elc, .gz, all of that'll work,
+
+00:07:33.580 --> 00:07:36.420
+and just put a dash in front to load it.
+
+00:07:36.580 --> 00:07:38.720
+If you want to run a shell command,
+
+00:07:38.720 --> 00:07:41.040
+just put an exclamation mark in front of
+
+00:07:41.040 --> 00:07:42.540
+something and again you can have the
+
+00:07:42.540 --> 00:07:44.620
+environment variable. So here we're saying
+
+00:07:44.620 --> 00:07:47.220
+run the program date and you see,
+
+00:07:48.400 --> 00:07:50.040
+let's see, let's do it again.
+
+00:07:50.160 --> 00:07:53.240
+There we go. It ran date and you see the
+
+00:07:53.240 --> 00:07:55.680
+output right there. And what if you want to
+
+00:07:55.680 --> 00:07:58.040
+run a graphical program on your system?
+
+00:07:58.620 --> 00:08:01.760
+Well here, we want to open a PDF file and I'm
+
+00:08:01.760 --> 00:08:05.340
+just using XDG Open on Linux,
+
+00:08:05.660 --> 00:08:09.440
+you could use Open on Mac and you just put an
+
+00:08:09.440 --> 00:08:12.840
+ampersand in front and there's the Hyperbole
+
+00:08:14.120 --> 00:08:15.840
+manual instantly displayed.
+
+00:08:16.120 --> 00:08:18.620
+So lots of power there and all of that
+
+00:08:18.820 --> 00:08:22.360
+actually .pdf's and many other file types are
+
+00:08:22.360 --> 00:08:25.080
+automatically linked to various programs by
+
+00:08:25.080 --> 00:08:27.340
+Hyperbole. So you could just use the path
+
+00:08:27.340 --> 00:08:29.340
+name itself and it would probably behave the
+
+00:08:29.340 --> 00:08:34.440
+same way. Number 7, bookmarks on steroids.
+
+00:08:35.460 --> 00:08:37.419
+So Hyperbole gives you a personal button
+
+00:08:37.419 --> 00:08:40.340
+file, which is on the menu you see here under
+
+00:08:40.400 --> 00:08:42.280
+button files, and then personal.
+
+00:08:43.039 --> 00:08:45.360
+So here we'll just display it.
+
+00:08:45.480 --> 00:08:47.720
+And you can put whatever you want in here,
+
+00:08:47.720 --> 00:08:49.860
+these implicit buttons of any type.
+
+00:08:49.860 --> 00:08:52.660
+You can name them the way here and you can
+
+00:08:52.660 --> 00:08:55.560
+activate either the name with MetaReturn or
+
+00:08:55.560 --> 00:08:56.920
+the button itself. So,
+
+00:08:56.920 --> 00:08:59.400
+of course, if we did MetaReturn here,
+
+00:08:59.860 --> 00:09:03.220
+we'd just display that in a web browser.
+
+00:09:03.940 --> 00:09:05.520
+I'll just do a few of these.
+
+00:09:05.540 --> 00:09:07.200
+So here's a section of line.
+
+00:09:07.200 --> 00:09:08.580
+Let's just jump there.
+
+00:09:09.120 --> 00:09:11.400
+But these can be all sorts of different
+
+00:09:11.400 --> 00:09:13.140
+actions that are going on.
+
+00:09:13.140 --> 00:09:16.040
+And you just, whatever cross references you
+
+00:09:16.040 --> 00:09:17.840
+want, you put in here.
+
+00:09:17.840 --> 00:09:20.400
+And the neat thing is that this then becomes
+
+00:09:20.940 --> 00:09:23.420
+a list of what we call global buttons.
+
+00:09:23.620 --> 00:09:26.540
+So when I go into the menu and I go control
+
+00:09:26.540 --> 00:09:30.640
+HHGA to activate a global button,
+
+00:09:30.720 --> 00:09:33.220
+you can see that all the names from this file
+
+00:09:33.220 --> 00:09:36.100
+appear here. So only the name buttons appear,
+
+00:09:36.160 --> 00:09:40.240
+and I could like go to the hyperbole to-do
+
+00:09:40.240 --> 00:09:42.260
+list and things like that.
+
+00:09:42.500 --> 00:09:45.660
+So very, very quick access to all your
+
+00:09:45.660 --> 00:09:47.440
+information whenever you need it.
+
+00:09:47.440 --> 00:09:49.600
+And that could be an org file as well if you
+
+00:09:49.600 --> 00:09:53.500
+prefer that. So we just took care of that.
+
+00:09:53.540 --> 00:09:57.000
+Number 6, instant test case running and
+
+00:09:57.000 --> 00:09:59.420
+debugging. This is a fairly new feature.
+
+00:10:00.100 --> 00:10:02.240
+What we're seeing here is a pre-release of
+
+00:10:02.240 --> 00:10:04.440
+version 9, which should be out within the
+
+00:10:04.440 --> 00:10:07.560
+next week. But the instructions at the
+
+00:10:07.560 --> 00:10:10.680
+beginning of the presentation tell you how to
+
+00:10:10.680 --> 00:10:13.720
+get the development version of HyperBlade,
+
+00:10:14.040 --> 00:10:15.560
+which is right now 8.01
+
+00:10:15.880 --> 00:10:19.040
+pre, but that's virtually the same as what 9
+
+00:10:19.120 --> 00:10:23.060
+will be. So you can grab that as of today.
+
+00:10:24.140 --> 00:10:27.540
+So let's just jump to a test file.
+
+00:10:27.700 --> 00:10:30.300
+What you see here is called an explicit
+
+00:10:30.360 --> 00:10:33.020
+button. You can actually make buttons where
+
+00:10:33.120 --> 00:10:35.820
+similar to org, where you just see a bit of
+
+00:10:35.820 --> 00:10:38.500
+the button and all of the metadata is hidden.
+
+00:10:39.060 --> 00:10:42.040
+I can say control A J and I see all about
+
+00:10:42.040 --> 00:10:43.940
+that button, exactly what it's going to do
+
+00:10:43.940 --> 00:10:47.200
+before I activate it and even who created it
+
+00:10:47.200 --> 00:10:50.680
+or last modified it. Then just queue out of
+
+00:10:50.680 --> 00:10:52.580
+here and you're back where you were.
+
+00:10:52.700 --> 00:10:56.820
+So now, what this did is link us to an ERT
+
+00:10:56.920 --> 00:10:59.920
+test. If you write tests in Emacs,
+
+00:10:59.920 --> 00:11:02.060
+you probably use ERT tests.
+
+00:11:02.220 --> 00:11:05.220
+So if I hit made a return on here it'll just
+
+00:11:05.220 --> 00:11:08.520
+run the test tell me it passed great okay but
+
+00:11:08.520 --> 00:11:11.760
+maybe I had a problem so let me use control
+
+00:11:11.760 --> 00:11:17.080
+you made a return and that will e-debug the
+
+00:11:17.080 --> 00:11:20.080
+test instantly. So now I'll step through it
+
+00:11:20.080 --> 00:11:22.200
+and it says, well, let's,
+
+00:11:23.000 --> 00:11:25.580
+this single line actually creates that
+
+00:11:25.580 --> 00:11:27.800
+explicit button. You see we have an empty
+
+00:11:27.800 --> 00:11:29.480
+buffer here that we're in.
+
+00:11:29.480 --> 00:11:31.780
+Now I step through that and now there's the
+
+00:11:31.780 --> 00:11:34.160
+explicit button that got put in there.
+
+00:11:34.160 --> 00:11:36.940
+Now the next line I step through it and this
+
+00:11:36.940 --> 00:11:39.160
+is going to check if we have the right action
+
+00:11:39.160 --> 00:11:42.260
+type and it returns true so that's good and
+
+00:11:42.260 --> 00:11:45.220
+now we should be it should be associated with
+
+00:11:45.220 --> 00:11:48.680
+the temp buffer returns true good And that's
+
+00:11:48.680 --> 00:11:51.360
+why what you saw before is this passed.
+
+00:11:51.720 --> 00:11:52.760
+The whole thing passed.
+
+00:11:53.000 --> 00:11:54.740
+So lots of power there.
+
+00:11:55.080 --> 00:11:57.600
+Simple to use. You're just using your made a
+
+00:11:57.600 --> 00:11:59.360
+return and prefix arguments.
+
+00:12:00.040 --> 00:12:03.240
+It's something everybody who develops should
+
+00:12:03.240 --> 00:12:07.640
+have. So number, let's go on.
+
+00:12:07.640 --> 00:12:09.720
+I think we're making pretty good time here,
+
+00:12:09.720 --> 00:12:11.240
+but I turned off my timer.
+
+00:12:13.000 --> 00:12:15.800
+Let's go to number 5. This is a very new
+
+00:12:15.800 --> 00:12:17.660
+feature, which is very cool too.
+
+00:12:17.720 --> 00:12:20.420
+You used to have to use the mouse probably
+
+00:12:20.440 --> 00:12:23.880
+and you could drag across windows to go from
+
+00:12:23.880 --> 00:12:26.820
+a source to a referent buffer and that would
+
+00:12:26.820 --> 00:12:28.340
+create a hyperlink for you.
+
+00:12:28.340 --> 00:12:30.880
+But now we've installed it and made it even
+
+00:12:30.880 --> 00:12:34.140
+easier on, we've installed it on a,
+
+00:12:34.860 --> 00:12:36.540
+on the hyperbole menus.
+
+00:12:37.040 --> 00:12:40.180
+So let's just go back to our presentation
+
+00:12:40.680 --> 00:12:43.660
+here and say we want to link to this line
+
+00:12:43.660 --> 00:12:46.160
+that we're on there. And I'll just create the
+
+00:12:46.160 --> 00:12:48.480
+button in our scratch buffer here so it
+
+00:12:48.480 --> 00:12:50.660
+doesn't really mess anything up.
+
+00:12:50.900 --> 00:12:53.980
+So I just put my point in where I want the
+
+00:12:53.980 --> 00:12:56.920
+button to appear and then I put point where I
+
+00:12:56.920 --> 00:13:00.060
+want it to link to in the other the other
+
+00:13:00.060 --> 00:13:02.800
+buffer and then I just say control HH to get
+
+00:13:02.800 --> 00:13:05.260
+my menu, I for implicit button,
+
+00:13:05.380 --> 00:13:07.940
+and then L for link. Boom,
+
+00:13:07.960 --> 00:13:09.980
+it inserts it, right at point.
+
+00:13:10.680 --> 00:13:12.880
+What did it do? It knew that this was in the
+
+00:13:12.880 --> 00:13:15.080
+hyperbole directory and I have a variable for
+
+00:13:15.080 --> 00:13:17.780
+that, so that if you sent this link to your
+
+00:13:17.780 --> 00:13:19.180
+friend who uses Hyperbole,
+
+00:13:19.440 --> 00:13:21.440
+it would still work right because they have a
+
+00:13:21.440 --> 00:13:22.860
+different hyperbole there.
+
+00:13:23.100 --> 00:13:27.380
+And then I want to go directly to line 116.
+
+00:13:28.360 --> 00:13:30.360
+So boom, it just took me there.
+
+00:13:30.820 --> 00:13:33.900
+So that's it. And Hyperbole is doing all this
+
+00:13:33.900 --> 00:13:36.420
+for you. You just say I want a link to this
+
+00:13:36.420 --> 00:13:38.940
+thing and it figures out what's at point and
+
+00:13:38.940 --> 00:13:42.240
+it determines the right type of implicit link
+
+00:13:42.240 --> 00:13:45.520
+to put there. And that's the whole point is
+
+00:13:45.520 --> 00:13:47.320
+that you're just working like when you're
+
+00:13:47.320 --> 00:13:50.500
+programming or you're writing an article and
+
+00:13:50.500 --> 00:13:53.520
+you just hit made a return or or pull up a
+
+00:13:53.520 --> 00:13:57.180
+menu and hit a key binding and you're off to
+
+00:13:57.180 --> 00:14:02.400
+the races. So that was implicit linking We
+
+00:14:02.400 --> 00:14:05.260
+can also create those explicit link buttons,
+
+00:14:06.200 --> 00:14:07.760
+and as well as the global link,
+
+00:14:07.760 --> 00:14:09.580
+where we would just give it a name,
+
+00:14:09.580 --> 00:14:11.640
+and it would automatically put it in our
+
+00:14:11.640 --> 00:14:14.640
+global button file without us even having
+
+00:14:14.640 --> 00:14:18.380
+that on screen. So lots of power there as
+
+00:14:18.380 --> 00:14:19.660
+well, lots of consistency.
+
+00:14:21.900 --> 00:14:25.040
+Now let's take a look at the K Outliner a
+
+00:14:25.040 --> 00:14:28.040
+little more. I'm just going to show you 1
+
+00:14:28.040 --> 00:14:29.820
+feature actually. I don't have time to show
+
+00:14:29.820 --> 00:14:31.580
+you the K Outliner in detail,
+
+00:14:31.800 --> 00:14:34.220
+but it's a really cool structured outliner
+
+00:14:34.280 --> 00:14:36.400
+that even if you love Org Mode,
+
+00:14:36.580 --> 00:14:39.280
+you should try it. And this is 1 thing that
+
+00:14:39.280 --> 00:14:41.060
+you can't get with Org Mode,
+
+00:14:41.320 --> 00:14:45.100
+is let's say Hyperlink comes with an example
+
+00:14:45.100 --> 00:14:48.580
+file which teaches you about the K Outliner.
+
+00:14:48.960 --> 00:14:50.940
+So we'll just use that right here.
+
+00:14:51.180 --> 00:14:53.040
+And when you're in the K Outliner,
+
+00:14:53.080 --> 00:14:55.820
+you can bring up and go into the K Outliner
+
+00:14:55.900 --> 00:14:57.540
+menu right here at the bottom.
+
+00:14:58.200 --> 00:15:00.360
+And there's a format menu there.
+
+00:15:00.360 --> 00:15:02.600
+You always take the first letter of a menu,
+
+00:15:02.600 --> 00:15:05.100
+the first capital letter of a menu item.
+
+00:15:05.240 --> 00:15:08.720
+So F for format and then D for display in
+
+00:15:08.720 --> 00:15:11.700
+browser. So just let's do it.
+
+00:15:12.740 --> 00:15:17.220
+We have with 1 button or 1 key we've produced
+
+00:15:17.780 --> 00:15:23.660
+the entire outline in a collapsible outline
+
+00:15:23.720 --> 00:15:26.260
+in HTML. So I can go here.
+
+00:15:27.620 --> 00:15:29.240
+I just have to use my mouse.
+
+00:15:29.600 --> 00:15:33.300
+So I can expand and collapse these trees live
+
+00:15:34.220 --> 00:15:39.520
+with very basic coding.
+
+00:15:39.760 --> 00:15:42.680
+We tried to keep this as simple as possible.
+
+00:15:42.880 --> 00:15:45.580
+But you see it maintains the structure of the
+
+00:15:45.580 --> 00:15:47.880
+outline and even tables.
+
+00:15:55.120 --> 00:15:57.620
+So all the formatting is maintained and again
+
+00:15:57.620 --> 00:16:00.100
+it's instant. Or you can just export it to a
+
+00:16:00.100 --> 00:16:01.920
+file without displaying it.
+
+00:16:03.900 --> 00:16:05.880
+Very efficient kinds of operations.
+
+00:16:06.420 --> 00:16:10.960
+So that was number 4. Number 3 is a
+
+00:16:10.960 --> 00:16:13.400
+subsystem, another subsystem in Hyperbole
+
+00:16:13.440 --> 00:16:16.080
+called Hycontrol, which is for window and
+
+00:16:16.080 --> 00:16:18.600
+frame management. And I just wanted to show
+
+00:16:18.600 --> 00:16:20.920
+you 1 thing in there. It's got a lot of
+
+00:16:20.920 --> 00:16:24.400
+capabilities. But I always had the problem
+
+00:16:24.480 --> 00:16:28.340
+that Emacs wouldn't let me scale my fonts,
+
+00:16:28.380 --> 00:16:30.780
+all of my faces at the same time.
+
+00:16:30.840 --> 00:16:33.680
+I wanted to zoom. I didn't want to increase
+
+00:16:33.680 --> 00:16:36.260
+the default font size and all the others stay
+
+00:16:36.260 --> 00:16:40.660
+the same. So let's just display our faces
+
+00:16:41.260 --> 00:16:45.200
+right here and then we have a choice of
+
+00:16:45.200 --> 00:16:47.860
+either controlling frames or windows.
+
+00:16:47.920 --> 00:16:50.240
+So let's start by controlling frames.
+
+00:16:50.460 --> 00:16:52.760
+So you get another submenu when you're in
+
+00:16:52.760 --> 00:16:56.020
+high control to tell you what to do here.
+
+00:16:56.320 --> 00:16:59.480
+And there's just lowercase z and uppercase z.
+
+00:16:59.480 --> 00:17:03.400
+So let's try it. So it's scaling the entire
+
+00:17:03.400 --> 00:17:06.020
+frame. And you can see from the list of faces
+
+00:17:06.260 --> 00:17:08.500
+that they're all scaling at the same time.
+
+00:17:08.599 --> 00:17:10.220
+And I can go back down.
+
+00:17:10.760 --> 00:17:13.619
+Now if I switch to window mode,
+
+00:17:13.619 --> 00:17:16.099
+and there's a special fast way to do that,
+
+00:17:16.099 --> 00:17:18.819
+just hit T to toggle. And if you look at the
+
+00:17:18.819 --> 00:17:21.819
+bottom menu it says frames right now now it
+
+00:17:21.819 --> 00:17:25.599
+says windows when I hit T so now if I do the
+
+00:17:25.599 --> 00:17:30.640
+same Z to increase it's just this window and
+
+00:17:30.640 --> 00:17:36.800
+but it's you know it's the faces in there so
+
+00:17:37.200 --> 00:17:40.680
+a lot of power again but I just haven't found
+
+00:17:40.680 --> 00:17:43.220
+anywhere else that you can get that kind of
+
+00:17:43.220 --> 00:17:45.820
+control over your faces very rapidly.
+
+00:17:45.920 --> 00:17:51.640
+So that's number 3. Now number 2,
+
+00:17:55.360 --> 00:17:56.780
+let's put that in there.
+
+00:17:58.340 --> 00:18:03.320
+So the HiROLO is the final subsystem in
+
+00:18:03.320 --> 00:18:06.240
+Hyperbole and this has gotten much cooler.
+
+00:18:06.500 --> 00:18:08.680
+So it started off as a contact management
+
+00:18:08.680 --> 00:18:11.540
+system, but it's really just a hierarchical
+
+00:18:11.880 --> 00:18:15.060
+record management system that lets you have
+
+00:18:15.060 --> 00:18:18.020
+as many files, directories as you want,
+
+00:18:18.120 --> 00:18:20.280
+and you can search across all of them without
+
+00:18:20.280 --> 00:18:23.240
+any external utilities necessary,
+
+00:18:23.960 --> 00:18:26.240
+just what's built into Emacs and Hyperlink.
+
+00:18:26.760 --> 00:18:29.920
+So as you can see, we've expanded it to
+
+00:18:29.920 --> 00:18:31.820
+handle org files, markdown,
+
+00:18:32.300 --> 00:18:34.620
+K outlines, Emacs outlines.
+
+00:18:34.780 --> 00:18:36.820
+So what I'm going to do is just say,
+
+00:18:36.820 --> 00:18:40.680
+I want to search using my Hyberlo file list.
+
+00:18:40.680 --> 00:18:43.140
+You just set that to what you wanted to
+
+00:18:43.140 --> 00:18:44.820
+search. But now you have all this
+
+00:18:44.820 --> 00:18:46.520
+flexibility. You can use environment
+
+00:18:46.620 --> 00:18:48.840
+variables in it. You can just specify a
+
+00:18:48.840 --> 00:18:51.340
+directory and it will find all those matching
+
+00:18:51.340 --> 00:18:53.540
+files below that directory recursively.
+
+00:18:55.240 --> 00:18:58.460
+You can give it the markdown file here and
+
+00:18:58.460 --> 00:19:01.160
+you can use file wildcards as well.
+
+00:19:01.160 --> 00:19:04.340
+I mean, look at this. It's got a list
+
+00:19:04.340 --> 00:19:06.140
+variable in it and a wildcard,
+
+00:19:06.540 --> 00:19:09.840
+and it's just all I'm gonna do is I change
+
+00:19:09.840 --> 00:19:13.380
+this from a Lisp expression to make it a
+
+00:19:13.380 --> 00:19:15.380
+hyper button. You just change the outer
+
+00:19:15.380 --> 00:19:16.920
+parens to angle brackets,
+
+00:19:17.120 --> 00:19:19.620
+and then it's automatically an implicit
+
+00:19:21.040 --> 00:19:22.840
+button that you can activate with made a
+
+00:19:22.840 --> 00:19:26.340
+return so just ran that and now I've set my
+
+00:19:26.800 --> 00:19:29.440
+file list so now let's do a search it would
+
+00:19:29.440 --> 00:19:34.620
+be ctrl H H roll it X R and then S for search
+
+00:19:34.820 --> 00:19:36.680
+But I'll just do it this way.
+
+00:19:37.200 --> 00:19:40.320
+And boom, it found everything that fast.
+
+00:19:41.060 --> 00:19:42.940
+And I can just get like,
+
+00:19:43.180 --> 00:19:45.520
+show the top items in there.
+
+00:19:45.520 --> 00:19:48.260
+So I kind of have outlining in this buffer.
+
+00:19:48.340 --> 00:19:51.940
+I can just move to each match that I hit.
+
+00:19:51.980 --> 00:19:53.680
+And notice, although everything was
+
+00:19:53.680 --> 00:19:55.580
+collapsed, it's expanding here.
+
+00:19:55.640 --> 00:19:58.540
+When I move in and out of each of the entry
+
+00:19:58.540 --> 00:20:02.380
+matches, it expands or collapses as I move to
+
+00:20:02.380 --> 00:20:06.220
+the next 1. So a lot of power there.
+
+00:20:06.820 --> 00:20:09.120
+What else? So just tabbing through these
+
+00:20:09.120 --> 00:20:11.200
+things. And you notice that it's working
+
+00:20:11.200 --> 00:20:13.300
+across all of these different types,
+
+00:20:13.340 --> 00:20:16.220
+and it's telling you which file everything
+
+00:20:16.360 --> 00:20:17.840
+came from right up here.
+
+00:20:17.840 --> 00:20:19.940
+So I could just made a return here,
+
+00:20:20.220 --> 00:20:23.500
+should work. Yes, revisit the file normally.
+
+00:20:23.800 --> 00:20:25.760
+And it just pulls it right up.
+
+00:20:25.920 --> 00:20:28.400
+So everything is live and hyperbole.
+
+00:20:28.580 --> 00:20:30.120
+You've got hyperlinks everywhere.
+
+00:20:31.300 --> 00:20:33.740
+Let's just get rid of that.
+
+00:20:34.020 --> 00:20:41.600
+Go back to our demo. So if you are fans of
+
+00:20:41.600 --> 00:20:46.560
+Vertico and Consult, you can now use that
+
+00:20:46.560 --> 00:20:49.300
+with the High Rollo. So all you have to do is
+
+00:20:49.300 --> 00:20:51.440
+let's just format our windows,
+
+00:20:51.760 --> 00:20:55.720
+and then I'll say, let's use ConsultGrep over
+
+00:20:55.720 --> 00:20:58.880
+the Rolodex. Now, it found all the matches
+
+00:20:58.940 --> 00:21:02.060
+there, and I can just move live through them
+
+00:21:02.220 --> 00:21:04.640
+in the buffer like you may be used to or I
+
+00:21:04.640 --> 00:21:08.600
+can filter back down and say using orderless
+
+00:21:10.240 --> 00:21:13.700
+joystick or anything that has joy in it just
+
+00:21:13.700 --> 00:21:17.160
+match to those lines and then I can you know
+
+00:21:17.160 --> 00:21:20.020
+either jump there or quit out of here.
+
+00:21:20.020 --> 00:21:22.080
+I'll just quit out of it right now.
+
+00:21:22.540 --> 00:21:25.240
+So very cool. And all of that is using
+
+00:21:25.240 --> 00:21:28.640
+whatever you personally set as the set of
+
+00:21:28.640 --> 00:21:30.560
+files and directories you want to search.
+
+00:21:31.380 --> 00:21:35.940
+And finally, our number 1 feature of
+
+00:21:35.940 --> 00:21:40.440
+Hyperbole is you can customize this to give
+
+00:21:40.440 --> 00:21:43.460
+you these kinds of implicit buttons,
+
+00:21:44.660 --> 00:21:46.080
+whatever kind you want.
+
+00:21:46.560 --> 00:21:49.140
+And there are 3 levels of doing this.
+
+00:21:49.540 --> 00:21:51.140
+The first is for non-programmers.
+
+00:21:51.900 --> 00:21:53.700
+You can just set a string,
+
+00:21:54.400 --> 00:21:57.040
+like a URL with a parameter in it.
+
+00:21:57.180 --> 00:21:59.440
+So the %s represents the parameter,
+
+00:21:59.680 --> 00:22:01.440
+and This is how you do a search on
+
+00:22:01.440 --> 00:22:04.060
+DuckDuckGo. So all I have to do is evaluate
+
+00:22:04.320 --> 00:22:07.180
+this defal for action link.
+
+00:22:07.800 --> 00:22:11.020
+And now I have a new implicit button type
+
+00:22:11.040 --> 00:22:13.380
+that I can put between angle brackets.
+
+00:22:13.740 --> 00:22:15.640
+And I just give it that name,
+
+00:22:16.020 --> 00:22:18.000
+DDG, and some parameter,
+
+00:22:18.280 --> 00:22:20.040
+whatever I want to search for,
+
+00:22:20.080 --> 00:22:23.040
+and this is a button that does that search.
+
+00:22:25.320 --> 00:22:28.680
+Very cool, right? So you can embed these.
+
+00:22:28.680 --> 00:22:31.040
+This could be a hyperlink in,
+
+00:22:32.140 --> 00:22:35.120
+you know, a comment in a programming file.
+
+00:22:35.320 --> 00:22:38.160
+Anything on the entire web that you want to
+
+00:22:38.160 --> 00:22:42.320
+link to, whatever kind of compact notation
+
+00:22:42.840 --> 00:22:44.800
+you want to give it. So that's what we're
+
+00:22:44.800 --> 00:22:47.140
+going to learn as we get more advanced here
+
+00:22:47.140 --> 00:22:49.400
+you can give it even more compact notations.
+
+00:22:49.840 --> 00:22:52.380
+So as you get more advanced you can say,
+
+00:22:52.380 --> 00:22:54.240
+well I don't like this angle bracket,
+
+00:22:54.240 --> 00:22:57.020
+I want to have an implicit button that uses
+
+00:22:57.280 --> 00:22:59.620
+these square brackets and then an angle
+
+00:22:59.620 --> 00:23:02.080
+bracket inside it. So then you need the
+
+00:23:02.080 --> 00:23:05.200
+defile for implicit link.
+
+00:23:06.040 --> 00:23:08.860
+This lets you specify your start and end
+
+00:23:08.860 --> 00:23:12.180
+delimiters for your new type and and then you
+
+00:23:12.180 --> 00:23:14.840
+can give it a function that you wanted to run
+
+00:23:15.040 --> 00:23:18.320
+and that will take the text of whatever is in
+
+00:23:18.320 --> 00:23:19.780
+the button, in this case,
+
+00:23:19.900 --> 00:23:23.760
+test release here, and feed it to the
+
+00:23:23.760 --> 00:23:26.080
+function that I gave here.
+
+00:23:26.080 --> 00:23:29.540
+So what this function does is grep over my
+
+00:23:29.540 --> 00:23:33.420
+git log and find any commits that include the
+
+00:23:33.420 --> 00:23:35.360
+term test release in it.
+
+00:23:35.360 --> 00:23:38.200
+So let's try it. First I have to add the
+
+00:23:38.200 --> 00:23:41.740
+button type and that's all it takes and it
+
+00:23:41.740 --> 00:23:44.800
+defined it now. So anywhere in Emacs now I
+
+00:23:44.800 --> 00:23:46.920
+can use this button type essentially.
+
+00:23:47.180 --> 00:23:48.980
+So let me try to activate it.
+
+00:23:49.200 --> 00:23:52.760
+Okay, and it says yeah let's save it.
+
+00:23:53.080 --> 00:23:55.940
+Okay so now it's running a git log command.
+
+00:23:56.320 --> 00:23:59.440
+It found all the commits and now of course if
+
+00:23:59.440 --> 00:24:02.980
+I had made a return on this commit it
+
+00:24:02.980 --> 00:24:05.500
+recognizes it as an implicit link,
+
+00:24:05.680 --> 00:24:09.300
+and if I search for what was a test release,
+
+00:24:09.600 --> 00:24:11.960
+there it is. So this commit had that in
+
+00:24:11.960 --> 00:24:14.180
+there. So all these matches,
+
+00:24:14.180 --> 00:24:16.280
+so I don't know how other people do this,
+
+00:24:16.280 --> 00:24:20.040
+but for me this makes it a lot simpler.
+
+00:24:21.280 --> 00:24:24.800
+So a lot of power that any programmer can
+
+00:24:24.800 --> 00:24:27.500
+use. And finally, if you've mastered Emacs
+
+00:24:27.500 --> 00:24:29.360
+Lisp, or you're starting to,
+
+00:24:29.440 --> 00:24:33.740
+you can look in the hib types file in
+
+00:24:33.740 --> 00:24:37.320
+Hyperbole and see all sorts of uses of defib,
+
+00:24:37.500 --> 00:24:39.440
+which is defined implicit button.
+
+00:24:39.660 --> 00:24:42.660
+And that's the full power of e-LISP when you
+
+00:24:42.660 --> 00:24:45.060
+want to define 1. So what we're going to do
+
+00:24:45.060 --> 00:24:46.780
+here is I wanted to know,
+
+00:24:47.080 --> 00:24:49.700
+given a date, what the day of the week is.
+
+00:24:49.900 --> 00:24:53.040
+And because the date primitives weren't quite
+
+00:24:53.040 --> 00:24:54.640
+written the way I might like,
+
+00:24:55.080 --> 00:24:57.520
+it's a little longer than some.
+
+00:24:57.520 --> 00:25:00.400
+But I'm just going to evaluate this list.
+
+00:25:00.720 --> 00:25:06.100
+And I've now defined DOW as an action type.
+
+00:25:06.140 --> 00:25:08.500
+Now, how do I know I'm doing that?
+
+00:25:08.500 --> 00:25:10.700
+So I can always say Control-H,
+
+00:25:11.000 --> 00:25:13.580
+capital A here to see what a button's going
+
+00:25:13.580 --> 00:25:15.840
+to do. And it tells me When I'm there,
+
+00:25:15.840 --> 00:25:18.140
+I'm at a hyperbole button,
+
+00:25:18.400 --> 00:25:23.440
+and the type is from category DOW.
+
+00:25:24.000 --> 00:25:25.120
+And what's it gonna do?
+
+00:25:25.120 --> 00:25:27.420
+It takes a mark, it's gonna do a message
+
+00:25:27.440 --> 00:25:29.880
+action. Okay, so let's try it.
+
+00:25:31.300 --> 00:25:32.800
+It tells me that's a date,
+
+00:25:32.800 --> 00:25:34.220
+and it falls on a Sunday,
+
+00:25:34.220 --> 00:25:35.820
+which is today. That's correct.
+
+00:25:36.100 --> 00:25:39.020
+So 2 days from today is a Tuesday.
+
+00:25:39.800 --> 00:25:43.400
+Beautiful. So we've just totally transformed
+
+00:25:44.840 --> 00:25:46.860
+what we can do with text.
+
+00:25:46.980 --> 00:25:48.900
+You notice there's no markup here.
+
+00:25:49.000 --> 00:25:53.440
+And this is working with all of the other
+
+00:25:53.440 --> 00:25:55.600
+implicit types that we have everywhere in
+
+00:25:55.600 --> 00:25:57.920
+Emacs. It's only going to match to this kind
+
+00:25:57.920 --> 00:26:00.560
+of pattern and anywhere else,
+
+00:26:00.720 --> 00:26:02.820
+you know, it just won't trigger that type.
+
+00:26:03.460 --> 00:26:06.480
+So lots of power. You just need to get
+
+00:26:06.480 --> 00:26:07.700
+started with Hyperbole.
+
+00:26:07.960 --> 00:26:10.860
+There's great documentation both inside the
+
+00:26:10.860 --> 00:26:12.180
+code and in the manual.
+
+00:26:12.520 --> 00:26:15.460
+There's a fast demo that you can start with
+
+00:26:15.520 --> 00:26:17.800
+and there's about 10 different videos.
+
+00:26:18.260 --> 00:26:21.220
+There'll be 3 presentations on hyperbole here
+
+00:26:21.560 --> 00:26:25.660
+at the conference, and I hope you've enjoyed
+
+00:26:25.760 --> 00:26:28.200
+this presentation. I'd love to answer your
+
+00:26:28.200 --> 00:26:31.200
+questions and get some new users for
+
+00:26:31.200 --> 00:26:36.040
+Hyperbole. So lastly, I'd like to thank my
+
+00:26:36.040 --> 00:26:38.040
+co-maintainer, Matt, who's going to speak
+
+00:26:38.040 --> 00:26:42.040
+later about the extensive test protocols we
+
+00:26:42.040 --> 00:26:45.920
+have in Hyperbole. Hyperbole works on every
+
+00:26:46.120 --> 00:26:47.860
+version of Emacs from 27.1
+
+00:26:48.480 --> 00:26:52.600
+up, and every operating system and Windows
+
+00:26:52.600 --> 00:26:56.120
+system that you use. And thanks so much to
+
+00:26:56.120 --> 00:26:58.680
+the volunteers and the speakers at EmacsConf.
+
+00:26:59.200 --> 00:27:02.000
+You do a great job, and we're all really
+
+00:27:02.000 --> 00:27:04.400
+appreciative that you take all the time that
+
+00:27:04.400 --> 00:27:06.240
+you do to make this happen.
+
+00:27:06.540 --> 00:27:07.620
+Thank you very much.
+
+00:27:09.960 --> 00:27:11.400
+[Speaker 1]: And thank you so much Bob.
+
+00:27:11.400 --> 00:27:14.680
+So I'll let you do the gymnastics to join us
+
+00:27:14.680 --> 00:27:16.440
+back on BBB and put your webcam.
+
+00:27:17.020 --> 00:27:18.840
+In the meantime, I'll invite people,
+
+00:27:19.120 --> 00:27:20.740
+as Sasha told you in the introduction,
+
+00:27:21.060 --> 00:27:23.600
+to go put your question in the pad.
+
+00:27:23.600 --> 00:27:25.900
+The link is on the talks page and also on
+
+00:27:25.900 --> 00:27:28.220
+IRC. So take your time.
+
+00:27:28.320 --> 00:27:29.900
+We've already got some people who've asked
+
+00:27:29.900 --> 00:27:33.060
+questions. You can also start joining the
+
+00:27:33.060 --> 00:27:35.140
+room. Let me just ping Sasha.
+
+00:27:35.540 --> 00:27:38.440
+Ping to open ID HyperAmp.
+
+00:27:39.280 --> 00:27:41.120
+So, you'll be able to join us on
+
+00:27:41.120 --> 00:27:43.260
+BigBlueButton as well to go chat with Bob
+
+00:27:43.260 --> 00:27:45.020
+more directly. I'm not sure if people have
+
+00:27:45.020 --> 00:27:46.480
+joined already. Not yet.
+
+00:27:50.220 --> 00:27:51.060
+So, Bob, what I'll do,
+
+00:27:51.060 --> 00:27:52.280
+we already have 4 questions.
+
+00:27:52.280 --> 00:27:54.080
+I'm gonna read them to you and you can take
+
+00:27:54.080 --> 00:27:54.900
+your time answering them,
+
+00:27:54.900 --> 00:27:57.340
+but we do have about 7 minutes until we go to
+
+00:27:57.340 --> 00:27:59.080
+the next talk, so we need to be a little bit
+
+00:28:00.420 --> 00:28:00.920
+[Speaker 0]: Okay.
+
+00:27:59.080 --> 00:28:03.260
+[Speaker 1]: chop-chop. All right, so reading the first
+
+00:28:03.260 --> 00:28:05.460
+questions, and I'm also going to display them
+
+00:28:05.460 --> 00:28:06.920
+for the stream to see,
+
+00:28:07.580 --> 00:28:09.740
+do buttons keep their metadata within the
+
+00:28:09.740 --> 00:28:12.380
+same file? E.g., would I see it if I change
+
+00:28:12.380 --> 00:28:13.940
+to fundamental mode, for instance?
+
+00:28:15.820 --> 00:28:19.340
+[Speaker 0]: So all of the things that I was showing you,
+
+00:28:19.340 --> 00:28:21.300
+implicit buttons have no metadata.
+
+00:28:21.900 --> 00:28:23.800
+That's the great thing about them,
+
+00:28:23.800 --> 00:28:27.400
+is you just type them in the buffer and what
+
+00:28:27.400 --> 00:28:30.020
+you see is all there is to that button and
+
+00:28:30.020 --> 00:28:33.300
+hyperbole generates all the smarts associated
+
+00:28:33.320 --> 00:28:35.780
+with them. When you create an explicit
+
+00:28:35.940 --> 00:28:38.680
+button, which I showed you 1 or 2 examples
+
+00:28:38.760 --> 00:28:42.720
+of, that metadata is, there is metadata with
+
+00:28:42.720 --> 00:28:45.860
+that, and that is stored in a separate file
+
+00:28:45.860 --> 00:28:47.860
+in the same directory called .hypb.
+
+00:28:49.240 --> 00:28:51.500
+So it's hidden away and it doesn't affect the
+
+00:28:51.500 --> 00:28:53.700
+format of the buffer that it's in.
+
+00:28:53.940 --> 00:28:56.540
+So again, what you see is what you get.
+
+00:28:56.600 --> 00:28:58.740
+You just see the delimiters around the
+
+00:28:58.740 --> 00:29:01.140
+explicit button and that's it.
+
+00:29:01.840 --> 00:29:04.500
+So Hyperbole takes care of all that for you.
+
+00:29:04.860 --> 00:29:08.360
+However, if you embed them into like a mail
+
+00:29:08.360 --> 00:29:09.440
+message, which you can,
+
+00:29:09.440 --> 00:29:12.180
+you can mail buttons, then there is a hidden
+
+00:29:12.180 --> 00:29:14.760
+area at the end of the mail message that
+
+00:29:14.760 --> 00:29:17.120
+encodes the metadata for the explicit
+
+00:29:17.120 --> 00:29:17.620
+buttons.
+
+00:29:19.540 --> 00:29:21.640
+[Speaker 1]: Ok, great. Next question.
+
+00:29:21.980 --> 00:29:24.560
+Is it possible to link to a file by its ID,
+
+00:29:24.720 --> 00:29:27.340
+like the node, org ID or some similar unique
+
+00:29:27.340 --> 00:29:28.120
+string inside?
+
+00:29:29.380 --> 00:29:32.620
+[Speaker 0]: Yes, In fact, that's 1 of the new features in
+
+00:29:33.280 --> 00:29:37.800
+9. You just made a return on an ID and it
+
+00:29:37.800 --> 00:29:40.780
+takes you right to the org node,
+
+00:29:40.840 --> 00:29:44.880
+works with org Rome and org straight out of
+
+00:29:44.880 --> 00:29:47.900
+the box. We're looking at ways to make it
+
+00:29:47.900 --> 00:29:50.040
+easier to just insert those in places,
+
+00:29:50.040 --> 00:29:52.840
+but since you have word keys that do that
+
+00:29:52.840 --> 00:29:55.600
+already, you can just insert them in any
+
+00:29:55.600 --> 00:29:58.360
+documents and Hyperbole will recognize them.
+
+00:29:58.360 --> 00:30:02.620
+I think In some cases you may need to put ID
+
+00:30:02.680 --> 00:30:05.400
+colon in front of the ID as well.
+
+00:30:05.740 --> 00:30:06.920
+Generally it works.
+
+00:30:08.560 --> 00:30:11.560
+[Speaker 1]: Ok, great. Moving on to the next question.
+
+00:30:12.120 --> 00:30:13.760
+Regarding the frames example,
+
+00:30:14.240 --> 00:30:16.320
+any thoughts or considerations for a
+
+00:30:16.320 --> 00:30:19.020
+transient interface or is this something 1
+
+00:30:19.020 --> 00:30:22.280
+could already toggle? Are you familiar with
+
+00:30:22.280 --> 00:30:23.160
+transient interface?
+
+00:30:23.560 --> 00:30:26.700
+[Speaker 0]: Yes, we don't use transient because we,
+
+00:30:26.720 --> 00:30:30.140
+you know, Hyperbole started out in 1991,
+
+00:30:30.520 --> 00:30:34.300
+though it's had much much work since then so
+
+00:30:34.300 --> 00:30:37.940
+we predate a lot of newer things in Emacs and
+
+00:30:37.940 --> 00:30:41.400
+then we just use them as as they Become
+
+00:30:41.400 --> 00:30:45.480
+useful too hyperbole We think the The mini
+
+00:30:45.480 --> 00:30:46.720
+buffer menu is pretty good.
+
+00:30:46.720 --> 00:30:48.780
+We could rewrite stuff in transient,
+
+00:30:48.900 --> 00:30:51.600
+but we haven't seen the need yet.
+
+00:30:52.760 --> 00:30:54.960
+Maybe high control, that might be a good
+
+00:30:54.960 --> 00:30:58.480
+candidate, because there are so many keys in
+
+00:30:58.480 --> 00:31:00.480
+it. So we'll think about that.
+
+00:31:00.480 --> 00:31:03.060
+But it would be a while before we got to it.
+
+00:31:04.780 --> 00:31:07.120
+[Speaker 1]: Right. Moving on to the next question.
+
+00:31:07.120 --> 00:31:08.760
+Sorry I got really confused because there's a
+
+00:31:08.760 --> 00:31:10.620
+French salut, you know,
+
+00:31:10.660 --> 00:31:12.940
+in the text of it. Is someone saying hi to me
+
+00:31:12.940 --> 00:31:14.380
+or something? All right,
+
+00:31:14.380 --> 00:31:16.960
+next question. Regarding multi-file search
+
+00:31:16.960 --> 00:31:22.080
+functionality, why not implement it within
+
+00:31:22.080 --> 00:31:24.920
+the existing framework of MetaX grep or
+
+00:31:24.920 --> 00:31:26.180
+similar built-in commands?
+
+00:31:26.360 --> 00:31:28.620
+Yet another search interface sounds a bit
+
+00:31:28.620 --> 00:31:29.120
+redundant.
+
+00:31:30.920 --> 00:31:34.120
+[Speaker 0]: Multi-file search, so HiRolo I guess you're
+
+00:31:34.120 --> 00:31:36.380
+talking about. I think what you missed there
+
+00:31:36.380 --> 00:31:39.440
+is that High Rollo matches to records,
+
+00:31:40.080 --> 00:31:42.860
+multi-line records, so it's not a
+
+00:31:42.860 --> 00:31:45.360
+line-oriented match, it's a record-oriented
+
+00:31:45.820 --> 00:31:50.760
+match. So Grep, you can say maybe give me 3
+
+00:31:50.760 --> 00:31:52.960
+lines of context, but what if I have a
+
+00:31:52.960 --> 00:31:56.100
+20-line record? I want to see the whole
+
+00:31:56.100 --> 00:31:59.060
+thing. And so, it's a full-text search
+
+00:31:59.060 --> 00:32:03.480
+interface, which lets you have any size
+
+00:32:04.220 --> 00:32:07.260
+entries or nodes in the match buffer.
+
+00:32:07.540 --> 00:32:10.760
+So that's 1 reason. MADAX grep works with
+
+00:32:10.760 --> 00:32:13.260
+hyperbole. I mean, you use it if you want and
+
+00:32:13.260 --> 00:32:16.080
+then you can hit MADA return on grep lines.
+
+00:32:16.480 --> 00:32:20.140
+So we basically take everything from POSIX
+
+00:32:20.320 --> 00:32:24.920
+and everything in Emacs and we try to make a
+
+00:32:24.920 --> 00:32:26.680
+lot of it simpler to use.
+
+00:32:26.680 --> 00:32:28.960
+We don't take away any of the functionality,
+
+00:32:29.480 --> 00:32:31.040
+we just augment it.
+
+00:32:32.780 --> 00:32:35.200
+[Speaker 1]: Right, and I think that's the logic for a lot
+
+00:32:35.200 --> 00:32:36.300
+of the packages, you know,
+
+00:32:36.300 --> 00:32:38.440
+the philosophy is just you create your little
+
+00:32:38.440 --> 00:32:40.280
+bit, your little island where you do your
+
+00:32:40.280 --> 00:32:42.160
+stuff. And if you can resonate with other
+
+00:32:42.160 --> 00:32:43.280
+islands so much the better.
+
+00:32:43.280 --> 00:32:45.600
+And it feels like between those islands,
+
+00:32:45.700 --> 00:32:48.380
+you know, hyperbole is a great way to connect
+
+00:32:48.380 --> 00:32:49.980
+things that are just text.
+
+00:32:50.140 --> 00:32:51.880
+So it's always been a lovely philosophy.
+
+00:32:52.200 --> 00:32:53.620
+There's always been a lovely philosophy
+
+00:32:53.620 --> 00:32:54.360
+behind it.
+
+00:32:55.240 --> 00:32:58.200
+[Speaker 0]: 1 other point I'd make there is that the
+
+00:32:58.200 --> 00:33:01.460
+Hyrolo also contains logical search
+
+00:33:01.460 --> 00:33:04.940
+operators. So when I typed in that string you
+
+00:33:04.940 --> 00:33:07.360
+could just as well type with like Lisp
+
+00:33:07.360 --> 00:33:09.140
+expressions, semi Lisp expressions.
+
+00:33:09.480 --> 00:33:13.460
+You can say open paren and word 1,
+
+00:33:13.940 --> 00:33:17.240
+word 2, close paren. You know you can have or
+
+00:33:17.240 --> 00:33:22.360
+and XOR and not and it'll do the search and
+
+00:33:22.360 --> 00:33:24.260
+just retrieve the entries,
+
+00:33:24.720 --> 00:33:27.620
+again, multi-line entries that match all of
+
+00:33:27.620 --> 00:33:29.660
+the criteria that you specified there.
+
+00:33:29.760 --> 00:33:31.120
+So that's fairly unique,
+
+00:33:31.120 --> 00:33:33.320
+I think. So you basically got a full text
+
+00:33:33.320 --> 00:33:35.840
+search platform with logical operators,
+
+00:33:36.380 --> 00:33:38.580
+instantly, you know, fast moving,
+
+00:33:38.680 --> 00:33:42.720
+rapid keys that you can control everything
+
+00:33:42.720 --> 00:33:45.280
+with and it's all integrated into this larger
+
+00:33:45.280 --> 00:33:45.780
+framework.
+
+00:33:47.780 --> 00:33:49.060
+[Speaker 1]: Okay, great. Well, Bob,
+
+00:33:49.060 --> 00:33:50.520
+you have 2 more questions,
+
+00:33:50.820 --> 00:33:53.760
+but there's a big 1 about what inspired you
+
+00:33:53.760 --> 00:33:56.440
+to write it back. It's being hyperbole around
+
+00:33:56.440 --> 00:33:57.360
+the time of its birth,
+
+00:33:57.360 --> 00:33:59.680
+but sadly, we only have about 1 more minute.
+
+00:34:00.040 --> 00:34:01.320
+So what I'm going to ask you to do,
+
+00:34:01.320 --> 00:34:02.780
+feel free to answer the question.
+
+00:34:02.800 --> 00:34:05.220
+If you go on BBB, I've pasted the link to the
+
+00:34:05.220 --> 00:34:06.980
+other pad. I think you can see it on your
+
+00:34:08.420 --> 00:34:11.020
+[Speaker 0]: I have the ether pad up.
+
+00:34:06.980 --> 00:34:11.820
+[Speaker 1]: computer as well. Right,
+
+00:34:11.820 --> 00:34:13.100
+so what are we going to do?
+
+00:34:14.860 --> 00:34:16.679
+I'm Sorry, I'm just a little bit pressed by
+
+00:34:16.679 --> 00:34:18.280
+time because it's not me controlling when we
+
+00:34:18.280 --> 00:34:19.340
+move on to the next talk,
+
+00:34:19.340 --> 00:34:21.679
+as was evidenced yesterday when we got yonked
+
+00:34:21.719 --> 00:34:24.000
+to the next talk. So Bob,
+
+00:34:24.000 --> 00:34:25.679
+feel free to take all the time you want to
+
+00:34:25.679 --> 00:34:26.580
+answer questions. People,
+
+00:34:26.580 --> 00:34:28.360
+if you wanna join the Big Blue Button room,
+
+00:34:28.360 --> 00:34:30.239
+the links are available and open on the talk
+
+00:34:30.239 --> 00:34:31.960
+page. You can join and ask as many questions
+
+00:34:31.960 --> 00:34:33.679
+as you want to Bob. And for us,
+
+00:34:33.679 --> 00:34:35.560
+with a live stream, we'll be moving on to the
+
+00:34:35.560 --> 00:34:37.280
+next talk in about 30 seconds.
+
+00:34:37.280 --> 00:34:39.400
+So Bob, all that's left is for me to thank
+
+00:34:39.400 --> 00:34:41.580
+you for your presentation again this year and
+
+00:34:43.520 --> 00:34:44.560
+[Speaker 0]: Thank you, Leo.
+
+00:34:41.580 --> 00:34:45.820
+[Speaker 1]: for all your answers. All right.
+
+00:34:45.820 --> 00:34:47.699
+Bye bye, Bob. And we'll be moving on to the
+
+00:34:47.699 --> 00:34:49.080
+next talk in about 10 seconds.
+
+00:34:49.080 --> 00:34:53.800
+See you in a bit. All right,
+
+00:34:53.800 --> 00:34:56.139
+Bob, we are off air I think now.
+
+00:34:56.139 --> 00:34:57.720
+Thank you so much. I need to get moving for
+
+00:34:59.320 --> 00:35:02.320
+[Speaker 0]: Okay, is somebody gonna keep writing answers
+
+00:35:02.500 --> 00:35:04.540
+in here or I need to type them in?
+
+00:34:57.720 --> 00:35:06.260
+[Speaker 1]: the next talk. It's probably best now if you
+
+00:35:06.260 --> 00:35:09.440
+read the questions on your own and answer
+
+00:35:09.440 --> 00:35:11.040
+them. We'll collate everything together,
+
+00:35:11.040 --> 00:35:12.480
+we'd just like to have your answers.
+
+00:35:15.060 --> 00:35:17.180
+[Speaker 0]: I hope some people will join the BBB.
+
+00:35:19.000 --> 00:35:21.380
+[Speaker 1]: it in my... All right,
+
+00:35:21.380 --> 00:35:21.880
+bye-bye.
+
+00:35:17.780 --> 00:35:23.300
+[Speaker 0]: But I'll start. I'll put Bye-bye.
+
+00:35:24.220 --> 00:35:28.580
+So let me take a second here to see what
+
+00:35:28.580 --> 00:35:32.980
+questions we have. Did we cover that?
+
+00:35:36.240 --> 00:35:42.900
+OK. The point is why not upstream search
+
+00:35:42.980 --> 00:35:46.580
+interface? Could you clarify that question?
+
+00:35:46.840 --> 00:35:51.380
+I don't quite know what that means.
+
+00:35:51.380 --> 00:35:53.760
+So I'll go on to the next 1 and come back to
+
+00:35:53.760 --> 00:35:57.680
+that. Hyperlinks been around for a number of
+
+00:35:57.680 --> 00:35:59.820
+years now. What inspired you to write it back
+
+00:35:59.820 --> 00:36:01.500
+around the time of its birth?
+
+00:36:01.800 --> 00:36:03.140
+Well, that's a great question.
+
+00:36:04.700 --> 00:36:07.360
+It was born before the World Wide Web,
+
+00:36:07.360 --> 00:36:09.300
+actually. And it was right before.
+
+00:36:10.120 --> 00:36:13.100
+I remember we were in the midst of a version
+
+00:36:13.840 --> 00:36:16.300
+when the first version of the web occurred.
+
+00:36:16.560 --> 00:36:19.840
+And I was thinking that there was going to be
+
+00:36:19.840 --> 00:36:22.700
+an information explosion of unstructured
+
+00:36:22.960 --> 00:36:27.140
+information. And like we needed to have much
+
+00:36:27.140 --> 00:36:30.920
+better tools to be able to manage say like
+
+00:36:30.920 --> 00:36:36.740
+5,000 email messages coming in and all sorts
+
+00:36:36.740 --> 00:36:39.260
+of non-database-oriented information
+
+00:36:39.480 --> 00:36:42.020
+structures. So I said we need an advanced
+
+00:36:42.180 --> 00:36:46.080
+interactive hypertext system and it needs to
+
+00:36:46.080 --> 00:36:49.320
+work with all the general capabilities that
+
+00:36:49.320 --> 00:36:54.100
+we use like email and our document production
+
+00:36:54.240 --> 00:36:58.500
+systems. So I was doing research at the time
+
+00:36:58.500 --> 00:37:04.200
+at a university And I decided to work on
+
+00:37:04.200 --> 00:37:06.140
+something that we called personalized
+
+00:37:06.420 --> 00:37:07.520
+information environments.
+
+00:37:07.900 --> 00:37:10.120
+And there's a paper about this out there if
+
+00:37:10.120 --> 00:37:12.040
+you want to dig it out on the web.
+
+00:37:12.900 --> 00:37:15.360
+So Pies, as they were called,
+
+00:37:16.320 --> 00:37:20.040
+was an architecture which would have a bunch
+
+00:37:20.040 --> 00:37:24.100
+of managers, like Hyperbole was 1 of the
+
+00:37:24.100 --> 00:37:25.820
+managers, the hypertext manager,
+
+00:37:26.520 --> 00:37:29.440
+and then a bunch of point tools that would
+
+00:37:29.440 --> 00:37:30.720
+leverage the managers,
+
+00:37:30.800 --> 00:37:33.580
+like an email reader would be a point tool
+
+00:37:33.680 --> 00:37:36.140
+that would leverage the hypertext manager.
+
+00:37:36.780 --> 00:37:39.480
+And so the first, I did in fact write
+
+00:37:39.480 --> 00:37:40.520
+something called PyMail,
+
+00:37:41.460 --> 00:37:43.840
+which was very much Gmail-like,
+
+00:37:44.660 --> 00:37:47.640
+before Gmail. And so inside,
+
+00:37:48.100 --> 00:37:51.300
+and I did a, it was like our mail in a way,
+
+00:37:51.680 --> 00:37:54.020
+but inside your our mail summaries,
+
+00:37:54.100 --> 00:37:57.180
+for example, you could have explicit buttons
+
+00:37:57.180 --> 00:38:01.120
+embedded and that were drawn from the subject
+
+00:38:01.120 --> 00:38:02.300
+of your email message,
+
+00:38:02.400 --> 00:38:06.180
+and they'd work just like the regular button.
+
+00:38:06.300 --> 00:38:07.540
+So it was very flexible,
+
+00:38:07.700 --> 00:38:11.660
+and it had rule-based processing and things.
+
+00:38:11.820 --> 00:38:13.520
+So Hyperbole came out of that,
+
+00:38:13.520 --> 00:38:15.040
+and it's come a long way,
+
+00:38:15.200 --> 00:38:20.360
+but it's still a very useful core hypertext
+
+00:38:20.480 --> 00:38:22.040
+system, hypermedia system,
+
+00:38:22.040 --> 00:38:26.580
+I should say. Are you familiar with the
+
+00:38:26.580 --> 00:38:28.780
+Embark package? I am a bit.
+
+00:38:28.820 --> 00:38:30.520
+I've just started using it.
+
+00:38:30.520 --> 00:38:31.900
+I think there's some overlapping
+
+00:38:32.040 --> 00:38:34.200
+functionality with hyperbole.
+
+00:38:34.340 --> 00:38:39.360
+Yes, we've found that people over time have
+
+00:38:39.360 --> 00:38:41.600
+enjoyed hyperbole and have started
+
+00:38:41.600 --> 00:38:43.940
+replicating some of its features,
+
+00:38:43.940 --> 00:38:45.880
+you know, small amounts of the features.
+
+00:38:47.680 --> 00:38:51.340
+I talked to, I hope I don't miss his name,
+
+00:38:51.340 --> 00:38:56.000
+but O'Adam who writes that once in a while we
+
+00:38:56.000 --> 00:38:59.480
+dialogue and I think Embark is great,
+
+00:38:59.480 --> 00:39:04.500
+you know, I'll give him some pointers too and
+
+00:39:04.500 --> 00:39:08.040
+he thinks that Embark and hyperbole are quite
+
+00:39:08.040 --> 00:39:10.740
+compatible too, just like organ hyperbole.
+
+00:39:11.120 --> 00:39:13.080
+So that's how we like to keep it.
+
+00:39:14.540 --> 00:39:18.160
+Some people prefer just a small package of
+
+00:39:18.160 --> 00:39:21.100
+mBARC, and it does different things than what
+
+00:39:21.100 --> 00:39:23.800
+Hyperbole does. So I think you use all of
+
+00:39:23.800 --> 00:39:27.540
+these tools together, and they can work very
+
+00:39:27.540 --> 00:39:33.960
+well together. Any other questions?
+
+00:39:34.280 --> 00:39:38.300
+Anybody still here? If not,
+
+00:39:38.440 --> 00:39:41.180
+probably people are off to another talk.
+
+00:39:41.940 --> 00:39:47.160
+So thank you very much And again look for
+
+00:39:47.160 --> 00:39:51.840
+Hyperbole version 9 in the next week.
+
+00:39:53.740 --> 00:39:56.880
+Thanks very much. Bye.
+
+00:40:00.620 --> 00:40:07.120
+Should I leave BBB? Oh Alpha Papa's here.
+
+00:40:07.120 --> 00:40:16.040
+Hey. Good to see you. Alright,
+
+00:40:16.040 --> 00:40:22.740
+well... Well, I'll stay for another minute,
+
+00:40:22.820 --> 00:40:27.280
+but I think I'm going to go off video 2 and
+
+00:40:27.280 --> 00:40:29.780
+start listening to another talk.
+
+00:40:30.660 --> 00:40:31.480
+Thanks, everyone. Thanks everyone.
+
+00:40:56.040 --> 00:40:56.960
+Yes, I can hear you. Yes,
+
+00:40:58.860 --> 00:41:00.060
+[Speaker 1]: Have you been answering questions?
+
+00:40:56.960 --> 00:41:03.700
+[Speaker 0]: I can hear you. finished answering the
+
+00:41:03.700 --> 00:41:05.200
+questions. We're all done.
+
+00:41:00.060 --> 00:41:07.360
+[Speaker 1]: I Okay, cool. Well, what I'm going to do,
+
+00:41:07.360 --> 00:41:09.140
+I'm going to close the room unless you want
+
+00:41:09.140 --> 00:41:10.140
+to go a little longer,
+
+00:41:10.140 --> 00:41:11.880
+because this talk that we're playing right
+
+00:41:11.880 --> 00:41:13.940
+now is finishing really quick and we don't
+
+00:41:13.940 --> 00:41:15.140
+have a Q&A afterwards.
+
+00:41:15.300 --> 00:41:19.040
+So, do you want to stay on air or something?
+
+00:41:19.440 --> 00:41:21.680
+[Speaker 0]: Yeah, if you let people know to come back,
+
+00:41:21.680 --> 00:41:23.320
+because someone went to go hear that
+
+00:41:23.320 --> 00:41:24.900
+presentation, I can stay.
+
+00:41:25.920 --> 00:41:27.880
+[Speaker 1]: Sure, I'll make an announcement then.
+
+00:41:27.880 --> 00:41:29.680
+And you can stay, we'll just put on BBB.
+
+00:41:29.680 --> 00:41:31.840
+You can stay muted until people join,
+
+00:41:31.840 --> 00:41:33.840
+but this way it opens up menus for people to
+
+00:41:33.840 --> 00:41:36.060
+join and if no 1 shows up in 5 minutes we'll
+
+00:41:36.060 --> 00:41:38.080
+all go on break. Does that sound okay?
+
+00:41:38.680 --> 00:41:40.020
+[Speaker 0]: Great, thank you.
+
+00:41:40.520 --> 00:41:44.340
+[Speaker 1]: Cool, I'll go back to the management in the
+
+00:41:44.340 --> 00:41:45.660
+background and I'll let you know.
+
+00:43:25.760 --> 00:43:27.540
+Okay, Bob, I've won the stream.
+
+00:43:27.660 --> 00:43:28.940
+We are joining it now.
+
+00:43:28.940 --> 00:43:30.380
+We've got about 5 seconds.
+
+00:43:41.940 --> 00:43:43.580
+And I think we are back.
+
+00:43:49.240 --> 00:43:51.300
+so we are gone, Bob, please.
+
+00:43:45.340 --> 00:43:53.260
+[Speaker 0]: Hi. So, yeah, I was going to say,
+
+00:43:54.100 --> 00:43:57.160
+can we see if anybody comes back in the room?
+
+00:43:57.160 --> 00:43:58.120
+How do you tell?
+
+00:44:01.380 --> 00:44:03.740
+[Speaker 1]: You should be able to show on the left,
+
+00:44:03.740 --> 00:44:04.920
+you've got on BbBlueButton,
+
+00:44:04.920 --> 00:44:06.380
+you've got a button, I'm showing it on the
+
+00:44:06.380 --> 00:44:08.440
+screen, but you've got a little button that
+
+00:44:08.440 --> 00:44:10.420
+allows you to show the people joining.
+
+00:44:10.840 --> 00:44:15.380
+So, hello everyone. Let's see if you had more
+
+00:44:15.380 --> 00:44:17.080
+question on your pad that we could be taking
+
+00:44:17.080 --> 00:44:19.040
+in the meantime, just give me a second to
+
+00:44:19.040 --> 00:44:19.240
+find
+
+00:44:19.240 --> 00:44:23.500
+[Speaker 0]: your pad. Here we go, an error occurred.
+
+00:44:31.820 --> 00:44:33.220
+[Speaker 1]: All right, it's loading up.
+
+00:44:25.680 --> 00:44:37.840
+[Speaker 0]: Okay. Wow. Feels like there's an AI writing
+
+00:44:37.960 --> 00:44:39.760
+this stuff on the pad.
+
+00:44:41.120 --> 00:44:44.740
+Has it? Is this the last pad?
+
+00:44:45.600 --> 00:44:47.080
+Oh no, this is a different 1,
+
+00:44:49.840 --> 00:44:51.520
+[Speaker 1]: Which question are you looking at now?
+
+00:44:47.080 --> 00:44:53.820
+[Speaker 0]: sorry. It was a different pad,
+
+00:44:55.840 --> 00:44:56.460
+[Speaker 1]: Oh right.
+
+00:44:53.820 --> 00:44:57.109
+[Speaker 0]: that was the problem. Okay,
+
+00:44:57.260 --> 00:44:59.540
+here we go. Okay, I'm back.
+
+00:45:00.540 --> 00:45:01.860
+So, yeah, it looks like...
+
+00:45:02.260 --> 00:45:03.980
+Is anybody back? Send,
+
+00:45:04.120 --> 00:45:07.180
+if you're here, send a chat message.
+
+00:45:08.520 --> 00:45:10.020
+[Speaker 1]: Yeah, because it's been something.
+
+00:45:10.640 --> 00:45:14.240
+You have, apparently, whenever we leave those
+
+00:45:14.320 --> 00:45:18.220
+BBB chat room open, the moment we go off air,
+
+00:45:18.260 --> 00:45:20.280
+people start joining and asking a lot of very
+
+00:45:20.280 --> 00:45:22.200
+interesting questions and you know that's all
+
+00:45:22.200 --> 00:45:24.280
+well and good, we'll be able to put them on
+
+00:45:24.280 --> 00:45:26.280
+the page later on. But it'd be great if you
+
+00:45:26.280 --> 00:45:28.260
+could also have those discussions when we are
+
+00:45:28.260 --> 00:45:30.140
+live because a lot of people would benefit
+
+00:45:30.140 --> 00:45:32.120
+from the brilliance that goes on in this
+
+00:45:32.120 --> 00:45:34.740
+room. So please don't be shy,
+
+00:45:37.340 --> 00:45:39.900
+[Speaker 0]: So we're on the general stream now?
+
+00:45:34.740 --> 00:45:41.780
+[Speaker 1]: join and talk. Yep, we are back on the
+
+00:45:41.780 --> 00:45:46.080
+general stream. We have about until 10 of the
+
+00:45:46.080 --> 00:45:48.180
+next hour, which is 19 minutes.
+
+00:45:48.760 --> 00:45:52.540
+[Speaker 0]: Just- Why don't you and I talk?
+
+00:45:52.540 --> 00:45:56.180
+So have you ever tried hyperbole,
+
+00:45:56.400 --> 00:45:56.900
+Leo?
+
+00:45:58.180 --> 00:46:00.220
+[Speaker 1]: I have never, but You know,
+
+00:46:00.220 --> 00:46:03.380
+it feels like every year when you present
+
+00:46:03.380 --> 00:46:05.140
+something, it feels like I already know so
+
+00:46:05.140 --> 00:46:07.580
+much. Because of the buttons,
+
+00:46:08.040 --> 00:46:10.080
+it feels like it's also something that we've
+
+00:46:10.080 --> 00:46:12.440
+reinvented many times in Emacs.
+
+00:46:12.440 --> 00:46:13.940
+It's like conversion to evolution,
+
+00:46:14.020 --> 00:46:16.540
+except you're the 1 who started ahead of
+
+00:46:16.540 --> 00:46:17.420
+everyone else.
+
+00:46:17.860 --> 00:46:19.700
+[Speaker 0]: Well, that's a good point because,
+
+00:46:19.940 --> 00:46:23.200
+you know, we have, Emacs itself has push
+
+00:46:23.200 --> 00:46:25.520
+buttons, which you see like in the help
+
+00:46:25.520 --> 00:46:27.540
+buffers. And those used to,
+
+00:46:27.540 --> 00:46:29.840
+we didn't really do anything with those,
+
+00:46:30.040 --> 00:46:32.780
+but now we've subsumed them as implicit
+
+00:46:32.800 --> 00:46:35.340
+buttons as well. So you're made a return,
+
+00:46:35.580 --> 00:46:38.500
+we'll work on those anywhere too.
+
+00:46:38.740 --> 00:46:41.820
+So, we're trying to get,
+
+00:46:42.260 --> 00:46:45.920
+you use 1 key, right? To control every type
+
+00:46:45.920 --> 00:46:47.080
+of button that you have.
+
+00:46:47.080 --> 00:46:48.420
+It works on org links,
+
+00:46:48.560 --> 00:46:51.800
+org buttons anywhere, or URLs.
+
+00:46:53.240 --> 00:46:54.440
+Because it's so simple.
+
+00:46:54.520 --> 00:46:58.820
+All you need is like 5 to 10 lines of code to
+
+00:46:58.820 --> 00:47:02.760
+map. You map the pattern that represents a
+
+00:47:02.760 --> 00:47:05.080
+concept, right? And then you can create an
+
+00:47:05.080 --> 00:47:07.720
+infinite number of those buttons from that
+
+00:47:07.720 --> 00:47:09.520
+type. That's what's really cool about
+
+00:47:09.520 --> 00:47:13.060
+Hyperbole, is say I have a 500 page document
+
+00:47:13.280 --> 00:47:15.600
+and it uses a really weird format for
+
+00:47:15.600 --> 00:47:17.060
+cross-referencing, right?
+
+00:47:17.220 --> 00:47:22.320
+I write my 3 lines of pattern match to work
+
+00:47:22.320 --> 00:47:24.200
+with that. And then everywhere throughout
+
+00:47:24.200 --> 00:47:25.960
+that document and the hundreds of other
+
+00:47:25.960 --> 00:47:27.680
+documents that will be created with that
+
+00:47:27.680 --> 00:47:30.900
+format, they're all live buttons instantly.
+
+00:47:31.280 --> 00:47:33.240
+Nothing changed about the document.
+
+00:47:34.220 --> 00:47:35.500
+That's really cool. You know,
+
+00:47:35.500 --> 00:47:37.860
+word mode, we have global word buttons,
+
+00:47:37.940 --> 00:47:42.040
+but mostly it has to be embedded within an
+
+00:47:42.040 --> 00:47:44.760
+org file, right? And follow that syntax.
+
+00:47:45.580 --> 00:47:51.900
+With hyperbole, it's like we can adapt as the
+
+00:47:51.900 --> 00:47:55.300
+world adapts around us to whatever formats
+
+00:47:55.320 --> 00:47:56.940
+people want to use that day.
+
+00:47:56.940 --> 00:47:59.380
+And you can even change things to look the
+
+00:47:59.380 --> 00:48:02.200
+way you want, right, and have your own
+
+00:48:02.440 --> 00:48:04.860
+cross-references. There's something built
+
+00:48:04.860 --> 00:48:07.560
+into Hyperbole that's not really active,
+
+00:48:08.220 --> 00:48:13.120
+which was sort of along the Zettelkasten way.
+
+00:48:13.780 --> 00:48:15.440
+We wrote this a long time ago.
+
+00:48:15.440 --> 00:48:16.960
+It's called hib-doc.el,
+
+00:48:19.120 --> 00:48:22.200
+and it's a card catalog notion.
+
+00:48:22.200 --> 00:48:25.820
+So it uses the high rollo in the background
+
+00:48:26.160 --> 00:48:30.180
+but it lets you create these forms that are
+
+00:48:30.180 --> 00:48:32.800
+cards that you fill out with whatever kind of
+
+00:48:32.800 --> 00:48:35.360
+data you want and then it gives you the full
+
+00:48:35.360 --> 00:48:38.520
+text searching across the cards and each card
+
+00:48:38.520 --> 00:48:41.760
+has a unique ID that you can reference
+
+00:48:41.820 --> 00:48:45.240
+similar to org IDs but these are human
+
+00:48:45.240 --> 00:48:49.860
+readable and human typable and so you can you
+
+00:48:49.860 --> 00:48:52.940
+can just have a cross-reference to any doc ID
+
+00:48:52.960 --> 00:48:56.100
+and essentially create what Engelbart used to
+
+00:48:56.100 --> 00:49:00.520
+call a journal, which is all these IDs on
+
+00:49:00.520 --> 00:49:03.220
+documents that point you directly to the
+
+00:49:03.220 --> 00:49:05.640
+document archive so that you could have like
+
+00:49:05.640 --> 00:49:10.020
+your internal publishing system and you know
+
+00:49:10.020 --> 00:49:12.940
+it's very simple to do and it's just 1 module
+
+00:49:13.420 --> 00:49:14.660
+added on to Hyperbole.
+
+00:49:15.920 --> 00:49:19.140
+[Speaker 1]: Yeah it's especially interesting for me you
+
+00:49:19.140 --> 00:49:21.140
+know because coming back to the side of
+
+00:49:21.140 --> 00:49:23.400
+convergent evolutions it's funny because the
+
+00:49:23.400 --> 00:49:24.880
+parameters are a little different.
+
+00:49:24.920 --> 00:49:26.260
+For us with org buttons,
+
+00:49:26.260 --> 00:49:29.340
+we're very happy. A lot of the stuff during
+
+00:49:29.340 --> 00:49:31.360
+EmacsConf is run with org mode,
+
+00:49:31.360 --> 00:49:34.340
+like we have Elisp going everywhere to
+
+00:49:34.540 --> 00:49:37.320
+compile a lot of org properties,
+
+00:49:38.080 --> 00:49:39.640
+like speaker information,
+
+00:49:39.660 --> 00:49:41.480
+for instance, how long the talk is,
+
+00:49:41.480 --> 00:49:42.800
+the title, and all this.
+
+00:49:42.800 --> 00:49:44.760
+We have all of this in an org file,
+
+00:49:44.760 --> 00:49:46.020
+which we use as a database,
+
+00:49:46.220 --> 00:49:47.800
+but then we can do so much stuff.
+
+00:49:47.800 --> 00:49:50.740
+We can send email and we can update the
+
+00:49:50.740 --> 00:49:52.200
+schedule. By the way, if you're interested in
+
+00:49:52.200 --> 00:49:54.280
+this, we'll have a talk on the DevTrack in
+
+00:49:54.280 --> 00:49:56.640
+the afternoon today that Sacha did and it's
+
+00:49:56.640 --> 00:49:58.140
+wonderful. I'm just teasing it.
+
+00:49:58.140 --> 00:49:59.040
+[Speaker 0]: Oh, that's great.
+
+00:50:00.060 --> 00:50:01.140
+[Speaker 1]: But coming back to Hyperbole,
+
+00:50:01.640 --> 00:50:04.000
+for you, it feels like the parameters were
+
+00:50:04.000 --> 00:50:06.560
+slightly different because the feeling was,
+
+00:50:06.560 --> 00:50:09.020
+I just want a tunnel that can work between
+
+00:50:09.020 --> 00:50:10.440
+any type of files. Now,
+
+00:50:10.440 --> 00:50:11.740
+it's all well and good.
+
+00:50:11.740 --> 00:50:14.540
+Org-Rome, D-Note, and all the stuff like
+
+00:50:14.540 --> 00:50:16.860
+this, they create bidirectional links.
+
+00:50:17.080 --> 00:50:19.540
+But it's only between org-mode files.
+
+00:50:19.840 --> 00:50:22.040
+Whereas what you're achieving with Hyperbole,
+
+00:50:22.260 --> 00:50:24.720
+and you've done it much earlier than everyone
+
+00:50:24.720 --> 00:50:27.420
+else, is that you have this concept
+
+00:50:27.660 --> 00:50:29.440
+regardless of the type of file that you're
+
+00:50:29.440 --> 00:50:32.520
+using. And I find this to be beautiful.
+
+00:50:32.900 --> 00:50:35.280
+Like 5 years ago, whenever you were talking
+
+00:50:35.280 --> 00:50:37.280
+about hyperbole, I did not have a concrete
+
+00:50:37.280 --> 00:50:38.540
+idea of what was happening.
+
+00:50:38.640 --> 00:50:40.360
+But ever since I've gone through the journey
+
+00:50:40.360 --> 00:50:42.380
+of really understanding what the El Caster
+
+00:50:42.380 --> 00:50:45.000
+method were about, it feels like you were
+
+00:50:45.720 --> 00:50:46.980
+foreigners in the topic.
+
+00:50:46.980 --> 00:50:48.540
+Obviously, you've mentioned the mother of all
+
+00:50:48.540 --> 00:50:50.240
+demos by Edward Engelbart,
+
+00:50:50.740 --> 00:50:54.100
+but those ideas are not novel,
+
+00:50:54.340 --> 00:50:56.820
+but it feels like only now are they starting
+
+00:50:56.820 --> 00:50:58.520
+to be appropriated by people,
+
+00:50:58.520 --> 00:50:59.800
+especially in free software,
+
+00:50:59.800 --> 00:51:01.200
+and it's really good to see.
+
+00:51:01.280 --> 00:51:02.440
+I'm really excited to,
+
+00:51:02.440 --> 00:51:04.600
+well, have my small part to play in this.
+
+00:51:04.600 --> 00:51:06.980
+And I'm also excited to be able to chat with
+
+00:51:06.980 --> 00:51:10.140
+you and people like Bastien and other people
+
+00:51:10.240 --> 00:51:11.400
+about all those topics.
+
+00:51:12.340 --> 00:51:13.780
+[Speaker 0]: Yeah, I think, you know,
+
+00:51:13.940 --> 00:51:16.640
+it's fun that we can laugh now about when
+
+00:51:16.640 --> 00:51:20.020
+people say people are still using Emacs,
+
+00:51:20.020 --> 00:51:22.800
+you know, is because they're not used,
+
+00:51:22.800 --> 00:51:24.160
+certain people aren't using it.
+
+00:51:24.160 --> 00:51:26.880
+They have no idea of how far it's come and
+
+00:51:26.880 --> 00:51:28.720
+how powerful it is. And,
+
+00:51:28.780 --> 00:51:31.520
+you know, we're leveraging Elisp heavily,
+
+00:51:31.560 --> 00:51:33.940
+obviously, but if you look at the definition
+
+00:51:34.300 --> 00:51:37.800
+of our types, they look exactly like DIP
+
+00:51:37.800 --> 00:51:41.180
+funds in ELisp. And we've been able to do
+
+00:51:41.180 --> 00:51:42.780
+that because of Lisp macros.
+
+00:51:43.860 --> 00:51:46.400
+You know, we so we basically have our own
+
+00:51:46.400 --> 00:51:48.300
+domain specific language there,
+
+00:51:48.420 --> 00:51:51.240
+but there's almost nothing to learn because
+
+00:51:51.340 --> 00:51:53.460
+it's just like what you know from UList.
+
+00:51:54.200 --> 00:51:57.120
+So again, you know, taking the concept and
+
+00:51:57.120 --> 00:51:59.700
+leveraging it, abstracting it and leveraging
+
+00:51:59.760 --> 00:52:02.980
+it multiple times gives you a lot of power.
+
+00:52:03.660 --> 00:52:06.060
+And people, you know, somebody said the other
+
+00:52:06.060 --> 00:52:07.500
+day, and I said, finally,
+
+00:52:07.760 --> 00:52:10.360
+this quote happened. He said,
+
+00:52:11.000 --> 00:52:15.060
+there's so many things that I do with
+
+00:52:15.060 --> 00:52:17.200
+hyperbole every day that I forget that I'm
+
+00:52:17.200 --> 00:52:21.440
+using hyperbole. Because it's just so
+
+00:52:21.440 --> 00:52:23.580
+embedded in this guy's workflow.
+
+00:52:23.680 --> 00:52:25.440
+And that's really how I use it.
+
+00:52:25.440 --> 00:52:27.380
+You know, there are features in there,
+
+00:52:27.440 --> 00:52:29.060
+can't use everything, right?
+
+00:52:29.060 --> 00:52:31.860
+So there are features that I don't use,
+
+00:52:32.040 --> 00:52:35.580
+but I use a lot of things and it's all like
+
+00:52:35.580 --> 00:52:37.580
+muscle memory, just like the keyboard,
+
+00:52:38.200 --> 00:52:39.740
+the Emacs key bindings.
+
+00:52:39.960 --> 00:52:42.180
+So it's very exciting to get to that level.
+
+00:52:42.180 --> 00:52:44.320
+And now, you know, we haven't started with
+
+00:52:44.320 --> 00:52:46.940
+the chatbots or any of the AI integration,
+
+00:52:47.300 --> 00:52:49.480
+but I'm starting to think about that a little
+
+00:52:49.480 --> 00:52:53.480
+bit and how we'll interface to that world and
+
+00:52:53.480 --> 00:52:55.320
+I think it's going to be very exciting.
+
+00:52:56.040 --> 00:52:58.340
+[Speaker 1]: Yeah, likewise and I think it harks back to
+
+00:52:58.340 --> 00:53:00.660
+what we were talking about before when we
+
+00:53:00.660 --> 00:53:03.700
+mentioned Hyperbole being a package inside of
+
+00:53:03.700 --> 00:53:05.300
+an ecosystem that is Emacs.
+
+00:53:05.860 --> 00:53:08.040
+But it's not because something is well
+
+00:53:08.040 --> 00:53:10.560
+circumscribed in terms of feature set that it
+
+00:53:10.560 --> 00:53:12.880
+does not influence everything around it.
+
+00:53:12.880 --> 00:53:15.060
+Like Hyperbole can be used with something
+
+00:53:15.060 --> 00:53:18.080
+completely at the opposite end of what it was
+
+00:53:18.080 --> 00:53:21.380
+intended for, just because it provides a good
+
+00:53:21.380 --> 00:53:23.860
+set of tools that can be used wherever else
+
+00:53:23.860 --> 00:53:26.100
+you want in Emacs. And it's the same thing
+
+00:53:26.100 --> 00:53:27.980
+with Org Mode, it's the same thing with many,
+
+00:53:27.980 --> 00:53:29.280
+many different things.
+
+00:53:29.440 --> 00:53:32.820
+And it feels like integrating AIs,
+
+00:53:33.400 --> 00:53:36.920
+or generative AIs, into Emacs would provide
+
+00:53:39.620 --> 00:53:42.340
+such a tool that could apply to any kind of
+
+00:53:42.340 --> 00:53:45.060
+other major mode or any kind of other use.
+
+00:53:45.060 --> 00:53:46.640
+So I'm also excited to see this.
+
+00:53:46.640 --> 00:53:50.280
+It feels like we are sitting at the brink of
+
+00:53:50.280 --> 00:53:52.580
+a revolution. I'm not going to say the acne
+
+00:53:52.580 --> 00:53:54.440
+stuff, but it definitely feels like right
+
+00:53:54.440 --> 00:53:57.560
+now, by trying to see what we can do with AI,
+
+00:53:57.560 --> 00:53:59.380
+it's definitely going to change the way not
+
+00:53:59.380 --> 00:54:01.560
+only we program, but also the way we take
+
+00:54:01.560 --> 00:54:03.160
+notes and the way we design stuff,
+
+00:54:03.160 --> 00:54:05.220
+arcing back to what John Wigley said
+
+00:54:05.220 --> 00:54:08.660
+yesterday about his draft program on macOS.
+
+00:54:09.800 --> 00:54:10.940
+Bob, if you don't mind,
+
+00:54:11.040 --> 00:54:13.100
+I see people typing questions and I also see
+
+00:54:13.100 --> 00:54:14.820
+people joining on people buttons,
+
+00:54:14.820 --> 00:54:16.920
+so I'm going to read you the 2 questions that
+
+00:54:16.920 --> 00:54:18.260
+have been added. Is that okay?
+
+00:54:19.200 --> 00:54:20.580
+[Speaker 0]: Great, go for it.
+
+00:54:21.240 --> 00:54:23.140
+[Speaker 1]: Cool, so first question.
+
+00:54:23.320 --> 00:54:25.240
+Wow, what you're describing now,
+
+00:54:25.240 --> 00:54:27.520
+and that's when you were talking about the
+
+00:54:27.520 --> 00:54:31.840
+bi-directional links and especially the last
+
+00:54:31.840 --> 00:54:33.080
+question in its entirety,
+
+00:54:33.540 --> 00:54:35.440
+What you're describing now reminds me a lot
+
+00:54:35.440 --> 00:54:37.440
+about HyperCard that I grew up on.
+
+00:54:37.440 --> 00:54:39.220
+Do you know if Hyperbole inspired Bill
+
+00:54:39.220 --> 00:54:41.040
+Atkinson or if you were inspired by
+
+00:54:41.040 --> 00:54:43.040
+HyperCard? Or were there just a lot of
+
+00:54:43.040 --> 00:54:44.860
+thoughts about hyper-contextuality around
+
+00:54:44.860 --> 00:54:45.520
+that time?
+
+00:54:46.780 --> 00:54:50.100
+[Speaker 0]: Alright, well this is another interesting
+
+00:54:50.320 --> 00:54:52.360
+anecdote. I don't know if it's true or not,
+
+00:54:52.360 --> 00:54:57.880
+but I think HyperCard predated our stuff.
+
+00:54:57.880 --> 00:55:00.480
+It was right around the same time when
+
+00:55:00.480 --> 00:55:02.420
+Hyperbole was starting out.
+
+00:55:02.540 --> 00:55:05.100
+But when I was doing the Pi research,
+
+00:55:06.040 --> 00:55:08.800
+I worked at, when I left school,
+
+00:55:08.800 --> 00:55:11.280
+I worked at Motorola, and we did a lot of
+
+00:55:11.280 --> 00:55:13.040
+work with Apple back then.
+
+00:55:13.180 --> 00:55:15.480
+And somebody came back and he said,
+
+00:55:15.480 --> 00:55:18.000
+you know, the people over there have seen
+
+00:55:19.120 --> 00:55:21.940
+your Pi research and they really liked it a
+
+00:55:21.940 --> 00:55:26.020
+lot. And so they were leveraging that when
+
+00:55:26.020 --> 00:55:28.440
+they decided to create the division that they
+
+00:55:28.440 --> 00:55:33.280
+called Apple Pi, which was the originator of
+
+00:55:33.280 --> 00:55:36.500
+the Newton which eventually led to the
+
+00:55:36.500 --> 00:55:40.960
+iPhone. So it all kind of is interconnected
+
+00:55:41.360 --> 00:55:44.380
+just like the impact that free software has
+
+00:55:44.380 --> 00:55:47.240
+had around the world. So you never know where
+
+00:55:47.240 --> 00:55:49.840
+your stuff is gonna go or end up.
+
+00:55:51.180 --> 00:55:53.400
+[Speaker 1]: Right. All right, moving on to the next
+
+00:55:53.400 --> 00:55:55.840
+question. Is it possible to only use 1
+
+00:55:55.840 --> 00:55:57.740
+feature of hyperbole without the others,
+
+00:55:57.740 --> 00:56:00.580
+i.e. Using only the implicit explicit buttons
+
+00:56:00.580 --> 00:56:03.580
+without I control I roller or without having
+
+00:56:03.580 --> 00:56:05.920
+to rewrite part of the code in hyperbole in
+
+00:56:05.920 --> 00:56:08.040
+order to be able to load a smaller hyperbole.
+
+00:56:08.200 --> 00:56:09.140
+Does it make sense?
+
+00:56:10.260 --> 00:56:12.640
+[Speaker 0]: Yes we get asked this all the time.
+
+00:56:12.900 --> 00:56:16.560
+So you can use any little bit that you want
+
+00:56:16.560 --> 00:56:19.620
+anywhere right you can even just call code
+
+00:56:19.940 --> 00:56:23.660
+from Hyperbole. I mean you don't use
+
+00:56:23.680 --> 00:56:25.080
+everything in Emacs, right?
+
+00:56:25.080 --> 00:56:27.740
+But you still install Emacs on your machine.
+
+00:56:28.180 --> 00:56:30.080
+It's exactly the same thing.
+
+00:56:30.860 --> 00:56:33.280
+Those libraries don't take up any memory,
+
+00:56:33.280 --> 00:56:36.380
+they take up a little disk space and it's so
+
+00:56:36.380 --> 00:56:38.520
+trivial compared to the amount of disk we
+
+00:56:38.520 --> 00:56:41.780
+have today. So a lot of things are not loaded
+
+00:56:41.920 --> 00:56:43.760
+unless you activate them.
+
+00:56:45.040 --> 00:56:48.940
+And so I know that you do have to build all
+
+00:56:48.940 --> 00:56:51.360
+those things. So maybe that's what bothers
+
+00:56:51.360 --> 00:56:56.060
+people. It takes 2 minutes if you're using,
+
+00:56:56.320 --> 00:56:58.400
+it depends how fast your computer is.
+
+00:56:58.400 --> 00:57:01.160
+But you build it once on install like every
+
+00:57:01.160 --> 00:57:04.600
+other package. And it used to be that there
+
+00:57:04.600 --> 00:57:06.620
+would be a lot of warnings just because of
+
+00:57:06.620 --> 00:57:09.020
+the way we wrote the code and we didn't
+
+00:57:09.020 --> 00:57:11.120
+really have to deal with some of those
+
+00:57:11.120 --> 00:57:13.080
+warnings. But with this new release,
+
+00:57:13.080 --> 00:57:15.120
+we've gotten rid of almost all of them,
+
+00:57:15.200 --> 00:57:19.800
+including the native compiler messages.
+
+00:57:20.020 --> 00:57:22.620
+So it should be a very clean install now,
+
+00:57:22.900 --> 00:57:26.620
+and just use 1 part at a time.
+
+00:57:26.880 --> 00:57:29.820
+But the other parts are there in case you
+
+00:57:29.820 --> 00:57:32.080
+make a link to something and you use a
+
+00:57:32.080 --> 00:57:34.600
+facility just like I was showing as I went
+
+00:57:34.600 --> 00:57:36.360
+across subsystems today.
+
+00:57:36.600 --> 00:57:38.000
+It may take you a year,
+
+00:57:38.000 --> 00:57:40.120
+but then all of a sudden you find the use
+
+00:57:40.120 --> 00:57:42.340
+case for Hyrule and you say,
+
+00:57:42.340 --> 00:57:44.040
+oh, I'm glad I have it there.
+
+00:57:44.440 --> 00:57:47.540
+And yes, some of these things could be split
+
+00:57:47.540 --> 00:57:49.540
+into sub packages like you do in the org
+
+00:57:49.540 --> 00:57:52.500
+ecosystem. But given our limited resources on
+
+00:57:52.500 --> 00:57:56.400
+the team, we find having them all in 1 gives
+
+00:57:56.400 --> 00:57:59.040
+us a higher level of quality and lets us
+
+00:57:59.040 --> 00:58:02.840
+deliver a better integrated system for your
+
+00:58:02.840 --> 00:58:03.340
+use.
+
+00:58:04.740 --> 00:58:06.300
+[Speaker 1]: Yeah, exactly. And I think,
+
+00:58:06.300 --> 00:58:09.120
+you know, it's, it's not a monolith.
+
+00:58:10.080 --> 00:58:12.540
+I mean, it's usually easier,
+
+00:58:12.540 --> 00:58:14.620
+easy, more easy, more easy.
+
+00:58:14.620 --> 00:58:16.500
+Sorry, I was right on the first try.
+
+00:58:16.560 --> 00:58:20.580
+It's usually easier to maintain a monolith
+
+00:58:20.860 --> 00:58:23.140
+that contains many bits of functionality like
+
+00:58:23.140 --> 00:58:25.280
+org. You have plenty of people using org
+
+00:58:25.280 --> 00:58:27.180
+mode, not using org-agenda,
+
+00:58:27.340 --> 00:58:29.142
+for instance, or you've got plenty of people
+
+00:58:29.142 --> 00:58:31.560
+using org-mode and barely using Babel because
+
+00:58:31.560 --> 00:58:34.740
+it doesn't really translate to their use.
+
+00:58:35.460 --> 00:58:37.720
+And I feel like I very much agree with you.
+
+00:58:37.720 --> 00:58:39.520
+It's okay to install a package and only use
+
+00:58:39.520 --> 00:58:40.420
+some of the functions.
+
+00:58:40.600 --> 00:58:43.580
+I was reminded, as you were discussing this,
+
+00:58:43.580 --> 00:58:45.140
+of the consults package,
+
+00:58:45.380 --> 00:58:46.920
+which is part of the VertiCo,
+
+00:58:48.220 --> 00:58:51.060
+mbark and marginalia and all this.
+
+00:58:51.340 --> 00:58:54.960
+Consult, it replaces a lot of the Emacs
+
+00:58:54.960 --> 00:58:56.980
+built-in commands like for finding your
+
+00:58:56.980 --> 00:58:59.900
+buffers or finding text inside of your
+
+00:58:59.900 --> 00:59:03.960
+buffer. It's great. And you do not need to
+
+00:59:04.120 --> 00:59:06.300
+completely move to consult as you get
+
+00:59:06.300 --> 00:59:09.080
+started. You can start colonizing 1 step at a
+
+00:59:09.080 --> 00:59:11.540
+time the function that you usually use.
+
+00:59:12.620 --> 00:59:15.580
+And I highly recommend to people to not let
+
+00:59:15.580 --> 00:59:18.560
+the size of a project deter them from trying
+
+00:59:18.560 --> 00:59:20.580
+it out because, again,
+
+00:59:20.980 --> 00:59:22.800
+in Emacs, everything is horizontal.
+
+00:59:23.100 --> 00:59:28.180
+If somehow you want to use something that was
+
+00:59:28.180 --> 00:59:29.640
+not intended primarily for this,
+
+00:59:29.640 --> 00:59:32.220
+or if you only want to use 10% of a package,
+
+00:59:32.300 --> 00:59:35.500
+well, do it. An example that I have for me is
+
+00:59:35.500 --> 00:59:39.840
+that Lispy is the minor mode that I use for
+
+00:59:39.840 --> 00:59:42.380
+editing Elisp documents,
+
+00:59:42.740 --> 00:59:45.380
+and it's great. Elisp provides similar
+
+00:59:45.380 --> 00:59:46.260
+functions to ParaEdit,
+
+00:59:46.260 --> 00:59:47.720
+which might be a little more popular,
+
+00:59:47.780 --> 00:59:50.320
+which allows you to have modal editing when
+
+00:59:50.320 --> 00:59:52.840
+you are on specific parts of a file,
+
+00:59:52.840 --> 00:59:55.080
+like the opening parenthesis or the closing
+
+00:59:55.080 --> 00:59:56.480
+parenthesis. It's great,
+
+00:59:56.480 --> 00:59:58.320
+it provides modal editing for those modes,
+
+00:59:58.320 --> 01:00:01.340
+but I certainly do not know everything,
+
+01:00:02.220 --> 01:00:04.240
+every modal command associated to it.
+
+01:00:04.240 --> 01:00:06.180
+I just use the 1 that makes the most sense to
+
+01:00:06.180 --> 01:00:08.200
+me. So feel free to explore.
+
+01:00:11.040 --> 01:00:13.680
+[Speaker 0]: I'll just say we get this so much.
+
+01:00:13.740 --> 01:00:16.520
+It's not that large. I mean there's a fair
+
+01:00:16.520 --> 01:00:19.680
+number of files but it's just like 1 major
+
+01:00:19.680 --> 01:00:22.340
+directory and then the KOutliner directory.
+
+01:00:24.080 --> 01:00:25.560
+And when you look at these things,
+
+01:00:25.560 --> 01:00:27.140
+you install web applications,
+
+01:00:27.440 --> 01:00:30.420
+everything else, just when you download the
+
+01:00:30.420 --> 01:00:31.820
+source code, it's much,
+
+01:00:31.820 --> 01:00:34.040
+much smaller than any of that.
+
+01:00:34.140 --> 01:00:37.360
+So I don't know why people you know accept
+
+01:00:37.360 --> 01:00:39.660
+that it's larger than your typical package.
+
+01:00:39.960 --> 01:00:41.900
+Why there's really an issue there.
+
+01:00:43.080 --> 01:00:45.080
+[Speaker 1]: I think it's because people tend to assume
+
+01:00:46.240 --> 01:00:48.480
+that a paradigm like the 1 you're describing,
+
+01:00:48.480 --> 01:00:51.560
+which seems to be changing the way you use
+
+01:00:51.560 --> 01:00:53.480
+Emacs in a way because you're no longer
+
+01:00:53.480 --> 01:00:56.000
+thinking of as buffers as separate entities,
+
+01:00:56.000 --> 01:00:57.980
+you can tunnel between them.
+
+01:00:57.980 --> 01:01:00.180
+You know, it feels like a huge paradigm shift
+
+01:01:00.180 --> 01:01:02.300
+and you assume that the code behind it is
+
+01:01:02.300 --> 01:01:04.080
+going to be humongous as well,
+
+01:01:04.080 --> 01:01:05.380
+but it's usually not the case.
+
+01:01:05.380 --> 01:01:07.640
+It's just that the idea is very pure at the
+
+01:01:07.640 --> 01:01:10.060
+start, and the paradigm shift that it allows
+
+01:01:10.320 --> 01:01:14.120
+is also magnificent. But at the end of the
+
+01:01:14.120 --> 01:01:16.200
+day, the code is fairly simple,
+
+01:01:16.320 --> 01:01:18.360
+because it does 1 thing and it does it well.
+
+01:01:19.780 --> 01:01:21.180
+[Speaker 0]: 1 thing I noticed too,
+
+01:01:21.180 --> 01:01:23.760
+I mean I'm a big believer in turnkey kind of
+
+01:01:23.760 --> 01:01:27.180
+systems. In fact a long time ago when I built
+
+01:01:27.180 --> 01:01:31.160
+an IDE on Emacs called InfoDoc that was
+
+01:01:31.160 --> 01:01:32.480
+delivered pre-compiled.
+
+01:01:33.760 --> 01:01:35.980
+So it's like you download it like every other
+
+01:01:35.980 --> 01:01:39.480
+app and you run it. And so I think
+
+01:01:39.480 --> 01:01:42.480
+eliminating all the friction that occurs,
+
+01:01:42.740 --> 01:01:46.360
+and you know, I just got going recently with
+
+01:01:46.380 --> 01:01:49.160
+the wonderful packages that you just
+
+01:01:49.160 --> 01:01:51.460
+mentioned, VertiCo and Consult,
+
+01:01:51.460 --> 01:01:55.360
+but they don't have a manual that covers all
+
+01:01:55.360 --> 01:01:57.780
+that. They use sort of like a cookbook,
+
+01:01:58.260 --> 01:02:02.220
+a wiki online to answer a lot of the
+
+01:02:02.220 --> 01:02:04.600
+questions that people have and everybody has
+
+01:02:04.600 --> 01:02:07.640
+to figure out their configurations you know
+
+01:02:07.640 --> 01:02:11.380
+to make these things all work together.
+
+01:02:12.800 --> 01:02:16.460
+We'd like to do that engineering and say here
+
+01:02:16.460 --> 01:02:18.560
+it is you know it's like if you want to
+
+01:02:18.560 --> 01:02:20.320
+configure it and make it your own,
+
+01:02:20.320 --> 01:02:23.500
+you can do it. But there is a default
+
+01:02:23.760 --> 01:02:26.880
+configuration that handles all the typical
+
+01:02:26.880 --> 01:02:29.940
+use cases and you can just load it up and run
+
+01:02:30.060 --> 01:02:31.660
+because it's made to use,
+
+01:02:32.840 --> 01:02:36.500
+you don't have to hack it to make it useful
+
+01:02:36.500 --> 01:02:37.260
+for you.
+
+01:02:37.900 --> 01:02:40.560
+[Speaker 1]: Yeah, it reminds me of the discussion we had
+
+01:02:40.560 --> 01:02:42.740
+with Stéphane yesterday about sane defaults.
+
+01:02:43.320 --> 01:02:45.520
+And I think the question was,
+
+01:02:46.500 --> 01:02:49.080
+Emacs should probably ship with sane defaults
+
+01:02:49.080 --> 01:02:51.740
+for people. And Stéphane's answer was,
+
+01:02:51.740 --> 01:02:53.860
+well, my sane defaults might not be the same
+
+01:02:53.860 --> 01:02:55.220
+thing as your sane defaults.
+
+01:02:55.960 --> 01:02:57.560
+And that's why I think it's important,
+
+01:02:57.560 --> 01:02:59.340
+really, to have a core set of features,
+
+01:02:59.340 --> 01:03:01.300
+be it with hyperbole of org mode,
+
+01:03:01.360 --> 01:03:02.580
+that is well-documented,
+
+01:03:02.880 --> 01:03:05.460
+as you mentioned. But what I like about this
+
+01:03:05.460 --> 01:03:07.260
+in a way, and I think hyperbole is perhaps
+
+01:03:07.260 --> 01:03:09.340
+taking more benefits of this than Org Mode,
+
+01:03:09.340 --> 01:03:12.280
+is that the self-documentation aspect of it
+
+01:03:12.540 --> 01:03:14.540
+feels like it's easier with hyperbole because
+
+01:03:14.540 --> 01:03:17.320
+you're not bound by Org Mode buffers.
+
+01:03:17.320 --> 01:03:19.340
+You can link to just about everything.
+
+01:03:19.940 --> 01:03:24.240
+And for me, this ability to self-document is,
+
+01:03:24.240 --> 01:03:26.140
+well, first, very true to the philosophy of
+
+01:03:26.140 --> 01:03:27.480
+Emacs in the first place,
+
+01:03:27.500 --> 01:03:31.900
+but also opens up those resonance cycles
+
+01:03:32.020 --> 01:03:34.200
+where, oh, you get interested and then you
+
+01:03:34.200 --> 01:03:35.820
+start reading up and then the documentation
+
+01:03:35.820 --> 01:03:38.320
+is so good that it feeds into your practice
+
+01:03:38.320 --> 01:03:41.040
+and then it goes nuclear and you gain so much
+
+01:03:41.040 --> 01:03:42.540
+knowledge as a result of this.
+
+01:03:42.620 --> 01:03:44.480
+All right, Bob, we are about out of time.
+
+01:03:44.480 --> 01:03:46.280
+We only have about 1 minute until we go to
+
+01:03:46.280 --> 01:03:48.220
+the next talk. Do you have any passing words?
+
+01:03:50.180 --> 01:03:53.860
+[Speaker 0]: I do. I think, you know,
+
+01:03:54.280 --> 01:03:56.880
+the world's complex, it's getting more
+
+01:03:57.440 --> 01:04:00.520
+complex. I think that's why people use Emacs
+
+01:04:00.520 --> 01:04:02.560
+in the first place, because it's a big
+
+01:04:02.560 --> 01:04:04.920
+system. You wouldn't use it unless you wanted
+
+01:04:04.920 --> 01:04:06.600
+it to simplify your life.
+
+01:04:07.580 --> 01:04:10.760
+Hyperbole is built with the same idea in
+
+01:04:10.760 --> 01:04:13.640
+mind. You may not get it just like Lisp.
+
+01:04:13.740 --> 01:04:15.720
+A lot of people don't understand when they
+
+01:04:15.720 --> 01:04:17.420
+first encounter it, but when they do
+
+01:04:17.420 --> 01:04:19.580
+understand it, they're blown away.
+
+01:04:19.960 --> 01:04:21.360
+It changes their life.
+
+01:04:22.040 --> 01:04:25.020
+You know, when you really understand implicit
+
+01:04:25.120 --> 01:04:28.100
+buttons, I think that's 1 of the things in
+
+01:04:28.100 --> 01:04:30.860
+hyperbole that can change your Emacs working
+
+01:04:30.860 --> 01:04:34.080
+life. So just give that a try and I think
+
+01:04:34.080 --> 01:04:36.660
+you'll be pleasantly surprised across time.
+
+01:04:39.220 --> 01:04:40.920
+[Speaker 1]: you so much Bob. We'll be moving on to the
+
+01:04:40.920 --> 01:04:42.980
+next talk in about 20 seconds so everyone see
+
+01:04:42.980 --> 01:04:44.940
+you in a bit and Bob thank you so much again.
+
+01:04:37.040 --> 01:04:46.100
+[Speaker 0]: Thanks very much. And thank Thank you.
+
+01:04:51.140 --> 01:04:53.040
+[Speaker 1]: All right I think we are off here now.
+
+01:04:53.040 --> 01:04:53.940
+So thank you so much, Bob.
+
+01:04:53.940 --> 01:04:55.440
+I'm going to need to step out and get ready
+
+01:04:56.609 --> 01:04:59.240
+[Speaker 0]: Yeah, do your thing. You do a great job at
+
+01:04:59.240 --> 01:05:01.760
+it. But I wanted to ask you where in London
+
+01:04:55.440 --> 01:05:04.780
+[Speaker 1]: for the next talk. I'm not in London,
+
+01:05:05.280 --> 01:05:07.940
+I'm in France, and I just moved to London.
+
+01:05:01.760 --> 01:05:10.740
+[Speaker 0]: you are. Oh, okay, got it.
+
+01:05:11.200 --> 01:05:12.680
+Sorry, I thought you were.
+
+01:05:13.000 --> 01:05:13.720
+Take care.
+
+01:05:14.340 --> 01:05:15.060
+[Speaker 1]: All right, bye-bye, Bob.
+
+01:05:15.060 --> 01:05:15.750
+Thanks a lot. Bye-bye.
+
+01:05:15.750 --> 01:05:16.250
+Bye-bye.
diff --git a/2023/captions/emacsconf-2023-sat-close--saturday-closing-remarks--main.vtt b/2023/captions/emacsconf-2023-sat-close--saturday-closing-remarks--main.vtt
new file mode 100644
index 00000000..9398d5f8
--- /dev/null
+++ b/2023/captions/emacsconf-2023-sat-close--saturday-closing-remarks--main.vtt
@@ -0,0 +1,503 @@
+WEBVTT
+
+
+00:00:05.200 --> 00:00:06.359
+[Speaker 0]: Session is being recorded.
+
+00:00:06.819 --> 00:00:08.860
+Just waiting for Corwin and Leo.
+
+00:00:16.359 --> 00:00:17.960
+Great. Corwin, would you like to share your
+
+00:00:17.960 --> 00:00:18.460
+screen?
+
+00:00:37.620 --> 00:00:39.840
+Let's see the audio through BBB so we don't
+
+00:00:39.840 --> 00:00:41.720
+have to splice it in afterwards because it's
+
+00:00:41.720 --> 00:00:43.680
+annoying to splice things.
+
+00:00:43.680 --> 00:00:47.020
+I mean, Leo will be taking care of it,
+
+00:00:47.020 --> 00:00:50.560
+not me, so. Okay, he's going to finish up.
+
+00:00:52.720 --> 00:00:55.320
+[Speaker 1]: So, in the meantime, it's been a long day,
+
+00:00:55.320 --> 00:00:57.080
+people. Thanks for sticking around.
+
+00:00:57.180 --> 00:00:58.739
+And we're going to do a little bit of jazz
+
+00:00:58.739 --> 00:01:00.060
+handing until Corwin comes back.
+
+00:01:00.060 --> 00:01:07.650
+Smack. I
+
+00:01:14.240 --> 00:01:16.020
+[Speaker 2]: can't imagine an Emacs con without getting to
+
+00:01:16.020 --> 00:01:17.920
+enjoy Leo's famous jazz hands.
+
+00:01:21.420 --> 00:01:23.080
+[Speaker 1]: I can tell you it's a lot easier...
+
+00:01:23.160 --> 00:01:25.760
+Hello? I can tell you it's a lot easier to do
+
+00:01:25.760 --> 00:01:30.740
+jazz hands at 9am EST than it is at 5pm EST,
+
+00:01:30.860 --> 00:01:34.160
+because for me it's 11 and I've barely seen
+
+00:01:34.160 --> 00:01:39.720
+this 1 today. Okay Corwin,
+
+00:01:39.720 --> 00:01:41.880
+do you have a presentation right now?
+
+00:01:45.480 --> 00:01:47.440
+We do not seem to be able to hear you,
+
+00:01:47.440 --> 00:01:55.240
+Corwin. Okay, just bear with us,
+
+00:01:55.240 --> 00:01:57.380
+folks. We're gonna figure out this 1.
+
+00:01:57.380 --> 00:01:58.660
+This is the last bug of the day,
+
+00:01:58.660 --> 00:02:00.640
+and then we're clear until tomorrow.
+
+00:02:05.820 --> 00:02:07.700
+[Speaker 2]: I just heard you, but I don't know if it was
+
+00:02:07.700 --> 00:02:12.100
+here or via mumble. Okay.
+
+00:02:14.540 --> 00:02:17.360
+[Speaker 1]: Can we figure out? Whenever there's a problem
+
+00:02:17.360 --> 00:02:19.340
+like this, like Sash and myself are furiously
+
+00:02:19.460 --> 00:02:20.640
+typing in the background,
+
+00:02:20.640 --> 00:02:22.380
+we say, oh, can we fix this slide?
+
+00:02:22.740 --> 00:02:24.180
+But here, I'm stumped.
+
+00:02:33.180 --> 00:02:36.760
+[Speaker 2]: I think Corbin is in the GenTrack on Mumble.
+
+00:02:40.520 --> 00:02:43.680
+[Speaker 1]: Okay, so let's all switch to GenTrack and
+
+00:02:43.780 --> 00:02:46.860
+we'll be able to figure out the way.
+
+00:03:18.420 --> 00:03:21.540
+[Speaker 0]: Okay, well, while Corwin figures out how to
+
+00:03:21.540 --> 00:03:23.940
+get started, we might as well maybe do a
+
+00:03:23.940 --> 00:03:25.380
+little bit of closing remarks,
+
+00:03:25.380 --> 00:03:27.220
+and then you can jump in whenever you want.
+
+00:03:29.440 --> 00:03:30.420
+[Speaker 1]: Sounds good to me.
+
+00:03:31.980 --> 00:03:34.459
+[Speaker 0]: Okay. Thank you, everyone,
+
+00:03:34.459 --> 00:03:36.160
+for coming to Emacs Conf 2023.
+
+00:03:37.120 --> 00:03:38.980
+We made it to the end of the first day!
+
+00:03:39.140 --> 00:03:40.440
+Hooray! We're going to keep these closing
+
+00:03:40.440 --> 00:03:42.880
+remarks short because it's a long day.
+
+00:03:42.880 --> 00:03:44.920
+It's almost midnight and Leah will turn into
+
+00:03:44.920 --> 00:03:48.340
+a pumpkin very soon. So before that happens,
+
+00:03:48.580 --> 00:03:50.560
+we just want to say hello and thanks.
+
+00:03:50.640 --> 00:03:54.980
+And pre-recorded talks are already up.
+
+00:03:55.260 --> 00:03:56.520
+They're on the talk pages,
+
+00:03:56.520 --> 00:03:57.320
+they're on media.emaxcontent.org.
+
+00:03:58.860 --> 00:04:00.620
+We'll work on extracting the live talks,
+
+00:04:00.620 --> 00:04:01.920
+but it'll take a few weeks.
+
+00:04:01.920 --> 00:04:02.220
+[Speaker 3]: Maybe, you
+
+00:04:02.220 --> 00:04:03.660
+[Speaker 0]: know, we'll see how it goes.
+
+00:04:04.540 --> 00:04:06.100
+Please feel free to spread the word,
+
+00:04:06.100 --> 00:04:07.700
+because you know some people didn't actually
+
+00:04:07.720 --> 00:04:09.380
+know there was EmacsConf this weekend,
+
+00:04:09.380 --> 00:04:11.400
+so let them know, because it's a lot of fun.
+
+00:04:11.400 --> 00:04:15.020
+More talks tomorrow. And if you've got ideas
+
+00:04:15.020 --> 00:04:15.900
+for making things better,
+
+00:04:15.900 --> 00:04:17.500
+or If you'd like to tell us what's working
+
+00:04:17.500 --> 00:04:18.660
+well and what you'd like,
+
+00:04:18.940 --> 00:04:21.180
+please put them in the conference pad at
+
+00:04:21.180 --> 00:04:26.580
+pad.emaxconf.org. Anything anyone want to
+
+00:04:26.580 --> 00:04:27.080
+add?
+
+00:04:30.060 --> 00:04:30.860
+[Speaker 1]: I'm all good.
+
+00:04:32.900 --> 00:04:35.260
+[Speaker 2]: Let's see if Corwin can get his mic to work.
+
+00:04:37.740 --> 00:04:38.800
+No, it's not.
+
+00:04:43.520 --> 00:04:45.140
+[Speaker 1]: Well, I mean, did you want to say something
+
+00:04:45.140 --> 00:04:47.220
+as well? Because people have heard you talk
+
+00:04:47.220 --> 00:04:49.120
+all day long on the Dev track,
+
+00:04:49.120 --> 00:04:50.240
+but not on the general track,
+
+00:04:50.240 --> 00:04:51.540
+actually. It's the first time they hear you
+
+00:04:51.540 --> 00:04:52.040
+today.
+
+00:04:52.540 --> 00:04:55.580
+[Speaker 2]: Right. Oh, well, way to put me on the spot,
+
+00:04:56.540 --> 00:04:58.040
+but more seriously, thanks.
+
+00:04:58.040 --> 00:04:59.760
+So yeah, it's a lot of fun.
+
+00:05:00.340 --> 00:05:03.760
+You know, it's, we sort of keep coming back
+
+00:05:03.760 --> 00:05:05.580
+every year and doing this conference.
+
+00:05:06.300 --> 00:05:08.720
+It's always been fun. And we keep doing it
+
+00:05:08.720 --> 00:05:11.320
+thanks to, you know, all the people who
+
+00:05:11.320 --> 00:05:13.860
+submit all these amazing talks with these
+
+00:05:14.600 --> 00:05:16.560
+amazing sessions. And of course the audience
+
+00:05:16.560 --> 00:05:19.940
+as well. I don't have a lot to say I guess
+
+00:05:19.940 --> 00:05:21.500
+for today because I think we're hoping to
+
+00:05:21.500 --> 00:05:23.180
+keep it kind of short and sweet.
+
+00:05:24.400 --> 00:05:25.920
+So yeah, I think that's about it for me.
+
+00:05:25.920 --> 00:05:28.380
+I guess we'll maybe wait another minute or so
+
+00:05:28.380 --> 00:05:30.180
+to see if Cormen can make it.
+
+00:05:30.580 --> 00:05:32.140
+But yeah, that's all for me.
+
+00:05:34.820 --> 00:05:37.920
+[Speaker 1]: All right, great. Speaking of putting people
+
+00:05:37.920 --> 00:05:41.600
+on the spot, you might see a face in the room
+
+00:05:41.600 --> 00:05:43.680
+that you might have seen last year,
+
+00:05:43.840 --> 00:05:45.700
+but we've got Flobby Koda in the room as
+
+00:05:45.700 --> 00:05:49.400
+well, who you might not have heard of him but
+
+00:05:49.400 --> 00:05:51.140
+he's been doing a lot of the check-ins today
+
+00:05:51.140 --> 00:05:53.360
+for most of the speakers and he's been doing
+
+00:05:53.360 --> 00:05:54.520
+a wonderful job at it.
+
+00:05:54.520 --> 00:05:56.560
+Florian, do you want to say a word if only to
+
+00:05:56.560 --> 00:05:58.140
+say you're being put on the spot?
+
+00:06:00.620 --> 00:06:02.840
+[Speaker 4]: I have nothing prepared really but I just
+
+00:06:02.840 --> 00:06:05.100
+want to thank everybody who could,
+
+00:06:05.380 --> 00:06:07.260
+with who I could talk in between.
+
+00:06:07.360 --> 00:06:10.420
+So I had like wonderful 20 to 30 minute talks
+
+00:06:10.580 --> 00:06:12.900
+with every speaker before they get into the
+
+00:06:12.900 --> 00:06:15.100
+live Q&A or the live presentation.
+
+00:06:15.780 --> 00:06:16.920
+Thanks a lot for everybody,
+
+00:06:16.920 --> 00:06:19.640
+I learned quite a lot and also thank you for
+
+00:06:19.640 --> 00:06:22.360
+all of you guys and everyone for having such
+
+00:06:22.360 --> 00:06:24.060
+a beautiful experience here.
+
+00:06:25.960 --> 00:06:28.060
+[Speaker 1]: Well, thank you. We're glad to have you.
+
+00:06:29.180 --> 00:06:31.120
+Okay, Sasha, Unless you've got anything else
+
+00:06:31.120 --> 00:06:33.880
+to add, and Corwin, have you fixed your
+
+00:06:33.880 --> 00:06:38.400
+microphone? Yes, we can hear you Corwin.
+
+00:06:38.400 --> 00:06:39.160
+Okay, well let's start again.
+
+00:06:39.160 --> 00:06:40.440
+Let's forget everything you've heard for the
+
+00:06:40.440 --> 00:06:41.640
+last 20 minutes. We'll start again.
+
+00:06:41.640 --> 00:06:42.540
+I'm just kidding.
+
+00:06:35.280 --> 00:06:45.560
+[Speaker 3]: You tell me. No, I mean,
+
+00:06:45.560 --> 00:06:47.760
+I don't know what I could possibly add to all
+
+00:06:47.760 --> 00:06:50.200
+that. I think we absolutely should get some
+
+00:06:50.200 --> 00:06:51.500
+rest, save it for tomorrow.
+
+00:06:52.540 --> 00:06:55.240
+I was just looking through these notes in the
+
+00:06:55.240 --> 00:06:57.480
+couple of minutes that I had between my own
+
+00:06:57.480 --> 00:06:59.980
+talk. Thank you for your help with that.
+
+00:07:00.720 --> 00:07:02.420
+But also, especially you,
+
+00:07:02.420 --> 00:07:08.040
+Sasha, and Leo, and everybody in the IRC over
+
+00:07:08.040 --> 00:07:10.440
+the months here, just encouraging me to keep
+
+00:07:10.440 --> 00:07:12.460
+going when it was just seemed futile.
+
+00:07:13.580 --> 00:07:15.780
+Even though it just really turned into a
+
+00:07:15.780 --> 00:07:18.120
+brain dump, I appreciate getting the chance
+
+00:07:18.120 --> 00:07:20.320
+of feeling like that process is more
+
+00:07:20.320 --> 00:07:22.540
+documented now than it was before I did it.
+
+00:07:22.540 --> 00:07:23.440
+Hey, that's not nothing,
+
+00:07:23.440 --> 00:07:25.440
+right? And that's why we all do this.
+
+00:07:25.440 --> 00:07:28.360
+And I don't know, Floey really said it
+
+00:07:28.360 --> 00:07:30.520
+perfect. Like, I appreciate the chance to get
+
+00:07:30.520 --> 00:07:31.560
+to work on this with you.
+
+00:07:31.560 --> 00:07:32.700
+I learned so much.
+
+00:07:36.400 --> 00:07:38.980
+[Speaker 1]: Amazing. Well, you know what?
+
+00:07:39.020 --> 00:07:41.380
+Without further ado, I believe it's time for
+
+00:07:41.380 --> 00:07:42.840
+us to say goodbye for day 1.
+
+00:07:42.840 --> 00:07:45.340
+We will obviously be seeing you tomorrow at 9
+
+00:07:45.340 --> 00:07:48.740
+a.m. I think the schedule is actually stating
+
+00:07:48.740 --> 00:07:49.840
+we're starting at 8.59am.
+
+00:07:50.500 --> 00:07:51.220
+Is it correct?
+
+00:07:51.220 --> 00:07:53.980
+[Speaker 0]: Yes, I think the chrono tab will kick in.
+
+00:07:54.020 --> 00:07:56.020
+The video is like 6 minutes long.
+
+00:07:57.620 --> 00:07:58.660
+Actually, maybe I should,
+
+00:07:58.660 --> 00:08:00.640
+I'll give it an extra minute for safety,
+
+00:08:00.660 --> 00:08:03.660
+I think. Yeah, yeah. I'll tweak the timing.
+
+00:08:04.340 --> 00:08:06.420
+[Speaker 1]: I think that'd be wise for people we do not
+
+00:08:06.420 --> 00:08:08.460
+know basically 8.59 is when I brush my teeth
+
+00:08:08.460 --> 00:08:10.680
+before going live so we might be in a very
+
+00:08:10.680 --> 00:08:12.740
+awkward spot for me to introduce the talk if
+
+00:08:12.740 --> 00:08:15.420
+it happens. Well anyway folks thank you very
+
+00:08:15.420 --> 00:08:18.500
+much for watching and we'll see you tomorrow.
+
+00:08:19.360 --> 00:08:31.320
+Bye-bye! All right, I have closed the bbb oh
+
+00:08:31.320 --> 00:08:34.780
+it's restarting apparently oh it's we're back
+
+00:08:34.780 --> 00:08:37.480
+on the q and a between stephan and let's
+
+00:08:37.480 --> 00:08:47.420
+close this hey we are off
+
+00:08:44.700 --> 00:08:52.540
+[Speaker 3]: we are clear I am pausing the recording I
+
+00:08:52.540 --> 00:08:54.280
+don't have permission to do that in this
+
+00:08:54.280 --> 00:08:54.780
+room.
diff --git a/2023/captions/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt b/2023/captions/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt
index 272d8d41..a10fafef 100644
--- a/2023/captions/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt
+++ b/2023/captions/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt
@@ -1,571 +1,788 @@
WEBVTT
-00:00.000 --> 00:04.000
-Hello, I'm Alexey Bochkarev, and I'm talking about
-00:04.000 --> 00:07.000
-unentangling projects and repositories,
+00:00:01.220 --> 00:00:03.580
+Hello, I'm Alexey Bychkadov,
-00:07.000 --> 00:10.000
-or maybe entangling them, depending on how you look at that.
+00:00:03.740 --> 00:00:06.899
+and I'm talking about unentangling projects
-00:12.000 --> 00:15.000
-So that's going to be a short workflow note.
+00:00:06.899 --> 00:00:09.679
+and repositories, or maybe entangling them,
-00:15.000 --> 00:19.000
+00:00:09.679 --> 00:00:11.340
+depending on how you look at that.
+
+00:00:12.980 --> 00:00:15.740
+So there's going to be a short workflow note.
+
+00:00:16.619 --> 00:00:19.460
I work as a researcher,
-00:19.000 --> 00:23.000
-so there are three main components to my work, I guess.
+00:00:19.940 --> 00:00:23.380
+So there are 3 main components to my work,
+
+00:00:23.680 --> 00:00:26.000
+I guess. First, I think,
+
+00:00:26.000 --> 00:00:28.140
+so I try to come up with a new ideas that
+
+00:00:28.140 --> 00:00:31.580
+usually results in some collection of notes I
+
+00:00:31.580 --> 00:00:33.760
+have. Second, I try things out.
+
+00:00:33.760 --> 00:00:36.180
+So it usually means that I write code.
+
+00:00:36.820 --> 00:00:38.540
+And third, I communicate.
+
+00:00:38.739 --> 00:00:40.739
+So I prepare papers, presentations,
+
+00:00:41.260 --> 00:00:43.160
+memos, and so on and so forth.
+
+00:00:44.120 --> 00:00:47.940
+And so The workflow problem I had is
+
+00:00:49.160 --> 00:00:53.000
+sometimes all this does not really fit into a
+
+00:00:53.000 --> 00:00:56.180
+concept of a single repository per project.
+
+00:00:56.200 --> 00:00:57.540
+So I might want to have,
+
+00:00:58.180 --> 00:01:01.160
+for example, a source code in 1 repository
+
+00:01:01.320 --> 00:01:03.480
+and then I would like to have a paper in
+
+00:01:03.480 --> 00:01:05.200
+another 1 and then I want to have a
+
+00:01:05.200 --> 00:01:08.620
+collection of notes somewhere unrelated to
+
+00:01:08.620 --> 00:01:12.500
+those 2. Emacs is pretty good at supporting
+
+00:01:12.500 --> 00:01:15.840
+your workflows and I figured I should share
+
+00:01:16.240 --> 00:01:18.100
+what I used and what works for me.
+
+00:01:20.560 --> 00:01:24.900
+So, from the technical perspective,
+
+00:01:26.479 --> 00:01:27.940
+things are pretty easy.
+
+00:01:27.940 --> 00:01:30.720
+So I use a collection of pretty standard
+
+00:01:30.720 --> 00:01:33.240
+components of Emacs. So it's a projectile org
+
+00:01:33.240 --> 00:01:35.360
+mode with this capture templates and other
+
+00:01:35.360 --> 00:01:38.100
+things. Then I sustained a collection of
+
+00:01:38.100 --> 00:01:40.360
+nodes in something that is called org-roam,
+
+00:01:40.680 --> 00:01:43.520
+which is essentially it's a glorified
+
+00:01:43.580 --> 00:01:45.580
+collection of org mode files.
+
+00:01:46.100 --> 00:01:48.160
+Then I used directory local variables,
+
+00:01:48.260 --> 00:01:51.140
+maybe a C text to jump through the source
+
+00:01:51.140 --> 00:01:54.920
+code and very, very little LELisp glue to
+
+00:01:54.920 --> 00:01:57.620
+make this all work, but that's not really
+
+00:01:58.620 --> 00:02:00.400
+rocket science. So that's the workflow I
+
+00:02:00.400 --> 00:02:02.180
+would like to talk about today.
+
+00:02:04.860 --> 00:02:07.120
+So what I mean by all that,
+
+00:02:07.960 --> 00:02:10.280
+it's pretty straightforward to make Emacs,
+
+00:02:10.680 --> 00:02:12.720
+to make it easy to jump around a single
+
+00:02:12.720 --> 00:02:14.980
+repository in Emacs. So if I,
+
+00:02:15.060 --> 00:02:16.640
+Now I have Doom Emacs,
+
+00:02:16.640 --> 00:02:18.740
+but that's not really specific to a Doom
+
+00:02:19.120 --> 00:02:23.160
+that'll work in any Emacs configuration.
+
+00:02:23.400 --> 00:02:27.720
+Well, key bindings might be different,
+
+00:02:27.720 --> 00:02:28.820
+but that's not the point,
+
+00:02:28.820 --> 00:02:29.940
+I guess, for the workflow.
+
+00:02:30.060 --> 00:02:31.960
+So if I hit space 2 times,
+
+00:02:31.960 --> 00:02:34.640
+I have all the list of files within my
+
+00:02:34.640 --> 00:02:38.200
+project, right? So if I create a couple of
+
+00:02:38.200 --> 00:02:42.780
+custom shortcuts, so if I press a magic
+
+00:02:42.780 --> 00:02:45.280
+button, hyper-OP, don't worry about
+
+00:02:45.280 --> 00:02:47.460
+hyper-key. So I want it to have a modifier
+
+00:02:47.560 --> 00:02:50.140
+key all to myself, so that would,
+
+00:02:50.320 --> 00:02:53.200
+no program on my computer would use that
+
+00:02:53.200 --> 00:02:55.680
+except Emacs. Emacs would use that only when
+
+00:02:55.680 --> 00:02:57.540
+I tell it to, so I have a hyper key instead
+
+00:02:57.540 --> 00:03:00.720
+of caps lock. That's pretty easy to do in GNU
+
+00:03:00.720 --> 00:03:04.940
+Linux system. So when I press this magic
+
+00:03:04.940 --> 00:03:07.400
+keys, I have a menu that's a normal key
+
+00:03:07.400 --> 00:03:09.940
+binding. Yeah, essentially an Emacs.
+
+00:03:10.240 --> 00:03:12.260
+And if I hit, for example,
+
+00:03:12.540 --> 00:03:15.200
+R, I end up in a readme file within this
+
+00:03:15.200 --> 00:03:17.320
+specific repository I was sitting in,
+
+00:03:17.320 --> 00:03:19.000
+right? So if I want to document something
+
+00:03:19.000 --> 00:03:21.420
+real quick, I go to the readme file.
+
+00:03:21.680 --> 00:03:25.280
+Then I could go to a change log file,
+
+00:03:25.280 --> 00:03:27.440
+right? So I have a list of changes and the
+
+00:03:27.440 --> 00:03:29.480
+way it works usually, for example,
+
+00:03:29.480 --> 00:03:31.140
+if I'm working in some code,
+
+00:03:32.220 --> 00:03:34.280
+I created a couple of dummy files in there,
+
+00:03:34.280 --> 00:03:36.560
+so I'm working in some code and then I
+
+00:03:36.560 --> 00:03:41.780
+implemented something and I can just use the
+
+00:03:42.020 --> 00:03:46.860
+org mode capture mechanisms to keep track of
-00:23.000 --> 00:27.000
-First, I think, so I try to come up with new ideas,
+00:03:46.860 --> 00:03:48.880
+what I want to discuss with colleagues next
-00:27.000 --> 00:31.000
-and that usually results in some collection of notes I have.
+00:03:48.880 --> 00:03:52.160
+time. For example, I could just hit capture
-00:31.000 --> 00:35.000
-Second, I try things out, so it usually means that I write code.
+00:03:52.440 --> 00:03:56.200
+repo specific changelog entry and I
-00:35.000 --> 00:39.000
-And third, I communicate, so I prepare papers,
+00:03:56.200 --> 00:04:02.620
+implemented a feature and I can continue
-00:39.000 --> 00:43.000
-presentations, memos, and so on and so forth.
+00:04:02.620 --> 00:04:04.340
+working without this context switching.
-00:43.000 --> 00:47.000
-And so the workflow problem I had is
+00:04:04.340 --> 00:04:06.500
+And then if I want to go to the change log,
-00:47.000 --> 00:51.000
-sometimes all this does not really fit
+00:04:06.880 --> 00:04:11.320
+well, it is there. And next time I talk to
-00:51.000 --> 00:55.000
-into a concept of a single repository per project,
+00:04:11.320 --> 00:04:12.720
+the colleagues about the source code,
-00:55.000 --> 00:59.000
-so I might want to have, for example,
+00:04:12.720 --> 00:04:14.340
+I can open the change log and go through
-00:59.000 --> 01:03.000
-a source code in one repository, and then I would like to have a paper
+00:04:14.340 --> 00:04:16.800
+entries 1 by 1 and discuss what I haven't
-01:03.000 --> 01:07.000
-in another one, and then I want to have a collection of notes somewhere
+00:04:16.800 --> 00:04:18.980
+implemented last time.
-01:07.000 --> 01:11.000
-unrelated to those two. And yeah,
+00:04:19.540 --> 00:04:22.580
+I could go to project specific,
-01:11.000 --> 01:15.000
-Emacs is pretty good at supporting your workflows, and I figured I should
+00:04:24.100 --> 00:04:26.320
+sorry, to repo specific to-do list.
-01:15.000 --> 01:19.000
-share what I use and what works for me.
+00:04:26.320 --> 00:04:29.020
+And I have list of to-dos that would leave
-01:19.000 --> 01:23.000
-So,
+00:04:29.020 --> 00:04:31.320
+within a repository. And for example,
-01:23.000 --> 01:27.000
-from the technical perspective, things are
+00:04:31.320 --> 00:04:34.020
+I could have a high level structure here,
-01:27.000 --> 01:31.000
-pretty easy, so I use a collection of pretty standard components
+00:04:34.640 --> 00:04:36.460
+work distribution between team members and
-01:31.000 --> 01:35.000
-of Emacs, so it's a projectile org-mode with its capture templates and other
+00:04:36.460 --> 00:04:39.380
+other things that sort of face outer world,
-01:35.000 --> 01:39.000
-things. Then I sustain a collection of notes in something
+00:04:39.380 --> 00:04:41.260
+so to speak. And of course,
-01:39.000 --> 01:43.000
-that is called org-roam, which is, well, essentially, it's a glorified
+00:04:42.840 --> 00:04:45.400
+there are very many ways to jump through the
-01:43.000 --> 01:47.000
-collection of org-mode files. Then I use directory
+00:04:45.400 --> 00:04:46.420
+source code conveniently.
-01:47.000 --> 01:51.000
-local variables, maybe a ctext to jump through the source code,
+00:04:46.560 --> 00:04:49.960
+I ended up not using language servers I use a
-01:51.000 --> 01:55.000
-and very, very little Elisp glue to make this
+00:04:49.960 --> 00:04:53.320
+special program called ctags and so the way
-01:55.000 --> 01:59.000
-all work, but that's not really rocket science.
+00:04:53.320 --> 00:04:56.420
+it works is just I call projectile regenerate
-01:59.000 --> 02:03.000
-So that's the workflow I would like to talk about today.
+00:04:56.680 --> 00:05:00.460
+tags and it creates the special tags file
-02:03.000 --> 02:07.000
-So, what I mean by all that,
+00:05:00.460 --> 00:05:05.260
+within the repository and then I can again
-02:07.000 --> 02:11.000
-it's pretty straightforward to make
+00:05:06.240 --> 00:05:11.260
+run it I usually just hit a single keystroke
-02:11.000 --> 02:15.000
-it easy to jump around a single repository in Emacs.
+00:05:11.520 --> 00:05:14.060
+and here is all the symbols that are there in
-02:15.000 --> 02:19.000
-Now, I have Doom Emacs, but that's not really specific to Doom.
+00:05:14.060 --> 00:05:17.160
+my source code, regardless of the language,
-02:19.000 --> 02:23.000
-That'll work in any Emacs configuration.
+00:05:17.160 --> 00:05:19.540
+right? So I can jump to the main function and
-02:23.000 --> 02:27.000
-Well, kbindings might be
+00:05:19.540 --> 00:05:21.020
+that'll be a C++ file.
-02:27.000 --> 02:31.000
-different, but that's not the point, I guess, for the workflow. So, if I hit space
+00:05:21.020 --> 00:05:22.740
+Or I could go to the super function,
-02:31.000 --> 02:35.000
-two times, I have all the list of files within my project.
+00:05:22.740 --> 00:05:25.340
+which I had in my Python file.
-02:35.000 --> 02:39.000
-So, if I create a couple of custom shortcuts,
+00:05:25.380 --> 00:05:27.120
+And this comes in pretty convenient if I have
-02:39.000 --> 02:43.000
-so if I press a magic button,
+00:05:27.120 --> 00:05:28.220
+a mixture of languages.
-02:43.000 --> 02:47.000
-hyperlp, don't worry about hyperkey, so I want it to have a
+00:05:28.360 --> 00:05:30.800
+Sometimes I can have some algorithm specific
-02:47.000 --> 02:51.000
-modifier key all to myself, so that would, no program
+00:05:30.800 --> 00:05:33.000
+code in Julia, and then I can have some
-02:51.000 --> 02:55.000
-on my computer would use that except Emacs, and Emacs would
+00:05:33.280 --> 00:05:35.380
+Python glue within the same source code
-02:55.000 --> 02:59.000
-use that only when I tell it to, so I have a hyperkey instead of caps lock, that's pretty easy
+00:05:35.380 --> 00:05:37.940
+repository, it makes it really convenient to
-02:59.000 --> 03:03.000
-to do in GNU Linux system. So,
+00:05:39.720 --> 00:05:41.780
+jump between all of those.
-03:03.000 --> 03:07.000
-when I press this magic keys, I have a menu that's a normal
+00:05:43.080 --> 00:05:46.980
+But I have a few problems here.
-03:07.000 --> 03:11.000
-kbinding, yeah, essentially in Emacs, and
+00:05:47.360 --> 00:05:49.800
+So just to give you a little bit of context,
-03:11.000 --> 03:15.000
-if I hit, for example, R, I end up in a readme file within
+00:05:49.860 --> 00:05:53.100
+for example, here is a real project that
-03:15.000 --> 03:19.000
-this specific repository I was sitting in, right, so if I want to document something
+00:05:53.100 --> 00:05:54.440
+corresponds to real paper.
-03:19.000 --> 03:23.000
-real quick, I go to the readme file. Then I could have, I could
+00:05:55.840 --> 00:05:59.060
+I have a single note about that project where
-03:23.000 --> 03:27.000
-go to a changelog file, right, so I have a list of changes
+00:05:59.060 --> 00:06:01.780
+I keep all the things related to that project
-03:27.000 --> 03:31.000
-and the way it works, usually, for example, if I'm working on some code,
+00:06:01.780 --> 00:06:03.260
+here, but that's a private note.
-03:31.000 --> 03:35.000
-I created a couple of dummy files in there, so
+00:06:03.260 --> 00:06:04.860
+So for example, again,
-03:35.000 --> 03:39.000
-I'm working on some code, and then I implemented something, and I can
+00:06:04.860 --> 00:06:08.040
+I hit a special key that invokes my org-roam
-03:39.000 --> 03:43.000
-just use the org mode capture
+00:06:08.640 --> 00:06:12.680
+function that gives me a menu of my notes.
-03:43.000 --> 03:47.000
-mechanisms to keep track of what
+00:06:13.080 --> 00:06:15.200
+And so here is the paper,
-03:47.000 --> 03:51.000
-I want to discuss with colleagues next time, for example, I could just hit
+00:06:15.200 --> 00:06:17.500
+essentially. And I can have a paper timeline,
-03:51.000 --> 03:55.000
-capture repo specific changelog entry
+00:06:17.900 --> 00:06:21.180
+and I can have a list of all the dates what
-03:55.000 --> 03:59.000
-and I implemented a feature
+00:06:21.180 --> 00:06:23.940
+happened to the paper with links to my email,
-03:59.000 --> 04:03.000
-and I can continue working
+00:06:24.060 --> 00:06:27.700
+right? So for example if I hit this link that
-04:03.000 --> 04:07.000
-without this context switching, and then if I want to go to the changelog,
+00:06:27.700 --> 00:06:30.160
+will open a specific email and that doesn't
-04:07.000 --> 04:11.000
-well, it is there, and next time I talk
+00:06:30.160 --> 00:06:31.280
+work outside of my computer,
-04:11.000 --> 04:15.000
-to the colleagues about the source code, I can open the changelog and go through entries one by one
+00:06:31.280 --> 00:06:33.140
+doesn't make any sense to keep it in the
-04:15.000 --> 04:19.000
-and discuss what I have implemented last time.
+00:06:33.340 --> 00:06:35.500
+outer world facing repository,
-04:19.000 --> 04:23.000
-I could go to project specific
+00:06:35.500 --> 00:06:37.360
+for example. So that's something to myself,
-04:23.000 --> 04:27.000
-to, sorry, to repo specific to-do list, and I have
+00:06:37.360 --> 00:06:41.420
+right? Sometimes I want to have like this
-04:27.000 --> 04:31.000
-a list of to-dos that would live within a repository, and
+00:06:41.480 --> 00:06:43.940
+list of working notes,
-04:31.000 --> 04:35.000
-for example, I could have a high-level structure here,
+00:06:43.940 --> 00:06:45.780
+right, that contain like,
-04:35.000 --> 04:39.000
-work distribution between team members and other things that sort of face
+00:06:45.780 --> 00:06:49.200
+for example, yeah, I might produce this kind
-04:39.000 --> 04:43.000
-the world, so to speak, and of course,
+00:06:49.200 --> 00:06:50.620
+of things for internal discussion,
-04:43.000 --> 04:47.000
-there are very many ways to jump through the source code conveniently,
+00:06:50.640 --> 00:06:52.500
+right? It has some marks,
-04:47.000 --> 04:51.000
-I ended up not using language servers, I used a special program called
+00:06:52.500 --> 00:06:54.620
+it has some margin notes and things like
-04:51.000 --> 04:55.000
-ctags, and so the way it works is just I call
+00:06:54.620 --> 00:06:57.620
+that. Maybe again, health-based ideas that
-04:55.000 --> 04:59.000
-projectile regenerate tags, and it creates the special
+00:06:57.620 --> 00:07:00.300
+may or may not end up in a repository,
-04:59.000 --> 05:03.000
-tags file within the repository,
+00:07:01.020 --> 00:07:03.220
+in the final paper or in a source code,
-05:03.000 --> 05:07.000
-and then I can, again, run
+00:07:03.220 --> 00:07:05.880
+but still I want to have it somewhere.
-05:07.000 --> 05:11.000
-I usually just hit a single keystroke,
+00:07:07.120 --> 00:07:08.600
+And well, long story short,
-05:11.000 --> 05:15.000
-and here is all the symbols that are there in my
+00:07:08.800 --> 00:07:11.680
+I need a project folder that would be
-05:15.000 --> 05:19.000
-source code, regardless of the language, right, so I can jump to the main function
+00:07:11.680 --> 00:07:16.120
+unrelated to the source code or to the source
-05:19.000 --> 05:23.000
-and that'll be a C++ file, or I could go to the super function, which I
+00:07:16.120 --> 00:07:19.440
+code repository or to the paper itself or a
-05:23.000 --> 05:27.000
-had in my Python file, and this comes in pretty convenient if I have
+00:07:19.440 --> 00:07:22.780
+final report, right? And 1 way,
-05:27.000 --> 05:31.000
-a mixture of languages, so sometimes I can have some algorithm-specific code
+00:07:22.960 --> 00:07:24.720
+as usual, there are multiple ways to achieve
-05:31.000 --> 05:35.000
-in Julia, and then I can have some Python glue within the same
+00:07:24.720 --> 00:07:27.660
+that, I suppose. And 1 way to do that is,
-05:35.000 --> 05:39.000
-source code repository, and it makes it really convenient to jump
+00:07:29.040 --> 00:07:33.160
+so I create a special folder within my
-05:39.000 --> 05:43.000
-between all of those, right,
+00:07:33.160 --> 00:07:38.100
+org-roam storage. So it's a special folder
-05:43.000 --> 05:47.000
-but I have a few problems here,
+00:07:38.240 --> 00:07:40.940
+outside of Henry Postories that got backed up
-05:47.000 --> 05:51.000
-just to give you a little bit of context, for example, here is the
+00:07:40.940 --> 00:07:43.940
+to my hard drive with certain redundancy,
-05:51.000 --> 05:55.000
-a real project that corresponds to a real paper,
+00:07:44.080 --> 00:07:46.720
+but I don't really need like version control,
-05:55.000 --> 05:59.000
-I have a single note about that project,
+00:07:46.720 --> 00:07:48.280
+full blown version control for that.
-05:59.000 --> 06:03.000
-where I keep all the things related to that project here, but that's a private
+00:07:48.280 --> 00:07:49.760
+I'm okay with just having a couple of
-06:03.000 --> 06:07.000
-note, so for example, again, I hit a special key that
+00:07:49.760 --> 00:07:52.900
+backups, right? So this is the folder you see
-06:07.000 --> 06:11.000
-invokes my org-roam function that gives me a menu of my
+00:07:52.900 --> 00:07:55.320
+here. So PKB stands for personal knowledge
-06:11.000 --> 06:15.000
-notes, and so here is the paper,
+00:07:55.320 --> 00:07:58.020
+base, and I have a folder project notes in
-06:15.000 --> 06:19.000
-essentially, and I can have a paper timeline, and I can
+00:07:58.020 --> 00:08:01.520
+there, right? So, and How does it work?
-06:19.000 --> 06:23.000
-have a list of all the dates, what happened to the paper, with links
+00:08:01.680 --> 00:08:04.940
+So I have a folder per project in there,
-06:23.000 --> 06:27.000
-to my email, right, so for example, if I hit this link,
+00:08:05.020 --> 00:08:07.900
+essentially. And here I can have all the
-06:27.000 --> 06:31.000
-that'll open a specific email, and that doesn't work outside of my
+00:08:07.900 --> 00:08:11.480
+stuff that kind of belongs to me and I do not
-06:31.000 --> 06:35.000
-computer, it doesn't make any sense to keep it in the outer world-facing
+00:08:11.480 --> 00:08:14.180
+publish it anywhere. And then,
-06:35.000 --> 06:39.000
-repository, for example, so that's something to myself, right, sometimes I want
+00:08:15.420 --> 00:08:20.280
+For example, a source code repository knows
-06:39.000 --> 06:43.000
-to have, like, this list of
+00:08:20.460 --> 00:08:23.240
+about that folder and a paper repository
-06:43.000 --> 06:47.000
-working notes, right, that contain, like, for example,
+00:08:23.460 --> 00:08:25.120
+knows about that folder.
-06:47.000 --> 06:51.000
-I might produce this kind of things for internal discussion, right,
+00:08:25.120 --> 00:08:26.820
+And anything else that might leave in
-06:51.000 --> 06:55.000
-it has some marks, it has some margin notes, and things like that,
+00:08:26.820 --> 00:08:28.820
+separate places all over my system can know
-06:55.000 --> 06:59.000
-maybe, again, health-based ideas that may or may not end up
+00:08:28.820 --> 00:08:30.800
+about that folder. How do I achieve that?
-06:59.000 --> 07:03.000
-in a repository, in a final paper, or in a source code,
+00:08:30.940 --> 00:08:33.539
+Well, essentially this is 1 of the use cases
-07:03.000 --> 07:07.000
-but still I want to have it somewhere, and
+00:08:34.400 --> 00:08:35.940
+for the directory local variables,
-07:07.000 --> 07:11.000
-well, long story short, I need a project folder
+00:08:36.360 --> 00:08:39.100
+right? So for example,
-07:11.000 --> 07:15.000
-that would be unrelated to the source code, or
+00:08:39.520 --> 00:08:41.539
+how does it work from the user perspective?
-07:15.000 --> 07:19.000
-to the source code repository, or to the paper itself,
+00:08:41.580 --> 00:08:43.760
+So if I hit a special key,
-07:19.000 --> 07:23.000
-or a final report, right, and one way,
+00:08:44.380 --> 00:08:46.900
+oh, sorry, if I hit a special key,
-07:23.000 --> 07:27.000
-as usual, there are multiple ways to achieve that, I suppose, and one way to do that
+00:08:48.280 --> 00:08:51.060
+that would be open project.
-07:27.000 --> 07:31.000
-is, so, I create
+00:08:51.680 --> 00:08:55.920
+And then for example, org mode file,
-07:31.000 --> 07:35.000
-a special folder within my org-roam
+00:08:55.920 --> 00:08:58.260
+right? So this is my personal notes about the
-07:35.000 --> 07:39.000
-storage, so it's a special folder outside of any
+00:08:58.260 --> 00:09:01.260
+maxconf, not specifically about this very
-07:39.000 --> 07:43.000
-repositories that got backed up to my hard drive, with
+00:09:01.260 --> 00:09:02.580
+talk, but I can have, you know,
-07:43.000 --> 07:47.000
-certain redundancy, but I don't really need, like, version control, full-blown
+00:09:02.580 --> 00:09:04.580
+the house baked ideas here again,
-07:47.000 --> 07:51.000
-version control for that, I'm okay with just having a couple of backups, right, so
+00:09:04.760 --> 00:09:06.680
+presentation tools and things like that.
-07:51.000 --> 07:55.000
-this is the folder you see here, so pkb stands for personal knowledge
+00:09:07.440 --> 00:09:09.860
+And how does that happen?
-07:55.000 --> 07:59.000
-base, and I have a folder, project notes in there, right, so
+00:09:09.940 --> 00:09:13.080
+If we try to like look at the code,
-07:59.000 --> 08:03.000
-and, how does it work, so I have a
+00:09:13.080 --> 00:09:14.660
+the e-list magic here,
-08:03.000 --> 08:07.000
-folder per project in there, essentially, and here I can
+00:09:15.040 --> 00:09:17.560
+what is happening is it's just a couple of
-08:07.000 --> 08:11.000
-have all the stuff that is, that kind of belongs to me, and I
+00:09:17.560 --> 00:09:18.720
+lines of code, in fact,
-08:11.000 --> 08:15.000
-do not publish it anywhere, and then
+00:09:18.720 --> 00:09:21.100
+so let me just press Control,
-08:15.000 --> 08:19.000
-for example, a source code
+00:09:22.540 --> 00:09:28.140
+help key. And so the key I was pressing is
-08:19.000 --> 08:23.000
-repository knows about that folder, and a paper repository
+00:09:28.140 --> 00:09:30.220
+open project or my file.
-08:23.000 --> 08:27.000
-knows about that folder, and anything else that might live in separate
+00:09:30.480 --> 00:09:32.220
+And so what we see here,
-08:27.000 --> 08:31.000
-places all over my system can know about that folder, and how do I achieve that,
+00:09:32.220 --> 00:09:34.760
+there is a single, so it's just a call to a
-08:31.000 --> 08:35.000
-well, essentially, this is one of the use cases for the directory
+00:09:34.760 --> 00:09:37.200
+find file function. So I opened that file and
-08:35.000 --> 08:39.000
-local variables, right, so, for example,
+00:09:37.200 --> 00:09:40.580
+there is a special function that figures out
-08:39.000 --> 08:43.000
-how does it work from the user perspective, so if I hit a special
+00:09:40.580 --> 00:09:44.620
+what is the like umbrella project nose file
-08:43.000 --> 08:47.000
-key, oh, sorry, if I hit a special key
+00:09:44.620 --> 00:09:46.600
+and that's, again, that's very easy.
-08:47.000 --> 08:51.000
-that would be open project
+00:09:47.380 --> 00:09:51.420
+So essentially if a variable describing this,
-08:51.000 --> 08:55.000
-and then, for example,
+00:09:51.820 --> 00:09:54.860
+the name for that project is defined,
-08:55.000 --> 08:59.000
-org mode file, right, so this is my personal notes about the emacs conf, not
+00:09:54.860 --> 00:09:57.440
+then I use that as my project folder name.
-08:59.000 --> 09:03.000
-specifically about this very talk, but I can have, you know,
+00:09:57.440 --> 00:09:59.700
+If not, I take the project name from the
-09:03.000 --> 09:07.000
-half-baked ideas here, again, presentation tools, and things like that,
+00:10:00.480 --> 00:10:03.340
+project tile. Well, that's pretty much it.
-09:07.000 --> 09:11.000
-and how does that happen if we try to
+00:10:03.340 --> 00:10:08.800
+And how do I define this variable?
-09:11.000 --> 09:15.000
-look at the code, the elisp magic here, what
+00:10:09.280 --> 00:10:12.500
+Is essentially there is this magical file in
-09:15.000 --> 09:19.000
-is happening is, it's just a couple lines of code, in fact, so
+00:10:12.500 --> 00:10:14.160
+a folder called dear locals,
-09:19.000 --> 09:23.000
-let me just press control, help
+00:10:14.440 --> 00:10:17.380
+elist. And I just put it there.
-09:23.000 --> 09:27.000
-key, and so the key I was
+00:10:17.440 --> 00:10:20.380
+And then whenever I go into that folder or
-09:27.000 --> 09:31.000
-pressing is open project org mode file, and so
+00:10:20.380 --> 00:10:22.300
+any of its children folders,
-09:31.000 --> 09:35.000
-what we see here, there is a single, so it's just a call to a find
+00:10:22.300 --> 00:10:23.860
+I get this variable defined.
-09:35.000 --> 09:39.000
-file function, so I open that file, and there is a special function that
+00:10:24.840 --> 00:10:26.260
+And that's pretty much it.
-09:39.000 --> 09:43.000
-figures out what is the, like, umbrella
+00:10:26.280 --> 00:10:28.880
+That's how it works for me.
-09:43.000 --> 09:47.000
-project notes file, and that's, again, that's very easy, so
+00:10:31.860 --> 00:10:34.620
+I guess 1 thing that I wanted to emphasize
-09:47.000 --> 09:51.000
-essentially, if a variable describing this
+00:10:35.380 --> 00:10:37.360
+specifically about that is of course,
-09:51.000 --> 09:55.000
-the name for that project is defined, then
+00:10:37.940 --> 00:10:39.720
+it is a time tracking,
-09:55.000 --> 09:59.000
-I use that as my project folder name, if not, I take the project name from the
+00:10:39.720 --> 00:10:42.260
+right? So what is I find especially important
-09:59.000 --> 10:03.000
-project towel, and well, that's pretty much it,
+00:10:42.260 --> 00:10:44.280
+when I work in something and I want to clock
-10:03.000 --> 10:07.000
-and how do I define this
+00:10:44.340 --> 00:10:47.620
+time, I usually do not want this information
-10:07.000 --> 10:11.000
-variable is, essentially, there is this
+00:10:47.800 --> 00:10:50.340
+to be in a source code repository or in a
-10:11.000 --> 10:15.000
-magical file in a folder called dear locals elisp,
+00:10:50.340 --> 00:10:52.600
+paper repository because other people I work
-10:15.000 --> 10:19.000
-and I just put it there, and then, whenever I
+00:10:52.600 --> 00:10:54.840
+with will not be particularly happy about
-10:19.000 --> 10:23.000
-go into that folder, or any of its children folders, I get this
+00:10:54.840 --> 00:10:57.540
+that, especially if most of them do not use
-10:23.000 --> 10:27.000
-variable defined, and that's pretty much it, that's how
+00:10:57.540 --> 00:11:00.720
+Emacs and they'll see this long list of org
-10:27.000 --> 10:31.000
-it works for me.
+00:11:00.720 --> 00:11:03.820
+clocked data and that doesn't look nice in a
-10:31.000 --> 10:35.000
-I guess one thing that I wanted to emphasize
+00:11:03.820 --> 00:11:07.540
+plain text format. So what I usually do if I
-10:35.000 --> 10:39.000
-specifically about that is, of course, it's
+00:11:07.540 --> 00:11:10.240
+want to clock in some time and then later
-10:39.000 --> 10:43.000
-time tracking, right, so what I find especially important when I work in
+00:11:10.240 --> 00:11:12.560
+analyze what I've been spending time on,
-10:43.000 --> 10:47.000
-something, and I want to clock time, I usually do not want
+00:11:12.560 --> 00:11:16.880
+so I go to my org mode file and I go to the,
-10:47.000 --> 10:51.000
-this information to be in a source code repository or in a paper repository
+00:11:16.880 --> 00:11:21.820
+my current project to-dos and I clock in
-10:51.000 --> 10:55.000
-because other people I work with will not be particularly happy about that
+00:11:21.820 --> 00:11:23.940
+there. And that's how it works.
-10:55.000 --> 10:59.000
-especially if most of them do not use Emacs, and they will see
+00:11:23.940 --> 00:11:28.860
+So again, what comes in handy,
-10:59.000 --> 11:03.000
-this long list of org clocked data, and that doesn't look
+00:11:28.860 --> 00:11:31.500
+if I hit Control O, I just go back to the
-11:03.000 --> 11:07.000
-nice in a plain text format, so what I usually
+00:11:31.500 --> 00:11:34.240
+file I jumped in into and that's I jumped
-11:07.000 --> 11:11.000
-do if I want to clock in some time, and then later analyze what I've
+00:11:34.240 --> 00:11:35.900
+from so that's also pretty handy.
-11:11.000 --> 11:15.000
-been spending time on, so I go to my org mode file
+00:11:36.220 --> 00:11:38.800
+So again no no rocket science in there.
-11:15.000 --> 11:19.000
-and I go to my current project
+00:11:40.380 --> 00:11:42.660
+So I create a directory local variable that
-11:19.000 --> 11:23.000
-to-dos, and I clock in there, and that's
+00:11:42.660 --> 00:11:46.100
+helps me to figure out what umbrella project
-11:23.000 --> 11:27.000
-how it works, so again
+00:11:46.620 --> 00:11:49.720
+does this particular folder belongs to.
-11:27.000 --> 11:31.000
-what comes in handy if I hit ctrl-o, I just go
+00:11:49.940 --> 00:11:53.260
+And this way I make Emacs aware of,
-11:31.000 --> 11:35.000
-back to the file I jumped from, so that's also
+00:11:53.260 --> 00:11:54.480
+for example, facts like,
-11:35.000 --> 11:39.000
-pretty handy, so again, no rocket science in there
+00:11:54.480 --> 00:11:56.740
+so this source code belongs to that project.
-11:39.000 --> 11:43.000
-so I create a directory local variable that helps me
+00:11:56.740 --> 00:11:59.080
+And this paper, this repository with a paper
-11:43.000 --> 11:47.000
-to figure out what umbrella project does
+00:11:59.180 --> 00:12:00.640
+also belongs to that project.
-11:47.000 --> 11:51.000
-this particular folder belongs to, and this way
+00:12:01.060 --> 00:12:04.040
+And I can have capture templates that would
-11:51.000 --> 11:55.000
-I make Emacs aware of, for example, facts like so this
+00:12:04.060 --> 00:12:07.580
+save my notes into the my private notes file
-11:55.000 --> 11:59.000
-source code belongs to that project, and this repository with the paper
+00:12:07.800 --> 00:12:10.460
+and my to-dos and go to my private note files
-11:59.000 --> 12:03.000
-also belongs to that project, and I can have capture templates
+00:12:10.920 --> 00:12:12.260
+and so on and so forth.
-12:03.000 --> 12:07.000
-that would save my notes into my private notes
+00:12:12.260 --> 00:12:15.520
+So I find it pretty simple but that really
-12:07.000 --> 12:11.000
-file, and my to-dos go to my private note files
+00:12:15.520 --> 00:12:19.540
+helps to reduce this context switching.
-12:11.000 --> 12:15.000
-and so on and so forth, so I find it pretty simple, but
+00:12:19.600 --> 00:12:22.040
+And I don't believe it allows me to save
-12:15.000 --> 12:19.000
-that really helps to reduce this context
+00:12:22.040 --> 00:12:26.260
+time, but that probably helps me to stay
-12:19.000 --> 12:23.000
-switching, and I don't believe it allows me to save time
+00:12:26.260 --> 00:12:28.420
+focused. And this is what is really
-12:23.000 --> 12:27.000
-but that probably helps me to stay focused, and this
+00:12:28.420 --> 00:12:31.400
+important, I believe. So thank you very much.
-12:27.000 --> 12:31.000
-is what is really important, I believe, so thank you
+00:12:31.400 --> 00:12:33.220
+And if you have any comments or suggestions
-12:31.000 --> 12:35.000
-very much, and if you have any comments or suggestions to that, please do jump
+00:12:33.320 --> 00:12:35.940
+to that, please do jump into the discussion.
-12:35.000 --> 12:39.000
-into the discussion, yeah, after the talk, thank you.
+00:12:37.120 --> 00:12:38.900
+Yeah, after the talk, thank you.
diff --git a/2023/info/core-after.md b/2023/info/core-after.md
index 6eb189f1..13fa508a 100644
--- a/2023/info/core-after.md
+++ b/2023/info/core-after.md
@@ -4,1560 +4,1560 @@
<a name="core-mainVideo-transcript"></a>
# Transcript (unedited)
-[[!template text="""All right. Hi again, everyone.""" start="00:00:03.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's been a while. Well,""" start="00:00:04.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""actually, it's been like 2 minutes tops.""" start="00:00:06.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We were just with John Wheatley,""" start="00:00:08.599" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and now we are with Stefan Krangas.""" start="00:00:10.519" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Hi. Hi. So as we said before,""" start="00:00:15.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Stefan is co-maintainer now of Is it the""" start="00:00:20.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""entire Emacs project? How do you describe""" start="00:00:22.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this? Yeah, co-maintainer of GNU Emacs.""" start="00:00:25.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Right, perfect. So you know what?""" start="00:00:29.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Because I'm sure everyone is dying to hear""" start="00:00:31.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""everything you've got to say in your""" start="00:00:33.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""presentation I'm just going to shut up now""" start="00:00:35.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and leave the floor to you.""" start="00:00:37.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Do you need to share your screen or anything?""" start="00:00:38.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""No. Okay great well I'll just cut my webcam""" start="00:00:44.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""off I'll still be in the background so do not""" start="00:00:46.879" video="mainVideo-core" id="subtitle"]]
-[[!template text="""hesitate if you've got any problem I'm still""" start="00:00:48.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""around And I'll see you just beacon whenever""" start="00:00:52.239" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you're done. And I'll show up with the""" start="00:00:53.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""questions. All right? Thank you,""" start="00:00:55.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Leo. And thank you, everyone,""" start="00:00:58.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for being here. I'm Stefan Kangas.""" start="00:01:01.879" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So as Leo explained, I am recently appointed""" start="00:01:06.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""as a co-maintainer of GNU Emacs,""" start="00:01:09.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""which a role that I'm fulfilling currently""" start="00:01:12.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""with Eli Sretsky, who's been co-maintainer""" start="00:01:16.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for quite some time. So I got the question to""" start="00:01:23.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""be a co-maintainer from Richard in August""" start="00:01:26.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this year. And of course,""" start="00:01:28.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""when you get a question like that,""" start="00:01:30.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I couldn't not say yes.""" start="00:01:33.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So here we are. I can't tell you how excited""" start="00:01:38.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I am to have this opportunity to address the""" start="00:01:44.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""community in this way.""" start="00:01:46.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'm really humbled, of course,""" start="00:01:49.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to be part of it, and to be able to serve the""" start="00:01:54.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""community in this capacity.""" start="00:01:58.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I've used Emacs, I think many of you might""" start="00:02:03.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""also have used Emacs for quite some time,""" start="00:02:06.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but I'm going on 2 decades as an Emacs user.""" start="00:02:10.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""My involvement in Emacs Lisp development is,""" start="00:02:14.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, almost as long,""" start="00:02:15.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but my core development goes back only 4,""" start="00:02:19.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""5 years. I have to also thank the EmacsConf""" start="00:02:26.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""organizers who are doing,""" start="00:02:28.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, a tremendous job and have done a""" start="00:02:31.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""tremendous job over the years in really""" start="00:02:34.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""building and strengthening what I think is""" start="00:02:37.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this fantastic community of users and""" start="00:02:41.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""developers and people interested in Emacs.""" start="00:02:45.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I actually had the chance to meet up with Eli""" start="00:02:49.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sretzky, as well as another Emacs hacker,""" start="00:02:53.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Andrea Corallo, when I was at the GNU""" start="00:02:56.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""project's 40 years celebration,""" start="00:02:59.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""40 years since the GNU project was announced.""" start="00:03:03.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And it was very inspiring in general to meet""" start="00:03:08.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""people. And I think EmacsConf should also,""" start="00:03:12.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, serve to inspire and sort of help""" start="00:03:17.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bring something to the type of work that many""" start="00:03:21.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of us are doing to improve Emacs,""" start="00:03:23.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""whether it's in package development or in""" start="00:03:26.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""core, to bring out the new and exciting ideas""" start="00:03:29.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and get people enthusiastic about Emacs,""" start="00:03:33.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""about hacking on Emacs.""" start="00:03:37.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""This is my little attempt to contribute with""" start="00:03:44.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""let's say 2 things. I will first try to""" start="00:03:48.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""present how we do Emacs core development and""" start="00:03:54.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""why we've done some of the choices that we""" start="00:03:58.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""have, because We have seen at times that""" start="00:04:01.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""perhaps people aren't always clear on this or""" start="00:04:06.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that aspect. So maybe this will be""" start="00:04:08.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""enlightening. I will also try to present some""" start="00:04:12.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""kind of vision for what Emacs could be with""" start="00:04:17.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""your help. Emacs is already very good,""" start="00:04:21.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""as we all know, but we could be even better.""" start="00:04:26.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That's the reality of any type of software""" start="00:04:29.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development. So the overall idea of this talk""" start="00:04:34.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""is to tell you, if you're an Emacs list""" start="00:04:38.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""package developer today,""" start="00:04:39.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""why you should become an Emacs core""" start="00:04:43.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""developer, and the sort of steps that you""" start="00:04:47.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""might want to take to do that,""" start="00:04:48.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""or how you can help Emacs core development.""" start="00:04:51.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Even if you're just a user and you found a""" start="00:04:54.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bug, report it. Perhaps you have a feature""" start="00:04:57.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""request that you'd like to discuss.""" start="00:04:58.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think we need more interaction in general""" start="00:05:02.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""between Emacs core developers,""" start="00:05:04.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""typically on emacsdevil.gnu.org,""" start="00:05:05.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the mailing list that we use to coordinate""" start="00:05:11.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""our development efforts,""" start="00:05:14.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""between Emacs devil package developers and""" start="00:05:19.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""users, Because there is so much great stuff""" start="00:05:21.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""really going on in the community.""" start="00:05:24.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But I think sometimes the step to core""" start="00:05:28.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development seems big and perhaps even a""" start="00:05:32.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""little bit scary. So I'm hoping to be able to""" start="00:05:35.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""help bridge that gap, even if just a little""" start="00:05:38.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bit. We need more people contributing to""" start="00:05:42.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs itself. And also a small disclaimer""" start="00:05:46.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""here, in this talk I will only be able to""" start="00:05:49.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""speak for myself, not for GNU or the Emacs""" start="00:05:53.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""project, even if it's like a little bit more""" start="00:05:55.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""official, but I will also try to give the""" start="00:05:58.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""view of the project where it makes sense to""" start="00:06:01.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""do so. Keep in mind, I'm only 1 of the""" start="00:06:04.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""maintainers, the co-maintainer together with""" start="00:06:06.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Eli, and I can't just make decisions""" start="00:06:09.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""arbitrarily. In a sense,""" start="00:06:10.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'm as a co-maintainer and trusted as a""" start="00:06:14.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""steward and trusted by,""" start="00:06:15.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of course, the GNU project,""" start="00:06:16.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but also by the community That we really""" start="00:06:21.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""can't just take decisions,""" start="00:06:23.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, arbitrarily. Even if it sometimes""" start="00:06:26.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""perhaps may seem so, or it may feel that way,""" start="00:06:30.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we really have to realize that we can't just""" start="00:06:34.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""push too much of just a personal agenda to""" start="00:06:39.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the extent that it doesn't line up with what""" start="00:06:41.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""is best for eMacs going forward,""" start="00:06:44.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and the more overall picture of that.""" start="00:06:50.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So there are limitations that come with the""" start="00:06:52.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""job, if you like. So 1 question I often,""" start="00:06:59.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I actually got this week when I started a new""" start="00:07:02.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""assignment at work, and I got the question""" start="00:07:04.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""when I said I'm involved in Emacs""" start="00:07:08.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development. And then someone asked,""" start="00:07:10.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""oh, is Emacs still developed?""" start="00:07:11.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Isn't it done almost? And I answered to that,""" start="00:07:16.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""yes, we are still around.""" start="00:07:17.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We're going on 40 years now as a software""" start="00:07:21.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""project. Not many projects actually can claim""" start="00:07:25.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that type of longevity.""" start="00:07:28.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But Emacs is among those few that can.""" start="00:07:33.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And of course, we have had some very exciting""" start="00:07:35.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""developments in recent versions.""" start="00:07:37.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think John just gave you an update on that.""" start="00:07:41.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But we had just some highlights out of many""" start="00:07:45.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""highlights that you could give,""" start="00:07:47.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""really, we got the TreeSetter support in""" start="00:07:50.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs 29 that we now need to sort of extend""" start="00:07:53.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and develop. We have merged EGLOT,""" start="00:07:55.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""so we have LSP support out of the box,""" start="00:07:59.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think is a huge improvement.""" start="00:08:00.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Native compilation, of course,""" start="00:08:02.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a big feature. I mean,""" start="00:08:06.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that was Andrea's job,""" start="00:08:08.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""really, for performance.""" start="00:08:10.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And it turns out that in many types of""" start="00:08:13.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""workloads and the types of stuff that people""" start="00:08:15.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""are doing, it often matters.""" start="00:08:17.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And we're hoping to make that the default,""" start="00:08:20.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""perhaps already in Emacs 30.""" start="00:08:24.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So there are things that are happening that""" start="00:08:26.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""fundamentally make Emacs better at a very""" start="00:08:31.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""core level. So, of course,""" start="00:08:37.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""why wouldn't you want to be involved in such""" start="00:08:41.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""an exciting and, I think,""" start="00:08:43.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""dynamic project? How is Emacs developed?""" start="00:08:50.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Well, this is, I think,""" start="00:08:52.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""perhaps to some people,""" start="00:08:53.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a little bit more of a threshold,""" start="00:08:55.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""if you like, because I think all of us know""" start="00:08:58.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""really that there is exciting and cool stuff""" start="00:09:02.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that is going on in Emacs and has been going""" start="00:09:06.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""on over the last couple of years and we'll""" start="00:09:08.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""see even more of that,""" start="00:09:09.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, going forward.""" start="00:09:10.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""1 thing is that communication still takes""" start="00:09:16.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""place over a mailing list in 2023.""" start="00:09:19.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So we have emacsdevil at gnu.org,""" start="00:09:23.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and that's where we develop Emacs.""" start="00:09:25.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We use, we send patches back and forth,""" start="00:09:29.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we comment on patches.""" start="00:09:30.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And actually this workflow is very good,""" start="00:09:35.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""if you're used to it. Because guess what?""" start="00:09:39.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""As Emacs users, we like doing everything we""" start="00:09:42.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""can in Emacs, especially the core tasks that""" start="00:09:45.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we're doing, such as developing Emacs itself.""" start="00:09:49.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Of course, you want to do that fully within""" start="00:09:52.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs. So we hack Emacs Lisp in Emacs,""" start="00:09:55.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we hack C in Emacs, we respond to emails also""" start="00:09:58.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""from Emacs, respond to bug reports,""" start="00:10:02.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""manage bug reports. We do all that stuff""" start="00:10:04.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""very, very smoothly. And it doesn't really""" start="00:10:07.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""matter in a sense, what is the medium?""" start="00:10:10.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It happens to be email.""" start="00:10:11.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Technically it could be anything,""" start="00:10:13.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but email really has that type of staying""" start="00:10:16.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""power where we've been able to use it for a""" start="00:10:19.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""long time. And this is how,""" start="00:10:20.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and we're still able to use it.""" start="00:10:23.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And this is how free software was always""" start="00:10:25.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""developed in the past.""" start="00:10:26.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Only in the last, let's say 10,""" start="00:10:28.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""15 years, We've had more development taking""" start="00:10:32.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""place perhaps on forges like GitHub,""" start="00:10:35.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""GitLab, whatever. But we are 1 of the""" start="00:10:39.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""holdouts. I mean, there are others,""" start="00:10:40.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of course, like the Linux kernel has mailing""" start="00:10:42.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""lists. They're not trying to do that scale""" start="00:10:44.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development on GitHub.""" start="00:10:47.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And this is not just because we're Luddites""" start="00:10:50.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that refuse to change.""" start="00:10:53.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We just have to do it in the old way,""" start="00:10:55.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""because it is the old way,""" start="00:10:56.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and that's the way it should be.""" start="00:10:58.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""No, it's actually because we,""" start="00:10:59.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""as core developers, the core development team""" start="00:11:03.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and the people already involved and doing""" start="00:11:05.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""tremendous, I mean large amounts of work in""" start="00:11:08.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs has very efficient workflows built up""" start="00:11:11.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""based on this. So of course,""" start="00:11:15.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean moving to something else is something""" start="00:11:17.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that we might like to do,""" start="00:11:19.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but we're not yet clear on how to do it""" start="00:11:24.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""exactly and what to move to.""" start="00:11:25.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So these are the types of discussions that""" start="00:11:27.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we're looking at. Can we still support a""" start="00:11:30.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""mailing, an email type workflow while moving""" start="00:11:33.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to something else? That would be 1 of the big""" start="00:11:35.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""ones. I think another thing that trips people""" start="00:11:38.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""up is that we used a bug tracker that,""" start="00:11:40.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, maybe some people,""" start="00:11:42.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I've heard people say it's archaic.""" start="00:11:45.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's called Debugs. I think maybe Debugs gets""" start="00:11:49.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a bit of a bad rap. I think that bugs is a""" start="00:11:51.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""good piece of software.""" start="00:11:52.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It wasn't developed in 2023.""" start="00:11:54.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, that's much as clear.""" start="00:11:57.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's a little bit older,""" start="00:11:58.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but it really is a workhorse of the Debian""" start="00:12:00.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""project, which is obviously a project that's""" start="00:12:03.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""developed in a very different way than Emacs""" start="00:12:08.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""is. It's on a completely different scale,""" start="00:12:11.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of course, much bigger,""" start="00:12:12.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""many more developers, and so on.""" start="00:12:14.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But I think the developers did a good job for""" start="00:12:17.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the time. But it might be showing its age,""" start="00:12:19.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""perhaps, in places. Perhaps,""" start="00:12:22.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""again, it's the email workflow.""" start="00:12:24.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And people see that as a little bit of a""" start="00:12:27.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""threshold. It seems alien.""" start="00:12:29.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's a little bit strange,""" start="00:12:30.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the types of workflows that you have there.""" start="00:12:34.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So we are seeing some limitations with that""" start="00:12:38.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""box. And again, how do you report bugs?""" start="00:12:40.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Well, in a sense, it's easy.""" start="00:12:42.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You send an email to bug-gnu-emacs at gnu.org""" start="00:12:46.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and you copy in whatever you get from,""" start="00:12:51.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, report the EMAX bug or if you have,""" start="00:12:53.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, send mail set up locally,""" start="00:12:54.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just hit control C, control C and it's sent""" start="00:12:58.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to the bug tracker and that's fine.""" start="00:13:01.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But also I have to mention that there is this""" start="00:13:08.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""very good package on GNU Elpas.""" start="00:13:10.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""If you're ever trying to read the Emacs bug""" start="00:13:13.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""tracker or following along in Emacs""" start="00:13:16.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development, I really recommend install the""" start="00:13:18.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""package devbugs from GNU Elpa.""" start="00:13:20.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's so good. And again,""" start="00:13:23.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it's built on GNU, it's all integrated in""" start="00:13:26.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs, it's so much better than using the web""" start="00:13:29.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and so on. And if you really want to get into""" start="00:13:32.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it, you can download the bug tracker archives""" start="00:13:37.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and the mailing list archives,""" start="00:13:39.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and you can put them locally,""" start="00:13:40.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you can have them searchable,""" start="00:13:41.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and you can have whatever experience you""" start="00:13:44.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""like. So, I mean, it's really a flexible""" start="00:13:46.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""workflow, but it's a bit strange,""" start="00:13:50.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""perhaps, to some people.""" start="00:13:52.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So we also think supporting only this""" start="00:13:57.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""workflow might be a little bit too limiting.""" start="00:13:59.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So we do want to move over to something like""" start="00:14:03.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""GitLab, perhaps Sourcehat or something""" start="00:14:06.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""similar. We've had a couple of discussions""" start="00:14:09.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""about that over the last couple of years.""" start="00:14:13.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think even before that,""" start="00:14:15.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but that's how far back I've been involved,""" start="00:14:18.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and definitely it's come up occasionally.""" start="00:14:21.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think we are less far away than perhaps""" start="00:14:27.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""ever is how I would express that,""" start="00:14:30.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and in the sense that the remaining blockers""" start="00:14:36.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for just making the shift,""" start="00:14:38.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""let's say, are I think,""" start="00:14:39.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, first of all, we're talking about""" start="00:14:41.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""limitations, perhaps in the software,""" start="00:14:43.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""they're well defined, and they're not as""" start="00:14:46.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""amountable. I don't think they have to be in""" start="00:14:48.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""any case. We should be able to make some""" start="00:14:50.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""progress. The main thing that we're lacking""" start="00:14:54.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""now is not more discussion or more people""" start="00:14:57.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""prodding us to just please switch over.""" start="00:15:02.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""No, we're looking for volunteers.""" start="00:15:04.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""If you think that you,""" start="00:15:07.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, have what it takes to sort of come""" start="00:15:10.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in and help us do something like that and""" start="00:15:13.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""work together with us,""" start="00:15:14.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, to see what can be done,""" start="00:15:16.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""perhaps some, a few things would need to be""" start="00:15:19.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""changed in GitLab. I don't think anything""" start="00:15:22.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""huge, but maybe there are some patches to be""" start="00:15:25.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""written and sent upstream,""" start="00:15:27.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""or maybe we need to do some local hacks or""" start="00:15:30.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""whatever. If you wanna do that,""" start="00:15:32.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""please contact us, emacsdevil.""" start="00:15:34.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We'll be very happy to talk to you.""" start="00:15:38.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And then we can start making progress.""" start="00:15:39.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So I'm really hoping that that sound like""" start="00:15:42.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""will come into place. But we need to,""" start="00:15:46.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""if we do switch over, we need to preserve the""" start="00:15:52.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""good parts of our email-based workflows.""" start="00:15:54.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So there are requirements there so that we""" start="00:15:56.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""can continue to do our job as maintainers,""" start="00:15:59.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""if you like. Another thing is that we've""" start="00:16:04.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sometimes seen that there's a bit of a""" start="00:16:08.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""different culture perhaps on mailing lists""" start="00:16:11.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and on Emacs devil than what many people are""" start="00:16:14.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""used to, especially like you've used perhaps,""" start="00:16:17.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""many people might be in university and""" start="00:16:20.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""they've started using Emacs,""" start="00:16:23.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""maybe got into a little bit of package""" start="00:16:25.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development and starting to get the ropes of""" start="00:16:28.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that and are very used to working on places""" start="00:16:32.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""like GitLab or something like that,""" start="00:16:34.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""then the type of culture and way of""" start="00:16:37.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""communicating that we use in Emacs might be a""" start="00:16:41.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""little bit different. And of course,""" start="00:16:43.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it's different in the sense that mailing""" start="00:16:46.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""lists have always, I mean,""" start="00:16:49.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""let's say hacker culture,""" start="00:16:50.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""whatever you want to call it,""" start="00:16:51.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""have always communicated in a particular way""" start="00:16:53.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""using mailing lists. So it's like succinct to""" start="00:16:58.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the point, perhaps I'm skipping a few""" start="00:16:59.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""pleasantries. And the idea is that you should""" start="00:17:03.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just use it in as effective way as possible,""" start="00:17:07.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""so that also the archives are usable.""" start="00:17:10.599" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And the other thing is that generally people""" start="00:17:13.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""involved in developing free software has to""" start="00:17:16.319" video="mainVideo-core" id="subtitle"]]
-[[!template text="""deal with a lot of incoming traffic,""" start="00:17:19.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""emails. They don't have the bandwidth if it's""" start="00:17:25.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""too much noise. You really need to be strict""" start="00:17:27.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to keep the signal to noise ratio high.""" start="00:17:31.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We have some weird terminology on the Emacs""" start="00:17:34.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""devil. People tell us,""" start="00:17:37.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we say sometimes install patches which""" start="00:17:40.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""basically means push to master or merge pull""" start="00:17:43.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""requests because we've used other version""" start="00:17:46.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""control systems in the past where it might""" start="00:17:48.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""have made more sense to say install patches.""" start="00:17:50.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And then you sort of, I don't know,""" start="00:17:52.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I say it. Don't ask me why.""" start="00:17:54.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But it feels natural after a while.""" start="00:17:55.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You install a patch. It's clear what you""" start="00:17:57.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""mean. You don't have to worry about which""" start="00:18:02.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""branch it's on. So it's a little bit""" start="00:18:05.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""historical there. So there is some of that""" start="00:18:09.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""culture going on. It might be different.""" start="00:18:11.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We don't use emojis that much.""" start="00:18:13.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That's another thing. There is no like,""" start="00:18:16.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you can click the little like button at the""" start="00:18:20.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bottom of a comment or an email as you could""" start="00:18:24.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""on GitHub. But there are exceptions and it's""" start="00:18:27.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""not like someone will send you angry emails""" start="00:18:29.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""if you use an emoji or something like that.""" start="00:18:31.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But it can come off as perhaps Because people""" start="00:18:33.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""are pressed for time also when replying to""" start="00:18:36.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""all these emails. So it might come off as a""" start="00:18:39.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""little bit short, but that's just how it is.""" start="00:18:42.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think We have heard this comment before""" start="00:18:46.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that mailing lists are scary or Emacs devil""" start="00:18:50.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""is scary or core development is scary.""" start="00:18:53.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I've touched a few of these points a""" start="00:18:58.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""little bit already. I think,""" start="00:18:59.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""yeah, maybe a little bit.""" start="00:19:01.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""For example, we don't use emojis very short""" start="00:19:05.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in the communication. And we always use""" start="00:19:10.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""correct grammar and spelling.""" start="00:19:12.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We take that seriously because it's important""" start="00:19:15.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for being clear in your written communication""" start="00:19:18.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""when all you have is written communication.""" start="00:19:21.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's really important.""" start="00:19:23.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But it's not like If you come in there and""" start="00:19:31.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you don't know all these cultural rules and""" start="00:19:33.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""all these patterns, then you know you will We""" start="00:19:36.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""won't talk to you No Actually,""" start="00:19:37.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we try to be as welcoming as we can and and""" start="00:19:40.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""be mindful and you know people not Everyone""" start="00:19:44.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""has English as their native language,""" start="00:19:46.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for example. So perhaps someone says""" start="00:19:48.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""something, and it might come off as rude,""" start="00:19:50.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but maybe it's just a direct translation.""" start="00:19:52.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So we're trying to give a lot of whatever the""" start="00:19:56.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""native language is. So we try to give a lot""" start="00:19:59.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of leeway and just be a little bit,""" start="00:20:01.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, flexible and focus on,""" start="00:20:03.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, the key, key points,""" start="00:20:04.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""which are the technical things,""" start="00:20:06.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the technical decisions,""" start="00:20:07.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""technical arguments, rather than,""" start="00:20:09.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, getting bogged down in a lot of,""" start="00:20:11.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, personal, you know,""" start="00:20:15.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""discussions and flame wars.""" start="00:20:18.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So, I mean, there are these things to be""" start="00:20:21.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""aware of, you know, it's just a little bit""" start="00:20:22.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""different. I don't think it's anything huge.""" start="00:20:24.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I wouldn't be, you know,""" start="00:20:26.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think it would be sad if people felt too""" start="00:20:30.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""intimidated by that. It just is what it is.""" start="00:20:32.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And if you spend some time there,""" start="00:20:33.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you'll see how people generally communicate.""" start="00:20:35.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sometimes, there are a lot of people on""" start="00:20:41.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""EmacsDevil. It's a public mailing list.""" start="00:20:43.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""A lot of people just sign up to follow Emacs""" start="00:20:45.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development. Sometimes they chime in.""" start="00:20:48.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think this is in general a good thing.""" start="00:20:50.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think it should be a public mailing list.""" start="00:20:52.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sometimes this leads to weird situations from""" start="00:20:59.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just a point of view as an Emacs maintainer,""" start="00:21:02.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? I mean, I try to say something and it""" start="00:21:06.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""doesn't always say, oh,""" start="00:21:07.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""he's the maintainer or whatever.""" start="00:21:09.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So when I say something,""" start="00:21:10.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it should carry a little bit more weight than""" start="00:21:13.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""some unknown person from the internet who has""" start="00:21:15.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""an opinion and decided to send it to""" start="00:21:17.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""EmacsDevil. So it's good to be a little bit""" start="00:21:20.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""aware of who is a little bit more involved""" start="00:21:22.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""with the project. I would check out the""" start="00:21:25.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""maintainers file. I would check,""" start="00:21:26.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""see in the Git log, do these people actually""" start="00:21:30.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""have any anything in core?""" start="00:21:32.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And if not, maybe, you know,""" start="00:21:34.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""there, we won't really,""" start="00:21:38.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""even if they express an opinion very""" start="00:21:40.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""strongly, even if they're a little bit rude,""" start="00:21:42.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""maybe they're not even involved in Emacs""" start="00:21:44.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development. I mean, often,""" start="00:21:45.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that's the case we have some people,""" start="00:21:48.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""unfortunately, at times,""" start="00:21:49.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we have random people from the internet come""" start="00:21:52.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in on the mailing list and they're just a""" start="00:21:54.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""little bit rude, or they say an opinion""" start="00:21:56.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that's not exactly helpful.""" start="00:21:59.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think you need to be aware.""" start="00:22:02.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, these things happen in any forum,""" start="00:22:03.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but it happens on EmacsDevO as well.""" start="00:22:07.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So just be a little bit aware of who you're""" start="00:22:10.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""talking to, what people are doing.""" start="00:22:13.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It can help to Check the archives,""" start="00:22:15.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""see who writes what, and so on.""" start="00:22:17.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But it's not something that I think is a huge""" start="00:22:22.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""problem. It is just, again,""" start="00:22:23.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""something to be aware of.""" start="00:22:25.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We have the new kind of communication""" start="00:22:27.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""guidelines in place, which basically says""" start="00:22:30.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that you should be nice to people and stay""" start="00:22:33.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""focused on the technical problem,""" start="00:22:35.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""try to see things from another person's point""" start="00:22:38.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of view, this kind of stuff.""" start="00:22:39.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So we're really trying to be as inclusive as""" start="00:22:41.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""possible and just stay correct in general.""" start="00:22:46.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And sometimes, I mean,""" start="00:22:48.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""not everyone, it's a public list.""" start="00:22:49.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We moderate it, but not to a huge extent,""" start="00:22:52.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? So sometimes people get away with a""" start="00:22:57.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""little bit of perhaps stretching the""" start="00:23:02.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""boundaries of what might be included in the""" start="00:23:04.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""kind communication guidelines,""" start="00:23:06.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sort of the fences and limitations of that.""" start="00:23:10.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But I would just ignore that.""" start="00:23:13.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sometimes it happens that we,""" start="00:23:15.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""as happens in any forum,""" start="00:23:16.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""by the way, you just, we have these very big""" start="00:23:19.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""threads. We start discussing something else.""" start="00:23:21.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Perhaps you send us a patch and it just""" start="00:23:23.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""devolves into us discussing something""" start="00:23:25.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""completely different. And of course I partake""" start="00:23:28.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in that, not better than anyone else,""" start="00:23:30.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but it just happens. I mean,""" start="00:23:32.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it's not your fault. It's just what happens""" start="00:23:34.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sometimes in forums, and don't mind that.""" start="00:23:37.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And it's a little bit easier to do that in""" start="00:23:38.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""emails, because you just change the subject,""" start="00:23:41.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and now it's supposed to be a different""" start="00:23:43.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""thread, but it comes as replies usually to""" start="00:23:45.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you, which wouldn't happen perhaps in a""" start="00:23:48.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""different workflow. So it's something to be""" start="00:23:49.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""aware of as well. Another thing is that,""" start="00:23:53.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of course, in written communication,""" start="00:23:54.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""tone doesn't always come across.""" start="00:23:56.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""If someone sounds negative,""" start="00:23:58.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sometimes it's just them being neutral.""" start="00:24:00.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sometimes you get no replies.""" start="00:24:04.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You send something, you get no replies.""" start="00:24:06.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And this could mean, actually it could mean,""" start="00:24:08.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""yeah, what you said was uncontroversial.""" start="00:24:11.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We think it was a good idea.""" start="00:24:12.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""No 1 replied to it because either someone""" start="00:24:16.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""else would reply or just there was no need to""" start="00:24:18.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""reply because, yeah, why not?""" start="00:24:20.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So but if you do send a patch and you don't""" start="00:24:23.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""get an answer, wait. I mean,""" start="00:24:26.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""don't wait 1, 2 days. Maybe we're busy or""" start="00:24:29.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we're sick or whatever.""" start="00:24:30.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Wait 2 weeks. It's fine to just send it""" start="00:24:32.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""again. If you send the patch to EmacsDevil,""" start="00:24:34.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""send it to the bug mailing list,""" start="00:24:36.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""because we lose track of stuff on EmacsDevil.""" start="00:24:38.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That's just the reality of it.""" start="00:24:41.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So if you propose making a change and no 1""" start="00:24:45.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""commented, feel free to ask us again if a""" start="00:24:48.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""patch would be welcome and we will clarify.""" start="00:24:50.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Bug reports, unfortunately,""" start="00:24:54.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""if you get no answer, I mean,""" start="00:24:55.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we do have a limited amount of time to work""" start="00:24:59.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""on bugs. If you're looking to get started in""" start="00:25:02.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs development, this is an excellent way""" start="00:25:05.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to start getting involved.""" start="00:25:06.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""What I'd recommend is start looking into""" start="00:25:09.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bugs. I'd install that bug,""" start="00:25:11.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'd see about the mailing workflow and set""" start="00:25:13.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that up a little bit, or not.""" start="00:25:15.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's up to you. You can reply to an email""" start="00:25:17.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""without setting any of that stuff up.""" start="00:25:19.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But just help us try out your bugs,""" start="00:25:21.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""send patches, do that type of stuff.""" start="00:25:24.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, that's an excellent way,""" start="00:25:26.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and extremely welcome.""" start="00:25:27.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We're so happy to see when people pick up bug""" start="00:25:30.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""reports that have been left by the wayside""" start="00:25:32.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and just fix them, send us a patch,""" start="00:25:34.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and we can just apply it.""" start="00:25:37.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So that's really your starting point if you""" start="00:25:40.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""want to get involved in Emacs core""" start="00:25:43.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development. I also want to say that be aware""" start="00:25:50.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that you know Emacs is the editor of the GNU""" start="00:25:53.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""operating system and this makes the project""" start="00:25:56.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""political a little bit whether you like it or""" start="00:25:58.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""not. Luckily the you know the politics are""" start="00:26:00.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""limited enough that we can find broad""" start="00:26:03.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""agreement on it. So we want to promote,""" start="00:26:05.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we want to create free software.""" start="00:26:07.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That's sort of it. That's it.""" start="00:26:10.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And there shouldn't be too much more to it,""" start="00:26:13.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? We want to rid the world of""" start="00:26:15.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""proprietary software as an evil thing.""" start="00:26:19.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Ideally, all software should be free.""" start="00:26:21.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But these are just the goals of the free""" start="00:26:24.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""software movement. So we're very strict with""" start="00:26:27.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""some things. We don't recommend non-free""" start="00:26:29.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""proprietary software. Of course,""" start="00:26:31.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we have no problem mentioning Microsoft""" start="00:26:32.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Windows because everyone knows that there's""" start="00:26:34.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this obscure operating system developed in""" start="00:26:39.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""California that some people insist on using.""" start="00:26:41.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We use, many of us use GNU plus Linux.""" start="00:26:44.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Actually, some core developers happen to use""" start="00:26:46.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""exactly, you know, not GNU plus Linux,""" start="00:26:50.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but that's fine as well,""" start="00:26:52.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? We take a little bit of a pragmatic""" start="00:26:54.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""view, but we don't wanna do,""" start="00:26:56.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""what we don't wanna do is promote like this""" start="00:26:58.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""small, unknown piece of non-free software and""" start="00:27:04.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sort of help the non-free software in that""" start="00:27:08.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""way. That's where we try to draw the line,""" start="00:27:11.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, in just expressing just a few""" start="00:27:15.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""words. So that's 1 thing.""" start="00:27:17.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We're, I think, very pragmatic on this point,""" start="00:27:21.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but we do try to follow the principle.""" start="00:27:24.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We also require copyright assignment.""" start="00:27:26.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think in general,""" start="00:27:29.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the argument is that we require a copyright""" start="00:27:34.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""assignment, because that makes it easier to""" start="00:27:38.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""defend the legal status of the GNU Emacs""" start="00:27:42.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""source code. So if there's ever a legal""" start="00:27:45.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""battle, the idea is that if it's only 1""" start="00:27:47.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""copyright holder and you have a GPL""" start="00:27:49.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""violation, i.e. Someone might change Emacs""" start="00:27:53.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and then distribute it as proprietary""" start="00:27:55.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""software or something nasty like that,""" start="00:27:57.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""then we have an easier way of defending it in""" start="00:28:00.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""court if there is only 1 copyright holder.""" start="00:28:02.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So we assigned copyright to the Free Software""" start="00:28:04.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Foundation. And I think there,""" start="00:28:08.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, sometimes people oppose this for""" start="00:28:12.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""various reasons, you know,""" start="00:28:13.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""people see it as, you know,""" start="00:28:15.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""maybe some people might say,""" start="00:28:16.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, it's ideological,""" start="00:28:17.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, who goes, you know,""" start="00:28:19.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the FSF goes too far with this.""" start="00:28:20.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And, and, I mean, that's fine.""" start="00:28:23.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You that's, that's an opinion.""" start="00:28:25.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And the there, then other people are more""" start="00:28:28.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""practical, you know, it's just,""" start="00:28:29.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's a hassle, basically,""" start="00:28:30.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we don't want to sign these papers.""" start="00:28:32.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I'm not really here to tell anyone that""" start="00:28:35.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""they're wrong. I've expressed my views on""" start="00:28:37.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this in the past. But just for now,""" start="00:28:40.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'm just very practical for the purposes of""" start="00:28:43.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this talk. So I signed the papers.""" start="00:28:46.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's Maybe it didn't take me many minutes.""" start="00:28:48.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And in most cases, it shouldn't really.""" start="00:28:51.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And it's something that I found worth doing,""" start="00:28:54.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""because that way I could focus on continuing""" start="00:28:58.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to improve Emacs instead of discussing the""" start="00:29:01.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""finer points of copyright law.""" start="00:29:02.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You could write patches and stuff,""" start="00:29:04.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that kind of thing. So,""" start="00:29:06.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, this is something that trips people""" start="00:29:08.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""up and, you know, it's fine that people have""" start="00:29:10.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""different opinions on it and so on,""" start="00:29:13.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but I think for now that's just something to""" start="00:29:19.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""be aware of. So that's,""" start="00:29:22.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, I mean, there's much more that could""" start="00:29:25.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""be said. Ideally, I would like to have a""" start="00:29:27.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""practical part to this talk as well.""" start="00:29:30.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But I wanted to say something about the""" start="00:29:34.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""packages in Emacs. Because as we know,""" start="00:29:36.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, Emacs is the, I can't remember what""" start="00:29:40.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it says, it's like a visual,""" start="00:29:41.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""there's in the manual it says,""" start="00:29:43.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""oh, Emacs is an advanced text editor.""" start="00:29:45.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's visual, which, I mean,""" start="00:29:47.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it's not ed, the whole Unix ed,""" start="00:29:49.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""so that's cool. It's also customizable,""" start="00:29:52.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? So that's always been a thing.""" start="00:29:55.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And what makes Emacs so amazing.""" start="00:29:59.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And some people described it as,""" start="00:30:01.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I can't remember who said that there has been""" start="00:30:03.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a Cambrian explosion of packages in Emacs.""" start="00:30:09.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think that's true.""" start="00:30:10.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, if you look at something like Melpa,""" start="00:30:12.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think they have over 5,000""" start="00:30:13.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""packages now. It's like truly impressive,""" start="00:30:15.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just an immense amount of work and immense""" start="00:30:18.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""amount of packages. And really,""" start="00:30:21.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this shows the strength,""" start="00:30:23.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, of the Emacs community,""" start="00:30:26.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of Emacs itself as an idea.""" start="00:30:28.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think it's also just tremendous work""" start="00:30:30.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that's been done by the maintainers.""" start="00:30:33.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And they do get a lot of recognition for""" start="00:30:35.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that. And rightly so, in my opinion.""" start="00:30:38.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's done so much, I think,""" start="00:30:41.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for our community. The other package archive""" start="00:30:43.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that we have is GNU-ELPA.""" start="00:30:45.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And that's been enabled since when packages""" start="00:30:49.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""first got introduced back in,""" start="00:30:50.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, Emacs, was it 23?""" start="00:30:52.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And probably, I mean, the main thing why a""" start="00:30:59.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""package goes onto GNU Elpa is,""" start="00:31:01.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, it should be installable out of the""" start="00:31:03.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""box. So, I mean, that's a big benefit in a""" start="00:31:07.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sense. It's also a requirement for GNU Alpa""" start="00:31:10.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that the copyright, again,""" start="00:31:11.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just as GNU Emacs, the copyright is assigned""" start="00:31:14.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to the Free Software Foundation.""" start="00:31:16.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And some very hugely popular packages,""" start="00:31:19.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""like YaSnippet, for example,""" start="00:31:20.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""is on GNU Alpa. And we were discussing this""" start="00:31:24.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just 2 months back. And Joe Tavora,""" start="00:31:29.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I can't say his name, G-O-A-O,""" start="00:31:31.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Tavora. He made the point that he's never""" start="00:31:35.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""seen a problem in any of his packages with""" start="00:31:40.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""copyright assignment in particular.""" start="00:31:41.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's never been a problem to get people to be""" start="00:31:44.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""involved in the development of those packages""" start="00:31:46.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just because of the copyright assignment""" start="00:31:47.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""requirements. So I mean,""" start="00:31:50.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that's his perspective on that.""" start="00:31:53.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think it was worth relating his""" start="00:32:00.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""experience here. So we also have this new""" start="00:32:06.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""package archive called non-GNU-alpha,""" start="00:32:08.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""which is now enabled by default as well.""" start="00:32:12.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think for practical purposes,""" start="00:32:13.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you could get into it a little bit more,""" start="00:32:16.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, why we created non-NUELPA,""" start="00:32:18.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and perhaps that's something we can discuss""" start="00:32:21.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in the Q&A section. For practical purposes,""" start="00:32:25.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the main thing to be aware of is,""" start="00:32:27.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""yes, we don't promote non-free software on""" start="00:32:30.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""there, And we also don't have the copyright""" start="00:32:36.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""assignment requirement.""" start="00:32:38.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think this is probably for new packages.""" start="00:32:43.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's generally better if they go to GNU Elpa,""" start="00:32:47.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""if there is any type of idea or ambition""" start="00:32:50.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that, you know, at some point it would be""" start="00:32:53.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""good or it might be good to eventually have""" start="00:32:56.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""some type of functionality like this shipped""" start="00:32:58.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""with Emacs itself. So I think this is""" start="00:33:01.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""something that perhaps package authors could""" start="00:33:03.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""also be aware of, that occasionally we do""" start="00:33:07.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bring in functionality from GNU Elpa into""" start="00:33:09.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""core Emacs because we feel that it should be""" start="00:33:11.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""better integrated with Emacs itself.""" start="00:33:15.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So if I could give any type of""" start="00:33:18.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""recommendation, of course,""" start="00:33:19.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you do. These are your packages,""" start="00:33:21.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? In an ideal world,""" start="00:33:25.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we would only use this for legacy packages""" start="00:33:28.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""where people contributed in the past,""" start="00:33:30.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but you didn't worry about the copyright""" start="00:33:31.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""assignment. But where possible,""" start="00:33:33.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think there is benefit in putting it on GNU""" start="00:33:36.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Elpa. And I wanted to end a little bit on a""" start="00:33:42.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""more, you know, the more opinionated perhaps""" start="00:33:44.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""part of my talk and not just talk about""" start="00:33:47.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""processes. I see that I'm running out of""" start="00:33:49.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""time. So I will say Emacs is hackable.""" start="00:33:51.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think that's a blessing and a curse.""" start="00:33:54.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And if you think about something like,""" start="00:33:55.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the types of choices that you can make,""" start="00:34:00.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""perhaps when you implement something,""" start="00:34:02.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""There are choices, different choices between""" start="00:34:06.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""something like common list,""" start="00:34:07.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""which is like bigger, more batteries""" start="00:34:08.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""included, and something like scheme,""" start="00:34:10.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""which is more minimal.""" start="00:34:11.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think we have some of those,""" start="00:34:13.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, this kind of tension also in the""" start="00:34:16.159" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs itself. What should be in Emacs core?""" start="00:34:17.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Should we have a lean Emacs core?""" start="00:34:19.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Should we have more stuff in Emacs core?""" start="00:34:21.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think these are good discussions to""" start="00:34:26.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""have. And there are various challenges that""" start="00:34:29.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""are associated with each of those choices.""" start="00:34:31.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think what will never change is that Emacs""" start="00:34:34.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""is hackable. Emacs is customizable.""" start="00:34:36.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""This is the key strength.""" start="00:34:38.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""This is why we love and use Emacs.""" start="00:34:40.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think fundamentally,""" start="00:34:41.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""whether you do it a lot or not,""" start="00:34:43.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this is what at core is bringing you that""" start="00:34:46.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""amazing user experience.""" start="00:34:48.679" video="mainVideo-core" id="subtitle"]]
-[[!template text="""However, the flip side of that sometimes is""" start="00:34:53.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that it's so easy to hack Emacs so that we""" start="00:34:56.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""hack around bugs instead of fixing them.""" start="00:34:58.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We do some tweak and our customers say,""" start="00:35:00.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""okay, this is a little bit broken,""" start="00:35:01.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Let me just fix it. I'll put an advice on""" start="00:35:03.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this function. I'll do this customization.""" start="00:35:05.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Or we accept limitations in Emacs core.""" start="00:35:08.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think it's fine.""" start="00:35:11.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, this will never change.""" start="00:35:13.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That will always be core to what Emacs is,""" start="00:35:16.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? However, I think that the flip side of""" start="00:35:20.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that is that I think sometimes we could be""" start="00:35:22.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""better at just taking those few extra steps""" start="00:35:26.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to also make Emacs better itself and solve""" start="00:35:29.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this for all users. And I think if we can""" start="00:35:31.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""build a little bit more of a culture like""" start="00:35:33.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that, I mean, we already have that culture to""" start="00:35:35.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a large extent, don't get me wrong,""" start="00:35:36.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we do, but if we can get a little bit more of""" start="00:35:39.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that culture, let's get that into core,""" start="00:35:41.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""let's get that problem fixed,""" start="00:35:43.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that frustration. I can tell you that,""" start="00:35:45.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I just started a new assignment at work,""" start="00:35:48.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I already told you, so I'm going to write a""" start="00:35:51.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""lot of Python, okay? So I need to keep track""" start="00:35:53.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of something called virtual environments,""" start="00:35:55.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and that's just a way to install these""" start="00:35:57.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""dependencies just locally per directory or""" start="00:36:01.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""per repository kind of thing.""" start="00:36:02.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I've used various packages for that.""" start="00:36:05.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""There are like 4 packages,""" start="00:36:07.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""5 packages, maybe. And 1 is called VM,""" start="00:36:10.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and 1 is called VirtualM,""" start="00:36:11.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and 1 is called Python-VM.""" start="00:36:13.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And now I'm using, you know,""" start="00:36:16.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'm using a different 1.""" start="00:36:17.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And it's just a little bit,""" start="00:36:19.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""why doesn't this work out of the box in""" start="00:36:22.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs? Why? I don't think there's a really""" start="00:36:25.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""good fundamental good reason why something""" start="00:36:28.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""like that doesn't work in Emacs.""" start="00:36:29.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So I think that's really,""" start="00:36:31.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, I'm sure there are other things like""" start="00:36:34.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that, other fundamental features.""" start="00:36:36.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Why is it that for the last 20 years,""" start="00:36:39.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we've shipped Emacs with no PHP support out""" start="00:36:43.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of the box? I mean, I'm not a PHP programmer.""" start="00:36:47.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I don't really have a lot of love for PHP,""" start="00:36:50.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""let's say. To me, it's a very funny-looking""" start="00:36:55.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""language, but okay, still it's been very""" start="00:36:59.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""popular. Why haven't we supported it?""" start="00:37:01.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, it's just strange.""" start="00:37:02.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You install Emacs on some machine,""" start="00:37:04.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you open a PHP file, you get fundamental""" start="00:37:06.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""mode. It's not the best user experience,""" start="00:37:08.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in my opinion. So I think there are some""" start="00:37:12.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""things where we really could do a little bit""" start="00:37:15.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""better. And I'm seeing this all the time.""" start="00:37:19.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Just this week, this new assignment was""" start="00:37:22.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""interesting. There was this Emacs user.""" start="00:37:24.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Turns out we have the exact same hack in both""" start="00:37:26.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of our init files. So we had created the""" start="00:37:29.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""exact same mode for DIRED,""" start="00:37:31.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""actually, to hide dot files.""" start="00:37:33.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You know, dot something is supposed to be""" start="00:37:36.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""hidden on a Unix system.""" start="00:37:38.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So we had DERED hide dot files mode to just""" start="00:37:43.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""hide them. And why isn't that in DERED?""" start="00:37:46.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Or should it be in DERED?""" start="00:37:47.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Should it be a package on the new Elpa?""" start="00:37:50.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Where should it be? Why is it just local""" start="00:37:52.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""hack? Should it be on a wiki somewhere?""" start="00:37:54.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, sometimes that's the correct answer.""" start="00:37:56.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sometimes the correct answer is,""" start="00:37:58.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""yes, it should be a package.""" start="00:37:59.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sometimes the correct answer is,""" start="00:38:02.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""yes, it should really be in core.""" start="00:38:03.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So what I want to promote is more like,""" start="00:38:05.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""let's just take a step back and just ask""" start="00:38:08.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""yourself, what's the best solution if we look""" start="00:38:11.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""at the overall picture?""" start="00:38:11.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Should I hack this into my configuration?""" start="00:38:13.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""In many cases, yes, that's the right thing to""" start="00:38:16.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""do. We don't want to proliferate just random""" start="00:38:19.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""solutions all over Emacs for no reason.""" start="00:38:21.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But sometimes we want to fix it once and for""" start="00:38:24.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""all. We want to do that in core.""" start="00:38:27.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So you could send stuff like that to us as""" start="00:38:30.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""patches or as packages.""" start="00:38:30.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And we can discuss a little bit about where""" start="00:38:34.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""should we solve this? What's the right level""" start="00:38:35.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of abstraction? I'm seeing that I'm running""" start="00:38:40.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""out of time. I had an Emacs wish list.""" start="00:38:43.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Maybe we can take more of that in the Q&A.""" start="00:38:46.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But I want to say, like,""" start="00:38:49.107" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in VS Code, you just start VS Code.""" start="00:38:50.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You open a Python file,""" start="00:38:51.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and you get, like, hey,""" start="00:38:52.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""are you trying to use Python?""" start="00:38:54.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Click here, install Python.""" start="00:38:55.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You get all the nice things out of the box.""" start="00:38:58.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And my argument is, why can't we have more of""" start="00:39:01.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that in Emacs? I don't think it's necessarily""" start="00:39:03.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""hard, but it does take a little bit of work.""" start="00:39:05.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""The challenges here are more social,""" start="00:39:08.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, than technical.""" start="00:39:10.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I think it's worth doing,""" start="00:39:12.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""because it's not just Python.""" start="00:39:13.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's just There are always these small things""" start="00:39:16.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""where it just really should work,""" start="00:39:18.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and that would be a much better experience.""" start="00:39:20.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And then you could customize not that thing""" start="00:39:23.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that should just work,""" start="00:39:24.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but you could customize more fun and""" start="00:39:26.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""exploratory things instead of people""" start="00:39:29.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""reinventing the wheel over and over again.""" start="00:39:31.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So I'm very excited about what's happening in""" start="00:39:33.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs. I think we should be proud of what""" start="00:39:35.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we've accomplished. It's so many things to""" start="00:39:37.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""many different people,""" start="00:39:37.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""an environment for hacking,""" start="00:39:39.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just a productivity system.""" start="00:39:41.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Other sees us as a different way of looking""" start="00:39:43.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""at computing, you know,""" start="00:39:45.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the embodiment of the ideal of the Lisp""" start="00:39:47.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""machine if you want to talk big words and""" start="00:39:49.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""stuff like that. And of course,""" start="00:39:50.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs are all those things and so many more.""" start="00:39:52.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And that's what makes Emacs so amazing.""" start="00:39:54.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And in some sense, we should be care that""" start="00:40:00.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""people are satisfied with using lesser text""" start="00:40:02.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""editors. How could they be happy running""" start="00:40:05.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that? I mean, I'm sure it's fine,""" start="00:40:07.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but it sure as hell isn't Emacs.""" start="00:40:09.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So don't we owe it to the world and to them""" start="00:40:12.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and to ourselves to make a great Emacs.""" start="00:40:13.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That will be my ending words.""" start="00:40:15.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I hope to see you all in the Q&A.""" start="00:40:17.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Thank you all. And thank you so much,""" start="00:40:22.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Stefan. That was a wonderful presentation.""" start="00:40:23.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I just want to give you the opportunity.""" start="00:40:26.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You said that you perhaps had,""" start="00:40:29.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Not the practical stuff,""" start="00:40:31.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but you wanted to do a demo or something like""" start="00:40:33.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""this? What did you mention exactly?""" start="00:40:34.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, we didn't have time really.""" start="00:40:37.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yes, I'm not sure. I didn't prepare anything""" start="00:40:41.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""so that we can do it live.""" start="00:40:43.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But maybe for next time,""" start="00:40:44.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I will do a demo. Don't hold me to it.""" start="00:40:48.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Or someone else could.""" start="00:40:50.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That would be really amazing.""" start="00:40:52.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Right. Well, thank you,""" start="00:40:53.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Stéphane. You've been already into so much""" start="00:40:56.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""detail of so many... So much of the intricacy""" start="00:41:00.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of the maintenance. And as someone who's been""" start="00:41:04.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""95% of the time developing for Melpa,""" start="00:41:07.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I feel like this talk was very geared to a""" start="00:41:10.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""lot of us who tend to experiment in this""" start="00:41:13.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Cambrian stage of Emacs evolution,""" start="00:41:15.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""where we get to deploy a lot of creativity""" start="00:41:19.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""whilst also feeling pretty agile in a way we""" start="00:41:23.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""come up with solutions to problems.""" start="00:41:25.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But you've won me over with your discussion""" start="00:41:28.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""about potentially moving some of this stuff""" start="00:41:31.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to core. And I think this particularly""" start="00:41:32.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""resonated at the end with this tension that""" start="00:41:35.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you feel about problems that you encounter.""" start="00:41:38.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Do you fix them in Melpa?""" start="00:41:40.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Do you fix them in core?""" start="00:41:41.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Is it not something that is supposed to be an""" start="00:41:43.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""option? I love this tension and it's""" start="00:41:46.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""something that we've been exploring for the""" start="00:41:47.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""last 3 edition of Emacs Cons.""" start="00:41:49.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's really what is to be the interaction""" start="00:41:51.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""between this pool of very clever developers""" start="00:41:55.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""who are on Melpa but who are perhaps a little""" start="00:41:57.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bit afraid of joining Core and the wonderful""" start="00:42:00.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""job that you do that, yes,""" start="00:42:02.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""seems archaic from the outside,""" start="00:42:05.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but as you've been at length today in your""" start="00:42:07.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""presentation, is actually just a better way""" start="00:42:09.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to work, a very pragmatic way to get a lot of""" start="00:42:11.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""work done. So, thank you so much for your""" start="00:42:13.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""presentation. Thank you,""" start="00:42:15.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Leo. So, we have about 12 minutes now to go""" start="00:42:20.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""through as many questions as possible.""" start="00:42:22.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You have obviously had a lot of questions""" start="00:42:25.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""throughout your presentation.""" start="00:42:26.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Do you have access to the pad,""" start="00:42:28.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""or do you want me to share the question and""" start="00:42:30.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""feed them to you? Yes,""" start="00:42:32.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""could you start with sharing them?""" start="00:42:34.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'll see if I can get it on my screen.""" start="00:42:35.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sure, I'll do that. Please let me know if my""" start="00:42:39.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""microphone is clipping because my OBS setup""" start="00:42:42.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sometimes is a little bit janky.""" start="00:42:44.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But I'm going to try to read the questions""" start="00:42:45.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for now. It's tipping,""" start="00:42:47.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I can hear you okay. Okay,""" start="00:42:51.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""so bear with the clicking,""" start="00:42:53.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we'll switch as soon as possible to Stefan""" start="00:42:56.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""reading the question, but I'll read the first""" start="00:42:57.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""1. Can you tell us some about your,""" start="00:43:02.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""can you tell us some more I assume,""" start="00:43:03.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""about your background with Emacs development""" start="00:43:05.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and programming in general,""" start="00:43:07.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""your professional work possibly?""" start="00:43:08.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, sure. Okay, I studied computer science""" start="00:43:15.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""at university. I started programming on a""" start="00:43:19.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Commodore 64. I started with BASIC and then I""" start="00:43:23.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""did a couple of versions of BASIC as a kid.""" start="00:43:26.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But then really things took off when I""" start="00:43:31.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""started using GNU Linux.""" start="00:43:33.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I can't remember which year,""" start="00:43:35.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""maybe it was early 2000,""" start="00:43:36.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""something like that, late.""" start="00:43:39.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""No, it must've been before that actually,""" start="00:43:41.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""because I remember I was 14.""" start="00:43:43.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, okay, so let's say 1999,""" start="00:43:45.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""1998, somewhere there around.""" start="00:43:48.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Then I started with Perl,""" start="00:43:49.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and I did Perl for a good long while.""" start="00:43:52.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I learned C++, I learned C,""" start="00:43:54.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I did all kinds of stuff,""" start="00:43:56.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and then I went to university,""" start="00:43:58.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""computer science, and I've been working,""" start="00:44:01.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, in various roles.""" start="00:44:03.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Right now, I'm coding Python.""" start="00:44:05.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Up until last Friday, I was writing firmware""" start="00:44:09.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in C for a small microcontroller,""" start="00:44:11.819" video="mainVideo-core" id="subtitle"]]
-[[!template text="""which is pretty different than writing""" start="00:44:15.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Python, that's for sure.""" start="00:44:16.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So yeah, so that's a little bit about me.""" start="00:44:19.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I got interested in free software,""" start="00:44:21.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, also at a very young age.""" start="00:44:24.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So, I mean, I've been following these,""" start="00:44:26.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, ideological discussions and""" start="00:44:28.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""debates, read all this stuff by Richard""" start="00:44:31.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Stallman and so on and so forth.""" start="00:44:33.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But yeah, that's it. Great,""" start="00:44:37.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""thank you. I'll move on to the next question.""" start="00:44:40.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You'll have to listen to me because if I""" start="00:44:42.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""start sharing my screen again,""" start="00:44:44.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we're going to get some clicks.""" start="00:44:45.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So the question. Do you think that 1 day""" start="00:44:50.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""there will be a native I'll start again,""" start="00:44:53.914" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sorry. Do you think that 1 day there will be""" start="00:44:54.065" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a native... I'll start again,""" start="00:44:54.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sorry. Do you think that 1 day there will be""" start="00:44:56.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a native graphical web browser in Emacs or is""" start="00:44:58.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it kind of against its philosophy and""" start="00:45:00.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""architecture? So will we stick just with EWW""" start="00:45:03.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and EAF or similar workaround tricks?""" start="00:45:06.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So if, I don't know if people have seen,""" start="00:45:10.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""there is a talk by, I think,""" start="00:45:12.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Perry Metzger, is that the name?""" start="00:45:14.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sorry if I got the name wrong.""" start="00:45:16.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Perry Metzger, I think.""" start="00:45:17.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's like, he marks a text editor for the""" start="00:45:20.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""next 40 years. He makes an excellent point""" start="00:45:22.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""there that 1 of the things that we need to do""" start="00:45:24.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""is really get a proper HTML rendering in""" start="00:45:27.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs. It's like a dream at this point.""" start="00:45:29.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""No 1 is actively working on something like""" start="00:45:32.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that. I think that, you know,""" start="00:45:33.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""there, first of all, you'd need to rewrite""" start="00:45:35.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the display engine. So that's a big job.""" start="00:45:39.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It is. I'm not saying,""" start="00:45:40.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, it can't be done,""" start="00:45:42.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but you need to start there.""" start="00:45:44.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Right? Second of all, you need to think""" start="00:45:47.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""about, you know, with all the Emacs Lisp code""" start="00:45:50.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""out there, is really assuming,""" start="00:45:51.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, 1 paradigm, which is that you have""" start="00:45:54.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a square, and basically you have columns and""" start="00:45:57.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you have rows, and everything is in there,""" start="00:45:59.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""even images, is basically in a column,""" start="00:46:01.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, in a column on a row somewhere.""" start="00:46:04.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Whereas, you know, when you just start doing""" start="00:46:07.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the more web stuff and web rendering,""" start="00:46:09.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you already have like a seaplane.""" start="00:46:11.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You have different types of geometries that""" start="00:46:14.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""are possible. And what does it mean to go to""" start="00:46:16.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the logical next line in that kind of sense?""" start="00:46:19.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean these types of things I'm not saying""" start="00:46:21.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it can't be done. I'm saying there are there""" start="00:46:23.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""are definitely some challenges there It would""" start="00:46:27.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""be amazing I mean, but we need someone with""" start="00:46:30.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, the inclination and talent I think""" start="00:46:32.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to work on that's a job posting if I've ever""" start="00:46:37.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""had 1. So good luck to whoever's willing to""" start="00:46:40.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""apply for this 1. I think it's a tough 1.""" start="00:46:41.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It is, yes. Go on. Okay,""" start="00:46:45.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""do you happen to have the questions in front""" start="00:46:47.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of you? Can I just read them to you so that""" start="00:46:50.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you can also have a feedback in front of you?""" start="00:46:52.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yes, I have the pad here.""" start="00:46:56.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Okay, cool. So I'll read the next question""" start="00:46:58.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and this way I don't have to worry too much""" start="00:47:00.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""about me butchering every word in the""" start="00:47:02.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sentence. So, Emacs development and""" start="00:47:04.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""communication still is very much focused on""" start="00:47:06.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""email mailing lists. I like this,""" start="00:47:08.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but what do you think about introducing other""" start="00:47:10.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""channels for talking to users,""" start="00:47:11.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""like the Emacs project community could set up""" start="00:47:14.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a master on instance of its own,""" start="00:47:16.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for instance? I think from the point of view""" start="00:47:19.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of the Emacs core team,""" start="00:47:21.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we don't really have a lot of resources or""" start="00:47:23.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""people inclined to be working on stuff like""" start="00:47:25.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that. But I mean, there is so much going on.""" start="00:47:27.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs is a very, you know,""" start="00:47:28.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's a big community, frankly,""" start="00:47:32.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? So people working on emacs.com,""" start="00:47:34.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""there are people in the IRC channel,""" start="00:47:36.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the emacs IRC channel,""" start="00:47:38.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""there's the emacs subreddit.""" start="00:47:40.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And I mean, people are doing an incredible""" start="00:47:42.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""job. And I think if people wanna do more""" start="00:47:45.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""stuff like that, I mean,""" start="00:47:46.359" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Don't wait for Argo, just go for it.""" start="00:47:48.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Great. Moving on to the next question.""" start="00:47:54.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sorry, I'm not commenting anymore because we""" start="00:47:56.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""have so many questions and I'd love for you""" start="00:47:58.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to answer as many people as possible because""" start="00:48:00.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we have about 6 minutes technically,""" start="00:48:02.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but we can go perhaps a little bit over.""" start="00:48:04.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""If you have the time, Stefan,""" start="00:48:05.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""though. Yeah. Okay, great.""" start="00:48:08.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""What are some features or packages you'd like""" start="00:48:11.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to see developed by the community?""" start="00:48:12.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We've already talked about the native HTTP""" start="00:48:15.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""display, but do you have any others?""" start="00:48:17.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So, I mean, developed by the community,""" start="00:48:21.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it depends what you mean.""" start="00:48:23.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So do you mean sending stuff that people""" start="00:48:27.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""could be working on in general?""" start="00:48:29.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think for now, like let's say the roadmap,""" start="00:48:32.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'll just give some of the things that I""" start="00:48:34.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""think should happen right now and that I""" start="00:48:36.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""would love for people to send patches for.""" start="00:48:38.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That's what I'm gonna be answering because""" start="00:48:40.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that's what I think I can answer.""" start="00:48:42.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Tree-sitter is a new thing,""" start="00:48:44.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? Improving and working on new modes""" start="00:48:48.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for, you know, TreeSitter,""" start="00:48:49.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it's not very hard. I think many people get""" start="00:48:52.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""into it and make sure to integrate them in""" start="00:48:55.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs core. I think that would be,""" start="00:48:57.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, on my wishlist.""" start="00:48:59.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""The other thing that is that we've asked for""" start="00:49:01.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""someone perhaps with a little bit more""" start="00:49:03.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""experience, I think, but working on""" start="00:49:05.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""refactoring capabilities in Emacs and a more""" start="00:49:08.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""general framework, I think,""" start="00:49:11.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for that. There are probably many more ideas""" start="00:49:13.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that I could give people,""" start="00:49:14.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but those would be the 2 big ones,""" start="00:49:17.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, that are also very uncontroversial.""" start="00:49:19.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's funny because for me,""" start="00:49:23.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I don't think refactoring would count as a""" start="00:49:26.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""feature, but it's so vital to allowing""" start="00:49:29.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""further features to be developed.""" start="00:49:31.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Otherwise, I remember the way Org Mode used""" start="00:49:33.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to be before we had Org Element and stuff""" start="00:49:36.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""like this. It was really complicated to write""" start="00:49:38.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""any kind of parsing stuff for it.""" start="00:49:40.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And now that we've got it,""" start="00:49:42.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it just opened up a world of possibility""" start="00:49:43.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""where parsing an Org Mode file is just made""" start="00:49:45.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""so much easier. So I think that's a wonderful""" start="00:49:47.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""answer because it goes,""" start="00:49:49.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it's multi-layered as you would expect from""" start="00:49:51.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""something that concerns the whole of Emacs.""" start="00:49:53.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Moving on to the next question.""" start="00:49:56.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""What is the hardest decision being made""" start="00:49:59.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""within Emacs dev for the last 3 years.""" start="00:50:02.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'm not sure, is it the decision in the last""" start="00:50:04.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""3 years or I'll let you interpret the""" start="00:50:07.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""question however you want.""" start="00:50:08.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Okay, well, I'll say this.""" start="00:50:10.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I started in August and I haven't had any""" start="00:50:13.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""really hard decisions so far.""" start="00:50:16.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So good news. Maybe Eli will have more for""" start="00:50:20.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the last 3 years. Keep it simple.""" start="00:50:22.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Thanks. Cool. Next question.""" start="00:50:28.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Any plans to integrate XWM into core?""" start="00:50:31.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs is a really good Winters manager.""" start="00:50:33.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That's super cool. I think EXWM is cool.""" start="00:50:37.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think they need to upgrade to Wayland""" start="00:50:39.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""somehow and that's not clear yet,""" start="00:50:41.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but you know, we don't have any current plans""" start="00:50:44.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to integrate it, no. Right,""" start="00:50:48.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Next question. Do you think it is a good idea""" start="00:50:51.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to choose Org Mode for writing documentation""" start="00:50:53.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""instead of tech info? I think that whatever""" start="00:50:57.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we do, it should be the people that are""" start="00:50:59.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""working on the documentation that should make""" start="00:51:01.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that choice. Currently we have,""" start="00:51:03.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, Modus themes and Org Mode itself is""" start="00:51:05.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""writing their documentation in Org Mode,""" start="00:51:07.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that's fine by me. It has some drawbacks,""" start="00:51:10.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it has some benefits, but most documentation""" start="00:51:12.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""is still in tech info.""" start="00:51:14.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Maybe we'd need to replace that at some""" start="00:51:17.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""point, I don't know. But for now,""" start="00:51:19.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that's what people know and use.""" start="00:51:21.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And if you find that as a barrier to""" start="00:51:24.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""contribute to Emacs, I mean,""" start="00:51:25.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just really write it as plain text.""" start="00:51:26.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We'll be happy to help you with the markup.""" start="00:51:28.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's a little bit, you know,""" start="00:51:30.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""finicky and stuff like that.""" start="00:51:31.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Great. Thanks for that.""" start="00:51:34.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Next question. What do you plan to work on in""" start="00:51:37.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs Core in the future?""" start="00:51:38.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'm a little bit hesitant to reply to that.""" start="00:51:42.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Of course I have ideas.""" start="00:51:43.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Of course there are projects that I'm working""" start="00:51:45.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""on. However, if I say it here,""" start="00:51:47.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I feel like, you know,""" start="00:51:48.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""then you'll hold me to it later and come ask,""" start="00:51:50.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""where is that feature?""" start="00:51:51.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So I'll just say there is plenty of stuff""" start="00:51:54.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that I'm working on, and if you want to know""" start="00:51:57.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""some of the stuff that I have been working""" start="00:51:58.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""on, check the Git log.""" start="00:51:59.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think that's just really as much as I want""" start="00:52:02.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to say about that right now.""" start="00:52:04.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You've added folks to just look at the path""" start="00:52:07.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""with the changelog and that's all you need.""" start="00:52:09.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""All right, moving on to the next question.""" start="00:52:12.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""What do you use Emacs for in your life other""" start="00:52:15.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""than working on Emacs itself?""" start="00:52:17.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Oh shit. So the big thing is programming,""" start="00:52:20.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? Now I work as a programmer.""" start="00:52:23.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But in general, I use org mode heavily.""" start="00:52:28.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I use it for all my writing.""" start="00:52:30.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I use it to write, prepare this talk.""" start="00:52:32.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I use it as a productivity system.""" start="00:52:34.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I use it for emails. I use it as an RSS""" start="00:52:41.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""reader. I do most of my computing.""" start="00:52:43.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I also have Firefox. So it's like Emacs and""" start="00:52:46.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Firefox for some reason.""" start="00:52:48.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I do read documentation in Emacs as well in""" start="00:52:51.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you, but yeah. Great. I'm still,""" start="00:52:57.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I do very much the same thing with you.""" start="00:53:00.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Like You've described exactly what I do.""" start="00:53:01.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I work as a programmer,""" start="00:53:02.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I use Augment for a lot of stuff,""" start="00:53:04.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and I think that describes a whole lot of""" start="00:53:06.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""people currently watching the stream.""" start="00:53:07.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Moving on to the next question.""" start="00:53:10.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""What could we do in order to make Emacs more""" start="00:53:12.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""attractive for younger users?""" start="00:53:13.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""This is an amazing question and I feel wholly""" start="00:53:17.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""unprepared to answer this.""" start="00:53:20.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Probably more introductory material aimed at""" start="00:53:23.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that age group. What do you mean by younger""" start="00:53:26.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""users? You know what would be really cool if""" start="00:53:28.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you had an Emacs for kids project?""" start="00:53:30.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That would be amazing.""" start="00:53:31.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'm not sure if that's what people are""" start="00:53:34.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""thinking about, but yeah,""" start="00:53:36.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that's about what I can say for now.""" start="00:53:39.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Good question. It is a very good question,""" start="00:53:43.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""like it comes back always to a key topic in""" start="00:53:45.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""EmacsConf, which is, how do we get more""" start="00:53:47.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""people to join us? Because it's a wonderful""" start="00:53:49.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""community. And how do we onboard people who""" start="00:53:51.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""are not programmers or people who are younger""" start="00:53:53.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""than the average Joe coming in those""" start="00:53:56.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""meetings? There's this Excellent article by""" start="00:54:01.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Paul Graham, I think, where he was describing""" start="00:54:05.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""how they used Emacs as the sort of customer""" start="00:54:08.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""service system. They built the customer""" start="00:54:11.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""service system for the early days of Amazon""" start="00:54:13.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in Emacs Lisp. And then they switched and all""" start="00:54:17.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the employees were sad.""" start="00:54:18.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So definitely there's more stuff that could""" start="00:54:21.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""be done in Emacs and be done better in Emacs.""" start="00:54:24.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So for sure, if people want to explore more""" start="00:54:27.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""stuff like that, that's amazing.""" start="00:54:28.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah. And for people who weren't around""" start="00:54:31.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""earlier today, we've had a presentation about""" start="00:54:33.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""how to get computer science students to use""" start="00:54:36.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs and trying to provide as much""" start="00:54:40.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""information and as much tutorial as needed""" start="00:54:43.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for them to understand what is the philosophy""" start="00:54:45.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""behind Emacs and how it influences the way""" start="00:54:47.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you work and so forth.""" start="00:54:49.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So you might want to revisit this discussion.""" start="00:54:51.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And we also have plenty of talks talking""" start="00:54:53.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""about this issue. And I can just add that I""" start="00:54:57.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""think it's very important for us as a""" start="00:55:00.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""community to just be enthusiastic to get more""" start="00:55:02.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""people involved. Because I mean,""" start="00:55:04.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""look, there's this meme where it's like,""" start="00:55:06.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I use Arch Linux, by the way,""" start="00:55:08.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I use Arch, by the way.""" start="00:55:09.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And for some reason, people using Arch keep""" start="00:55:12.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""telling you that they're using Arch.""" start="00:55:13.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That's fine. Use whatever you want.""" start="00:55:15.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's free software, I don't care.""" start="00:55:17.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think if you look at Vim users,""" start="00:55:21.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""they're very almost militant,""" start="00:55:22.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""oh, we're Vim, and Vim is the thing.""" start="00:55:25.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And Emacs users sometimes,""" start="00:55:26.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and it's fine. We take a bit of a more""" start="00:55:29.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""laid-back approach. We're like,""" start="00:55:30.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""yeah, I use Emacs, you use Vim,""" start="00:55:32.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""whatever. And that's fine.""" start="00:55:35.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, that's the correct approach,""" start="00:55:36.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think. You should respect what people want""" start="00:55:38.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to use. I don't care that people use VS Code""" start="00:55:40.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""or whatever. I'm not going to use that""" start="00:55:42.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""because it's too limiting.""" start="00:55:43.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's not really a workable environment.""" start="00:55:45.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But I think it's OK to be enthusiastic.""" start="00:55:48.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think it's okay to talk about that type of""" start="00:55:51.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""enthusiasm and anything that can help""" start="00:55:53.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""increase the enthusiasm around Emacs can only""" start="00:55:56.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""help the longevity of Emacs.""" start="00:56:00.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I agree and that's also 1 of the key""" start="00:56:04.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""objectives of EmacsConf.""" start="00:56:04.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's about bringing a lot of amazing people""" start="00:56:07.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to come talk, like you,""" start="00:56:08.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""about stuff that is very dear to you.""" start="00:56:10.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And it's very tangible how much you care,""" start="00:56:13.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""all of you, about what you're presenting.""" start="00:56:15.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And it's amazing to put all of you people on""" start="00:56:18.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just 48 hours talking about all of this and""" start="00:56:20.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""then creating so much content for people to""" start="00:56:22.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""watch. And I think it's really helping the""" start="00:56:24.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""enthusiasm to live on and to gather a little""" start="00:56:27.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""more snow as it comes down.""" start="00:56:29.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, I watch you Max Conf every year.""" start="00:56:31.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think it's a lot of fun.""" start="00:56:32.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Thank you. I'll take the compliment for""" start="00:56:37.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""everyone else in the team.""" start="00:56:38.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We're going to go a little bit longer with""" start="00:56:40.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the Q&A because we still have a lot of""" start="00:56:42.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""questions and if Stéphane is still willing to""" start="00:56:44.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""answer, I'm still willing to not go too bad""" start="00:56:47.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to hear a lot more of it.""" start="00:56:49.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, for me it's fine.""" start="00:56:50.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I have time. Great. So I think I've done this""" start="00:56:55.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""question. So, all right.""" start="00:56:56.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""How are we going to make sure that a cool""" start="00:56:59.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""idea is going to pass it through for the next""" start="00:57:01.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""generation, let's say 20 years later,""" start="00:57:03.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the generation still have the good knowledge""" start="00:57:05.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we have today. Yeah, so I mean,""" start="00:57:09.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""if you think about what does EMAX need to""" start="00:57:12.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""have staying power, so in general,""" start="00:57:14.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""they say, you know, if if when you start a""" start="00:57:16.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""company, if you have a company for 1 year,""" start="00:57:18.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""then in all likelihood,""" start="00:57:19.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you're going to have it for 2 years because,""" start="00:57:21.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, it's just so if you've had Emacs""" start="00:57:23.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for 4 years, I'm saying that we're going to""" start="00:57:25.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""have Emacs for the next 4 years as well.""" start="00:57:27.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Just based on that, I'm not sure the logic""" start="00:57:30.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""holds up, but you know,""" start="00:57:31.700" video="mainVideo-core" id="subtitle"]]
-[[!template text="""how does Emacs stay relevant?""" start="00:57:33.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think is the question.""" start="00:57:35.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Well, I think we need to continue working on""" start="00:57:37.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""all the types of exploratory work that people""" start="00:57:41.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""are doing in the community.""" start="00:57:43.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think there is fundamental stuff that needs""" start="00:57:45.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to be done. I mean, if people want to work""" start="00:57:47.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""on, you know, web rendering and Emacs,""" start="00:57:49.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""maybe that's the next,""" start="00:57:50.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, revolutionary step that we need""" start="00:57:53.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that could, you know, really showcase what""" start="00:57:55.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs, you know, as, you know,""" start="00:57:57.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""an idea, even if not Emacs as a software""" start="00:58:00.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""could be and, you know,""" start="00:58:01.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Because there is huge potential in the idea""" start="00:58:04.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""as such. So maybe that's something.""" start="00:58:06.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But I mean, from the point of view of core""" start="00:58:09.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development, I think we need to just continue""" start="00:58:11.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""working on the fundamental technologies.""" start="00:58:14.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""1 thing that I would like to eventually see""" start="00:58:17.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""is a better garbage collector.""" start="00:58:19.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We've talked about that for a long time,""" start="00:58:22.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but I mean, we need someone to do the job""" start="00:58:24.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""really. It's not very easy.""" start="00:58:27.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's very hard, actually.""" start="00:58:29.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So just continues working on stuff like that,""" start="00:58:33.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""continue with the exploration,""" start="00:58:34.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""continue using and being excited about Emacs.""" start="00:58:39.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think that's the best guarantee that we""" start="00:58:42.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""have. Yeah, and perhaps to echo something""" start="00:58:45.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that you said earlier,""" start="00:58:46.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the tools that you're using,""" start="00:58:47.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""like the emails, they've been around forever,""" start="00:58:49.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""they will be around forever.""" start="00:58:50.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""This pragmatic stance on the tools that""" start="00:58:53.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you're using, they might look stayed from the""" start="00:58:56.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""outside, but ultimately they are what permits""" start="00:58:58.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a sense of longevity to any kind of project""" start="00:59:01.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you embark upon. Also,""" start="00:59:05.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""in a sense, I think that the expectations""" start="00:59:06.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""might be changing in the sense that,""" start="00:59:09.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, when I started using GNU Linux,""" start="00:59:12.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know what the first thing I did was,""" start="00:59:14.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""because I couldn't get Xorg to run.""" start="00:59:16.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So the first thing you had to do was you had""" start="00:59:18.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to compile your own Linux kernel.""" start="00:59:20.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So you sit there and make manuconfig and""" start="00:59:22.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you'll like, try to read it and you've never""" start="00:59:24.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""done anything like this before.""" start="00:59:25.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You know, I was just a kid.""" start="00:59:27.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I had never been at this kind of,""" start="00:59:29.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, whatever. So I had to start with""" start="00:59:31.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that. And then you have to write the X or""" start="00:59:33.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""configuration file. And I had the patience""" start="00:59:35.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""for that. But nowadays,""" start="00:59:36.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""people have different expectations.""" start="00:59:38.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You just install something,""" start="00:59:39.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and it works. And we need to keep that in""" start="00:59:42.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""mind as well. So that's why I keep pushing as""" start="00:59:45.100" video="mainVideo-core" id="subtitle"]]
-[[!template text="""1 of my big things. We need to build a more""" start="00:59:48.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""cohesive experience out of the box.""" start="00:59:50.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Of course, that can be customizable.""" start="00:59:52.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You shouldn't shoehorn anything in just for""" start="00:59:55.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the sake of it. But you could get some things""" start="00:59:58.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""a little bit more for free.""" start="01:00:00.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And maybe some of us that have our own""" start="01:00:02.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""configs and we've been doing this for you""" start="01:00:04.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""know, 2, 05:10, even 20 years,""" start="01:00:07.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we could also see, you know,""" start="01:00:09.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""from the point of view of a new user that""" start="01:00:11.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""just installs VS Code and then they click,""" start="01:00:13.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""yes I use Python, yes I use that,""" start="01:00:15.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and then it just automatically works.""" start="01:00:18.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""You know what I mean? I mean,""" start="01:00:20.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""then could we get closer to that perhaps a""" start="01:00:24.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""little bit? I think that would also help.""" start="01:00:25.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, I think that's what we call the""" start="01:00:28.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""configuration wizard. And we were talking""" start="01:00:30.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""about this, I think, a couple of years ago at""" start="01:00:32.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""EmacsConf. I can't remember if it was with""" start="01:00:34.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Adam in the chat. Adam,""" start="01:00:35.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean Alpha Papa, or if it was with Bastien,""" start="01:00:37.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but I remember the idea cropping off.""" start="01:00:40.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Like, it's either you get a tutorial for""" start="01:00:42.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs, a proper tutorial,""" start="01:00:43.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""or you get a wizard, or you get both,""" start="01:00:45.140" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and then all is right for the world.""" start="01:00:47.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But definitely cool ideas being evoked.""" start="01:00:48.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'm gonna say I need to decree the time when""" start="01:00:52.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we finish because for me it is 11.15""" start="01:00:53.940" video="mainVideo-core" id="subtitle"]]
-[[!template text="""p.m. And I think my co-organizers are also""" start="01:00:59.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""willing to end the day and go rest because""" start="01:01:01.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we've got another day to go tomorrow.""" start="01:01:03.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So how about we take 3 minutes and 30 seconds""" start="01:01:05.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""to try to answer a little bit more succinctly""" start="01:01:07.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the questions we've got left.""" start="01:01:09.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""How does that sound, Stefan?""" start="01:01:10.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sounds great. Cool, so I'll start reading the""" start="01:01:15.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""questions then that we've got left.""" start="01:01:16.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So this 1 we've got. If you're willing to""" start="01:01:20.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""discuss it, what do you think about the""" start="01:01:22.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""recent controversy about use of CLLib in""" start="01:01:24.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs call code? Am I willing to discuss""" start="01:01:29.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that? I have said my opinion on Emacs,""" start="01:01:35.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Devel, I think. And I think I understand,""" start="01:01:40.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, the viewpoints of both sides in that""" start="01:01:44.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""discussion. It is true that some things,""" start="01:01:46.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, we have to think about that.""" start="01:01:49.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""There is a real problem,""" start="01:01:49.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think, when we have 3 different APIs for""" start="01:01:53.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""doing the same thing in Emacs.""" start="01:01:54.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And can we make that a little bit better?""" start="01:01:56.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, perhaps we could,""" start="01:01:58.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""right? So that's about as much as I'd like to""" start="01:02:03.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""say. Fair enough. I would have also accepted""" start="01:02:06.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that CL loops are ugly to write and they""" start="01:02:09.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""don't feel very lispy.""" start="01:02:09.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But I'll take your answer as well.""" start="01:02:11.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, some people think that.""" start="01:02:14.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I understand that position as well.""" start="01:02:17.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Right. Okay, next question.""" start="01:02:20.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""When we find a bug in our Emacs,""" start="01:02:22.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""do we need to try to replicate it on our side""" start="01:02:24.840" video="mainVideo-core" id="subtitle"]]
-[[!template text="""version, on our SID version,""" start="01:02:26.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""sorry, then update all the usual list package""" start="01:02:29.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we use, and if we succeed to replicate the""" start="01:02:31.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bug in this version, only then go to""" start="01:02:33.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""development version 30 and do the same.""" start="01:02:34.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Then only ask for assistance in reporting the""" start="01:02:37.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bug we found. So I believe when they""" start="01:02:40.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""encounter a bug, are people supposed to go to""" start="01:02:43.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""master to pull main and just to make sure""" start="01:02:47.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that they are on the latest version.""" start="01:02:48.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Is this something that you require?""" start="01:02:49.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We don't require that,""" start="01:02:51.460" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but we do try to encourage you to reproduce""" start="01:02:54.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""it on master if we think that it matters.""" start="01:02:56.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, so if you can, that's even better.""" start="01:03:00.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But if the bug is there in Emacs 29,""" start="01:03:03.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""maybe we want to fix it in Emacs 29.2.""" start="01:03:05.500" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So the latest point release is also fine.""" start="01:03:09.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Bugs in Emacs 28 at this point,""" start="01:03:12.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""like the previous major version,""" start="01:03:14.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""we might ask you to try to reproduce it on""" start="01:03:17.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs 29 because we're not planning more""" start="01:03:19.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""releases of old major versions.""" start="01:03:21.200" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So that's the fundamental reason for that.""" start="01:03:23.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Great. Thank you for your answer.""" start="01:03:25.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""All right. Moving on to the next question.""" start="01:03:27.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""On branching off sub-threads,""" start="01:03:28.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I note that they are less visible compared to""" start="01:03:31.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""starting a new thread in practice.""" start="01:03:32.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I am wondering if it is just my impression or""" start="01:03:35.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""something devs also observe.""" start="01:03:36.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, it's true. That's correct.""" start="01:03:39.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I don't know what to do about it.""" start="01:03:42.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""If you want more visibility,""" start="01:03:43.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I guess just start a new thread.""" start="01:03:45.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I don't know. I can only agree,""" start="01:03:48.480" video="mainVideo-core" id="subtitle"]]
-[[!template text="""really. I concur. That's true.""" start="01:03:50.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Okay. Next question. What about rewriting""" start="01:03:53.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Emacs in Rust? Use Guile instead of Elisp.""" start="01:03:56.600" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Multi-threaded Emacs. Make Emacs prettier and""" start="01:03:59.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""shiny. And of course, same defaults.""" start="01:04:01.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Just kidding. We are spoiled children because""" start="01:04:04.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you and Eli, Lars, and etc do an impressive""" start="01:04:07.280" video="mainVideo-core" id="subtitle"]]
-[[!template text="""work. I live in Emacs since 2001.""" start="01:04:10.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Thanks. That was a good 1.""" start="01:04:13.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Sane defaults. Okay, Well,""" start="01:04:17.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""thank you. Thanks for that comment.""" start="01:04:20.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""That made me chuckle. Next question by the""" start="01:04:23.300" video="mainVideo-core" id="subtitle"]]
-[[!template text="""same person, I assume.""" start="01:04:24.060" video="mainVideo-core" id="subtitle"]]
-[[!template text="""The only downside I see with copyright""" start="01:04:26.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""assignment is that 1 has to disclose their""" start="01:04:28.400" video="mainVideo-core" id="subtitle"]]
-[[!template text="""real identity. Would it be a possibility to""" start="01:04:31.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""assign a copyright under a nickname?""" start="01:04:32.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, you don't have to say a real name.""" start="01:04:34.640" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Just register some pseudonym.""" start="01:04:36.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""The FSF does need your real name,""" start="01:04:39.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but that's kept private only.""" start="01:04:40.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So feel free to reach out to assign at""" start="01:04:45.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""gnu.org and ask more about that.""" start="01:04:47.860" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Right. All right, next question.""" start="01:04:51.180" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Do you think it is possible to reach an""" start="01:04:53.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""agreement on sane defaults for better""" start="01:04:54.880" video="mainVideo-core" id="subtitle"]]
-[[!template text="""out-of-the-box experience?""" start="01:04:56.720" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Yeah, so your sane is not my sane""" start="01:04:59.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""necessarily. So that's the fundamental""" start="01:05:01.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""problem that we're discussing here.""" start="01:05:02.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I think it's a social,""" start="01:05:03.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""not a technical problem.""" start="01:05:04.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We do change defaults sometimes,""" start="01:05:07.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but I mean, there is also some staying power.""" start="01:05:09.620" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So it's understandable that,""" start="01:05:11.980" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, it's, we can't just change them""" start="01:05:13.780" video="mainVideo-core" id="subtitle"]]
-[[!template text="""willy nilly and then flip flop between,""" start="01:05:15.580" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, 1 or the other kind of thing.""" start="01:05:18.080" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So it does take a little bit more time.""" start="01:05:19.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But yeah, sure, we can.""" start="01:05:22.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""We do change defaults at times.""" start="01:05:25.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""But it's perhaps more slower than what some""" start="01:05:29.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""people would prefer, for sure.""" start="01:05:30.920" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So that's, yeah. Right,""" start="01:05:35.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""all right. We have 2 more questions.""" start="01:05:37.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""So will XWidgets have a future?""" start="01:05:39.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Seeing the new bugs popping up in the latest""" start="01:05:41.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""XWidget dev. Not sure if there was the rest""" start="01:05:45.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""of the question, But on XWidgets,""" start="01:05:46.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""can you tell us a little more?""" start="01:05:47.440" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I'm not really following now.""" start="01:05:50.380" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I mean, I'm not seeing a lot of development""" start="01:05:51.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""on XWidgets currently.""" start="01:05:53.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Some people have done work in fixing up a few""" start="01:05:56.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""bugs, but I think that feature really needs""" start="01:05:59.820" video="mainVideo-core" id="subtitle"]]
-[[!template text="""more love. So I think we need,""" start="01:06:01.800" video="mainVideo-core" id="subtitle"]]
-[[!template text="""you know, help is welcome,""" start="01:06:03.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""patch is welcome. That's what I can say about""" start="01:06:05.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""that. All right, and our final question of""" start="01:06:11.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the day. Have you voted for Emacs as the""" start="01:06:13.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""software of the year on the Tuxes by Jupyter""" start="01:06:14.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Broadcasting? I did because Emacs 29 is""" start="01:06:17.320" video="mainVideo-core" id="subtitle"]]
-[[!template text="""great. Thank you. Okay,""" start="01:06:19.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""well, good job voting.""" start="01:06:20.160" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I didn't know, I don't know what Tuxy is on""" start="01:06:22.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Jupyter broadcasting, but look it up and go""" start="01:06:25.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""vote. So I wish I could tell you,""" start="01:06:27.660" video="mainVideo-core" id="subtitle"]]
-[[!template text="""I assume with Tux, it might be something""" start="01:06:29.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""related to Linux, but that's as much as I can""" start="01:06:32.680" video="mainVideo-core" id="subtitle"]]
-[[!template text="""say. All right, well, Stefan,""" start="01:06:34.340" video="mainVideo-core" id="subtitle"]]
-[[!template text="""thank you so much for taking the time not""" start="01:06:36.420" video="mainVideo-core" id="subtitle"]]
-[[!template text="""only to do a wonderful presentation,""" start="01:06:37.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""but also for answering all the questions of""" start="01:06:39.520" video="mainVideo-core" id="subtitle"]]
-[[!template text="""the community. Do you have anything else to""" start="01:06:41.040" video="mainVideo-core" id="subtitle"]]
-[[!template text="""add? Just really thanks for all the questions""" start="01:06:44.900" video="mainVideo-core" id="subtitle"]]
-[[!template text="""and thanks for staying.""" start="01:06:46.260" video="mainVideo-core" id="subtitle"]]
-[[!template text="""It's been a long day, a long conference,""" start="01:06:49.120" video="mainVideo-core" id="subtitle"]]
-[[!template text="""so thanks for staying and listening to my""" start="01:06:51.020" video="mainVideo-core" id="subtitle"]]
-[[!template text="""talk as well. Really appreciate it.""" start="01:06:52.360" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Appreciate the good work you guys are doing""" start="01:06:54.000" video="mainVideo-core" id="subtitle"]]
-[[!template text="""behind the scenes, organizing,""" start="01:06:54.960" video="mainVideo-core" id="subtitle"]]
-[[!template text="""setting everything up.""" start="01:06:56.240" video="mainVideo-core" id="subtitle"]]
-[[!template text="""And really humbled to be a part of this""" start="01:07:00.220" video="mainVideo-core" id="subtitle"]]
-[[!template text="""community. So thank you all.""" start="01:07:01.560" video="mainVideo-core" id="subtitle"]]
-[[!template text="""Well I can assure you that no 1 either in the""" start="01:07:05.740" video="mainVideo-core" id="subtitle"]]
-[[!template text="""organization team or the people watching now""" start="01:07:07.540" video="mainVideo-core" id="subtitle"]]
-[[!template text="""felt like it was tiring to stay and listen to""" start="01:07:10.760" video="mainVideo-core" id="subtitle"]]
-[[!template text="""your answers. So thank you so much Stefan.""" start="01:07:12.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""All right. Hi again, everyone.""" start="00:00:02.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's been a while. Well,""" start="00:00:03.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""actually, it's been like 2 minutes tops.""" start="00:00:04.839" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We were just with John Wheatley,""" start="00:00:07.819" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and now we are with Stefan Krangas.""" start="00:00:09.099" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Hi. Hi. So as we said before,""" start="00:00:11.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Stefan is co-maintainer now of Is it the""" start="00:00:16.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""entire Emacs project? How do you describe""" start="00:00:20.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this? Yeah, co-maintainer of GNU Emacs.""" start="00:00:22.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Right, perfect. So you know what?""" start="00:00:27.439" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Because I'm sure everyone is dying to hear""" start="00:00:29.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""everything you've got to say in your""" start="00:00:32.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""presentation I'm just going to shut up now""" start="00:00:33.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and leave the floor to you.""" start="00:00:36.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Do you need to share your screen or anything?""" start="00:00:37.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""No. Okay great well I'll just cut my webcam""" start="00:00:40.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""off I'll still be in the background so do not""" start="00:00:45.239" video="mainVideo-core" id="subtitle"]]
+[[!template text="""hesitate if you've got any problem I'm still""" start="00:00:47.059" video="mainVideo-core" id="subtitle"]]
+[[!template text="""around And I'll see you just beacon whenever""" start="00:00:48.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you're done. And I'll show up with the""" start="00:00:52.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""questions. All right? Thank you,""" start="00:00:53.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Leo. And thank you, everyone,""" start="00:00:56.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for being here. I'm Stefan Kangas.""" start="00:00:58.739" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So as Leo explained, I am recently appointed""" start="00:01:02.739" video="mainVideo-core" id="subtitle"]]
+[[!template text="""as a co-maintainer of GNU Emacs,""" start="00:01:06.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""which a role that I'm fulfilling currently""" start="00:01:10.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""with Eli Sretsky, who's been co-maintainer""" start="00:01:13.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for quite some time. So I got the question to""" start="00:01:18.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""be a co-maintainer from Richard in August""" start="00:01:23.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this year. And of course,""" start="00:01:26.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""when you get a question like that,""" start="00:01:29.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I couldn't not say yes.""" start="00:01:31.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So here we are. I can't tell you how excited""" start="00:01:34.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I am to have this opportunity to address the""" start="00:01:39.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""community in this way.""" start="00:01:45.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'm really humbled, of course,""" start="00:01:47.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to be part of it, and to be able to serve the""" start="00:01:50.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""community in this capacity.""" start="00:01:55.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I've used Emacs, I think many of you might""" start="00:02:00.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""also have used Emacs for quite some time,""" start="00:02:04.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but I'm going on 2 decades as an Emacs user.""" start="00:02:06.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""My involvement in Emacs Lisp development is,""" start="00:02:11.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, almost as long,""" start="00:02:14.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but my core development goes back only 4,""" start="00:02:16.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""5 years. I have to also thank the EmacsConf""" start="00:02:19.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""organizers who are doing,""" start="00:02:27.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, a tremendous job and have done a""" start="00:02:29.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""tremendous job over the years in really""" start="00:02:31.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""building and strengthening what I think is""" start="00:02:34.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this fantastic community of users and""" start="00:02:38.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""developers and people interested in Emacs.""" start="00:02:42.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I actually had the chance to meet up with Eli""" start="00:02:46.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sretzky, as well as another Emacs hacker,""" start="00:02:50.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Andrea Corallo, when I was at the GNU""" start="00:02:53.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""project's 40 years celebration,""" start="00:02:57.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""40 years since the GNU project was announced.""" start="00:03:00.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And it was very inspiring in general to meet""" start="00:03:05.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""people. And I think EmacsConf should also,""" start="00:03:09.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, serve to inspire and sort of help""" start="00:03:12.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bring something to the type of work that many""" start="00:03:19.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of us are doing to improve Emacs,""" start="00:03:22.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""whether it's in package development or in""" start="00:03:24.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""core, to bring out the new and exciting ideas""" start="00:03:26.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and get people enthusiastic about Emacs,""" start="00:03:29.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""about hacking on Emacs.""" start="00:03:34.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""This is my little attempt to contribute with""" start="00:03:38.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""let's say 2 things. I will first try to""" start="00:03:45.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""present how we do Emacs core development and""" start="00:03:49.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""why we've done some of the choices that we""" start="00:03:54.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""have, because We have seen at times that""" start="00:03:58.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""perhaps people aren't always clear on this or""" start="00:04:02.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that aspect. So maybe this will be""" start="00:04:06.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""enlightening. I will also try to present some""" start="00:04:08.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""kind of vision for what Emacs could be with""" start="00:04:12.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""your help. Emacs is already very good,""" start="00:04:18.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""as we all know, but we could be even better.""" start="00:04:21.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That's the reality of any type of software""" start="00:04:27.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development. So the overall idea of this talk""" start="00:04:30.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""is to tell you, if you're an Emacs list""" start="00:04:35.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""package developer today,""" start="00:04:38.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""why you should become an Emacs core""" start="00:04:40.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""developer, and the sort of steps that you""" start="00:04:44.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""might want to take to do that,""" start="00:04:47.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""or how you can help Emacs core development.""" start="00:04:49.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Even if you're just a user and you found a""" start="00:04:52.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bug, report it. Perhaps you have a feature""" start="00:04:54.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""request that you'd like to discuss.""" start="00:04:57.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think we need more interaction in general""" start="00:04:58.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""between Emacs core developers,""" start="00:05:02.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""typically on emacsdevil.gnu.org,""" start="00:05:05.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the mailing list that we use to coordinate""" start="00:05:08.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""our development efforts,""" start="00:05:12.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""between Emacs devil package developers and""" start="00:05:15.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""users, Because there is so much great stuff""" start="00:05:19.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""really going on in the community.""" start="00:05:22.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But I think sometimes the step to core""" start="00:05:25.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development seems big and perhaps even a""" start="00:05:28.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""little bit scary. So I'm hoping to be able to""" start="00:05:32.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""help bridge that gap, even if just a little""" start="00:05:35.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bit. We need more people contributing to""" start="00:05:38.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs itself. And also a small disclaimer""" start="00:05:43.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""here, in this talk I will only be able to""" start="00:05:46.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""speak for myself, not for GNU or the Emacs""" start="00:05:49.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""project, even if it's like a little bit more""" start="00:05:53.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""official, but I will also try to give the""" start="00:05:56.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""view of the project where it makes sense to""" start="00:05:58.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""do so. Keep in mind, I'm only 1 of the""" start="00:06:01.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""maintainers, the co-maintainer together with""" start="00:06:04.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Eli, and I can't just make decisions""" start="00:06:06.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""arbitrarily. In a sense,""" start="00:06:09.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'm as a co-maintainer and trusted as a""" start="00:06:11.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""steward and trusted by,""" start="00:06:14.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of course, the GNU project,""" start="00:06:15.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but also by the community That we really""" start="00:06:16.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""can't just take decisions,""" start="00:06:22.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, arbitrarily. Even if it sometimes""" start="00:06:24.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""perhaps may seem so, or it may feel that way,""" start="00:06:27.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we really have to realize that we can't just""" start="00:06:31.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""push too much of just a personal agenda to""" start="00:06:35.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the extent that it doesn't line up with what""" start="00:06:39.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""is best for eMacs going forward,""" start="00:06:41.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and the more overall picture of that.""" start="00:06:47.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So there are limitations that come with the""" start="00:06:50.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""job, if you like. So 1 question I often,""" start="00:06:52.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I actually got this week when I started a new""" start="00:07:00.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""assignment at work, and I got the question""" start="00:07:02.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""when I said I'm involved in Emacs""" start="00:07:06.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development. And then someone asked,""" start="00:07:08.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""oh, is Emacs still developed?""" start="00:07:10.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Isn't it done almost? And I answered to that,""" start="00:07:12.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""yes, we are still around.""" start="00:07:16.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We're going on 40 years now as a software""" start="00:07:17.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""project. Not many projects actually can claim""" start="00:07:21.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that type of longevity.""" start="00:07:26.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But Emacs is among those few that can.""" start="00:07:29.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And of course, we have had some very exciting""" start="00:07:33.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""developments in recent versions.""" start="00:07:36.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think John just gave you an update on that.""" start="00:07:38.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But we had just some highlights out of many""" start="00:07:41.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""highlights that you could give,""" start="00:07:46.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""really, we got the TreeSetter support in""" start="00:07:48.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs 29 that we now need to sort of extend""" start="00:07:50.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and develop. We have merged EGLOT,""" start="00:07:54.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""so we have LSP support out of the box,""" start="00:07:56.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think is a huge improvement.""" start="00:07:59.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Native compilation, of course,""" start="00:08:01.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a big feature. I mean,""" start="00:08:02.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that was Andrea's job,""" start="00:08:06.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""really, for performance.""" start="00:08:08.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And it turns out that in many types of""" start="00:08:11.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""workloads and the types of stuff that people""" start="00:08:14.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""are doing, it often matters.""" start="00:08:15.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And we're hoping to make that the default,""" start="00:08:18.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""perhaps already in Emacs 30.""" start="00:08:21.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So there are things that are happening that""" start="00:08:24.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""fundamentally make Emacs better at a very""" start="00:08:26.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""core level. So, of course,""" start="00:08:32.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""why wouldn't you want to be involved in such""" start="00:08:37.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""an exciting and, I think,""" start="00:08:41.679" video="mainVideo-core" id="subtitle"]]
+[[!template text="""dynamic project? How is Emacs developed?""" start="00:08:43.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Well, this is, I think,""" start="00:08:51.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""perhaps to some people,""" start="00:08:53.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a little bit more of a threshold,""" start="00:08:54.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""if you like, because I think all of us know""" start="00:08:56.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""really that there is exciting and cool stuff""" start="00:08:59.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that is going on in Emacs and has been going""" start="00:09:02.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""on over the last couple of years and we'll""" start="00:09:06.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""see even more of that,""" start="00:09:08.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, going forward.""" start="00:09:10.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""1 thing is that communication still takes""" start="00:09:12.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""place over a mailing list in 2023.""" start="00:09:16.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So we have emacsdevil at gnu.org,""" start="00:09:21.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and that's where we develop Emacs.""" start="00:09:24.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We use, we send patches back and forth,""" start="00:09:26.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we comment on patches.""" start="00:09:30.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And actually this workflow is very good,""" start="00:09:32.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""if you're used to it. Because guess what?""" start="00:09:36.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""As Emacs users, we like doing everything we""" start="00:09:39.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""can in Emacs, especially the core tasks that""" start="00:09:42.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we're doing, such as developing Emacs itself.""" start="00:09:45.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Of course, you want to do that fully within""" start="00:09:50.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs. So we hack Emacs Lisp in Emacs,""" start="00:09:52.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we hack C in Emacs, we respond to emails also""" start="00:09:55.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""from Emacs, respond to bug reports,""" start="00:10:00.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""manage bug reports. We do all that stuff""" start="00:10:02.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""very, very smoothly. And it doesn't really""" start="00:10:05.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""matter in a sense, what is the medium?""" start="00:10:07.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It happens to be email.""" start="00:10:10.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Technically it could be anything,""" start="00:10:12.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but email really has that type of staying""" start="00:10:14.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""power where we've been able to use it for a""" start="00:10:16.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""long time. And this is how,""" start="00:10:19.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and we're still able to use it.""" start="00:10:22.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And this is how free software was always""" start="00:10:24.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""developed in the past.""" start="00:10:25.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Only in the last, let's say 10,""" start="00:10:26.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""15 years, We've had more development taking""" start="00:10:28.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""place perhaps on forges like GitHub,""" start="00:10:32.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""GitLab, whatever. But we are 1 of the""" start="00:10:35.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""holdouts. I mean, there are others,""" start="00:10:39.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of course, like the Linux kernel has mailing""" start="00:10:40.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""lists. They're not trying to do that scale""" start="00:10:42.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development on GitHub.""" start="00:10:44.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And this is not just because we're Luddites""" start="00:10:49.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that refuse to change.""" start="00:10:51.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We just have to do it in the old way,""" start="00:10:53.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""because it is the old way,""" start="00:10:55.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and that's the way it should be.""" start="00:10:57.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""No, it's actually because we,""" start="00:10:58.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""as core developers, the core development team""" start="00:11:01.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and the people already involved and doing""" start="00:11:03.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""tremendous, I mean large amounts of work in""" start="00:11:05.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs has very efficient workflows built up""" start="00:11:08.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""based on this. So of course,""" start="00:11:12.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean moving to something else is something""" start="00:11:15.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that we might like to do,""" start="00:11:18.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but we're not yet clear on how to do it""" start="00:11:20.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""exactly and what to move to.""" start="00:11:24.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So these are the types of discussions that""" start="00:11:26.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we're looking at. Can we still support a""" start="00:11:28.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""mailing, an email type workflow while moving""" start="00:11:30.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to something else? That would be 1 of the big""" start="00:11:34.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""ones. I think another thing that trips people""" start="00:11:36.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""up is that we used a bug tracker that,""" start="00:11:38.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, maybe some people,""" start="00:11:40.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I've heard people say it's archaic.""" start="00:11:42.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's called Debugs. I think maybe Debugs gets""" start="00:11:47.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a bit of a bad rap. I think that bugs is a""" start="00:11:49.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""good piece of software.""" start="00:11:52.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It wasn't developed in 2023.""" start="00:11:53.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, that's much as clear.""" start="00:11:55.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's a little bit older,""" start="00:11:57.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but it really is a workhorse of the Debian""" start="00:11:59.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""project, which is obviously a project that's""" start="00:12:01.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""developed in a very different way than Emacs""" start="00:12:03.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""is. It's on a completely different scale,""" start="00:12:09.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of course, much bigger,""" start="00:12:11.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""many more developers, and so on.""" start="00:12:12.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But I think the developers did a good job for""" start="00:12:15.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the time. But it might be showing its age,""" start="00:12:17.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""perhaps, in places. Perhaps,""" start="00:12:20.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""again, it's the email workflow.""" start="00:12:23.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And people see that as a little bit of a""" start="00:12:25.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""threshold. It seems alien.""" start="00:12:27.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's a little bit strange,""" start="00:12:30.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the types of workflows that you have there.""" start="00:12:32.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So we are seeing some limitations with that""" start="00:12:35.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""box. And again, how do you report bugs?""" start="00:12:38.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Well, in a sense, it's easy.""" start="00:12:41.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You send an email to bug-gnu-emacs at gnu.org""" start="00:12:42.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and you copy in whatever you get from,""" start="00:12:47.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, report the EMAX bug or if you have,""" start="00:12:51.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, send mail set up locally,""" start="00:12:53.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just hit control C, control C and it's sent""" start="00:12:55.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to the bug tracker and that's fine.""" start="00:12:58.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But also I have to mention that there is this""" start="00:13:03.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""very good package on GNU Elpas.""" start="00:13:08.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""If you're ever trying to read the Emacs bug""" start="00:13:10.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""tracker or following along in Emacs""" start="00:13:13.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development, I really recommend install the""" start="00:13:16.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""package devbugs from GNU Elpa.""" start="00:13:19.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's so good. And again,""" start="00:13:22.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it's built on GNU, it's all integrated in""" start="00:13:24.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs, it's so much better than using the web""" start="00:13:26.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and so on. And if you really want to get into""" start="00:13:30.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it, you can download the bug tracker archives""" start="00:13:33.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and the mailing list archives,""" start="00:13:38.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and you can put them locally,""" start="00:13:39.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you can have them searchable,""" start="00:13:41.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and you can have whatever experience you""" start="00:13:42.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""like. So, I mean, it's really a flexible""" start="00:13:44.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""workflow, but it's a bit strange,""" start="00:13:48.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""perhaps, to some people.""" start="00:13:51.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So we also think supporting only this""" start="00:13:53.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""workflow might be a little bit too limiting.""" start="00:13:58.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So we do want to move over to something like""" start="00:14:00.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""GitLab, perhaps Sourcehat or something""" start="00:14:04.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""similar. We've had a couple of discussions""" start="00:14:06.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""about that over the last couple of years.""" start="00:14:10.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think even before that,""" start="00:14:14.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but that's how far back I've been involved,""" start="00:14:15.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and definitely it's come up occasionally.""" start="00:14:18.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think we are less far away than perhaps""" start="00:14:23.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""ever is how I would express that,""" start="00:14:27.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and in the sense that the remaining blockers""" start="00:14:30.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for just making the shift,""" start="00:14:36.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""let's say, are I think,""" start="00:14:38.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, first of all, we're talking about""" start="00:14:40.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""limitations, perhaps in the software,""" start="00:14:42.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""they're well defined, and they're not as""" start="00:14:44.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""amountable. I don't think they have to be in""" start="00:14:46.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""any case. We should be able to make some""" start="00:14:49.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""progress. The main thing that we're lacking""" start="00:14:50.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""now is not more discussion or more people""" start="00:14:54.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""prodding us to just please switch over.""" start="00:15:00.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""No, we're looking for volunteers.""" start="00:15:03.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""If you think that you,""" start="00:15:05.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, have what it takes to sort of come""" start="00:15:08.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in and help us do something like that and""" start="00:15:10.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""work together with us,""" start="00:15:14.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, to see what can be done,""" start="00:15:15.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""perhaps some, a few things would need to be""" start="00:15:16.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""changed in GitLab. I don't think anything""" start="00:15:20.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""huge, but maybe there are some patches to be""" start="00:15:23.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""written and sent upstream,""" start="00:15:26.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""or maybe we need to do some local hacks or""" start="00:15:27.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""whatever. If you wanna do that,""" start="00:15:30.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""please contact us, emacsdevil.""" start="00:15:33.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We'll be very happy to talk to you.""" start="00:15:35.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And then we can start making progress.""" start="00:15:38.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So I'm really hoping that that sound like""" start="00:15:40.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""will come into place. But we need to,""" start="00:15:42.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""if we do switch over, we need to preserve the""" start="00:15:46.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""good parts of our email-based workflows.""" start="00:15:52.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So there are requirements there so that we""" start="00:15:54.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""can continue to do our job as maintainers,""" start="00:15:57.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""if you like. Another thing is that we've""" start="00:16:01.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sometimes seen that there's a bit of a""" start="00:16:04.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""different culture perhaps on mailing lists""" start="00:16:08.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and on Emacs devil than what many people are""" start="00:16:11.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""used to, especially like you've used perhaps,""" start="00:16:15.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""many people might be in university and""" start="00:16:17.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""they've started using Emacs,""" start="00:16:20.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""maybe got into a little bit of package""" start="00:16:23.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development and starting to get the ropes of""" start="00:16:25.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that and are very used to working on places""" start="00:16:29.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""like GitLab or something like that,""" start="00:16:32.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""then the type of culture and way of""" start="00:16:35.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""communicating that we use in Emacs might be a""" start="00:16:38.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""little bit different. And of course,""" start="00:16:42.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it's different in the sense that mailing""" start="00:16:44.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""lists have always, I mean,""" start="00:16:47.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""let's say hacker culture,""" start="00:16:49.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""whatever you want to call it,""" start="00:16:51.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""have always communicated in a particular way""" start="00:16:52.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""using mailing lists. So it's like succinct to""" start="00:16:54.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the point, perhaps I'm skipping a few""" start="00:16:58.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""pleasantries. And the idea is that you should""" start="00:17:00.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just use it in as effective way as possible,""" start="00:17:03.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""so that also the archives are usable.""" start="00:17:08.359" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And the other thing is that generally people""" start="00:17:11.319" video="mainVideo-core" id="subtitle"]]
+[[!template text="""involved in developing free software has to""" start="00:17:13.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""deal with a lot of incoming traffic,""" start="00:17:16.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""emails. They don't have the bandwidth if it's""" start="00:17:19.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""too much noise. You really need to be strict""" start="00:17:25.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to keep the signal to noise ratio high.""" start="00:17:28.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We have some weird terminology on the Emacs""" start="00:17:31.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""devil. People tell us,""" start="00:17:35.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we say sometimes install patches which""" start="00:17:38.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""basically means push to master or merge pull""" start="00:17:40.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""requests because we've used other version""" start="00:17:44.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""control systems in the past where it might""" start="00:17:46.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""have made more sense to say install patches.""" start="00:17:48.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And then you sort of, I don't know,""" start="00:17:51.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I say it. Don't ask me why.""" start="00:17:52.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But it feels natural after a while.""" start="00:17:54.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You install a patch. It's clear what you""" start="00:17:56.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""mean. You don't have to worry about which""" start="00:17:57.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""branch it's on. So it's a little bit""" start="00:18:02.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""historical there. So there is some of that""" start="00:18:06.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""culture going on. It might be different.""" start="00:18:10.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We don't use emojis that much.""" start="00:18:11.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That's another thing. There is no like,""" start="00:18:14.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you can click the little like button at the""" start="00:18:16.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bottom of a comment or an email as you could""" start="00:18:20.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""on GitHub. But there are exceptions and it's""" start="00:18:25.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""not like someone will send you angry emails""" start="00:18:27.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""if you use an emoji or something like that.""" start="00:18:29.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But it can come off as perhaps Because people""" start="00:18:31.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""are pressed for time also when replying to""" start="00:18:34.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""all these emails. So it might come off as a""" start="00:18:37.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""little bit short, but that's just how it is.""" start="00:18:39.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think We have heard this comment before""" start="00:18:43.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that mailing lists are scary or Emacs devil""" start="00:18:46.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""is scary or core development is scary.""" start="00:18:50.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I've touched a few of these points a""" start="00:18:54.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""little bit already. I think,""" start="00:18:58.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""yeah, maybe a little bit.""" start="00:18:59.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""For example, we don't use emojis very short""" start="00:19:02.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in the communication. And we always use""" start="00:19:06.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""correct grammar and spelling.""" start="00:19:10.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We take that seriously because it's important""" start="00:19:13.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for being clear in your written communication""" start="00:19:15.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""when all you have is written communication.""" start="00:19:19.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's really important.""" start="00:19:22.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But it's not like If you come in there and""" start="00:19:26.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you don't know all these cultural rules and""" start="00:19:31.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""all these patterns, then you know you will We""" start="00:19:33.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""won't talk to you No Actually,""" start="00:19:36.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we try to be as welcoming as we can and and""" start="00:19:37.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""be mindful and you know people not Everyone""" start="00:19:41.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""has English as their native language,""" start="00:19:44.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for example. So perhaps someone says""" start="00:19:47.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""something, and it might come off as rude,""" start="00:19:49.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but maybe it's just a direct translation.""" start="00:19:51.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So we're trying to give a lot of whatever the""" start="00:19:53.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""native language is. So we try to give a lot""" start="00:19:56.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of leeway and just be a little bit,""" start="00:19:59.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, flexible and focus on,""" start="00:20:01.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, the key, key points,""" start="00:20:03.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""which are the technical things,""" start="00:20:04.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the technical decisions,""" start="00:20:06.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""technical arguments, rather than,""" start="00:20:07.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, getting bogged down in a lot of,""" start="00:20:09.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, personal, you know,""" start="00:20:11.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""discussions and flame wars.""" start="00:20:15.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So, I mean, there are these things to be""" start="00:20:19.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""aware of, you know, it's just a little bit""" start="00:20:21.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""different. I don't think it's anything huge.""" start="00:20:23.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I wouldn't be, you know,""" start="00:20:25.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think it would be sad if people felt too""" start="00:20:28.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""intimidated by that. It just is what it is.""" start="00:20:30.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And if you spend some time there,""" start="00:20:32.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you'll see how people generally communicate.""" start="00:20:33.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sometimes, there are a lot of people on""" start="00:20:38.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""EmacsDevil. It's a public mailing list.""" start="00:20:41.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""A lot of people just sign up to follow Emacs""" start="00:20:43.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development. Sometimes they chime in.""" start="00:20:46.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think this is in general a good thing.""" start="00:20:48.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think it should be a public mailing list.""" start="00:20:50.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sometimes this leads to weird situations from""" start="00:20:53.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just a point of view as an Emacs maintainer,""" start="00:21:00.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? I mean, I try to say something and it""" start="00:21:03.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""doesn't always say, oh,""" start="00:21:07.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""he's the maintainer or whatever.""" start="00:21:08.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So when I say something,""" start="00:21:10.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it should carry a little bit more weight than""" start="00:21:11.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""some unknown person from the internet who has""" start="00:21:13.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""an opinion and decided to send it to""" start="00:21:16.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""EmacsDevil. So it's good to be a little bit""" start="00:21:18.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""aware of who is a little bit more involved""" start="00:21:21.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""with the project. I would check out the""" start="00:21:23.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""maintainers file. I would check,""" start="00:21:25.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""see in the Git log, do these people actually""" start="00:21:27.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""have any anything in core?""" start="00:21:31.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And if not, maybe, you know,""" start="00:21:33.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""there, we won't really,""" start="00:21:35.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""even if they express an opinion very""" start="00:21:39.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""strongly, even if they're a little bit rude,""" start="00:21:41.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""maybe they're not even involved in Emacs""" start="00:21:42.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development. I mean, often,""" start="00:21:44.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that's the case we have some people,""" start="00:21:46.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""unfortunately, at times,""" start="00:21:48.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we have random people from the internet come""" start="00:21:50.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in on the mailing list and they're just a""" start="00:21:52.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""little bit rude, or they say an opinion""" start="00:21:54.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that's not exactly helpful.""" start="00:21:57.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think you need to be aware.""" start="00:22:00.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, these things happen in any forum,""" start="00:22:02.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but it happens on EmacsDevO as well.""" start="00:22:04.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So just be a little bit aware of who you're""" start="00:22:07.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""talking to, what people are doing.""" start="00:22:10.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It can help to Check the archives,""" start="00:22:13.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""see who writes what, and so on.""" start="00:22:16.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But it's not something that I think is a huge""" start="00:22:20.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""problem. It is just, again,""" start="00:22:23.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""something to be aware of.""" start="00:22:24.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We have the new kind of communication""" start="00:22:25.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""guidelines in place, which basically says""" start="00:22:28.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that you should be nice to people and stay""" start="00:22:30.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""focused on the technical problem,""" start="00:22:33.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""try to see things from another person's point""" start="00:22:36.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of view, this kind of stuff.""" start="00:22:38.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So we're really trying to be as inclusive as""" start="00:22:39.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""possible and just stay correct in general.""" start="00:22:42.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And sometimes, I mean,""" start="00:22:46.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""not everyone, it's a public list.""" start="00:22:48.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We moderate it, but not to a huge extent,""" start="00:22:50.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? So sometimes people get away with a""" start="00:22:52.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""little bit of perhaps stretching the""" start="00:22:57.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""boundaries of what might be included in the""" start="00:23:02.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""kind communication guidelines,""" start="00:23:04.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sort of the fences and limitations of that.""" start="00:23:08.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But I would just ignore that.""" start="00:23:11.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sometimes it happens that we,""" start="00:23:13.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""as happens in any forum,""" start="00:23:15.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""by the way, you just, we have these very big""" start="00:23:17.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""threads. We start discussing something else.""" start="00:23:19.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Perhaps you send us a patch and it just""" start="00:23:21.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""devolves into us discussing something""" start="00:23:24.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""completely different. And of course I partake""" start="00:23:26.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in that, not better than anyone else,""" start="00:23:28.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but it just happens. I mean,""" start="00:23:30.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it's not your fault. It's just what happens""" start="00:23:32.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sometimes in forums, and don't mind that.""" start="00:23:34.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And it's a little bit easier to do that in""" start="00:23:37.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""emails, because you just change the subject,""" start="00:23:39.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and now it's supposed to be a different""" start="00:23:41.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""thread, but it comes as replies usually to""" start="00:23:43.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you, which wouldn't happen perhaps in a""" start="00:23:45.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""different workflow. So it's something to be""" start="00:23:48.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""aware of as well. Another thing is that,""" start="00:23:49.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of course, in written communication,""" start="00:23:53.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""tone doesn't always come across.""" start="00:23:55.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""If someone sounds negative,""" start="00:23:57.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sometimes it's just them being neutral.""" start="00:23:59.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sometimes you get no replies.""" start="00:24:01.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You send something, you get no replies.""" start="00:24:05.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And this could mean, actually it could mean,""" start="00:24:07.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""yeah, what you said was uncontroversial.""" start="00:24:09.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We think it was a good idea.""" start="00:24:11.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""No 1 replied to it because either someone""" start="00:24:13.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""else would reply or just there was no need to""" start="00:24:16.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""reply because, yeah, why not?""" start="00:24:18.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So but if you do send a patch and you don't""" start="00:24:21.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""get an answer, wait. I mean,""" start="00:24:24.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""don't wait 1, 2 days. Maybe we're busy or""" start="00:24:26.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we're sick or whatever.""" start="00:24:29.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Wait 2 weeks. It's fine to just send it""" start="00:24:30.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""again. If you send the patch to EmacsDevil,""" start="00:24:32.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""send it to the bug mailing list,""" start="00:24:35.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""because we lose track of stuff on EmacsDevil.""" start="00:24:37.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That's just the reality of it.""" start="00:24:39.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So if you propose making a change and no 1""" start="00:24:43.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""commented, feel free to ask us again if a""" start="00:24:46.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""patch would be welcome and we will clarify.""" start="00:24:48.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Bug reports, unfortunately,""" start="00:24:53.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""if you get no answer, I mean,""" start="00:24:54.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we do have a limited amount of time to work""" start="00:24:56.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""on bugs. If you're looking to get started in""" start="00:24:59.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs development, this is an excellent way""" start="00:25:02.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to start getting involved.""" start="00:25:05.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""What I'd recommend is start looking into""" start="00:25:07.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bugs. I'd install that bug,""" start="00:25:09.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'd see about the mailing workflow and set""" start="00:25:11.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that up a little bit, or not.""" start="00:25:13.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's up to you. You can reply to an email""" start="00:25:16.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""without setting any of that stuff up.""" start="00:25:17.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But just help us try out your bugs,""" start="00:25:20.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""send patches, do that type of stuff.""" start="00:25:22.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, that's an excellent way,""" start="00:25:24.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and extremely welcome.""" start="00:25:26.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We're so happy to see when people pick up bug""" start="00:25:27.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""reports that have been left by the wayside""" start="00:25:30.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and just fix them, send us a patch,""" start="00:25:32.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and we can just apply it.""" start="00:25:36.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So that's really your starting point if you""" start="00:25:37.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""want to get involved in Emacs core""" start="00:25:40.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development. I also want to say that be aware""" start="00:25:44.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that you know Emacs is the editor of the GNU""" start="00:25:50.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""operating system and this makes the project""" start="00:25:54.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""political a little bit whether you like it or""" start="00:25:56.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""not. Luckily the you know the politics are""" start="00:25:58.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""limited enough that we can find broad""" start="00:26:01.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""agreement on it. So we want to promote,""" start="00:26:03.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we want to create free software.""" start="00:26:05.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That's sort of it. That's it.""" start="00:26:08.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And there shouldn't be too much more to it,""" start="00:26:11.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? We want to rid the world of""" start="00:26:13.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""proprietary software as an evil thing.""" start="00:26:15.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Ideally, all software should be free.""" start="00:26:19.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But these are just the goals of the free""" start="00:26:23.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""software movement. So we're very strict with""" start="00:26:25.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""some things. We don't recommend non-free""" start="00:26:27.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""proprietary software. Of course,""" start="00:26:30.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we have no problem mentioning Microsoft""" start="00:26:31.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Windows because everyone knows that there's""" start="00:26:33.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this obscure operating system developed in""" start="00:26:35.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""California that some people insist on using.""" start="00:26:39.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We use, many of us use GNU plus Linux.""" start="00:26:42.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Actually, some core developers happen to use""" start="00:26:45.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""exactly, you know, not GNU plus Linux,""" start="00:26:47.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but that's fine as well,""" start="00:26:50.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? We take a little bit of a pragmatic""" start="00:26:52.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""view, but we don't wanna do,""" start="00:26:54.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""what we don't wanna do is promote like this""" start="00:26:56.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""small, unknown piece of non-free software and""" start="00:26:59.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sort of help the non-free software in that""" start="00:27:04.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""way. That's where we try to draw the line,""" start="00:27:08.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, in just expressing just a few""" start="00:27:12.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""words. So that's 1 thing.""" start="00:27:15.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We're, I think, very pragmatic on this point,""" start="00:27:18.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but we do try to follow the principle.""" start="00:27:21.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We also require copyright assignment.""" start="00:27:25.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think in general,""" start="00:27:27.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the argument is that we require a copyright""" start="00:27:30.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""assignment, because that makes it easier to""" start="00:27:34.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""defend the legal status of the GNU Emacs""" start="00:27:39.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""source code. So if there's ever a legal""" start="00:27:43.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""battle, the idea is that if it's only 1""" start="00:27:45.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""copyright holder and you have a GPL""" start="00:27:48.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""violation, i.e. Someone might change Emacs""" start="00:27:50.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and then distribute it as proprietary""" start="00:27:54.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""software or something nasty like that,""" start="00:27:56.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""then we have an easier way of defending it in""" start="00:27:58.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""court if there is only 1 copyright holder.""" start="00:28:00.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So we assigned copyright to the Free Software""" start="00:28:02.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Foundation. And I think there,""" start="00:28:04.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, sometimes people oppose this for""" start="00:28:09.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""various reasons, you know,""" start="00:28:12.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""people see it as, you know,""" start="00:28:13.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""maybe some people might say,""" start="00:28:15.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, it's ideological,""" start="00:28:16.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, who goes, you know,""" start="00:28:18.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the FSF goes too far with this.""" start="00:28:19.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And, and, I mean, that's fine.""" start="00:28:21.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You that's, that's an opinion.""" start="00:28:23.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And the there, then other people are more""" start="00:28:25.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""practical, you know, it's just,""" start="00:28:28.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's a hassle, basically,""" start="00:28:30.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we don't want to sign these papers.""" start="00:28:31.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I'm not really here to tell anyone that""" start="00:28:33.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""they're wrong. I've expressed my views on""" start="00:28:35.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this in the past. But just for now,""" start="00:28:37.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'm just very practical for the purposes of""" start="00:28:40.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this talk. So I signed the papers.""" start="00:28:43.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's Maybe it didn't take me many minutes.""" start="00:28:46.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And in most cases, it shouldn't really.""" start="00:28:49.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And it's something that I found worth doing,""" start="00:28:52.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""because that way I could focus on continuing""" start="00:28:55.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to improve Emacs instead of discussing the""" start="00:28:58.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""finer points of copyright law.""" start="00:29:01.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You could write patches and stuff,""" start="00:29:03.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that kind of thing. So,""" start="00:29:05.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, this is something that trips people""" start="00:29:06.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""up and, you know, it's fine that people have""" start="00:29:08.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""different opinions on it and so on,""" start="00:29:11.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but I think for now that's just something to""" start="00:29:14.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""be aware of. So that's,""" start="00:29:19.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, I mean, there's much more that could""" start="00:29:23.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""be said. Ideally, I would like to have a""" start="00:29:26.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""practical part to this talk as well.""" start="00:29:27.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But I wanted to say something about the""" start="00:29:32.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""packages in Emacs. Because as we know,""" start="00:29:34.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, Emacs is the, I can't remember what""" start="00:29:37.159" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it says, it's like a visual,""" start="00:29:40.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""there's in the manual it says,""" start="00:29:42.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""oh, Emacs is an advanced text editor.""" start="00:29:43.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's visual, which, I mean,""" start="00:29:46.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it's not ed, the whole Unix ed,""" start="00:29:47.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""so that's cool. It's also customizable,""" start="00:29:50.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? So that's always been a thing.""" start="00:29:53.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And what makes Emacs so amazing.""" start="00:29:57.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And some people described it as,""" start="00:30:00.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I can't remember who said that there has been""" start="00:30:01.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a Cambrian explosion of packages in Emacs.""" start="00:30:03.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think that's true.""" start="00:30:09.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, if you look at something like Melpa,""" start="00:30:10.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think they have over 5,000""" start="00:30:12.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""packages now. It's like truly impressive,""" start="00:30:13.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just an immense amount of work and immense""" start="00:30:16.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""amount of packages. And really,""" start="00:30:18.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this shows the strength,""" start="00:30:22.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, of the Emacs community,""" start="00:30:24.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of Emacs itself as an idea.""" start="00:30:26.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think it's also just tremendous work""" start="00:30:29.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that's been done by the maintainers.""" start="00:30:31.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And they do get a lot of recognition for""" start="00:30:33.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that. And rightly so, in my opinion.""" start="00:30:36.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's done so much, I think,""" start="00:30:39.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for our community. The other package archive""" start="00:30:41.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that we have is GNU-ELPA.""" start="00:30:44.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And that's been enabled since when packages""" start="00:30:46.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""first got introduced back in,""" start="00:30:49.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, Emacs, was it 23?""" start="00:30:51.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And probably, I mean, the main thing why a""" start="00:30:55.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""package goes onto GNU Elpa is,""" start="00:30:59.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, it should be installable out of the""" start="00:31:01.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""box. So, I mean, that's a big benefit in a""" start="00:31:04.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sense. It's also a requirement for GNU Alpa""" start="00:31:07.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that the copyright, again,""" start="00:31:10.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just as GNU Emacs, the copyright is assigned""" start="00:31:12.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to the Free Software Foundation.""" start="00:31:15.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And some very hugely popular packages,""" start="00:31:17.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""like YaSnippet, for example,""" start="00:31:20.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""is on GNU Alpa. And we were discussing this""" start="00:31:21.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just 2 months back. And Joe Tavora,""" start="00:31:25.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I can't say his name, G-O-A-O,""" start="00:31:30.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Tavora. He made the point that he's never""" start="00:31:33.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""seen a problem in any of his packages with""" start="00:31:36.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""copyright assignment in particular.""" start="00:31:40.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's never been a problem to get people to be""" start="00:31:42.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""involved in the development of those packages""" start="00:31:44.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just because of the copyright assignment""" start="00:31:46.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""requirements. So I mean,""" start="00:31:49.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that's his perspective on that.""" start="00:31:51.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think it was worth relating his""" start="00:31:54.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""experience here. So we also have this new""" start="00:32:00.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""package archive called non-GNU-alpha,""" start="00:32:06.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""which is now enabled by default as well.""" start="00:32:08.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think for practical purposes,""" start="00:32:12.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you could get into it a little bit more,""" start="00:32:14.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, why we created non-NUELPA,""" start="00:32:16.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and perhaps that's something we can discuss""" start="00:32:19.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in the Q&A section. For practical purposes,""" start="00:32:23.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the main thing to be aware of is,""" start="00:32:26.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""yes, we don't promote non-free software on""" start="00:32:28.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""there, And we also don't have the copyright""" start="00:32:30.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""assignment requirement.""" start="00:32:36.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think this is probably for new packages.""" start="00:32:41.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's generally better if they go to GNU Elpa,""" start="00:32:43.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""if there is any type of idea or ambition""" start="00:32:48.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that, you know, at some point it would be""" start="00:32:51.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""good or it might be good to eventually have""" start="00:32:53.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""some type of functionality like this shipped""" start="00:32:56.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""with Emacs itself. So I think this is""" start="00:32:58.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""something that perhaps package authors could""" start="00:33:01.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""also be aware of, that occasionally we do""" start="00:33:04.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bring in functionality from GNU Elpa into""" start="00:33:07.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""core Emacs because we feel that it should be""" start="00:33:09.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""better integrated with Emacs itself.""" start="00:33:12.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So if I could give any type of""" start="00:33:16.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""recommendation, of course,""" start="00:33:18.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you do. These are your packages,""" start="00:33:19.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? In an ideal world,""" start="00:33:22.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we would only use this for legacy packages""" start="00:33:25.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""where people contributed in the past,""" start="00:33:28.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but you didn't worry about the copyright""" start="00:33:30.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""assignment. But where possible,""" start="00:33:32.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think there is benefit in putting it on GNU""" start="00:33:34.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Elpa. And I wanted to end a little bit on a""" start="00:33:37.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""more, you know, the more opinionated perhaps""" start="00:33:42.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""part of my talk and not just talk about""" start="00:33:45.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""processes. I see that I'm running out of""" start="00:33:47.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""time. So I will say Emacs is hackable.""" start="00:33:49.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think that's a blessing and a curse.""" start="00:33:51.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And if you think about something like,""" start="00:33:54.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the types of choices that you can make,""" start="00:33:59.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""perhaps when you implement something,""" start="00:34:01.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""There are choices, different choices between""" start="00:34:03.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""something like common list,""" start="00:34:06.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""which is like bigger, more batteries""" start="00:34:07.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""included, and something like scheme,""" start="00:34:09.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""which is more minimal.""" start="00:34:11.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think we have some of those,""" start="00:34:12.239" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, this kind of tension also in the""" start="00:34:13.679" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs itself. What should be in Emacs core?""" start="00:34:16.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Should we have a lean Emacs core?""" start="00:34:18.159" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Should we have more stuff in Emacs core?""" start="00:34:19.699" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think these are good discussions to""" start="00:34:22.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""have. And there are various challenges that""" start="00:34:26.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""are associated with each of those choices.""" start="00:34:29.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think what will never change is that Emacs""" start="00:34:32.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""is hackable. Emacs is customizable.""" start="00:34:35.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""This is the key strength.""" start="00:34:37.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""This is why we love and use Emacs.""" start="00:34:38.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think fundamentally,""" start="00:34:40.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""whether you do it a lot or not,""" start="00:34:42.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this is what at core is bringing you that""" start="00:34:44.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""amazing user experience.""" start="00:34:47.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""However, the flip side of that sometimes is""" start="00:34:50.739" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that it's so easy to hack Emacs so that we""" start="00:34:53.199" video="mainVideo-core" id="subtitle"]]
+[[!template text="""hack around bugs instead of fixing them.""" start="00:34:56.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We do some tweak and our customers say,""" start="00:34:58.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""okay, this is a little bit broken,""" start="00:35:00.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Let me just fix it. I'll put an advice on""" start="00:35:01.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this function. I'll do this customization.""" start="00:35:03.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Or we accept limitations in Emacs core.""" start="00:35:06.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think it's fine.""" start="00:35:09.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, this will never change.""" start="00:35:12.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That will always be core to what Emacs is,""" start="00:35:13.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? However, I think that the flip side of""" start="00:35:16.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that is that I think sometimes we could be""" start="00:35:20.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""better at just taking those few extra steps""" start="00:35:22.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to also make Emacs better itself and solve""" start="00:35:26.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this for all users. And I think if we can""" start="00:35:29.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""build a little bit more of a culture like""" start="00:35:31.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that, I mean, we already have that culture to""" start="00:35:33.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a large extent, don't get me wrong,""" start="00:35:35.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we do, but if we can get a little bit more of""" start="00:35:37.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that culture, let's get that into core,""" start="00:35:39.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""let's get that problem fixed,""" start="00:35:41.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that frustration. I can tell you that,""" start="00:35:43.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I just started a new assignment at work,""" start="00:35:47.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I already told you, so I'm going to write a""" start="00:35:48.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""lot of Python, okay? So I need to keep track""" start="00:35:51.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of something called virtual environments,""" start="00:35:54.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and that's just a way to install these""" start="00:35:56.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""dependencies just locally per directory or""" start="00:35:58.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""per repository kind of thing.""" start="00:36:01.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I've used various packages for that.""" start="00:36:03.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""There are like 4 packages,""" start="00:36:05.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""5 packages, maybe. And 1 is called VM,""" start="00:36:07.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and 1 is called VirtualM,""" start="00:36:10.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and 1 is called Python-VM.""" start="00:36:11.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And now I'm using, you know,""" start="00:36:15.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'm using a different 1.""" start="00:36:16.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And it's just a little bit,""" start="00:36:18.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""why doesn't this work out of the box in""" start="00:36:20.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs? Why? I don't think there's a really""" start="00:36:22.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""good fundamental good reason why something""" start="00:36:25.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""like that doesn't work in Emacs.""" start="00:36:28.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So I think that's really,""" start="00:36:30.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, I'm sure there are other things like""" start="00:36:32.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that, other fundamental features.""" start="00:36:35.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Why is it that for the last 20 years,""" start="00:36:37.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we've shipped Emacs with no PHP support out""" start="00:36:39.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of the box? I mean, I'm not a PHP programmer.""" start="00:36:43.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I don't really have a lot of love for PHP,""" start="00:36:47.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""let's say. To me, it's a very funny-looking""" start="00:36:51.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""language, but okay, still it's been very""" start="00:36:57.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""popular. Why haven't we supported it?""" start="00:37:00.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, it's just strange.""" start="00:37:02.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You install Emacs on some machine,""" start="00:37:03.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you open a PHP file, you get fundamental""" start="00:37:05.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""mode. It's not the best user experience,""" start="00:37:07.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in my opinion. So I think there are some""" start="00:37:09.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""things where we really could do a little bit""" start="00:37:12.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""better. And I'm seeing this all the time.""" start="00:37:15.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Just this week, this new assignment was""" start="00:37:20.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""interesting. There was this Emacs user.""" start="00:37:22.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Turns out we have the exact same hack in both""" start="00:37:24.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of our init files. So we had created the""" start="00:37:26.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""exact same mode for DIRED,""" start="00:37:29.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""actually, to hide dot files.""" start="00:37:32.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You know, dot something is supposed to be""" start="00:37:33.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""hidden on a Unix system.""" start="00:37:36.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So we had DERED hide dot files mode to just""" start="00:37:40.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""hide them. And why isn't that in DERED?""" start="00:37:43.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Or should it be in DERED?""" start="00:37:47.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Should it be a package on the new Elpa?""" start="00:37:48.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Where should it be? Why is it just local""" start="00:37:51.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""hack? Should it be on a wiki somewhere?""" start="00:37:53.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, sometimes that's the correct answer.""" start="00:37:54.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sometimes the correct answer is,""" start="00:37:56.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""yes, it should be a package.""" start="00:37:59.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sometimes the correct answer is,""" start="00:38:00.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""yes, it should really be in core.""" start="00:38:02.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So what I want to promote is more like,""" start="00:38:04.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""let's just take a step back and just ask""" start="00:38:06.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""yourself, what's the best solution if we look""" start="00:38:08.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""at the overall picture?""" start="00:38:11.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Should I hack this into my configuration?""" start="00:38:12.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""In many cases, yes, that's the right thing to""" start="00:38:14.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""do. We don't want to proliferate just random""" start="00:38:16.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""solutions all over Emacs for no reason.""" start="00:38:19.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But sometimes we want to fix it once and for""" start="00:38:22.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""all. We want to do that in core.""" start="00:38:24.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So you could send stuff like that to us as""" start="00:38:27.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""patches or as packages.""" start="00:38:30.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And we can discuss a little bit about where""" start="00:38:31.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""should we solve this? What's the right level""" start="00:38:34.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of abstraction? I'm seeing that I'm running""" start="00:38:37.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""out of time. I had an Emacs wish list.""" start="00:38:41.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Maybe we can take more of that in the Q&A.""" start="00:38:43.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But I want to say, like,""" start="00:38:47.170" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in VS Code, you just start VS Code.""" start="00:38:49.226" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You open a Python file,""" start="00:38:50.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and you get, like, hey,""" start="00:38:51.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""are you trying to use Python?""" start="00:38:53.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Click here, install Python.""" start="00:38:54.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You get all the nice things out of the box.""" start="00:38:56.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And my argument is, why can't we have more of""" start="00:38:59.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that in Emacs? I don't think it's necessarily""" start="00:39:01.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""hard, but it does take a little bit of work.""" start="00:39:04.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""The challenges here are more social,""" start="00:39:06.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, than technical.""" start="00:39:09.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I think it's worth doing,""" start="00:39:10.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""because it's not just Python.""" start="00:39:12.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's just There are always these small things""" start="00:39:14.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""where it just really should work,""" start="00:39:16.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and that would be a much better experience.""" start="00:39:18.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And then you could customize not that thing""" start="00:39:20.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that should just work,""" start="00:39:23.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but you could customize more fun and""" start="00:39:24.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""exploratory things instead of people""" start="00:39:27.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""reinventing the wheel over and over again.""" start="00:39:29.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So I'm very excited about what's happening in""" start="00:39:31.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs. I think we should be proud of what""" start="00:39:33.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we've accomplished. It's so many things to""" start="00:39:35.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""many different people,""" start="00:39:37.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""an environment for hacking,""" start="00:39:38.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just a productivity system.""" start="00:39:40.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Other sees us as a different way of looking""" start="00:39:41.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""at computing, you know,""" start="00:39:44.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the embodiment of the ideal of the Lisp""" start="00:39:45.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""machine if you want to talk big words and""" start="00:39:47.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""stuff like that. And of course,""" start="00:39:49.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs are all those things and so many more.""" start="00:39:50.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And that's what makes Emacs so amazing.""" start="00:39:53.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And in some sense, we should be care that""" start="00:39:56.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""people are satisfied with using lesser text""" start="00:40:00.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""editors. How could they be happy running""" start="00:40:03.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that? I mean, I'm sure it's fine,""" start="00:40:05.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but it sure as hell isn't Emacs.""" start="00:40:07.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So don't we owe it to the world and to them""" start="00:40:09.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and to ourselves to make a great Emacs.""" start="00:40:12.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That will be my ending words.""" start="00:40:14.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I hope to see you all in the Q&A.""" start="00:40:16.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Thank you all. And thank you so much,""" start="00:40:18.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Stefan. That was a wonderful presentation.""" start="00:40:22.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I just want to give you the opportunity.""" start="00:40:24.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You said that you perhaps had,""" start="00:40:27.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Not the practical stuff,""" start="00:40:30.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but you wanted to do a demo or something like""" start="00:40:31.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""this? What did you mention exactly?""" start="00:40:33.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, we didn't have time really.""" start="00:40:36.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yes, I'm not sure. I didn't prepare anything""" start="00:40:38.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""so that we can do it live.""" start="00:40:42.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But maybe for next time,""" start="00:40:43.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I will do a demo. Don't hold me to it.""" start="00:40:44.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Or someone else could.""" start="00:40:49.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That would be really amazing.""" start="00:40:51.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Right. Well, thank you,""" start="00:40:53.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Stéphane. You've been already into so much""" start="00:40:54.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""detail of so many... So much of the intricacy""" start="00:40:56.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of the maintenance. And as someone who's been""" start="00:41:01.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""95% of the time developing for Melpa,""" start="00:41:05.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I feel like this talk was very geared to a""" start="00:41:08.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""lot of us who tend to experiment in this""" start="00:41:11.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Cambrian stage of Emacs evolution,""" start="00:41:13.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""where we get to deploy a lot of creativity""" start="00:41:16.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""whilst also feeling pretty agile in a way we""" start="00:41:20.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""come up with solutions to problems.""" start="00:41:24.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But you've won me over with your discussion""" start="00:41:25.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""about potentially moving some of this stuff""" start="00:41:29.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to core. And I think this particularly""" start="00:41:31.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""resonated at the end with this tension that""" start="00:41:33.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you feel about problems that you encounter.""" start="00:41:36.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Do you fix them in Melpa?""" start="00:41:39.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Do you fix them in core?""" start="00:41:40.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Is it not something that is supposed to be an""" start="00:41:42.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""option? I love this tension and it's""" start="00:41:43.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""something that we've been exploring for the""" start="00:41:46.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""last 3 edition of Emacs Cons.""" start="00:41:48.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's really what is to be the interaction""" start="00:41:49.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""between this pool of very clever developers""" start="00:41:52.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""who are on Melpa but who are perhaps a little""" start="00:41:55.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bit afraid of joining Core and the wonderful""" start="00:41:58.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""job that you do that, yes,""" start="00:42:00.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""seems archaic from the outside,""" start="00:42:02.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but as you've been at length today in your""" start="00:42:05.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""presentation, is actually just a better way""" start="00:42:07.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to work, a very pragmatic way to get a lot of""" start="00:42:09.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""work done. So, thank you so much for your""" start="00:42:11.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""presentation. Thank you,""" start="00:42:13.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Leo. So, we have about 12 minutes now to go""" start="00:42:15.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""through as many questions as possible.""" start="00:42:20.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You have obviously had a lot of questions""" start="00:42:22.950" video="mainVideo-core" id="subtitle"]]
+[[!template text="""throughout your presentation.""" start="00:42:26.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Do you have access to the pad,""" start="00:42:27.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""or do you want me to share the question and""" start="00:42:28.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""feed them to you? Yes,""" start="00:42:30.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""could you start with sharing them?""" start="00:42:32.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'll see if I can get it on my screen.""" start="00:42:34.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sure, I'll do that. Please let me know if my""" start="00:42:36.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""microphone is clipping because my OBS setup""" start="00:42:39.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sometimes is a little bit janky.""" start="00:42:42.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But I'm going to try to read the questions""" start="00:42:44.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for now. It's tipping,""" start="00:42:46.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I can hear you okay. Okay,""" start="00:42:48.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""so bear with the clicking,""" start="00:42:51.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we'll switch as soon as possible to Stefan""" start="00:42:54.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""reading the question, but I'll read the first""" start="00:42:56.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""1. Can you tell us some about your,""" start="00:42:58.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""can you tell us some more I assume,""" start="00:43:02.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""about your background with Emacs development""" start="00:43:04.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and programming in general,""" start="00:43:06.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""your professional work possibly?""" start="00:43:07.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, sure. Okay, I studied computer science""" start="00:43:11.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""at university. I started programming on a""" start="00:43:15.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Commodore 64. I started with BASIC and then I""" start="00:43:19.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""did a couple of versions of BASIC as a kid.""" start="00:43:23.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But then really things took off when I""" start="00:43:27.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""started using GNU Linux.""" start="00:43:31.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I can't remember which year,""" start="00:43:34.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""maybe it was early 2000,""" start="00:43:35.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""something like that, late.""" start="00:43:38.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""No, it must've been before that actually,""" start="00:43:39.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""because I remember I was 14.""" start="00:43:42.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, okay, so let's say 1999,""" start="00:43:44.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""1998, somewhere there around.""" start="00:43:46.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Then I started with Perl,""" start="00:43:48.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and I did Perl for a good long while.""" start="00:43:50.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I learned C++, I learned C,""" start="00:43:52.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I did all kinds of stuff,""" start="00:43:55.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and then I went to university,""" start="00:43:56.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""computer science, and I've been working,""" start="00:43:59.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, in various roles.""" start="00:44:01.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Right now, I'm coding Python.""" start="00:44:04.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Up until last Friday, I was writing firmware""" start="00:44:06.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in C for a small microcontroller,""" start="00:44:09.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""which is pretty different than writing""" start="00:44:12.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Python, that's for sure.""" start="00:44:15.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So yeah, so that's a little bit about me.""" start="00:44:17.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I got interested in free software,""" start="00:44:19.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, also at a very young age.""" start="00:44:22.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So, I mean, I've been following these,""" start="00:44:24.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, ideological discussions and""" start="00:44:26.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""debates, read all this stuff by Richard""" start="00:44:29.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Stallman and so on and so forth.""" start="00:44:31.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But yeah, that's it. Great,""" start="00:44:33.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""thank you. I'll move on to the next question.""" start="00:44:37.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You'll have to listen to me because if I""" start="00:44:41.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""start sharing my screen again,""" start="00:44:42.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we're going to get some clicks.""" start="00:44:45.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So the question. Do you think that 1 day""" start="00:44:48.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""there will be a native I'll start again,""" start="00:44:50.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sorry. Do you think that 1 day there will be""" start="00:44:53.930" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a native... I'll start again,""" start="00:44:54.079" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sorry. Do you think that 1 day there will be""" start="00:44:54.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a native graphical web browser in Emacs or is""" start="00:44:56.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it kind of against its philosophy and""" start="00:44:59.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""architecture? So will we stick just with EWW""" start="00:45:00.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and EAF or similar workaround tricks?""" start="00:45:04.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So if, I don't know if people have seen,""" start="00:45:08.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""there is a talk by, I think,""" start="00:45:11.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Perry Metzger, is that the name?""" start="00:45:13.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sorry if I got the name wrong.""" start="00:45:15.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Perry Metzger, I think.""" start="00:45:17.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's like, he marks a text editor for the""" start="00:45:18.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""next 40 years. He makes an excellent point""" start="00:45:20.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""there that 1 of the things that we need to do""" start="00:45:22.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""is really get a proper HTML rendering in""" start="00:45:24.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs. It's like a dream at this point.""" start="00:45:27.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""No 1 is actively working on something like""" start="00:45:30.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that. I think that, you know,""" start="00:45:32.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""there, first of all, you'd need to rewrite""" start="00:45:34.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the display engine. So that's a big job.""" start="00:45:36.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It is. I'm not saying,""" start="00:45:39.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, it can't be done,""" start="00:45:41.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but you need to start there.""" start="00:45:43.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Right? Second of all, you need to think""" start="00:45:44.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""about, you know, with all the Emacs Lisp code""" start="00:45:47.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""out there, is really assuming,""" start="00:45:50.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, 1 paradigm, which is that you have""" start="00:45:52.090" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a square, and basically you have columns and""" start="00:45:54.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you have rows, and everything is in there,""" start="00:45:57.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""even images, is basically in a column,""" start="00:45:59.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, in a column on a row somewhere.""" start="00:46:02.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Whereas, you know, when you just start doing""" start="00:46:05.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the more web stuff and web rendering,""" start="00:46:07.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you already have like a seaplane.""" start="00:46:10.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You have different types of geometries that""" start="00:46:12.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""are possible. And what does it mean to go to""" start="00:46:14.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the logical next line in that kind of sense?""" start="00:46:16.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean these types of things I'm not saying""" start="00:46:19.370" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it can't be done. I'm saying there are there""" start="00:46:21.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""are definitely some challenges there It would""" start="00:46:23.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""be amazing I mean, but we need someone with""" start="00:46:27.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, the inclination and talent I think""" start="00:46:30.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to work on that's a job posting if I've ever""" start="00:46:33.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""had 1. So good luck to whoever's willing to""" start="00:46:37.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""apply for this 1. I think it's a tough 1.""" start="00:46:40.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It is, yes. Go on. Okay,""" start="00:46:43.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""do you happen to have the questions in front""" start="00:46:46.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of you? Can I just read them to you so that""" start="00:46:48.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you can also have a feedback in front of you?""" start="00:46:50.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yes, I have the pad here.""" start="00:46:54.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Okay, cool. So I'll read the next question""" start="00:46:57.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and this way I don't have to worry too much""" start="00:46:58.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""about me butchering every word in the""" start="00:47:00.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sentence. So, Emacs development and""" start="00:47:02.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""communication still is very much focused on""" start="00:47:04.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""email mailing lists. I like this,""" start="00:47:06.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but what do you think about introducing other""" start="00:47:08.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""channels for talking to users,""" start="00:47:10.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""like the Emacs project community could set up""" start="00:47:12.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a master on instance of its own,""" start="00:47:15.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for instance? I think from the point of view""" start="00:47:17.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of the Emacs core team,""" start="00:47:20.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we don't really have a lot of resources or""" start="00:47:21.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""people inclined to be working on stuff like""" start="00:47:23.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that. But I mean, there is so much going on.""" start="00:47:25.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs is a very, you know,""" start="00:47:27.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's a big community, frankly,""" start="00:47:30.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? So people working on emacs.com,""" start="00:47:32.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""there are people in the IRC channel,""" start="00:47:34.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the emacs IRC channel,""" start="00:47:37.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""there's the emacs subreddit.""" start="00:47:39.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And I mean, people are doing an incredible""" start="00:47:40.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""job. And I think if people wanna do more""" start="00:47:43.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""stuff like that, I mean,""" start="00:47:45.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Don't wait for Argo, just go for it.""" start="00:47:46.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Great. Moving on to the next question.""" start="00:47:52.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sorry, I'm not commenting anymore because we""" start="00:47:54.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""have so many questions and I'd love for you""" start="00:47:56.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to answer as many people as possible because""" start="00:47:58.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we have about 6 minutes technically,""" start="00:48:00.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but we can go perhaps a little bit over.""" start="00:48:02.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""If you have the time, Stefan,""" start="00:48:05.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""though. Yeah. Okay, great.""" start="00:48:06.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""What are some features or packages you'd like""" start="00:48:09.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to see developed by the community?""" start="00:48:11.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We've already talked about the native HTTP""" start="00:48:12.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""display, but do you have any others?""" start="00:48:15.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So, I mean, developed by the community,""" start="00:48:19.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it depends what you mean.""" start="00:48:22.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So do you mean sending stuff that people""" start="00:48:23.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""could be working on in general?""" start="00:48:27.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think for now, like let's say the roadmap,""" start="00:48:30.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'll just give some of the things that I""" start="00:48:33.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""think should happen right now and that I""" start="00:48:35.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""would love for people to send patches for.""" start="00:48:36.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That's what I'm gonna be answering because""" start="00:48:39.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that's what I think I can answer.""" start="00:48:41.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Tree-sitter is a new thing,""" start="00:48:43.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? Improving and working on new modes""" start="00:48:45.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for, you know, TreeSitter,""" start="00:48:48.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it's not very hard. I think many people get""" start="00:48:50.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""into it and make sure to integrate them in""" start="00:48:52.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs core. I think that would be,""" start="00:48:55.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, on my wishlist.""" start="00:48:58.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""The other thing that is that we've asked for""" start="00:49:00.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""someone perhaps with a little bit more""" start="00:49:01.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""experience, I think, but working on""" start="00:49:03.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""refactoring capabilities in Emacs and a more""" start="00:49:05.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""general framework, I think,""" start="00:49:09.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for that. There are probably many more ideas""" start="00:49:11.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that I could give people,""" start="00:49:13.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but those would be the 2 big ones,""" start="00:49:15.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, that are also very uncontroversial.""" start="00:49:17.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's funny because for me,""" start="00:49:22.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I don't think refactoring would count as a""" start="00:49:24.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""feature, but it's so vital to allowing""" start="00:49:26.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""further features to be developed.""" start="00:49:30.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Otherwise, I remember the way Org Mode used""" start="00:49:31.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to be before we had Org Element and stuff""" start="00:49:34.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""like this. It was really complicated to write""" start="00:49:36.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""any kind of parsing stuff for it.""" start="00:49:38.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And now that we've got it,""" start="00:49:41.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it just opened up a world of possibility""" start="00:49:42.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""where parsing an Org Mode file is just made""" start="00:49:44.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""so much easier. So I think that's a wonderful""" start="00:49:46.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""answer because it goes,""" start="00:49:48.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it's multi-layered as you would expect from""" start="00:49:49.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""something that concerns the whole of Emacs.""" start="00:49:52.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Moving on to the next question.""" start="00:49:55.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""What is the hardest decision being made""" start="00:49:57.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""within Emacs dev for the last 3 years.""" start="00:49:59.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'm not sure, is it the decision in the last""" start="00:50:02.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""3 years or I'll let you interpret the""" start="00:50:04.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""question however you want.""" start="00:50:07.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Okay, well, I'll say this.""" start="00:50:09.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I started in August and I haven't had any""" start="00:50:11.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""really hard decisions so far.""" start="00:50:14.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So good news. Maybe Eli will have more for""" start="00:50:16.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the last 3 years. Keep it simple.""" start="00:50:20.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Thanks. Cool. Next question.""" start="00:50:25.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Any plans to integrate XWM into core?""" start="00:50:28.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs is a really good Winters manager.""" start="00:50:31.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That's super cool. I think EXWM is cool.""" start="00:50:34.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think they need to upgrade to Wayland""" start="00:50:38.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""somehow and that's not clear yet,""" start="00:50:40.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but you know, we don't have any current plans""" start="00:50:41.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to integrate it, no. Right,""" start="00:50:44.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Next question. Do you think it is a good idea""" start="00:50:49.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to choose Org Mode for writing documentation""" start="00:50:51.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""instead of tech info? I think that whatever""" start="00:50:53.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we do, it should be the people that are""" start="00:50:57.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""working on the documentation that should make""" start="00:50:59.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that choice. Currently we have,""" start="00:51:01.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, Modus themes and Org Mode itself is""" start="00:51:03.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""writing their documentation in Org Mode,""" start="00:51:05.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that's fine by me. It has some drawbacks,""" start="00:51:08.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it has some benefits, but most documentation""" start="00:51:10.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""is still in tech info.""" start="00:51:13.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Maybe we'd need to replace that at some""" start="00:51:15.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""point, I don't know. But for now,""" start="00:51:17.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that's what people know and use.""" start="00:51:19.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And if you find that as a barrier to""" start="00:51:22.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""contribute to Emacs, I mean,""" start="00:51:24.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just really write it as plain text.""" start="00:51:25.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We'll be happy to help you with the markup.""" start="00:51:27.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's a little bit, you know,""" start="00:51:29.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""finicky and stuff like that.""" start="00:51:30.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Great. Thanks for that.""" start="00:51:33.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Next question. What do you plan to work on in""" start="00:51:35.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs Core in the future?""" start="00:51:38.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'm a little bit hesitant to reply to that.""" start="00:51:40.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Of course I have ideas.""" start="00:51:42.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Of course there are projects that I'm working""" start="00:51:43.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""on. However, if I say it here,""" start="00:51:45.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I feel like, you know,""" start="00:51:47.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""then you'll hold me to it later and come ask,""" start="00:51:48.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""where is that feature?""" start="00:51:51.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So I'll just say there is plenty of stuff""" start="00:51:52.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that I'm working on, and if you want to know""" start="00:51:55.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""some of the stuff that I have been working""" start="00:51:57.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""on, check the Git log.""" start="00:51:58.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think that's just really as much as I want""" start="00:52:00.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to say about that right now.""" start="00:52:02.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You've added folks to just look at the path""" start="00:52:05.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""with the changelog and that's all you need.""" start="00:52:07.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""All right, moving on to the next question.""" start="00:52:11.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""What do you use Emacs for in your life other""" start="00:52:14.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""than working on Emacs itself?""" start="00:52:16.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Oh shit. So the big thing is programming,""" start="00:52:18.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? Now I work as a programmer.""" start="00:52:21.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But in general, I use org mode heavily.""" start="00:52:27.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I use it for all my writing.""" start="00:52:29.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I use it to write, prepare this talk.""" start="00:52:30.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I use it as a productivity system.""" start="00:52:33.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I use it for emails. I use it as an RSS""" start="00:52:35.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""reader. I do most of my computing.""" start="00:52:41.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I also have Firefox. So it's like Emacs and""" start="00:52:44.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Firefox for some reason.""" start="00:52:47.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I do read documentation in Emacs as well in""" start="00:52:48.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you, but yeah. Great. I'm still,""" start="00:52:51.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I do very much the same thing with you.""" start="00:52:59.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Like You've described exactly what I do.""" start="00:53:00.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I work as a programmer,""" start="00:53:02.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I use Augment for a lot of stuff,""" start="00:53:02.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and I think that describes a whole lot of""" start="00:53:04.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""people currently watching the stream.""" start="00:53:06.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Moving on to the next question.""" start="00:53:09.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""What could we do in order to make Emacs more""" start="00:53:10.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""attractive for younger users?""" start="00:53:12.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""This is an amazing question and I feel wholly""" start="00:53:14.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""unprepared to answer this.""" start="00:53:18.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Probably more introductory material aimed at""" start="00:53:21.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that age group. What do you mean by younger""" start="00:53:24.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""users? You know what would be really cool if""" start="00:53:26.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you had an Emacs for kids project?""" start="00:53:28.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That would be amazing.""" start="00:53:31.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'm not sure if that's what people are""" start="00:53:32.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""thinking about, but yeah,""" start="00:53:34.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that's about what I can say for now.""" start="00:53:37.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Good question. It is a very good question,""" start="00:53:40.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""like it comes back always to a key topic in""" start="00:53:43.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""EmacsConf, which is, how do we get more""" start="00:53:45.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""people to join us? Because it's a wonderful""" start="00:53:47.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""community. And how do we onboard people who""" start="00:53:49.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""are not programmers or people who are younger""" start="00:53:51.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""than the average Joe coming in those""" start="00:53:54.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""meetings? There's this Excellent article by""" start="00:53:57.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Paul Graham, I think, where he was describing""" start="00:54:01.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""how they used Emacs as the sort of customer""" start="00:54:06.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""service system. They built the customer""" start="00:54:09.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""service system for the early days of Amazon""" start="00:54:11.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in Emacs Lisp. And then they switched and all""" start="00:54:14.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the employees were sad.""" start="00:54:17.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So definitely there's more stuff that could""" start="00:54:18.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""be done in Emacs and be done better in Emacs.""" start="00:54:21.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So for sure, if people want to explore more""" start="00:54:25.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""stuff like that, that's amazing.""" start="00:54:27.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah. And for people who weren't around""" start="00:54:29.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""earlier today, we've had a presentation about""" start="00:54:32.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""how to get computer science students to use""" start="00:54:33.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs and trying to provide as much""" start="00:54:36.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""information and as much tutorial as needed""" start="00:54:41.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for them to understand what is the philosophy""" start="00:54:43.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""behind Emacs and how it influences the way""" start="00:54:45.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you work and so forth.""" start="00:54:48.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So you might want to revisit this discussion.""" start="00:54:49.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And we also have plenty of talks talking""" start="00:54:51.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""about this issue. And I can just add that I""" start="00:54:53.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""think it's very important for us as a""" start="00:54:57.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""community to just be enthusiastic to get more""" start="00:55:00.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""people involved. Because I mean,""" start="00:55:03.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""look, there's this meme where it's like,""" start="00:55:04.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I use Arch Linux, by the way,""" start="00:55:06.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I use Arch, by the way.""" start="00:55:08.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And for some reason, people using Arch keep""" start="00:55:10.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""telling you that they're using Arch.""" start="00:55:12.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That's fine. Use whatever you want.""" start="00:55:14.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's free software, I don't care.""" start="00:55:16.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think if you look at Vim users,""" start="00:55:20.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""they're very almost militant,""" start="00:55:21.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""oh, we're Vim, and Vim is the thing.""" start="00:55:23.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And Emacs users sometimes,""" start="00:55:25.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and it's fine. We take a bit of a more""" start="00:55:27.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""laid-back approach. We're like,""" start="00:55:29.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""yeah, I use Emacs, you use Vim,""" start="00:55:31.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""whatever. And that's fine.""" start="00:55:32.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, that's the correct approach,""" start="00:55:35.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think. You should respect what people want""" start="00:55:36.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to use. I don't care that people use VS Code""" start="00:55:38.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""or whatever. I'm not going to use that""" start="00:55:40.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""because it's too limiting.""" start="00:55:42.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's not really a workable environment.""" start="00:55:43.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But I think it's OK to be enthusiastic.""" start="00:55:46.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think it's okay to talk about that type of""" start="00:55:48.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""enthusiasm and anything that can help""" start="00:55:51.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""increase the enthusiasm around Emacs can only""" start="00:55:54.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""help the longevity of Emacs.""" start="00:55:56.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I agree and that's also 1 of the key""" start="00:56:02.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""objectives of EmacsConf.""" start="00:56:04.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's about bringing a lot of amazing people""" start="00:56:05.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to come talk, like you,""" start="00:56:07.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""about stuff that is very dear to you.""" start="00:56:09.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And it's very tangible how much you care,""" start="00:56:11.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""all of you, about what you're presenting.""" start="00:56:14.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And it's amazing to put all of you people on""" start="00:56:15.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just 48 hours talking about all of this and""" start="00:56:18.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""then creating so much content for people to""" start="00:56:20.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""watch. And I think it's really helping the""" start="00:56:22.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""enthusiasm to live on and to gather a little""" start="00:56:24.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""more snow as it comes down.""" start="00:56:28.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, I watch you Max Conf every year.""" start="00:56:29.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think it's a lot of fun.""" start="00:56:31.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Thank you. I'll take the compliment for""" start="00:56:34.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""everyone else in the team.""" start="00:56:37.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We're going to go a little bit longer with""" start="00:56:39.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the Q&A because we still have a lot of""" start="00:56:41.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""questions and if Stéphane is still willing to""" start="00:56:42.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""answer, I'm still willing to not go too bad""" start="00:56:44.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to hear a lot more of it.""" start="00:56:48.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, for me it's fine.""" start="00:56:49.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I have time. Great. So I think I've done this""" start="00:56:50.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""question. So, all right.""" start="00:56:55.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""How are we going to make sure that a cool""" start="00:56:58.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""idea is going to pass it through for the next""" start="00:57:00.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""generation, let's say 20 years later,""" start="00:57:01.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the generation still have the good knowledge""" start="00:57:04.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we have today. Yeah, so I mean,""" start="00:57:05.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""if you think about what does EMAX need to""" start="00:57:09.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""have staying power, so in general,""" start="00:57:12.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""they say, you know, if if when you start a""" start="00:57:15.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""company, if you have a company for 1 year,""" start="00:57:17.020" video="mainVideo-core" id="subtitle"]]
+[[!template text="""then in all likelihood,""" start="00:57:19.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you're going to have it for 2 years because,""" start="00:57:20.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, it's just so if you've had Emacs""" start="00:57:21.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for 4 years, I'm saying that we're going to""" start="00:57:23.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""have Emacs for the next 4 years as well.""" start="00:57:25.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Just based on that, I'm not sure the logic""" start="00:57:27.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""holds up, but you know,""" start="00:57:30.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""how does Emacs stay relevant?""" start="00:57:32.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think is the question.""" start="00:57:34.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Well, I think we need to continue working on""" start="00:57:35.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""all the types of exploratory work that people""" start="00:57:38.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""are doing in the community.""" start="00:57:41.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think there is fundamental stuff that needs""" start="00:57:43.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to be done. I mean, if people want to work""" start="00:57:45.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""on, you know, web rendering and Emacs,""" start="00:57:47.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""maybe that's the next,""" start="00:57:49.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, revolutionary step that we need""" start="00:57:50.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that could, you know, really showcase what""" start="00:57:53.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs, you know, as, you know,""" start="00:57:55.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""an idea, even if not Emacs as a software""" start="00:57:57.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""could be and, you know,""" start="00:58:00.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Because there is huge potential in the idea""" start="00:58:01.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""as such. So maybe that's something.""" start="00:58:05.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But I mean, from the point of view of core""" start="00:58:07.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development, I think we need to just continue""" start="00:58:09.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""working on the fundamental technologies.""" start="00:58:11.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""1 thing that I would like to eventually see""" start="00:58:15.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""is a better garbage collector.""" start="00:58:17.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We've talked about that for a long time,""" start="00:58:19.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but I mean, we need someone to do the job""" start="00:58:22.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""really. It's not very easy.""" start="00:58:25.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's very hard, actually.""" start="00:58:27.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So just continues working on stuff like that,""" start="00:58:31.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""continue with the exploration,""" start="00:58:34.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""continue using and being excited about Emacs.""" start="00:58:35.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think that's the best guarantee that we""" start="00:58:40.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""have. Yeah, and perhaps to echo something""" start="00:58:43.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that you said earlier,""" start="00:58:45.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the tools that you're using,""" start="00:58:46.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""like the emails, they've been around forever,""" start="00:58:47.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""they will be around forever.""" start="00:58:49.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""This pragmatic stance on the tools that""" start="00:58:51.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you're using, they might look stayed from the""" start="00:58:53.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""outside, but ultimately they are what permits""" start="00:58:56.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a sense of longevity to any kind of project""" start="00:58:59.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you embark upon. Also,""" start="00:59:03.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""in a sense, I think that the expectations""" start="00:59:05.460" video="mainVideo-core" id="subtitle"]]
+[[!template text="""might be changing in the sense that,""" start="00:59:07.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, when I started using GNU Linux,""" start="00:59:09.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know what the first thing I did was,""" start="00:59:12.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""because I couldn't get Xorg to run.""" start="00:59:15.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So the first thing you had to do was you had""" start="00:59:16.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to compile your own Linux kernel.""" start="00:59:19.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So you sit there and make manuconfig and""" start="00:59:20.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you'll like, try to read it and you've never""" start="00:59:22.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""done anything like this before.""" start="00:59:24.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You know, I was just a kid.""" start="00:59:26.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I had never been at this kind of,""" start="00:59:27.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, whatever. So I had to start with""" start="00:59:29.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that. And then you have to write the X or""" start="00:59:31.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""configuration file. And I had the patience""" start="00:59:34.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""for that. But nowadays,""" start="00:59:36.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""people have different expectations.""" start="00:59:37.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You just install something,""" start="00:59:38.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and it works. And we need to keep that in""" start="00:59:40.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""mind as well. So that's why I keep pushing as""" start="00:59:42.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""1 of my big things. We need to build a more""" start="00:59:45.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""cohesive experience out of the box.""" start="00:59:48.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Of course, that can be customizable.""" start="00:59:51.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You shouldn't shoehorn anything in just for""" start="00:59:52.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the sake of it. But you could get some things""" start="00:59:55.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""a little bit more for free.""" start="00:59:58.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And maybe some of us that have our own""" start="01:00:01.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""configs and we've been doing this for you""" start="01:00:03.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""know, 2, 05:10, even 20 years,""" start="01:00:04.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we could also see, you know,""" start="01:00:08.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""from the point of view of a new user that""" start="01:00:09.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""just installs VS Code and then they click,""" start="01:00:11.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""yes I use Python, yes I use that,""" start="01:00:13.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and then it just automatically works.""" start="01:00:15.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""You know what I mean? I mean,""" start="01:00:19.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""then could we get closer to that perhaps a""" start="01:00:20.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""little bit? I think that would also help.""" start="01:00:24.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, I think that's what we call the""" start="01:00:26.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""configuration wizard. And we were talking""" start="01:00:28.700" video="mainVideo-core" id="subtitle"]]
+[[!template text="""about this, I think, a couple of years ago at""" start="01:00:30.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""EmacsConf. I can't remember if it was with""" start="01:00:32.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Adam in the chat. Adam,""" start="01:00:34.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean Alpha Papa, or if it was with Bastien,""" start="01:00:35.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but I remember the idea cropping off.""" start="01:00:38.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Like, it's either you get a tutorial for""" start="01:00:40.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs, a proper tutorial,""" start="01:00:42.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""or you get a wizard, or you get both,""" start="01:00:43.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and then all is right for the world.""" start="01:00:45.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But definitely cool ideas being evoked.""" start="01:00:47.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'm gonna say I need to decree the time when""" start="01:00:50.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we finish because for me it is 11.15""" start="01:00:52.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""p.m. And I think my co-organizers are also""" start="01:00:55.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""willing to end the day and go rest because""" start="01:00:59.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we've got another day to go tomorrow.""" start="01:01:01.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So how about we take 3 minutes and 30 seconds""" start="01:01:03.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""to try to answer a little bit more succinctly""" start="01:01:06.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the questions we've got left.""" start="01:01:08.560" video="mainVideo-core" id="subtitle"]]
+[[!template text="""How does that sound, Stefan?""" start="01:01:09.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sounds great. Cool, so I'll start reading the""" start="01:01:11.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""questions then that we've got left.""" start="01:01:15.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So this 1 we've got. If you're willing to""" start="01:01:18.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""discuss it, what do you think about the""" start="01:01:20.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""recent controversy about use of CLLib in""" start="01:01:22.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs call code? Am I willing to discuss""" start="01:01:24.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that? I have said my opinion on Emacs,""" start="01:01:29.980" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Devel, I think. And I think I understand,""" start="01:01:36.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, the viewpoints of both sides in that""" start="01:01:40.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""discussion. It is true that some things,""" start="01:01:44.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, we have to think about that.""" start="01:01:46.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""There is a real problem,""" start="01:01:49.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think, when we have 3 different APIs for""" start="01:01:50.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""doing the same thing in Emacs.""" start="01:01:53.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And can we make that a little bit better?""" start="01:01:55.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, perhaps we could,""" start="01:01:57.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""right? So that's about as much as I'd like to""" start="01:01:59.760" video="mainVideo-core" id="subtitle"]]
+[[!template text="""say. Fair enough. I would have also accepted""" start="01:02:04.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that CL loops are ugly to write and they""" start="01:02:06.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""don't feel very lispy.""" start="01:02:09.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But I'll take your answer as well.""" start="01:02:10.320" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, some people think that.""" start="01:02:13.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I understand that position as well.""" start="01:02:15.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Right. Okay, next question.""" start="01:02:19.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""When we find a bug in our Emacs,""" start="01:02:21.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""do we need to try to replicate it on our side""" start="01:02:23.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""version, on our SID version,""" start="01:02:25.200" video="mainVideo-core" id="subtitle"]]
+[[!template text="""sorry, then update all the usual list package""" start="01:02:26.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we use, and if we succeed to replicate the""" start="01:02:29.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bug in this version, only then go to""" start="01:02:31.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""development version 30 and do the same.""" start="01:02:33.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Then only ask for assistance in reporting the""" start="01:02:35.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bug we found. So I believe when they""" start="01:02:37.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""encounter a bug, are people supposed to go to""" start="01:02:40.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""master to pull main and just to make sure""" start="01:02:43.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that they are on the latest version.""" start="01:02:47.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Is this something that you require?""" start="01:02:48.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We don't require that,""" start="01:02:50.660" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but we do try to encourage you to reproduce""" start="01:02:51.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""it on master if we think that it matters.""" start="01:02:54.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, so if you can, that's even better.""" start="01:02:57.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But if the bug is there in Emacs 29,""" start="01:03:01.620" video="mainVideo-core" id="subtitle"]]
+[[!template text="""maybe we want to fix it in Emacs 29.2.""" start="01:03:03.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So the latest point release is also fine.""" start="01:03:06.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Bugs in Emacs 28 at this point,""" start="01:03:10.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""like the previous major version,""" start="01:03:12.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""we might ask you to try to reproduce it on""" start="01:03:15.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs 29 because we're not planning more""" start="01:03:17.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""releases of old major versions.""" start="01:03:19.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So that's the fundamental reason for that.""" start="01:03:21.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Great. Thank you for your answer.""" start="01:03:24.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""All right. Moving on to the next question.""" start="01:03:25.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""On branching off sub-threads,""" start="01:03:27.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I note that they are less visible compared to""" start="01:03:29.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""starting a new thread in practice.""" start="01:03:31.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I am wondering if it is just my impression or""" start="01:03:33.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""something devs also observe.""" start="01:03:35.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, it's true. That's correct.""" start="01:03:37.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I don't know what to do about it.""" start="01:03:41.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""If you want more visibility,""" start="01:03:42.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I guess just start a new thread.""" start="01:03:44.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I don't know. I can only agree,""" start="01:03:47.080" video="mainVideo-core" id="subtitle"]]
+[[!template text="""really. I concur. That's true.""" start="01:03:48.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Okay. Next question. What about rewriting""" start="01:03:51.720" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Emacs in Rust? Use Guile instead of Elisp.""" start="01:03:54.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Multi-threaded Emacs. Make Emacs prettier and""" start="01:03:57.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""shiny. And of course, same defaults.""" start="01:03:59.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Just kidding. We are spoiled children because""" start="01:04:02.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you and Eli, Lars, and etc do an impressive""" start="01:04:04.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""work. I live in Emacs since 2001.""" start="01:04:08.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Thanks. That was a good 1.""" start="01:04:11.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Sane defaults. Okay, Well,""" start="01:04:14.220" video="mainVideo-core" id="subtitle"]]
+[[!template text="""thank you. Thanks for that comment.""" start="01:04:18.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""That made me chuckle. Next question by the""" start="01:04:20.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""same person, I assume.""" start="01:04:23.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""The only downside I see with copyright""" start="01:04:24.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""assignment is that 1 has to disclose their""" start="01:04:26.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""real identity. Would it be a possibility to""" start="01:04:28.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""assign a copyright under a nickname?""" start="01:04:31.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, you don't have to say a real name.""" start="01:04:33.160" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Just register some pseudonym.""" start="01:04:34.840" video="mainVideo-core" id="subtitle"]]
+[[!template text="""The FSF does need your real name,""" start="01:04:37.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but that's kept private only.""" start="01:04:39.440" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So feel free to reach out to assign at""" start="01:04:41.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""gnu.org and ask more about that.""" start="01:04:45.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Right. All right, next question.""" start="01:04:49.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Do you think it is possible to reach an""" start="01:04:51.820" video="mainVideo-core" id="subtitle"]]
+[[!template text="""agreement on sane defaults for better""" start="01:04:53.400" video="mainVideo-core" id="subtitle"]]
+[[!template text="""out-of-the-box experience?""" start="01:04:55.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Yeah, so your sane is not my sane""" start="01:04:57.800" video="mainVideo-core" id="subtitle"]]
+[[!template text="""necessarily. So that's the fundamental""" start="01:05:00.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""problem that we're discussing here.""" start="01:05:01.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I think it's a social,""" start="01:05:02.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""not a technical problem.""" start="01:05:03.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We do change defaults sometimes,""" start="01:05:05.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but I mean, there is also some staying power.""" start="01:05:07.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So it's understandable that,""" start="01:05:09.880" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, it's, we can't just change them""" start="01:05:12.260" video="mainVideo-core" id="subtitle"]]
+[[!template text="""willy nilly and then flip flop between,""" start="01:05:13.940" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, 1 or the other kind of thing.""" start="01:05:15.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So it does take a little bit more time.""" start="01:05:18.340" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But yeah, sure, we can.""" start="01:05:20.060" video="mainVideo-core" id="subtitle"]]
+[[!template text="""We do change defaults at times.""" start="01:05:23.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""But it's perhaps more slower than what some""" start="01:05:26.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""people would prefer, for sure.""" start="01:05:29.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So that's, yeah. Right,""" start="01:05:31.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""all right. We have 2 more questions.""" start="01:05:36.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""So will XWidgets have a future?""" start="01:05:37.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Seeing the new bugs popping up in the latest""" start="01:05:40.120" video="mainVideo-core" id="subtitle"]]
+[[!template text="""XWidget dev. Not sure if there was the rest""" start="01:05:42.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""of the question, But on XWidgets,""" start="01:05:45.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""can you tell us a little more?""" start="01:05:46.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I'm not really following now.""" start="01:05:48.740" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I mean, I'm not seeing a lot of development""" start="01:05:50.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""on XWidgets currently.""" start="01:05:52.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Some people have done work in fixing up a few""" start="01:05:54.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""bugs, but I think that feature really needs""" start="01:05:57.100" video="mainVideo-core" id="subtitle"]]
+[[!template text="""more love. So I think we need,""" start="01:06:00.380" video="mainVideo-core" id="subtitle"]]
+[[!template text="""you know, help is welcome,""" start="01:06:02.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""patch is welcome. That's what I can say about""" start="01:06:03.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""that. All right, and our final question of""" start="01:06:05.920" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the day. Have you voted for Emacs as the""" start="01:06:11.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""software of the year on the Tuxes by Jupyter""" start="01:06:13.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Broadcasting? I did because Emacs 29 is""" start="01:06:15.140" video="mainVideo-core" id="subtitle"]]
+[[!template text="""great. Thank you. Okay,""" start="01:06:17.480" video="mainVideo-core" id="subtitle"]]
+[[!template text="""well, good job voting.""" start="01:06:19.300" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I didn't know, I don't know what Tuxy is on""" start="01:06:20.580" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Jupyter broadcasting, but look it up and go""" start="01:06:22.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""vote. So I wish I could tell you,""" start="01:06:25.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""I assume with Tux, it might be something""" start="01:06:28.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""related to Linux, but that's as much as I can""" start="01:06:29.500" video="mainVideo-core" id="subtitle"]]
+[[!template text="""say. All right, well, Stefan,""" start="01:06:32.900" video="mainVideo-core" id="subtitle"]]
+[[!template text="""thank you so much for taking the time not""" start="01:06:34.960" video="mainVideo-core" id="subtitle"]]
+[[!template text="""only to do a wonderful presentation,""" start="01:06:36.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""but also for answering all the questions of""" start="01:06:38.000" video="mainVideo-core" id="subtitle"]]
+[[!template text="""the community. Do you have anything else to""" start="01:06:39.640" video="mainVideo-core" id="subtitle"]]
+[[!template text="""add? Just really thanks for all the questions""" start="01:06:41.240" video="mainVideo-core" id="subtitle"]]
+[[!template text="""and thanks for staying.""" start="01:06:45.360" video="mainVideo-core" id="subtitle"]]
+[[!template text="""It's been a long day, a long conference,""" start="01:06:47.780" video="mainVideo-core" id="subtitle"]]
+[[!template text="""so thanks for staying and listening to my""" start="01:06:49.600" video="mainVideo-core" id="subtitle"]]
+[[!template text="""talk as well. Really appreciate it.""" start="01:06:51.180" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Appreciate the good work you guys are doing""" start="01:06:52.540" video="mainVideo-core" id="subtitle"]]
+[[!template text="""behind the scenes, organizing,""" start="01:06:54.280" video="mainVideo-core" id="subtitle"]]
+[[!template text="""setting everything up.""" start="01:06:55.520" video="mainVideo-core" id="subtitle"]]
+[[!template text="""And really humbled to be a part of this""" start="01:06:57.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""community. So thank you all.""" start="01:07:00.420" video="mainVideo-core" id="subtitle"]]
+[[!template text="""Well I can assure you that no 1 either in the""" start="01:07:02.680" video="mainVideo-core" id="subtitle"]]
+[[!template text="""organization team or the people watching now""" start="01:07:05.860" video="mainVideo-core" id="subtitle"]]
+[[!template text="""felt like it was tiring to stay and listen to""" start="01:07:08.040" video="mainVideo-core" id="subtitle"]]
+[[!template text="""your answers. So thank you so much Stefan.""" start="01:07:10.900" video="mainVideo-core" id="subtitle"]]
Questions or comments? Please e-mail [emacsconf-org-private@gnu.org](mailto:emacsconf-org-private@gnu.org?subject=Comment%20for%20EmacsConf%202023%20core%3A%20Emacs%20core%20development%3A%20how%20it%20works)
diff --git a/2023/info/devel-after.md b/2023/info/devel-after.md
index 633e38c0..297fbe3d 100644
--- a/2023/info/devel-after.md
+++ b/2023/info/devel-after.md
@@ -4,556 +4,556 @@
<a name="devel-mainVideo-transcript"></a>
# Transcript (unedited)
-[[!template text="""2 seconds. All right. I think we are live.""" start="00:00:08.099" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Yes. So, hi again, everyone.""" start="00:00:09.780" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I have the pleasure to welcome John Wheatley""" start="00:00:13.259" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""in person to this EmacsConf.""" start="00:00:14.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Hi, John. Hello there.""" start="00:00:16.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""How are you doing, Leo?""" start="00:00:18.592" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I am doing fantastic, and even more now that""" start="00:00:20.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I am in a room with you because we've been,""" start="00:00:23.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""we were reminiscing with Sasha.""" start="00:00:25.279" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So you had been there in person in 2013 And""" start="00:00:30.660" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""since we started doing those online,""" start="00:00:32.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Juan, since 2019, I think you've always been""" start="00:00:34.840" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""online, right? Usually it's a pre-recorded""" start="00:00:37.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""video. I think this will be the first 1 I do""" start="00:00:40.239" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""live in a long time. You're right.""" start="00:00:42.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm saying we are online right now,""" start="00:00:44.059" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but I just meant pre-recorded video.""" start="00:00:45.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So it's good to have you almost in person or""" start="00:00:48.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""at least live and we are excited to hear""" start="00:00:50.739" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""about some of the Emacs news.""" start="00:00:52.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So the floor is yours.""" start="00:00:54.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""All right, well welcome everybody.""" start="00:00:56.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""This is the yearly state of the Emacs union,""" start="00:00:59.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I guess, about how Emacs development is""" start="00:01:02.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""going. Just to note, I am not currently a""" start="00:01:05.220" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""maintainer of Emacs. So what I do to get""" start="00:01:07.540" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""these notes is I call up my friend,""" start="00:01:09.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Eli Zaretsky, 1 of the current Emacs""" start="00:01:11.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""maintainers, and he and I sit down for an""" start="00:01:13.700" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""hour, and he just gives me his dump of what's""" start="00:01:16.880" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""been going on. So I'm sort of just the""" start="00:01:19.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""messenger here. But thanks to Eli for these""" start="00:01:21.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""notes and all of the efforts that he""" start="00:01:24.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""contributes. So what he's been telling me is""" start="00:01:27.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that this Emacs 29 release that we had""" start="00:01:29.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""recently looks to have been very,""" start="00:01:31.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""very successful, which is some good news,""" start="00:01:33.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""because there were a lot of new features,""" start="00:01:34.920" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and some of those features were actually""" start="00:01:37.020" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""quite radical. So far,""" start="00:01:39.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it's been quite a success,""" start="00:01:40.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""no serious problems with it,""" start="00:01:41.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and we have Emacs 29.2""" start="00:01:43.580" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""will be released very soon.""" start="00:01:46.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""They are thinking now about starting the""" start="00:01:49.780" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Emacs 30 release cycle soon after 29.2""" start="00:01:52.580" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""is released, where the release branch,""" start="00:01:55.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""which is called Emacs-30 usually,""" start="00:01:57.620" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""will be cut and then development will become""" start="00:02:01.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""frozen with only bug fixes going into that""" start="00:02:03.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""branch. That may take quite some time until""" start="00:02:06.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it actually comes to fruition as a release,""" start="00:02:09.199" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but at least it means that the release is""" start="00:02:11.500" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""going to start taking shape in that branch""" start="00:02:13.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""soon. So, for now, Emacs 30 looks like maybe""" start="00:02:17.420" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it's going to be a little less interesting""" start="00:02:19.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""than Emacs 29 was, meaning not a huge number""" start="00:02:22.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""of changing features. But there are still""" start="00:02:24.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""some new things going in.""" start="00:02:26.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So 1 of them is that Emacs 30 is going to""" start="00:02:29.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""have Android support. So you will be able to""" start="00:02:32.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""run Emacs 30 on your Android devices.""" start="00:02:34.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So if you've ever wanted to have native Emacs""" start="00:02:36.820" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""on a tablet, which I know I've always wanted,""" start="00:02:39.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that will become possible with Emacs 30.""" start="00:02:42.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""There's also going to be much better support""" start="00:02:45.060" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""for touchscreen devices,""" start="00:02:46.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""coincidentally, both laptops and tablets.""" start="00:02:49.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So that'll enhance that Android support.""" start="00:02:52.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""There will be some recently gained support""" start="00:02:56.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""for LLDB in GUD.dl. So if you're on a Mac OS""" start="00:03:01.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""machine or a machine that uses just LLVM as""" start="00:03:05.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""part of the compilation process,""" start="00:03:06.560" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""then you probably are familiar with LLDB as""" start="00:03:10.020" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""the command line debugger.""" start="00:03:10.880" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And that support for using LLDB through a GUD""" start="00:03:14.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""will become possible in Emacs 30.""" start="00:03:16.920" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm looking forward to this actually quite a""" start="00:03:18.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""bit as well. C Perl mode is being deprecated,""" start="00:03:22.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and all future work now is only being put""" start="00:03:25.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""towards C Perl mode. Another 1 is that there""" start="00:03:30.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""are going to be some new major modes based on""" start="00:03:32.840" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""TreeSitter. They will be for the languages""" start="00:03:35.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Lua, Elixir, and HTML.""" start="00:03:37.660" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And if you're not familiar,""" start="00:03:39.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I think TreeSitter was introduced in Emacs""" start="00:03:42.260" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""29. It's a library that allows you to specify""" start="00:03:46.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""the grammar of a programming language as a""" start="00:03:49.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""BNF file, and I think using JavaScript,""" start="00:03:52.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and then with that file as input to Emacs,""" start="00:03:56.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it is then able to do syntax highlighting,""" start="00:03:59.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""syntax discovery, all of those things within""" start="00:04:02.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Emacs without having to use elisp and regexps""" start="00:04:05.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""to discover the structure of the language.""" start="00:04:07.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""It defers the structure gathering to""" start="00:04:10.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""TreeSitter and then uses that information to""" start="00:04:13.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""navigate the language.""" start="00:04:14.060" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So, As time goes on, you'll see more and more""" start="00:04:17.079" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""languages taking on TreeSetter support.""" start="00:04:19.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So the next 3 coming up,""" start="00:04:20.899" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Lua, Elixir, and HTML.""" start="00:04:22.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And then the last feature for Emacs 30 is""" start="00:04:26.500" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that the byte compiler will now detect and""" start="00:04:29.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""warn about many more questionable constructs.""" start="00:04:32.420" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Things like empty macro bodies,""" start="00:04:34.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""missing lexical constructs,""" start="00:04:36.660" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""or say, condition case without any handlers.""" start="00:04:39.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Just silly stuff that might litter the code,""" start="00:04:43.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but now you'll get a warning about it from""" start="00:04:45.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""the byte compiler to help you clean up the""" start="00:04:46.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""code and get rid of those potential sites of""" start="00:04:49.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""error. So this is the main thing that will be""" start="00:04:52.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""worked on for Emacs 30 and what's looked like""" start="00:04:54.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""shaping up for the release.""" start="00:04:55.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And also, he wanted me to announce that""" start="00:04:58.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Stefan Kongas is now a new co-maintainer.""" start="00:05:00.840" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And Stefan is, I believe,""" start="00:05:02.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""here with us in the conference and he'll be""" start="00:05:05.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""able, I hope, to help me answer any questions""" start="00:05:07.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""about future Emacs development because I'm""" start="00:05:09.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""not in the heat of it and don't have all""" start="00:05:12.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""those answers at the moment.""" start="00:05:13.100" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So That is all there is as far as a""" start="00:05:17.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""development update for now.""" start="00:05:18.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And I am available to take any questions.""" start="00:05:21.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""All right. Thank you so much,""" start="00:05:26.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Sean, for being the messenger of all this""" start="00:05:29.180" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""good news. I mean, you did start by saying""" start="00:05:31.500" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""this would not be as exciting,""" start="00:05:32.980" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""perhaps, as prior releases of Emacs,""" start="00:05:35.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but you then proceeded to say a lot of stuff""" start="00:05:38.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that it felt very exciting to me.""" start="00:05:40.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So good, good. Glad to hear that.""" start="00:05:43.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Right. So we do have questions coming in""" start="00:05:47.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""already and again people the link is on IRC""" start="00:05:49.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and also on the talks page if you want to""" start="00:05:51.980" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""start asking questions.""" start="00:05:52.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So John what I'm going to do I'm going to""" start="00:05:54.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""read you the questions and then you can""" start="00:05:56.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""answer them. Is that okay with you?""" start="00:05:57.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Absolutely. So starting with the first""" start="00:06:01.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""question which changes in recent Emacs""" start="00:06:04.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""releases are you enjoying using?""" start="00:06:06.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I have really liked the visual line mode.""" start="00:06:11.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm not sure how recent that is.""" start="00:06:14.780" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Some of these features I only discovered""" start="00:06:16.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""quite late, the new display line number""" start="00:06:19.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""functionality, where it's much,""" start="00:06:21.020" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""much, much faster, and of course,""" start="00:06:22.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""native compilation. Native compilation has""" start="00:06:25.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""been quite brilliant for some of the larger""" start="00:06:27.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""packages that I use. I do a lot of stuff in""" start="00:06:29.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Emacs. I use GNU's, I use E-Shell,""" start="00:06:31.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I use Org Mode quite a lot.""" start="00:06:33.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So native compilation has brought the user""" start="00:06:35.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""experience much closer to a modern app than""" start="00:06:39.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""some of the lagging and slowness that I might""" start="00:06:41.980" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""have experienced in the past.""" start="00:06:43.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Definitely. Moving on to the next question.""" start="00:06:46.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""What do you think the future in the area of""" start="00:06:49.020" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""artificial intelligence from the developer""" start="00:06:50.540" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""point of view? Could you say that 1 more""" start="00:06:53.420" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""time? Your voice broke up a little bit.""" start="00:06:54.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Oh, sorry. What do you think the future in""" start="00:06:55.009" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""the area of artificial intelligence from the""" start="00:06:55.125" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""developer point of view?""" start="00:06:55.191" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Could you say that 1 more time?""" start="00:06:55.307" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Your voice broke up a little bit.""" start="00:06:55.423" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Oh, sorry. What do you think the future in""" start="00:06:57.880" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""the area of artificial intelligence from the""" start="00:07:00.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""developer point of view?""" start="00:07:01.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""It's also a shaky question,""" start="00:07:02.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I think, but you get the point.""" start="00:07:04.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I do use chat-gpt-shell inside of Emacs quite""" start="00:07:08.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""a bit, actually, when doing development in""" start="00:07:10.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""other languages. Just the other day,""" start="00:07:12.180" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I was working on my Ledger accounting""" start="00:07:14.700" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""program, and I haven't done a lot of C++ in""" start="00:07:17.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""recent years. So I had forgotten how to""" start="00:07:20.920" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""exactly compare 2 strings only up to the""" start="00:07:23.620" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""length of the shortest string.""" start="00:07:24.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I know I could have cranked that out just""" start="00:07:26.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""writing it C style, but I didn't remember""" start="00:07:28.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""what the current state of the art is for C++""" start="00:07:30.300" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and the STL. So I just asked chatGPT.""" start="00:07:32.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I asked the exact question that I just said""" start="00:07:35.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""to you and sure enough it popped out the""" start="00:07:38.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""one-liner that was exactly what I needed.""" start="00:07:39.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So I think in terms of developer assistance,""" start="00:07:41.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""not having to keep all of standard libraries""" start="00:07:45.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""or common idioms in memory.""" start="00:07:46.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I don't know if other people are familiar""" start="00:07:48.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""with Rosetta Stone projects.""" start="00:07:50.580" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""They're projects where you have say a hundred""" start="00:07:53.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""different languages and there's a particular""" start="00:07:55.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""question, say, how do I read a file and copy""" start="00:07:58.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it to another location?""" start="00:07:59.220" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And then it has an instance of doing that""" start="00:08:01.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""activity for every 1 of those languages.""" start="00:08:03.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""That's a great database,""" start="00:08:04.780" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and I've used them quite a bit in the past""" start="00:08:06.880" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""for remembering how to do certain things,""" start="00:08:08.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""say, converting a string to UTF-8.""" start="00:08:12.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I think that AI does a great job of""" start="00:08:15.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""completely replacing the need for databases""" start="00:08:17.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""like that because you can just ask how do I""" start="00:08:19.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""copy a convert a string to UTF-8.""" start="00:08:21.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Yeah exactly and you know especially with""" start="00:08:27.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""languages which are tried well tried you know""" start="00:08:30.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it's very easy to get an answer that is""" start="00:08:32.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""correct. But sometimes what I find bothersome""" start="00:08:34.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""with this type of coding,""" start="00:08:37.020" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I think it's AI-aided coding,""" start="00:08:39.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but it's still coding,""" start="00:08:40.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""is that, especially with C languages,""" start="00:08:42.799" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""sometimes you're going to end up with""" start="00:08:44.140" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""undefined behaviors and stuff like this just""" start="00:08:45.660" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""because other people have been doing it,""" start="00:08:47.420" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""not because the algorithm or the model was""" start="00:08:50.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""trained with data that dates back to 10 years""" start="00:08:53.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""ago. At the time, C++ was a little different.""" start="00:08:59.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Anyway, I'm not here to talk,""" start="00:09:01.220" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""you are here to talk. Moving on to the next""" start="00:09:03.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""question. People already get to hear my voice""" start="00:09:06.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""plenty, whereas yours are much sparser.""" start="00:09:09.140" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""All right. So, what is the future of Emacs on""" start="00:09:13.360" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""macOS? I understand that there are too few""" start="00:09:15.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""developers for the platform.""" start="00:09:16.920" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Is that still true? That's a good question.""" start="00:09:21.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I don't know what the current statistics are.""" start="00:09:23.300" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I've been a user of Emacs on Mac OS for""" start="00:09:26.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""decades now. It feels like the,""" start="00:09:29.540" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""There's also that Mac port version of Emacs,""" start="00:09:32.980" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""which builds Emacs more directly using the""" start="00:09:35.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""GUI libraries on the platform.""" start="00:09:37.360" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""That continues to be updated with every""" start="00:09:40.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""single new release that comes out.""" start="00:09:41.540" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So I'd say that the support may not be as""" start="00:09:45.060" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""great as it is on Linux and other platforms,""" start="00:09:47.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but to this day I haven't suffered from being""" start="00:09:50.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""a Mac user. Great. The only thing I remember""" start="00:09:54.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""about Emacs on macOS was that emojis made it""" start="00:10:00.060" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""inside the GUI first before they did it""" start="00:10:03.420" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""anywhere else. That's the 1 anecdote that I""" start="00:10:05.660" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""have on MacOS. Right. And historically that""" start="00:10:09.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""feature was removed in order to prevent Mac""" start="00:10:12.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""from having features that Linux did not.""" start="00:10:14.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I didn't want to go into that point.""" start="00:10:16.660" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I just wanted to mention the beginning of the""" start="00:10:18.220" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""anecdote and people can find it out.""" start="00:10:19.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""But yes, that's also what it led to.""" start="00:10:21.540" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Moving on to the next question.""" start="00:10:24.840" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Why aren't you contributing to Emacs anymore?""" start="00:10:27.620" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Lack of time, I guess?""" start="00:10:28.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Lack of time, primarily.""" start="00:10:31.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Work has been very consuming.""" start="00:10:33.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""There are a lot of other projects and things""" start="00:10:35.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that I like doing. I still find Emacs Lisp""" start="00:10:38.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""very, very fun to write.""" start="00:10:39.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Just the other day, I was hacking up some""" start="00:10:42.980" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""extension macros for myself for org mode.""" start="00:10:45.260" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""But to have the time needed to sit down and""" start="00:10:48.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""design a whole new mode and work on it.""" start="00:10:51.140" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I've been spending a lot of my time now in""" start="00:10:53.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""functional languages, especially theorem""" start="00:10:55.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""provers. I just find that so intellectually""" start="00:10:57.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""satisfying and interesting.""" start="00:10:59.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Plus it pays a lot better.""" start="00:11:01.460" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Never had a paying job as an Emacs list""" start="00:11:03.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""developer. So when it comes to now just being""" start="00:11:06.220" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""a fun language or a hobby language,""" start="00:11:07.880" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it is relegated to the time that I have free""" start="00:11:10.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""when it's available. Right.""" start="00:11:13.180" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Well, the good thing is that it's kind of""" start="00:11:15.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""like riding a bicycle,""" start="00:11:15.920" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""you know, writing a major mode,""" start="00:11:17.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it comes back relatively quickly and still""" start="00:11:19.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""enjoyable. You know, the other day,""" start="00:11:22.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""actually, I took notes on a mode that I""" start="00:11:25.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""wanted to write. There's an app I use on the""" start="00:11:27.980" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Mac called drafts, and I really love it.""" start="00:11:30.020" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I use it all the time.""" start="00:11:30.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I wanted to mimic the interface of this app""" start="00:11:34.300" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""in Emacs. So I could use Emacs as my drafts""" start="00:11:37.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""application rather than this separate 1.""" start="00:11:39.560" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So I noted down all the different user""" start="00:11:42.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""parameters and how it should function and""" start="00:11:44.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""everything to describe the app to myself as""" start="00:11:47.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""sort of notes to get me started on that work""" start="00:11:50.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""when I did have free time to work on it.""" start="00:11:51.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Somebody out there on the internet just saw""" start="00:11:54.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""these notes, because I keep a lot of my stuff""" start="00:11:56.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""on GitHub. They fed it to chat GPT,""" start="00:11:59.180" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""going back to your AI question.""" start="00:12:01.460" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And they actually sent back to me a mode that""" start="00:12:04.360" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""implemented everything that I had said,""" start="00:12:06.140" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""which was effectively,""" start="00:12:07.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""chat GPT, seeing that what I had described""" start="00:12:10.460" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""was clear enough for it to derive most of the""" start="00:12:14.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""code that I would have wanted to write.""" start="00:12:16.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So maybe, maybe another thing that AI can do""" start="00:12:19.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""is it can increase the value,""" start="00:12:20.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""the efficiency of my free time.""" start="00:12:22.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Exactly. I think that's a wonderful point.""" start="00:12:26.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And phrasing it as efficiency of free time is""" start="00:12:29.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""great because you still have the expertise,""" start="00:12:30.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""obviously, that you're mobilizing into the""" start="00:12:33.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""design that you're formulating to charge DPT,""" start="00:12:35.060" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but then this expertise is turned into""" start="00:12:37.460" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""something that actually works.""" start="00:12:38.560" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Perhaps we're all going to become software""" start="00:12:41.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""architects at some point,""" start="00:12:42.540" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and then the busy work of actually coding the""" start="00:12:45.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""library and the software will be relegated to""" start="00:12:48.560" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""AI. That's an interesting future where we""" start="00:12:50.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""still, however, need to acquire the skills to""" start="00:12:54.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""know what is code, I suppose.""" start="00:12:56.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""But that's an interesting future to think of.""" start="00:12:58.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""A fairly long question.""" start="00:13:01.580" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So 1 of the tricky things about running Emacs""" start="00:13:03.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""on Android is do you use anything that""" start="00:13:06.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""requires extra packages?""" start="00:13:07.820" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Example like PDF tools with new PDF or going""" start="00:13:11.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""with a database, playing music or video with""" start="00:13:13.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""MPD or MPV on Bonga, LFeed.""" start="00:13:15.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Do you run Emacs Termex,""" start="00:13:17.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Emacs APK, Emacs in virtual machine?""" start="00:13:19.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""This is also the case on Emacs for Windows to""" start="00:13:22.260" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""a lesser degree. So summarizing,""" start="00:13:23.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""how do you make Emacs work on Android if you""" start="00:13:27.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""do not have the synergy of stuff that you""" start="00:13:29.700" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""usually find on Linux systems like MPV and""" start="00:13:32.360" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""all the fancy applications like this?""" start="00:13:33.920" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""It's a good question. Since I'm not an""" start="00:13:38.220" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Android user and I've never tried running""" start="00:13:40.140" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Emacs on Android platforms,""" start="00:13:41.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm not sure what's available out there to""" start="00:13:44.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""plug Emacs into. I mean,""" start="00:13:46.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""effectively, that question comes down to""" start="00:13:48.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""external dependencies and system support.""" start="00:13:49.920" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""That would be a great question for Stefan or""" start="00:13:53.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""somebody who has tried using Emacs,""" start="00:13:55.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""the development version of Emacs on Android.""" start="00:13:58.100" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Great. We'll put a pin in this for Stéphane""" start="00:14:03.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""afterwards. Great, so moving on to the next""" start="00:14:07.360" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""question. Will Org Tech someday become the""" start="00:14:09.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""default tech mode in Emacs?""" start="00:14:10.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And if so, when? Will Org what become?""" start="00:14:14.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Org Tech, you know, the LaTeX mode.""" start="00:14:17.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I do not know. It's been a while since I've""" start="00:14:24.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""done LaTeX. It must have been like 4 years,""" start="00:14:26.420" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but it was a pretty, the major mode for""" start="00:14:30.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""editing documents, like the state of the art""" start="00:14:32.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""for editing latex documents in Emacs.""" start="00:14:34.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And apparently it's not default.""" start="00:14:35.820" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I assume there's latex mode or something that""" start="00:14:38.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""is doing it. So were you saying octech,""" start="00:14:41.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""like A-U-C tech? Oh, did I not pronounce the""" start="00:14:44.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""C? Octech, yes. I thought you said org tech.""" start="00:14:47.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I wasn't familiar with that.""" start="00:14:49.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Octech is the only 1 I've ever used.""" start="00:14:52.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I know there is a built-in LaTeX mode,""" start="00:14:54.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but I've never used it.""" start="00:14:56.880" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I always just download whatever the latest""" start="00:14:58.780" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""version of Org Tech is and use that.""" start="00:15:00.660" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I don't know why it's not a standard package.""" start="00:15:03.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Becoming a standard package has its own costs""" start="00:15:06.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""for the development cycle because it slows""" start="00:15:09.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""down release cycle quite a bit.""" start="00:15:11.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""It's now you have to create PRs that are""" start="00:15:14.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""reviewed by the Emacs Devel mailing list.""" start="00:15:16.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""It is a little more inertia.""" start="00:15:18.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Of course, it gets you more distribution""" start="00:15:21.180" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""because it's a default package now,""" start="00:15:23.560" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and everybody can be using that.""" start="00:15:25.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""But it's not something every developer""" start="00:15:28.100" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""decides to do. It took a few years,""" start="00:15:30.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""in fact, to get usePackage into Emacs core.""" start="00:15:34.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And that only happened after it was so stable""" start="00:15:36.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that it really wasn't receiving many changes""" start="00:15:38.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""anymore. Yeah, yeah it's it's the thing when""" start="00:15:44.540" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""you move into core you lose a lot of your""" start="00:15:46.560" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""agility in terms of how you're writing the""" start="00:15:49.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""code or how you expand code.""" start="00:15:50.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""That's why you have this vibrant community on""" start="00:15:54.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Melpa compared to core but you know it""" start="00:15:57.180" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""doesn't necessarily ought to be this way it""" start="00:15:59.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""could be a little different you know And it""" start="00:16:02.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""feels like there's this repetition between""" start="00:16:04.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""repartition, sorry, between people developing""" start="00:16:06.500" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""for the core of Emacs and people developing""" start="00:16:08.220" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""on Melpa, but at the end of the day those 2""" start="00:16:10.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""groups are constantly talking to 1 another""" start="00:16:12.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and taking cues from 1 another as well.""" start="00:16:14.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So that's great. And there's of course...""" start="00:16:17.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""May I jump in about this particular question""" start="00:16:21.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""because I think I mean You know,""" start="00:16:24.840" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Org Mode doesn't really have any problems""" start="00:16:27.100" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""with releases Correct.""" start="00:16:28.980" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Just because it's distributed with Emacs so""" start="00:16:32.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""there is a difference between being in the""" start="00:16:34.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""core proper and being distributed with Emacs.""" start="00:16:37.460" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And for something like use packages,""" start="00:16:39.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it's really necessary to be in the core.""" start="00:16:41.780" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""But for something like major mode,""" start="00:16:44.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it's a bit easier. That's a very very good""" start="00:16:48.620" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""point. Yeah, I'd forgotten about that""" start="00:16:50.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""distinction. Org mode does advance pretty""" start="00:16:52.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""rapidly and then it makes releases into the""" start="00:16:55.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""core distribution. Gianni,""" start="00:16:59.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I believe you also wanted to say something""" start="00:17:01.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""before someone started jumped in with a""" start="00:17:03.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""question do you happen to remember okay""" start="00:17:08.460" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that's fine I lost her to lost to their time""" start="00:17:11.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'll be moving on to the next question then""" start="00:17:14.060" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and by the way feel free to interrupt us you""" start="00:17:17.280" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""know The whole point of this discussion is""" start="00:17:19.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""for you to ask questions to John Wheatley.""" start="00:17:20.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So whether it be via the other pad or via""" start="00:17:23.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""BBB, choose your weapon.""" start="00:17:25.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""All right, moving on to the next question in""" start="00:17:28.700" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""the meantime. And we have about 7 minutes""" start="00:17:30.220" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""left of Q&A and then we'll be moving on to""" start="00:17:32.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Stéphane. So, do you use other IDEs for""" start="00:17:35.580" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""theorem proving work, notably VS Code for""" start="00:17:37.840" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Lean? Which languages and provers can or do""" start="00:17:42.180" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""you use Emacs for? I've only used Emacs.""" start="00:17:45.420" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I've used Emacs for working with ACL 2,""" start="00:17:49.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Coq, Agda, and Lean, and I really love""" start="00:17:53.300" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Proof-General. Coq is my favorite language to""" start="00:17:55.560" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""be working in. Agda has really great support""" start="00:17:57.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""as well, has a very nice Emacs mode.""" start="00:17:59.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm only just now starting to get into Lean""" start="00:18:02.500" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""4. So I have everything installed,""" start="00:18:04.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but I haven't really started coding in""" start="00:18:07.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""earnest. I'm still reading a lot of the""" start="00:18:08.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""tutorials and learning a bit about the""" start="00:18:10.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""language. There was a while there where I""" start="00:18:13.260" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""used a IDE for ACL 2 that was outside of""" start="00:18:17.360" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Emacs, only because it was the same IDE all""" start="00:18:19.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""my co-workers were using and it was easier to""" start="00:18:21.820" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""share tips and tricks with them.""" start="00:18:23.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""But yeah, no, I found Emacs to be a great""" start="00:18:27.780" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""home for doing theorem proving.""" start="00:18:29.360" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Right. Next question. Can we see that AI""" start="00:18:36.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""generated draft? You know what you mentioned""" start="00:18:40.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""before about the draft that you then fed into""" start="00:18:43.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""ChargPT? Do you happen to have this draft""" start="00:18:45.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""anywhere? Let me see if it's still on GitHub.""" start="00:18:50.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Just take me 1 second to take a look here.""" start="00:18:53.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Take your time. The problem is I don't quite""" start="00:18:59.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""remember where I made the note.""" start="00:19:01.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""But no, I don't see it on GitHub,""" start="00:19:06.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""so I don't have it readily at hand.""" start="00:19:09.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Well, that's fine. We'll be able to...""" start="00:19:12.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Well, if you happen to find it,""" start="00:19:14.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""we'll make sure to add it on the pad and then""" start="00:19:17.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""on the talks page. And I think we would all""" start="00:19:20.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""be interested to see what this design""" start="00:19:22.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""document that actually made something work""" start="00:19:26.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""afterwards in JudgeDPT with Elisp.""" start="00:19:28.660" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm very interested to see what it would do""" start="00:19:30.440" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""because I tend to be very interested about""" start="00:19:32.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""this type of stuff I had generated but I""" start="00:19:34.640" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""never thought about doing it with Elisp""" start="00:19:36.360" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""because somehow it feels like 2 different""" start="00:19:38.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""worlds, like Elisp is kind of from the past,""" start="00:19:40.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""don't going me wrong, I love it and I use it""" start="00:19:43.540" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""every day But it's 2 different parts of my""" start="00:19:46.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""brain that I didn't think about linking.""" start="00:19:48.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So I'd be very excited to see this as well.""" start="00:19:50.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Moving on to the next question.""" start="00:19:54.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Oh, go on, please. I did find it.""" start="00:19:56.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm gonna have to give it to you as a link""" start="00:20:00.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""here. Sure, you can do it on the blue button""" start="00:20:03.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and I'll put it on the pad.""" start="00:20:05.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I put it into the public chat for Bibi.""" start="00:20:12.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Yes. So if anyone is interested,""" start="00:20:15.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm putting it right in the answer to the""" start="00:20:18.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""question right here on my screen.""" start="00:20:19.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So feel free to click on it and explore it.""" start="00:20:21.820" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm kind of curious, so I'm gonna...""" start="00:20:23.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Can I click it on stream and can we look at""" start="00:20:25.400" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""it a little bit together?""" start="00:20:26.120" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Sure, sure. I haven't tried running it,""" start="00:20:28.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I can't say for its fitness,""" start="00:20:31.300" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but it's definitely enough of the groundwork""" start="00:20:33.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""done that it's absolutely an assistance.""" start="00:20:36.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Right. Okay, so it's loading up right now?""" start="00:20:39.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""You can see my webcam,""" start="00:20:42.180" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""right? I can see your browser attempting to""" start="00:20:45.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""load. There we go. Okay,""" start="00:20:47.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""cool. So I'm not sure what GitHub is doing.""" start="00:20:49.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Let me give it a little more room.""" start="00:20:51.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""The reactive setup is not working too well.""" start="00:20:53.860" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Oh, I see. You're viewing the...""" start="00:20:58.340" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I see. Can I see the file then?""" start="00:21:01.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I should be able to see the file.""" start="00:21:03.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I think he just mentions the code in that""" start="00:21:08.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""comment. So if there's a way to view only the""" start="00:21:11.480" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""comment it would make it clear.""" start="00:21:14.765" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Right. Okay. I'm loading the file separately.""" start="00:21:16.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""I'm checking the time.""" start="00:21:18.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""We have about 3 minutes left and I think we""" start="00:21:21.220" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""have a question. In the meantime,""" start="00:21:22.420" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""whilst I show this, I'm gonna launch another""" start="00:21:25.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""question, which was about Drafts.""" start="00:21:28.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""You are carrying, you're talking about""" start="00:21:30.580" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Drafts, but does that mean you're not using""" start="00:21:32.320" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""org anymore? Oh, no, I use org all the time.""" start="00:21:35.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""In fact, the way that I've configured drafts""" start="00:21:37.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""is that after I type the thing in the note""" start="00:21:40.240" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""into drafts, I hit a key and it creates an""" start="00:21:43.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""org mode capture item for it.""" start="00:21:44.920" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""The reason why I use Drafts instead of Emacs""" start="00:21:48.060" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""is because it's always available.""" start="00:21:50.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""If Emacs is currently doing some job for me,""" start="00:21:53.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""say I'm running some long-running subshell""" start="00:21:55.840" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and the UI is frozen up whatnot,""" start="00:21:58.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Drafts is always 100% of the time instantly""" start="00:22:02.020" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""available. So that's why I tend to then lean""" start="00:22:04.600" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""on it a bit, but all of the destination of""" start="00:22:07.740" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that data is still Org Mode and everything""" start="00:22:09.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that I do gets tracked through Org Mode.""" start="00:22:11.960" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""That's also why I wanted to implement the UI""" start="00:22:15.720" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""scheme of drafts in Emacs so that I could""" start="00:22:18.580" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""drop the use of this external application.""" start="00:22:20.360" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And then, I mean, I would still have the""" start="00:22:23.040" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""problem of sometimes Emacs being unavailable,""" start="00:22:25.080" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but I would pay that price in order to have""" start="00:22:29.760" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""that good UI of drafts inside Emacs.""" start="00:22:32.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Great. I think we have,""" start="00:22:37.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""we might be too tight on time.""" start="00:22:39.520" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""We only have about 2 minutes and I need to""" start="00:22:41.200" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""jump room to go into Stephane's room as well.""" start="00:22:43.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So John, where I get to thank you so much for""" start="00:22:47.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""taking the time to answer our questions,""" start="00:22:52.660" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""but also doing a little bit of reporting on""" start="00:22:54.920" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""the state of Emacs. And now we'll get to""" start="00:22:57.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""continue this with Stéphane.""" start="00:22:58.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""So do you have any last words for everyone,""" start="00:23:00.900" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""John? No, no. I look forward to hearing""" start="00:23:03.380" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Stéphane speak. Okay, great.""" start="00:23:05.940" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""And we'll look forward,""" start="00:23:07.000" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""potentially, to having you again next year,""" start="00:23:08.800" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""potentially still doing news like this,""" start="00:23:12.180" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""and, fingers crossed, maybe having you live""" start="00:23:15.620" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""again. Maybe, maybe let's see what happens.""" start="00:23:18.160" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""All right, John. Thank you so much.""" start="00:23:20.680" video="mainVideo-devel" id="subtitle"]]
-[[!template text="""Bye bye. Bye bye.""" start="00:23:21.780" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""2 seconds. All right. I think we are live.""" start="00:00:02.419" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Yes. So, hi again, everyone.""" start="00:00:08.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I have the pleasure to welcome John Wiegley""" start="00:00:10.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""in person to this EmacsConf.""" start="00:00:13.620" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Hi, John. Hello there.""" start="00:00:15.700" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""How are you doing, Leo?""" start="00:00:17.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I am doing fantastic, and even more now that""" start="00:00:18.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I am in a room with you because we've been,""" start="00:00:21.100" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""we were reminiscing with Sacha.""" start="00:00:24.279" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So you had been there in person in 2013 And""" start="00:00:25.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""since we started doing those online,""" start="00:00:30.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Juan, since 2019, I think you've always been""" start="00:00:32.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""online, right? Usually it's a pre-recorded""" start="00:00:35.020" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""video. I think this will be the first 1 I do""" start="00:00:38.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""live in a long time. You're right.""" start="00:00:40.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm saying we are online right now,""" start="00:00:42.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but I just meant pre-recorded video.""" start="00:00:44.239" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So it's good to have you almost in person or""" start="00:00:45.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""at least live and we are excited to hear""" start="00:00:48.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""about some of the Emacs news.""" start="00:00:50.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So the floor is yours.""" start="00:00:52.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""All right, well welcome everybody.""" start="00:00:55.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""This is the yearly state of the Emacs union,""" start="00:00:57.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I guess, about how Emacs development is""" start="00:01:00.239" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""going. Just to note, I am not currently a""" start="00:01:02.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""maintainer of Emacs. So what I do to get""" start="00:01:05.379" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""these notes is I call up my friend,""" start="00:01:07.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Eli Zaretsky, 1 of the current Emacs""" start="00:01:09.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""maintainers, and he and I sit down for an""" start="00:01:12.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""hour, and he just gives me his dump of what's""" start="00:01:13.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""been going on. So I'm sort of just the""" start="00:01:17.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""messenger here. But thanks to Eli for these""" start="00:01:19.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""notes and all of the efforts that he""" start="00:01:22.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""contributes. So what he's been telling me is""" start="00:01:24.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that this Emacs 29 release that we had""" start="00:01:27.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""recently looks to have been very,""" start="00:01:30.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""very successful, which is some good news,""" start="00:01:31.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""because there were a lot of new features,""" start="00:01:33.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and some of those features were actually""" start="00:01:35.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""quite radical. So far,""" start="00:01:37.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it's been quite a success,""" start="00:01:39.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""no serious problems with it,""" start="00:01:40.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and we have Emacs 29.2""" start="00:01:42.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""will be released very soon.""" start="00:01:45.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""They are thinking now about starting the""" start="00:01:47.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Emacs 30 release cycle soon after 29.2""" start="00:01:50.020" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""is released, where the release branch,""" start="00:01:53.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""which is called Emacs-30 usually,""" start="00:01:55.880" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""will be cut and then development will become""" start="00:01:59.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""frozen with only bug fixes going into that""" start="00:02:01.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""branch. That may take quite some time until""" start="00:02:03.960" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it actually comes to fruition as a release,""" start="00:02:07.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but at least it means that the release is""" start="00:02:09.639" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""going to start taking shape in that branch""" start="00:02:11.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""soon. So, for now, Emacs 30 looks like maybe""" start="00:02:13.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it's going to be a little less interesting""" start="00:02:17.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""than Emacs 29 was, meaning not a huge number""" start="00:02:19.600" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""of changing features. But there are still""" start="00:02:23.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""some new things going in.""" start="00:02:25.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So 1 of them is that Emacs 30 is going to""" start="00:02:26.980" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""have Android support. So you will be able to""" start="00:02:29.960" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""run Emacs 30 on your Android devices.""" start="00:02:32.300" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So if you've ever wanted to have native Emacs""" start="00:02:35.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""on a tablet, which I know I've always wanted,""" start="00:02:37.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that will become possible with Emacs 30.""" start="00:02:40.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""There's also going to be much better support""" start="00:02:43.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""for touchscreen devices,""" start="00:02:45.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""coincidentally, both laptops and tablets.""" start="00:02:47.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So that'll enhance that Android support.""" start="00:02:50.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""There will be some recently gained support""" start="00:02:54.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""for LLDB in GUD.dl. So if you're on a Mac OS""" start="00:02:57.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""machine or a machine that uses just LLVM as""" start="00:03:01.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""part of the compilation process,""" start="00:03:05.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""then you probably are familiar with LLDB as""" start="00:03:07.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""the command line debugger.""" start="00:03:10.180" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And that support for using LLDB through a GUD""" start="00:03:11.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""will become possible in Emacs 30.""" start="00:03:15.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm looking forward to this actually quite a""" start="00:03:17.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""bit as well. C Perl mode is being deprecated,""" start="00:03:19.000" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and all future work now is only being put""" start="00:03:23.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""towards C Perl mode. Another 1 is that there""" start="00:03:25.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""are going to be some new major modes based on""" start="00:03:30.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""TreeSitter. They will be for the languages""" start="00:03:33.000" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Lua, Elixir, and HTML.""" start="00:03:35.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And if you're not familiar,""" start="00:03:38.800" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I think TreeSitter was introduced in Emacs""" start="00:03:40.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""29. It's a library that allows you to specify""" start="00:03:42.620" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""the grammar of a programming language as a""" start="00:03:47.460" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""BNF file, and I think using JavaScript,""" start="00:03:49.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and then with that file as input to Emacs,""" start="00:03:53.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it is then able to do syntax highlighting,""" start="00:03:56.600" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""syntax discovery, all of those things within""" start="00:04:00.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Emacs without having to use elisp and regexps""" start="00:04:03.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""to discover the structure of the language.""" start="00:04:06.460" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""It defers the structure gathering to""" start="00:04:08.300" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""TreeSitter and then uses that information to""" start="00:04:10.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""navigate the language.""" start="00:04:13.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So, As time goes on, you'll see more and more""" start="00:04:15.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""languages taking on TreeSetter support.""" start="00:04:17.300" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So the next 3 coming up,""" start="00:04:19.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Lua, Elixir, and HTML.""" start="00:04:21.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And then the last feature for Emacs 30 is""" start="00:04:24.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that the byte compiler will now detect and""" start="00:04:26.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""warn about many more questionable constructs.""" start="00:04:29.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Things like empty macro bodies,""" start="00:04:33.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""missing lexical constructs,""" start="00:04:35.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""or say, condition case without any handlers.""" start="00:04:37.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Just silly stuff that might litter the code,""" start="00:04:40.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but now you'll get a warning about it from""" start="00:04:43.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""the byte compiler to help you clean up the""" start="00:04:45.180" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""code and get rid of those potential sites of""" start="00:04:46.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""error. So this is the main thing that will be""" start="00:04:49.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""worked on for Emacs 30 and what's looked like""" start="00:04:52.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""shaping up for the release.""" start="00:04:55.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And also, he wanted me to announce that""" start="00:04:56.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Stefan Kongas is now a new co-maintainer.""" start="00:04:58.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And Stefan is, I believe,""" start="00:05:01.980" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""here with us in the conference and he'll be""" start="00:05:03.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""able, I hope, to help me answer any questions""" start="00:05:05.500" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""about future Emacs development because I'm""" start="00:05:08.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""not in the heat of it and don't have all""" start="00:05:10.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""those answers at the moment.""" start="00:05:12.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So That is all there is as far as a""" start="00:05:14.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""development update for now.""" start="00:05:17.180" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And I am available to take any questions.""" start="00:05:19.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""All right. Thank you so much,""" start="00:05:24.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Sean, for being the messenger of all this""" start="00:05:26.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""good news. I mean, you did start by saying""" start="00:05:29.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""this would not be as exciting,""" start="00:05:31.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""perhaps, as prior releases of Emacs,""" start="00:05:33.600" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but you then proceeded to say a lot of stuff""" start="00:05:36.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that it felt very exciting to me.""" start="00:05:38.980" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So good, good. Glad to hear that.""" start="00:05:40.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Right. So we do have questions coming in""" start="00:05:44.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""already and again people the link is on IRC""" start="00:05:47.180" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and also on the talks page if you want to""" start="00:05:50.380" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""start asking questions.""" start="00:05:52.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So John what I'm going to do I'm going to""" start="00:05:53.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""read you the questions and then you can""" start="00:05:54.840" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""answer them. Is that okay with you?""" start="00:05:56.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Absolutely. So starting with the first""" start="00:05:58.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""question which changes in recent Emacs""" start="00:06:01.620" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""releases are you enjoying using?""" start="00:06:04.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I have really liked the visual line mode.""" start="00:06:08.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm not sure how recent that is.""" start="00:06:13.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Some of these features I only discovered""" start="00:06:15.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""quite late, the new display line number""" start="00:06:16.840" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""functionality, where it's much,""" start="00:06:19.700" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""much, much faster, and of course,""" start="00:06:21.380" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""native compilation. Native compilation has""" start="00:06:23.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""been quite brilliant for some of the larger""" start="00:06:25.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""packages that I use. I do a lot of stuff in""" start="00:06:27.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Emacs. I use GNU's, I use E-Shell,""" start="00:06:29.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I use Org Mode quite a lot.""" start="00:06:31.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So native compilation has brought the user""" start="00:06:33.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""experience much closer to a modern app than""" start="00:06:36.100" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""some of the lagging and slowness that I might""" start="00:06:39.960" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""have experienced in the past.""" start="00:06:42.180" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Definitely. Moving on to the next question.""" start="00:06:44.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""What do you think the future in the area of""" start="00:06:47.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""artificial intelligence from the developer""" start="00:06:49.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""point of view? Could you say that 1 more""" start="00:06:51.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""time? Your voice broke up a little bit.""" start="00:06:53.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Oh, sorry. What do you think the future in""" start="00:06:54.876" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""the area of artificial intelligence from the""" start="00:06:55.025" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""developer point of view?""" start="00:06:55.141" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Could you say that 1 more time?""" start="00:06:55.208" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Your voice broke up a little bit.""" start="00:06:55.324" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Oh, sorry. What do you think the future in""" start="00:06:55.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""the area of artificial intelligence from the""" start="00:06:58.100" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""developer point of view?""" start="00:07:00.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""It's also a shaky question,""" start="00:07:01.560" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I think, but you get the point.""" start="00:07:02.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I do use chat-gpt-shell inside of Emacs quite""" start="00:07:04.960" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""a bit, actually, when doing development in""" start="00:07:09.220" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""other languages. Just the other day,""" start="00:07:10.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I was working on my Ledger accounting""" start="00:07:12.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""program, and I haven't done a lot of C++ in""" start="00:07:15.220" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""recent years. So I had forgotten how to""" start="00:07:18.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""exactly compare 2 strings only up to the""" start="00:07:21.180" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""length of the shortest string.""" start="00:07:23.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I know I could have cranked that out just""" start="00:07:25.020" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""writing it C style, but I didn't remember""" start="00:07:26.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""what the current state of the art is for C++""" start="00:07:28.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and the STL. So I just asked chatGPT.""" start="00:07:30.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I asked the exact question that I just said""" start="00:07:33.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""to you and sure enough it popped out the""" start="00:07:36.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""one-liner that was exactly what I needed.""" start="00:07:38.220" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So I think in terms of developer assistance,""" start="00:07:40.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""not having to keep all of standard libraries""" start="00:07:42.800" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""or common idioms in memory.""" start="00:07:45.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I don't know if other people are familiar""" start="00:07:47.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""with Rosetta Stone projects.""" start="00:07:49.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""They're projects where you have say a hundred""" start="00:07:51.460" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""different languages and there's a particular""" start="00:07:53.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""question, say, how do I read a file and copy""" start="00:07:55.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it to another location?""" start="00:07:58.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And then it has an instance of doing that""" start="00:07:59.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""activity for every 1 of those languages.""" start="00:08:01.880" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""That's a great database,""" start="00:08:04.180" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and I've used them quite a bit in the past""" start="00:08:05.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""for remembering how to do certain things,""" start="00:08:07.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""say, converting a string to UTF-8.""" start="00:08:09.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I think that AI does a great job of""" start="00:08:13.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""completely replacing the need for databases""" start="00:08:15.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""like that because you can just ask how do I""" start="00:08:17.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""copy a convert a string to UTF-8.""" start="00:08:19.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Yeah exactly and you know especially with""" start="00:08:23.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""languages which are tried well tried you know""" start="00:08:27.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it's very easy to get an answer that is""" start="00:08:30.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""correct. But sometimes what I find bothersome""" start="00:08:32.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""with this type of coding,""" start="00:08:34.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I think it's AI-aided coding,""" start="00:08:37.460" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but it's still coding,""" start="00:08:39.840" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""is that, especially with C languages,""" start="00:08:41.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""sometimes you're going to end up with""" start="00:08:43.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""undefined behaviors and stuff like this just""" start="00:08:44.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""because other people have been doing it,""" start="00:08:45.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""not because the algorithm or the model was""" start="00:08:47.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""trained with data that dates back to 10 years""" start="00:08:50.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""ago. At the time, C++ was a little different.""" start="00:08:53.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Anyway, I'm not here to talk,""" start="00:09:00.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""you are here to talk. Moving on to the next""" start="00:09:01.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""question. People already get to hear my voice""" start="00:09:03.960" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""plenty, whereas yours are much sparser.""" start="00:09:06.560" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""All right. So, what is the future of Emacs on""" start="00:09:10.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""macOS? I understand that there are too few""" start="00:09:13.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""developers for the platform.""" start="00:09:16.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Is that still true? That's a good question.""" start="00:09:17.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I don't know what the current statistics are.""" start="00:09:21.600" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I've been a user of Emacs on Mac OS for""" start="00:09:23.620" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""decades now. It feels like the,""" start="00:09:27.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""There's also that Mac port version of Emacs,""" start="00:09:30.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""which builds Emacs more directly using the""" start="00:09:33.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""GUI libraries on the platform.""" start="00:09:35.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""That continues to be updated with every""" start="00:09:38.300" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""single new release that comes out.""" start="00:09:40.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So I'd say that the support may not be as""" start="00:09:42.620" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""great as it is on Linux and other platforms,""" start="00:09:45.220" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but to this day I haven't suffered from being""" start="00:09:47.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""a Mac user. Great. The only thing I remember""" start="00:09:50.500" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""about Emacs on macOS was that emojis made it""" start="00:09:55.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""inside the GUI first before they did it""" start="00:10:00.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""anywhere else. That's the 1 anecdote that I""" start="00:10:03.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""have on MacOS. Right. And historically that""" start="00:10:05.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""feature was removed in order to prevent Mac""" start="00:10:09.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""from having features that Linux did not.""" start="00:10:12.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I didn't want to go into that point.""" start="00:10:15.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I just wanted to mention the beginning of the""" start="00:10:16.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""anecdote and people can find it out.""" start="00:10:18.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""But yes, that's also what it led to.""" start="00:10:19.840" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Moving on to the next question.""" start="00:10:24.020" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Why aren't you contributing to Emacs anymore?""" start="00:10:25.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Lack of time, I guess?""" start="00:10:28.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Lack of time, primarily.""" start="00:10:30.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Work has been very consuming.""" start="00:10:32.300" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""There are a lot of other projects and things""" start="00:10:33.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that I like doing. I still find Emacs Lisp""" start="00:10:36.020" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""very, very fun to write.""" start="00:10:39.000" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Just the other day, I was hacking up some""" start="00:10:40.840" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""extension macros for myself for org mode.""" start="00:10:43.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""But to have the time needed to sit down and""" start="00:10:45.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""design a whole new mode and work on it.""" start="00:10:48.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I've been spending a lot of my time now in""" start="00:10:51.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""functional languages, especially theorem""" start="00:10:53.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""provers. I just find that so intellectually""" start="00:10:55.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""satisfying and interesting.""" start="00:10:58.100" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Plus it pays a lot better.""" start="00:11:00.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Never had a paying job as an Emacs list""" start="00:11:01.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""developer. So when it comes to now just being""" start="00:11:03.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""a fun language or a hobby language,""" start="00:11:06.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it is relegated to the time that I have free""" start="00:11:08.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""when it's available. Right.""" start="00:11:10.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Well, the good thing is that it's kind of""" start="00:11:13.700" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""like riding a bicycle,""" start="00:11:15.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""you know, writing a major mode,""" start="00:11:16.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it comes back relatively quickly and still""" start="00:11:17.980" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""enjoyable. You know, the other day,""" start="00:11:20.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""actually, I took notes on a mode that I""" start="00:11:22.600" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""wanted to write. There's an app I use on the""" start="00:11:25.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Mac called drafts, and I really love it.""" start="00:11:28.100" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I use it all the time.""" start="00:11:30.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I wanted to mimic the interface of this app""" start="00:11:31.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""in Emacs. So I could use Emacs as my drafts""" start="00:11:34.600" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""application rather than this separate 1.""" start="00:11:37.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So I noted down all the different user""" start="00:11:40.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""parameters and how it should function and""" start="00:11:42.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""everything to describe the app to myself as""" start="00:11:44.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""sort of notes to get me started on that work""" start="00:11:47.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""when I did have free time to work on it.""" start="00:11:50.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Somebody out there on the internet just saw""" start="00:11:52.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""these notes, because I keep a lot of my stuff""" start="00:11:54.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""on GitHub. They fed it to chat GPT,""" start="00:11:57.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""going back to your AI question.""" start="00:12:00.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And they actually sent back to me a mode that""" start="00:12:02.220" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""implemented everything that I had said,""" start="00:12:04.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""which was effectively,""" start="00:12:06.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""chat GPT, seeing that what I had described""" start="00:12:08.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""was clear enough for it to derive most of the""" start="00:12:10.960" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""code that I would have wanted to write.""" start="00:12:14.500" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So maybe, maybe another thing that AI can do""" start="00:12:16.560" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""is it can increase the value,""" start="00:12:19.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""the efficiency of my free time.""" start="00:12:21.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Exactly. I think that's a wonderful point.""" start="00:12:24.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And phrasing it as efficiency of free time is""" start="00:12:27.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""great because you still have the expertise,""" start="00:12:29.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""obviously, that you're mobilizing into the""" start="00:12:31.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""design that you're formulating to charge DPT,""" start="00:12:33.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but then this expertise is turned into""" start="00:12:35.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""something that actually works.""" start="00:12:37.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Perhaps we're all going to become software""" start="00:12:40.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""architects at some point,""" start="00:12:41.780" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and then the busy work of actually coding the""" start="00:12:42.980" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""library and the software will be relegated to""" start="00:12:45.800" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""AI. That's an interesting future where we""" start="00:12:48.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""still, however, need to acquire the skills to""" start="00:12:51.000" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""know what is code, I suppose.""" start="00:12:55.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""But that's an interesting future to think of.""" start="00:12:56.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""A fairly long question.""" start="00:13:00.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So 1 of the tricky things about running Emacs""" start="00:13:02.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""on Android is do you use anything that""" start="00:13:04.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""requires extra packages?""" start="00:13:06.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Example like PDF tools with new PDF or going""" start="00:13:08.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""with a database, playing music or video with""" start="00:13:11.600" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""MPD or MPV on Bonga, LFeed.""" start="00:13:13.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Do you run Emacs Termex,""" start="00:13:16.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Emacs APK, Emacs in virtual machine?""" start="00:13:18.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""This is also the case on Emacs for Windows to""" start="00:13:20.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""a lesser degree. So summarizing,""" start="00:13:22.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""how do you make Emacs work on Android if you""" start="00:13:24.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""do not have the synergy of stuff that you""" start="00:13:27.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""usually find on Linux systems like MPV and""" start="00:13:30.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""all the fancy applications like this?""" start="00:13:32.560" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""It's a good question. Since I'm not an""" start="00:13:35.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Android user and I've never tried running""" start="00:13:38.380" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Emacs on Android platforms,""" start="00:13:40.460" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm not sure what's available out there to""" start="00:13:42.100" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""plug Emacs into. I mean,""" start="00:13:44.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""effectively, that question comes down to""" start="00:13:46.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""external dependencies and system support.""" start="00:13:48.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""That would be a great question for Stefan or""" start="00:13:50.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""somebody who has tried using Emacs,""" start="00:13:53.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""the development version of Emacs on Android.""" start="00:13:56.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Great. We'll put a pin in this for Stéphane""" start="00:14:00.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""afterwards. Great, so moving on to the next""" start="00:14:04.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""question. Will Org Tech someday become the""" start="00:14:07.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""default tech mode in Emacs?""" start="00:14:09.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And if so, when? Will Org what become?""" start="00:14:11.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Org Tech, you know, the LaTeX mode.""" start="00:14:15.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I do not know. It's been a while since I've""" start="00:14:19.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""done LaTeX. It must have been like 4 years,""" start="00:14:24.840" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but it was a pretty, the major mode for""" start="00:14:26.880" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""editing documents, like the state of the art""" start="00:14:30.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""for editing latex documents in Emacs.""" start="00:14:32.560" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And apparently it's not default.""" start="00:14:34.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I assume there's latex mode or something that""" start="00:14:36.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""is doing it. So were you saying octech,""" start="00:14:38.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""like A-U-C tech? Oh, did I not pronounce the""" start="00:14:41.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""C? Octech, yes. I thought you said org tech.""" start="00:14:45.020" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I wasn't familiar with that.""" start="00:14:48.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Octech is the only 1 I've ever used.""" start="00:14:50.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I know there is a built-in LaTeX mode,""" start="00:14:52.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but I've never used it.""" start="00:14:55.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I always just download whatever the latest""" start="00:14:57.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""version of Org Tech is and use that.""" start="00:14:59.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I don't know why it's not a standard package.""" start="00:15:01.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Becoming a standard package has its own costs""" start="00:15:03.840" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""for the development cycle because it slows""" start="00:15:07.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""down release cycle quite a bit.""" start="00:15:09.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""It's now you have to create PRs that are""" start="00:15:12.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""reviewed by the Emacs Devel mailing list.""" start="00:15:14.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""It is a little more inertia.""" start="00:15:17.620" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Of course, it gets you more distribution""" start="00:15:19.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""because it's a default package now,""" start="00:15:21.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and everybody can be using that.""" start="00:15:24.020" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""But it's not something every developer""" start="00:15:26.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""decides to do. It took a few years,""" start="00:15:28.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""in fact, to get usePackage into Emacs core.""" start="00:15:31.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And that only happened after it was so stable""" start="00:15:34.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that it really wasn't receiving many changes""" start="00:15:37.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""anymore. Yeah, yeah it's it's the thing when""" start="00:15:39.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""you move into core you lose a lot of your""" start="00:15:44.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""agility in terms of how you're writing the""" start="00:15:46.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""code or how you expand code.""" start="00:15:49.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""That's why you have this vibrant community on""" start="00:15:51.300" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Melpa compared to core but you know it""" start="00:15:54.220" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""doesn't necessarily ought to be this way it""" start="00:15:57.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""could be a little different you know And it""" start="00:15:59.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""feels like there's this repetition between""" start="00:16:02.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""repartition, sorry, between people developing""" start="00:16:04.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""for the core of Emacs and people developing""" start="00:16:06.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""on Melpa, but at the end of the day those 2""" start="00:16:08.600" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""groups are constantly talking to 1 another""" start="00:16:10.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and taking cues from 1 another as well.""" start="00:16:13.180" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So that's great. And there's of course...""" start="00:16:15.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""May I jump in about this particular question""" start="00:16:18.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""because I think I mean You know,""" start="00:16:21.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Org Mode doesn't really have any problems""" start="00:16:25.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""with releases Correct.""" start="00:16:27.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Just because it's distributed with Emacs so""" start="00:16:29.380" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""there is a difference between being in the""" start="00:16:32.860" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""core proper and being distributed with Emacs.""" start="00:16:35.020" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And for something like use packages,""" start="00:16:38.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it's really necessary to be in the core.""" start="00:16:40.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""But for something like major mode,""" start="00:16:42.600" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it's a bit easier. That's a very very good""" start="00:16:45.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""point. Yeah, I'd forgotten about that""" start="00:16:48.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""distinction. Org mode does advance pretty""" start="00:16:50.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""rapidly and then it makes releases into the""" start="00:16:53.000" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""core distribution. Gianni,""" start="00:16:55.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I believe you also wanted to say something""" start="00:16:59.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""before someone started jumped in with a""" start="00:17:01.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""question do you happen to remember okay""" start="00:17:03.840" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that's fine I lost her to lost to their time""" start="00:17:08.700" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'll be moving on to the next question then""" start="00:17:12.560" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and by the way feel free to interrupt us you""" start="00:17:15.700" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""know The whole point of this discussion is""" start="00:17:17.460" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""for you to ask questions to John Wheatley.""" start="00:17:19.619" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So whether it be via the other pad or via""" start="00:17:21.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""BBB, choose your weapon.""" start="00:17:23.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""All right, moving on to the next question in""" start="00:17:27.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""the meantime. And we have about 7 minutes""" start="00:17:28.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""left of Q&A and then we'll be moving on to""" start="00:17:30.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Stéphane. So, do you use other IDEs for""" start="00:17:32.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""theorem proving work, notably VS Code for""" start="00:17:35.780" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Lean? Which languages and provers can or do""" start="00:17:38.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""you use Emacs for? I've only used Emacs.""" start="00:17:42.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I've used Emacs for working with ACL 2,""" start="00:17:46.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Coq, Agda, and Lean, and I really love""" start="00:17:49.960" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Proof-General. Coq is my favorite language to""" start="00:17:53.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""be working in. Agda has really great support""" start="00:17:55.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""as well, has a very nice Emacs mode.""" start="00:17:57.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm only just now starting to get into Lean""" start="00:17:59.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""4. So I have everything installed,""" start="00:18:02.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but I haven't really started coding in""" start="00:18:05.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""earnest. I'm still reading a lot of the""" start="00:18:07.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""tutorials and learning a bit about the""" start="00:18:08.800" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""language. There was a while there where I""" start="00:18:10.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""used a IDE for ACL 2 that was outside of""" start="00:18:13.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Emacs, only because it was the same IDE all""" start="00:18:17.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""my co-workers were using and it was easier to""" start="00:18:19.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""share tips and tricks with them.""" start="00:18:22.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""But yeah, no, I found Emacs to be a great""" start="00:18:24.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""home for doing theorem proving.""" start="00:18:28.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Right. Next question. Can we see that AI""" start="00:18:32.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""generated draft? You know what you mentioned""" start="00:18:36.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""before about the draft that you then fed into""" start="00:18:40.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""ChargPT? Do you happen to have this draft""" start="00:18:43.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""anywhere? Let me see if it's still on GitHub.""" start="00:18:45.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Just take me 1 second to take a look here.""" start="00:18:51.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Take your time. The problem is I don't quite""" start="00:18:55.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""remember where I made the note.""" start="00:18:59.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""But no, I don't see it on GitHub,""" start="00:19:04.700" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""so I don't have it readily at hand.""" start="00:19:07.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Well, that's fine. We'll be able to...""" start="00:19:10.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Well, if you happen to find it,""" start="00:19:13.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""we'll make sure to add it on the pad and then""" start="00:19:15.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""on the talks page. And I think we would all""" start="00:19:17.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""be interested to see what this design""" start="00:19:20.940" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""document that actually made something work""" start="00:19:22.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""afterwards in JudgeDPT with Elisp.""" start="00:19:27.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm very interested to see what it would do""" start="00:19:28.980" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""because I tend to be very interested about""" start="00:19:30.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""this type of stuff I had generated but I""" start="00:19:32.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""never thought about doing it with Elisp""" start="00:19:34.780" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""because somehow it feels like 2 different""" start="00:19:37.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""worlds, like Elisp is kind of from the past,""" start="00:19:39.000" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""don't going me wrong, I love it and I use it""" start="00:19:41.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""every day But it's 2 different parts of my""" start="00:19:44.140" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""brain that I didn't think about linking.""" start="00:19:46.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So I'd be very excited to see this as well.""" start="00:19:48.820" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Moving on to the next question.""" start="00:19:53.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Oh, go on, please. I did find it.""" start="00:19:54.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm gonna have to give it to you as a link""" start="00:19:57.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""here. Sure, you can do it on the blue button""" start="00:20:01.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and I'll put it on the pad.""" start="00:20:03.380" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I put it into the public chat for Bibi.""" start="00:20:10.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Yes. So if anyone is interested,""" start="00:20:12.960" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm putting it right in the answer to the""" start="00:20:15.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""question right here on my screen.""" start="00:20:18.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So feel free to click on it and explore it.""" start="00:20:20.200" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm kind of curious, so I'm gonna...""" start="00:20:22.120" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Can I click it on stream and can we look at""" start="00:20:23.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""it a little bit together?""" start="00:20:25.560" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Sure, sure. I haven't tried running it,""" start="00:20:26.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I can't say for its fitness,""" start="00:20:29.020" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but it's definitely enough of the groundwork""" start="00:20:31.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""done that it's absolutely an assistance.""" start="00:20:34.400" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Right. Okay, so it's loading up right now?""" start="00:20:38.100" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""You can see my webcam,""" start="00:20:41.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""right? I can see your browser attempting to""" start="00:20:42.620" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""load. There we go. Okay,""" start="00:20:45.680" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""cool. So I'm not sure what GitHub is doing.""" start="00:20:47.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Let me give it a little more room.""" start="00:20:50.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""The reactive setup is not working too well.""" start="00:20:51.460" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Oh, I see. You're viewing the...""" start="00:20:57.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I see. Can I see the file then?""" start="00:20:59.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I should be able to see the file.""" start="00:21:02.220" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I think he just mentions the code in that""" start="00:21:06.460" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""comment. So if there's a way to view only the""" start="00:21:09.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""comment it would make it clear.""" start="00:21:11.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Right. Okay. I'm loading the file separately.""" start="00:21:14.897" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""I'm checking the time.""" start="00:21:17.320" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""We have about 3 minutes left and I think we""" start="00:21:18.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""have a question. In the meantime,""" start="00:21:21.340" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""whilst I show this, I'm gonna launch another""" start="00:21:22.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""question, which was about Drafts.""" start="00:21:25.760" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""You are carrying, you're talking about""" start="00:21:29.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Drafts, but does that mean you're not using""" start="00:21:30.740" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""org anymore? Oh, no, I use org all the time.""" start="00:21:32.480" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""In fact, the way that I've configured drafts""" start="00:21:35.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""is that after I type the thing in the note""" start="00:21:38.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""into drafts, I hit a key and it creates an""" start="00:21:40.580" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""org mode capture item for it.""" start="00:21:43.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""The reason why I use Drafts instead of Emacs""" start="00:21:45.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""is because it's always available.""" start="00:21:48.560" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""If Emacs is currently doing some job for me,""" start="00:21:51.100" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""say I'm running some long-running subshell""" start="00:21:53.960" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and the UI is frozen up whatnot,""" start="00:21:57.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Drafts is always 100% of the time instantly""" start="00:21:59.700" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""available. So that's why I tend to then lean""" start="00:22:02.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""on it a bit, but all of the destination of""" start="00:22:04.900" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that data is still Org Mode and everything""" start="00:22:07.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that I do gets tracked through Org Mode.""" start="00:22:10.240" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""That's also why I wanted to implement the UI""" start="00:22:13.080" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""scheme of drafts in Emacs so that I could""" start="00:22:16.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""drop the use of this external application.""" start="00:22:18.800" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And then, I mean, I would still have the""" start="00:22:21.540" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""problem of sometimes Emacs being unavailable,""" start="00:22:23.160" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but I would pay that price in order to have""" start="00:22:26.060" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""that good UI of drafts inside Emacs.""" start="00:22:30.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Great. I think we have,""" start="00:22:34.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""we might be too tight on time.""" start="00:22:38.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""We only have about 2 minutes and I need to""" start="00:22:39.720" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""jump room to go into Stephane's room as well.""" start="00:22:41.640" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So John, where I get to thank you so much for""" start="00:22:44.440" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""taking the time to answer our questions,""" start="00:22:47.380" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""but also doing a little bit of reporting on""" start="00:22:53.260" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""the state of Emacs. And now we'll get to""" start="00:22:55.040" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""continue this with Stéphane.""" start="00:22:58.380" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""So do you have any last words for everyone,""" start="00:22:59.280" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""John? No, no. I look forward to hearing""" start="00:23:01.300" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Stéphane speak. Okay, great.""" start="00:23:03.660" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""And we'll look forward,""" start="00:23:06.420" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""potentially, to having you again next year,""" start="00:23:07.360" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""potentially still doing news like this,""" start="00:23:10.520" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""and, fingers crossed, maybe having you live""" start="00:23:12.980" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""again. Maybe, maybe let's see what happens.""" start="00:23:15.920" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""All right, John. Thank you so much.""" start="00:23:19.700" video="mainVideo-devel" id="subtitle"]]
+[[!template text="""Bye bye. Bye bye.""" start="00:23:20.860" video="mainVideo-devel" id="subtitle"]]
Questions or comments? Please e-mail [emacsconf-org-private@gnu.org](mailto:emacsconf-org-private@gnu.org?subject=Comment%20for%20EmacsConf%202023%20devel%3A%20Emacs%20development%20updates)
diff --git a/2023/info/hyperamp-after.md b/2023/info/hyperamp-after.md
index b2ef79ba..051a5dad 100644
--- a/2023/info/hyperamp-after.md
+++ b/2023/info/hyperamp-after.md
@@ -1,6 +1,1350 @@
<!-- Automatically generated by emacsconf-publish-after-page -->
+<a name="hyperamp-mainVideo-transcript"></a>
+# Transcript (unedited)
+
+[[!template text="""[Speaker 0]: 5 seconds. Oh, actually,""" start="00:00:01.719" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Sorry, I keep delaying.""" start="00:00:07.279" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I keep forgetting that we have an""" start="00:00:08.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""introduction now. The introduction is flying.""" start="00:00:09.559" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: a little more. You're going to give a""" start="00:00:02.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Well, it's about 5 seconds now.""" start="00:00:22.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: 30-second, right? Just say go when you want""" start="00:00:19.675" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Sure. You'll hear me anyway.""" start="00:00:29.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: me to go. Okay.""" start="00:00:27.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: All right, I think we are live now.""" start="00:00:33.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So hi again, everyone.""" start="00:00:35.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I promised you we would be back in about 30""" start="00:00:36.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""seconds. I lied, it was actually 1 minute,""" start="00:00:37.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but we are here with Bob.""" start="00:00:40.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hi, Bob, how are you doing?""" start="00:00:41.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Hi, doing great. Glad to""" start="00:00:43.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: be with you. Yeah, glad to be here,""" start="00:00:46.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and so are we. We're glad to have you again""" start="00:00:50.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this year. So what we're going to do,""" start="00:00:52.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we're not going to waste any time right now""" start="00:00:54.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with chit-chats. What we're going to do,""" start="00:00:56.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we're going to move straight into your""" start="00:00:57.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""presentation, Bob, so that you have as much""" start="00:00:59.059" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""time as you can. I'm going to recede into the""" start="00:01:01.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""background. I am going to full screen your""" start="00:01:04.239" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""presentation on a stream.""" start="00:01:07.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And Bob, the floor is all yours.""" start="00:01:09.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Thank you very much, Leo.""" start="00:01:12.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Glad to be here. I hope everybody has an idea""" start="00:01:15.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of what Hyperbole is, but it's a broad""" start="00:01:18.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""information management system inside Emacs""" start="00:01:22.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that works in all major modes.""" start="00:01:26.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It's a global minor mode that you can turn on""" start="00:01:28.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and off very rapidly so that you can just get""" start="00:01:31.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in and out of hyperbole.""" start="00:01:34.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And it works mostly from a mini buffer menu""" start="00:01:36.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that if we just hit ctrl H H we see at the""" start="00:01:41.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""bottom of the screen here and as you see in""" start="00:01:44.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""some of this text right here,""" start="00:01:47.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Dee will show you a demo with all these video""" start="00:01:51.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""links of Hyperbole now.""" start="00:01:55.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But let's just get into the top 10 reasons to""" start="00:01:57.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""use Hyperbole. Number 10 is a key series""" start="00:02:01.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""curly braces. So you just put curly braces""" start="00:02:10.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""around any set of key sequences that you want""" start="00:02:12.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and hyperbole magically turns that into what""" start="00:02:19.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we call an implicit button a hyper button and""" start="00:02:22.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""any kind of text that you have so if we go""" start="00:02:25.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""down here and we just click click here we see""" start="00:02:28.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it that was a complex button that said let's""" start="00:02:35.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""start a shell, let's set an environment""" start="00:02:40.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""variable as you see the command right up""" start="00:02:43.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""there, and then let's do a grep over the""" start="00:02:45.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyperbole code and find all instances of a""" start="00:02:47.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""particular label. So if we hit made a return,""" start="00:02:50.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that's called the action key.""" start="00:02:55.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""That's what you use throughout hyperbole when""" start="00:02:57.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you just want to activate any kind of button.""" start="00:02:59.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So you see it jumped to the grep output and""" start="00:03:02.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this is in a shell buffer it's not in a""" start="00:03:06.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""compilation buffer so anywhere that you have""" start="00:03:08.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this sort of thing it's also an implicit""" start="00:03:11.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""button and any sort of grep output or""" start="00:03:13.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""compiler output you can just jump to with the""" start="00:03:17.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""same key, made a return.""" start="00:03:22.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So that's key series, the first part.""" start="00:03:23.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And then just to note that you can also just""" start="00:03:29.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""do a, well I'll just do it here and show you""" start="00:03:33.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that you can do a recursive grep with this""" start="00:03:39.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyperbole command, HYPBR grep.""" start="00:03:43.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And if you're in an Emacs list buffer,""" start="00:03:46.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it will only grep across the Emacs list.""" start="00:03:50.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So a very handy way to just go through your""" start="00:03:54.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""code very rapidly and then jump to various""" start="00:03:58.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""points in it. So we have a lot to cover""" start="00:04:01.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""today, so I'm going to go through this""" start="00:04:04.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""rapidly. This isn't a tutorial,""" start="00:04:05.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it's just to get you interested in some of""" start="00:04:07.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the features, and then there's a ton of""" start="00:04:10.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""reference material and videos now available""" start="00:04:13.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""for Hyperlink. So let's go to number 9.""" start="00:04:15.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Path names become implicit buttons.""" start="00:04:20.019" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You don't even have to quote them.""" start="00:04:22.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You can add environment variables or elist""" start="00:04:24.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""variables with the syntax right here.""" start="00:04:26.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So here we have a shell script that's""" start="00:04:29.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""somewhere on our path.""" start="00:04:32.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And notice path is an environment variable""" start="00:04:33.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with many different paths within it,""" start="00:04:36.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""right? But Hyperbole knows that and it""" start="00:04:39.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""searches the path, gets the first match,""" start="00:04:42.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""finds it, and finds the actual shell script.""" start="00:04:45.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So you can just embed that anywhere.""" start="00:04:48.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Here we have a list variable,""" start="00:04:50.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyperbdur, which is the home directory for""" start="00:04:52.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyperbole, and then a markdown file,""" start="00:04:54.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and a link to a direct section in the file,""" start="00:04:58.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and the 5 colon 5 means go to line 5 within""" start="00:05:01.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that section and column 5.""" start="00:05:05.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So let's just try it. Boom,""" start="00:05:07.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we're right there, and we're on another link""" start="00:05:09.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that we could activate as well.""" start="00:05:11.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So notice the next line is the same link but""" start="00:05:13.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this is how you normally have to do it in a""" start="00:05:17.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""markdown file. You have to change the section""" start="00:05:20.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""header to have dashes but with hyperbole you""" start="00:05:23.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""don't have to. You can just put it exactly""" start="00:05:25.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""like you see it in your file.""" start="00:05:28.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Here the pound syntax for sections is really""" start="00:05:30.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""a generic syntax in the hyperbole.""" start="00:05:34.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And so it works in all different kinds of""" start="00:05:37.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""files, your programming files.""" start="00:05:39.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Here's a shell script and we said let's just""" start="00:05:42.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""go to the first comment that has alias in it.""" start="00:05:45.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Notice we didn't have to say the whole line,""" start="00:05:49.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""just the first part of it.""" start="00:05:51.700" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And it matched to it. Here we have a link to""" start="00:05:53.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""our hyperbole structured outliner called the""" start="00:05:58.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""K Outliner. And you can see it auto-numbers""" start="00:06:01.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""all these cells. But in addition to just""" start="00:06:05.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""displaying, you can also add a pipe symbol""" start="00:06:08.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""near the end and use this view syntax to clip""" start="00:06:10.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to 2 lines and show blank lines.""" start="00:06:14.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So let's see if each node gets clipped to 2""" start="00:06:17.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""lines. So you see they're all just 2 now with""" start="00:06:19.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the ellipses and then we can expand them.""" start="00:06:22.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So a lot of power there just with path names.""" start="00:06:25.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Let's continue to number 8.""" start="00:06:29.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Can I just interrupt you just a bit?""" start="00:06:31.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Yes.""" start="00:06:33.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: I think your phone, so we have your phone set""" start="00:06:34.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""up in case your internet misbehaves and we've""" start="00:06:37.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""set this up before we started,""" start="00:06:40.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but I think the vibration is a little loud""" start="00:06:42.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""whenever it does. Can you maybe move it a""" start="00:06:44.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""little bit? I think so.""" start="00:06:46.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It will have to vibrate again.""" start="00:06:50.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Is that okay? No, my phone...""" start="00:06:47.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Okay. It shouldn't have been vibrating.""" start="00:06:54.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: have been another device,""" start="00:06:59.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but definitely we had vibration.""" start="00:07:01.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Anyway, carry on. Sorry for the interruption.""" start="00:07:02.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: It could be me. It might So number 8,""" start="00:06:57.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""special prefixes. There are 3 prefixes you""" start="00:07:07.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""can attach to path names.""" start="00:07:10.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""The first, if you want to load,""" start="00:07:11.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""instead of just finding a file,""" start="00:07:13.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""an ELIST file, you can actually load it.""" start="00:07:16.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And so I can just hit made a return on this,""" start="00:07:19.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and you see in the mini buffer,""" start="00:07:22.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it loaded it as compiled e-list.""" start="00:07:25.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I could put a .el on here,""" start="00:07:27.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""a .elc, .gz, all of that'll work,""" start="00:07:29.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and just put a dash in front to load it.""" start="00:07:33.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""If you want to run a shell command,""" start="00:07:36.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""just put an exclamation mark in front of""" start="00:07:38.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""something and again you can have the""" start="00:07:41.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""environment variable. So here we're saying""" start="00:07:42.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""run the program date and you see,""" start="00:07:44.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""let's see, let's do it again.""" start="00:07:48.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""There we go. It ran date and you see the""" start="00:07:50.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""output right there. And what if you want to""" start="00:07:53.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""run a graphical program on your system?""" start="00:07:55.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Well here, we want to open a PDF file and I'm""" start="00:07:58.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""just using XDG Open on Linux,""" start="00:08:01.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you could use Open on Mac and you just put an""" start="00:08:05.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""ampersand in front and there's the Hyperbole""" start="00:08:09.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""manual instantly displayed.""" start="00:08:14.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So lots of power there and all of that""" start="00:08:16.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""actually .pdf's and many other file types are""" start="00:08:18.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""automatically linked to various programs by""" start="00:08:22.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole. So you could just use the path""" start="00:08:25.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""name itself and it would probably behave the""" start="00:08:27.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""same way. Number 7, bookmarks on steroids.""" start="00:08:29.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So Hyperbole gives you a personal button""" start="00:08:35.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""file, which is on the menu you see here under""" start="00:08:37.419" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""button files, and then personal.""" start="00:08:40.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So here we'll just display it.""" start="00:08:43.039" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And you can put whatever you want in here,""" start="00:08:45.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""these implicit buttons of any type.""" start="00:08:47.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You can name them the way here and you can""" start="00:08:49.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""activate either the name with MetaReturn or""" start="00:08:52.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the button itself. So,""" start="00:08:55.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of course, if we did MetaReturn here,""" start="00:08:56.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we'd just display that in a web browser.""" start="00:08:59.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I'll just do a few of these.""" start="00:09:03.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So here's a section of line.""" start="00:09:05.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Let's just jump there.""" start="00:09:07.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But these can be all sorts of different""" start="00:09:09.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""actions that are going on.""" start="00:09:11.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And you just, whatever cross references you""" start="00:09:13.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""want, you put in here.""" start="00:09:16.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And the neat thing is that this then becomes""" start="00:09:17.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""a list of what we call global buttons.""" start="00:09:20.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So when I go into the menu and I go control""" start="00:09:23.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""HHGA to activate a global button,""" start="00:09:26.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you can see that all the names from this file""" start="00:09:30.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""appear here. So only the name buttons appear,""" start="00:09:33.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and I could like go to the hyperbole to-do""" start="00:09:36.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""list and things like that.""" start="00:09:40.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So very, very quick access to all your""" start="00:09:42.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""information whenever you need it.""" start="00:09:45.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And that could be an org file as well if you""" start="00:09:47.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""prefer that. So we just took care of that.""" start="00:09:49.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Number 6, instant test case running and""" start="00:09:53.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""debugging. This is a fairly new feature.""" start="00:09:57.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""What we're seeing here is a pre-release of""" start="00:10:00.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""version 9, which should be out within the""" start="00:10:02.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""next week. But the instructions at the""" start="00:10:04.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""beginning of the presentation tell you how to""" start="00:10:07.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""get the development version of HyperBlade,""" start="00:10:10.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which is right now 8.01""" start="00:10:14.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""pre, but that's virtually the same as what 9""" start="00:10:15.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""will be. So you can grab that as of today.""" start="00:10:19.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So let's just jump to a test file.""" start="00:10:24.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""What you see here is called an explicit""" start="00:10:27.700" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""button. You can actually make buttons where""" start="00:10:30.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""similar to org, where you just see a bit of""" start="00:10:33.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the button and all of the metadata is hidden.""" start="00:10:35.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I can say control A J and I see all about""" start="00:10:39.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that button, exactly what it's going to do""" start="00:10:42.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""before I activate it and even who created it""" start="00:10:43.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""or last modified it. Then just queue out of""" start="00:10:47.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""here and you're back where you were.""" start="00:10:50.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So now, what this did is link us to an ERT""" start="00:10:52.700" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""test. If you write tests in Emacs,""" start="00:10:56.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you probably use ERT tests.""" start="00:10:59.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So if I hit made a return on here it'll just""" start="00:11:02.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""run the test tell me it passed great okay but""" start="00:11:05.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""maybe I had a problem so let me use control""" start="00:11:08.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you made a return and that will e-debug the""" start="00:11:11.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""test instantly. So now I'll step through it""" start="00:11:17.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it says, well, let's,""" start="00:11:20.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this single line actually creates that""" start="00:11:23.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""explicit button. You see we have an empty""" start="00:11:25.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buffer here that we're in.""" start="00:11:27.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Now I step through that and now there's the""" start="00:11:29.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""explicit button that got put in there.""" start="00:11:31.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Now the next line I step through it and this""" start="00:11:34.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""is going to check if we have the right action""" start="00:11:36.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""type and it returns true so that's good and""" start="00:11:39.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""now we should be it should be associated with""" start="00:11:42.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the temp buffer returns true good And that's""" start="00:11:45.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""why what you saw before is this passed.""" start="00:11:48.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""The whole thing passed.""" start="00:11:51.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So lots of power there.""" start="00:11:53.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Simple to use. You're just using your made a""" start="00:11:55.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""return and prefix arguments.""" start="00:11:57.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It's something everybody who develops should""" start="00:12:00.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""have. So number, let's go on.""" start="00:12:03.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I think we're making pretty good time here,""" start="00:12:07.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but I turned off my timer.""" start="00:12:09.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Let's go to number 5. This is a very new""" start="00:12:13.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""feature, which is very cool too.""" start="00:12:15.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You used to have to use the mouse probably""" start="00:12:17.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and you could drag across windows to go from""" start="00:12:20.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""a source to a referent buffer and that would""" start="00:12:23.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""create a hyperlink for you.""" start="00:12:26.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But now we've installed it and made it even""" start="00:12:28.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""easier on, we've installed it on a,""" start="00:12:30.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""on the hyperbole menus.""" start="00:12:34.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So let's just go back to our presentation""" start="00:12:37.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""here and say we want to link to this line""" start="00:12:40.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that we're on there. And I'll just create the""" start="00:12:43.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""button in our scratch buffer here so it""" start="00:12:46.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""doesn't really mess anything up.""" start="00:12:48.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So I just put my point in where I want the""" start="00:12:50.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""button to appear and then I put point where I""" start="00:12:53.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""want it to link to in the other the other""" start="00:12:56.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buffer and then I just say control HH to get""" start="00:13:00.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""my menu, I for implicit button,""" start="00:13:02.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and then L for link. Boom,""" start="00:13:05.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it inserts it, right at point.""" start="00:13:07.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""What did it do? It knew that this was in the""" start="00:13:10.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyperbole directory and I have a variable for""" start="00:13:12.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that, so that if you sent this link to your""" start="00:13:15.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""friend who uses Hyperbole,""" start="00:13:17.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it would still work right because they have a""" start="00:13:19.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""different hyperbole there.""" start="00:13:21.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And then I want to go directly to line 116.""" start="00:13:23.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So boom, it just took me there.""" start="00:13:28.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So that's it. And Hyperbole is doing all this""" start="00:13:30.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""for you. You just say I want a link to this""" start="00:13:33.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""thing and it figures out what's at point and""" start="00:13:36.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it determines the right type of implicit link""" start="00:13:38.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to put there. And that's the whole point is""" start="00:13:42.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that you're just working like when you're""" start="00:13:45.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""programming or you're writing an article and""" start="00:13:47.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you just hit made a return or or pull up a""" start="00:13:50.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""menu and hit a key binding and you're off to""" start="00:13:53.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the races. So that was implicit linking We""" start="00:13:57.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""can also create those explicit link buttons,""" start="00:14:02.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and as well as the global link,""" start="00:14:06.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""where we would just give it a name,""" start="00:14:07.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it would automatically put it in our""" start="00:14:09.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""global button file without us even having""" start="00:14:11.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that on screen. So lots of power there as""" start="00:14:14.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""well, lots of consistency.""" start="00:14:18.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Now let's take a look at the K Outliner a""" start="00:14:21.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""little more. I'm just going to show you 1""" start="00:14:25.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""feature actually. I don't have time to show""" start="00:14:28.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you the K Outliner in detail,""" start="00:14:29.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but it's a really cool structured outliner""" start="00:14:31.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that even if you love Org Mode,""" start="00:14:34.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you should try it. And this is 1 thing that""" start="00:14:36.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you can't get with Org Mode,""" start="00:14:39.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""is let's say Hyperlink comes with an example""" start="00:14:41.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""file which teaches you about the K Outliner.""" start="00:14:45.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So we'll just use that right here.""" start="00:14:48.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And when you're in the K Outliner,""" start="00:14:51.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you can bring up and go into the K Outliner""" start="00:14:53.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""menu right here at the bottom.""" start="00:14:55.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And there's a format menu there.""" start="00:14:58.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You always take the first letter of a menu,""" start="00:15:00.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the first capital letter of a menu item.""" start="00:15:02.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So F for format and then D for display in""" start="00:15:05.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""browser. So just let's do it.""" start="00:15:08.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We have with 1 button or 1 key we've produced""" start="00:15:12.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the entire outline in a collapsible outline""" start="00:15:17.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in HTML. So I can go here.""" start="00:15:23.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I just have to use my mouse.""" start="00:15:27.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So I can expand and collapse these trees live""" start="00:15:29.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with very basic coding.""" start="00:15:34.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We tried to keep this as simple as possible.""" start="00:15:39.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But you see it maintains the structure of the""" start="00:15:42.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""outline and even tables.""" start="00:15:45.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So all the formatting is maintained and again""" start="00:15:55.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it's instant. Or you can just export it to a""" start="00:15:57.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""file without displaying it.""" start="00:16:00.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Very efficient kinds of operations.""" start="00:16:03.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So that was number 4. Number 3 is a""" start="00:16:06.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""subsystem, another subsystem in Hyperbole""" start="00:16:10.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""called Hycontrol, which is for window and""" start="00:16:13.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""frame management. And I just wanted to show""" start="00:16:16.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you 1 thing in there. It's got a lot of""" start="00:16:18.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""capabilities. But I always had the problem""" start="00:16:20.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that Emacs wouldn't let me scale my fonts,""" start="00:16:24.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""all of my faces at the same time.""" start="00:16:28.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I wanted to zoom. I didn't want to increase""" start="00:16:30.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the default font size and all the others stay""" start="00:16:33.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the same. So let's just display our faces""" start="00:16:36.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""right here and then we have a choice of""" start="00:16:41.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""either controlling frames or windows.""" start="00:16:45.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So let's start by controlling frames.""" start="00:16:47.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So you get another submenu when you're in""" start="00:16:50.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""high control to tell you what to do here.""" start="00:16:52.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And there's just lowercase z and uppercase z.""" start="00:16:56.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So let's try it. So it's scaling the entire""" start="00:16:59.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""frame. And you can see from the list of faces""" start="00:17:03.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that they're all scaling at the same time.""" start="00:17:06.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I can go back down.""" start="00:17:08.599" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Now if I switch to window mode,""" start="00:17:10.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and there's a special fast way to do that,""" start="00:17:13.619" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""just hit T to toggle. And if you look at the""" start="00:17:16.099" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""bottom menu it says frames right now now it""" start="00:17:18.819" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""says windows when I hit T so now if I do the""" start="00:17:21.819" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""same Z to increase it's just this window and""" start="00:17:25.599" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but it's you know it's the faces in there so""" start="00:17:30.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""a lot of power again but I just haven't found""" start="00:17:37.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""anywhere else that you can get that kind of""" start="00:17:40.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""control over your faces very rapidly.""" start="00:17:43.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So that's number 3. Now number 2,""" start="00:17:45.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""let's put that in there.""" start="00:17:55.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So the HiROLO is the final subsystem in""" start="00:17:58.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole and this has gotten much cooler.""" start="00:18:03.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So it started off as a contact management""" start="00:18:06.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""system, but it's really just a hierarchical""" start="00:18:08.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""record management system that lets you have""" start="00:18:11.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""as many files, directories as you want,""" start="00:18:15.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and you can search across all of them without""" start="00:18:18.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""any external utilities necessary,""" start="00:18:20.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""just what's built into Emacs and Hyperlink.""" start="00:18:23.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So as you can see, we've expanded it to""" start="00:18:26.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""handle org files, markdown,""" start="00:18:29.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""K outlines, Emacs outlines.""" start="00:18:32.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So what I'm going to do is just say,""" start="00:18:34.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I want to search using my Hyberlo file list.""" start="00:18:36.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You just set that to what you wanted to""" start="00:18:40.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""search. But now you have all this""" start="00:18:43.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""flexibility. You can use environment""" start="00:18:44.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""variables in it. You can just specify a""" start="00:18:46.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""directory and it will find all those matching""" start="00:18:48.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""files below that directory recursively.""" start="00:18:51.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You can give it the markdown file here and""" start="00:18:55.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you can use file wildcards as well.""" start="00:18:58.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I mean, look at this. It's got a list""" start="00:19:01.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""variable in it and a wildcard,""" start="00:19:04.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it's just all I'm gonna do is I change""" start="00:19:06.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this from a Lisp expression to make it a""" start="00:19:09.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyper button. You just change the outer""" start="00:19:13.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""parens to angle brackets,""" start="00:19:15.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and then it's automatically an implicit""" start="00:19:17.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""button that you can activate with made a""" start="00:19:21.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""return so just ran that and now I've set my""" start="00:19:22.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""file list so now let's do a search it would""" start="00:19:26.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""be ctrl H H roll it X R and then S for search""" start="00:19:29.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But I'll just do it this way.""" start="00:19:34.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And boom, it found everything that fast.""" start="00:19:37.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I can just get like,""" start="00:19:41.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""show the top items in there.""" start="00:19:43.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So I kind of have outlining in this buffer.""" start="00:19:45.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I can just move to each match that I hit.""" start="00:19:48.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And notice, although everything was""" start="00:19:51.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""collapsed, it's expanding here.""" start="00:19:53.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""When I move in and out of each of the entry""" start="00:19:55.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""matches, it expands or collapses as I move to""" start="00:19:58.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the next 1. So a lot of power there.""" start="00:20:02.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""What else? So just tabbing through these""" start="00:20:06.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""things. And you notice that it's working""" start="00:20:09.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""across all of these different types,""" start="00:20:11.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it's telling you which file everything""" start="00:20:13.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""came from right up here.""" start="00:20:16.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So I could just made a return here,""" start="00:20:17.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""should work. Yes, revisit the file normally.""" start="00:20:20.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And it just pulls it right up.""" start="00:20:23.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So everything is live and hyperbole.""" start="00:20:25.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You've got hyperlinks everywhere.""" start="00:20:28.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Let's just get rid of that.""" start="00:20:31.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Go back to our demo. So if you are fans of""" start="00:20:34.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Vertico and Consult, you can now use that""" start="00:20:41.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with the High Rollo. So all you have to do is""" start="00:20:46.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""let's just format our windows,""" start="00:20:49.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and then I'll say, let's use ConsultGrep over""" start="00:20:51.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the Rolodex. Now, it found all the matches""" start="00:20:55.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""there, and I can just move live through them""" start="00:20:58.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in the buffer like you may be used to or I""" start="00:21:02.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""can filter back down and say using orderless""" start="00:21:04.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""joystick or anything that has joy in it just""" start="00:21:10.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""match to those lines and then I can you know""" start="00:21:13.700" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""either jump there or quit out of here.""" start="00:21:17.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I'll just quit out of it right now.""" start="00:21:20.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So very cool. And all of that is using""" start="00:21:22.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""whatever you personally set as the set of""" start="00:21:25.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""files and directories you want to search.""" start="00:21:28.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And finally, our number 1 feature of""" start="00:21:31.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole is you can customize this to give""" start="00:21:35.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you these kinds of implicit buttons,""" start="00:21:40.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""whatever kind you want.""" start="00:21:44.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And there are 3 levels of doing this.""" start="00:21:46.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""The first is for non-programmers.""" start="00:21:49.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You can just set a string,""" start="00:21:51.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""like a URL with a parameter in it.""" start="00:21:54.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So the %s represents the parameter,""" start="00:21:57.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and This is how you do a search on""" start="00:21:59.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""DuckDuckGo. So all I have to do is evaluate""" start="00:22:01.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this defal for action link.""" start="00:22:04.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And now I have a new implicit button type""" start="00:22:07.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that I can put between angle brackets.""" start="00:22:11.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I just give it that name,""" start="00:22:13.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""DDG, and some parameter,""" start="00:22:16.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""whatever I want to search for,""" start="00:22:18.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and this is a button that does that search.""" start="00:22:20.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Very cool, right? So you can embed these.""" start="00:22:25.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""This could be a hyperlink in,""" start="00:22:28.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, a comment in a programming file.""" start="00:22:32.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Anything on the entire web that you want to""" start="00:22:35.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""link to, whatever kind of compact notation""" start="00:22:38.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you want to give it. So that's what we're""" start="00:22:42.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""going to learn as we get more advanced here""" start="00:22:44.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you can give it even more compact notations.""" start="00:22:47.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So as you get more advanced you can say,""" start="00:22:49.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""well I don't like this angle bracket,""" start="00:22:52.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I want to have an implicit button that uses""" start="00:22:54.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""these square brackets and then an angle""" start="00:22:57.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""bracket inside it. So then you need the""" start="00:22:59.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""defile for implicit link.""" start="00:23:02.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""This lets you specify your start and end""" start="00:23:06.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""delimiters for your new type and and then you""" start="00:23:08.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""can give it a function that you wanted to run""" start="00:23:12.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and that will take the text of whatever is in""" start="00:23:15.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the button, in this case,""" start="00:23:18.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""test release here, and feed it to the""" start="00:23:19.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""function that I gave here.""" start="00:23:23.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So what this function does is grep over my""" start="00:23:26.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""git log and find any commits that include the""" start="00:23:29.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""term test release in it.""" start="00:23:33.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So let's try it. First I have to add the""" start="00:23:35.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""button type and that's all it takes and it""" start="00:23:38.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""defined it now. So anywhere in Emacs now I""" start="00:23:41.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""can use this button type essentially.""" start="00:23:44.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So let me try to activate it.""" start="00:23:47.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Okay, and it says yeah let's save it.""" start="00:23:49.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Okay so now it's running a git log command.""" start="00:23:53.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It found all the commits and now of course if""" start="00:23:56.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I had made a return on this commit it""" start="00:23:59.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""recognizes it as an implicit link,""" start="00:24:02.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and if I search for what was a test release,""" start="00:24:05.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""there it is. So this commit had that in""" start="00:24:09.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""there. So all these matches,""" start="00:24:11.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""so I don't know how other people do this,""" start="00:24:14.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but for me this makes it a lot simpler.""" start="00:24:16.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So a lot of power that any programmer can""" start="00:24:21.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""use. And finally, if you've mastered Emacs""" start="00:24:24.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Lisp, or you're starting to,""" start="00:24:27.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you can look in the hib types file in""" start="00:24:29.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole and see all sorts of uses of defib,""" start="00:24:33.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which is defined implicit button.""" start="00:24:37.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And that's the full power of e-LISP when you""" start="00:24:39.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""want to define 1. So what we're going to do""" start="00:24:42.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""here is I wanted to know,""" start="00:24:45.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""given a date, what the day of the week is.""" start="00:24:47.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And because the date primitives weren't quite""" start="00:24:49.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""written the way I might like,""" start="00:24:53.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it's a little longer than some.""" start="00:24:55.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But I'm just going to evaluate this list.""" start="00:24:57.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I've now defined DOW as an action type.""" start="00:25:00.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Now, how do I know I'm doing that?""" start="00:25:06.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So I can always say Control-H,""" start="00:25:08.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""capital A here to see what a button's going""" start="00:25:11.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to do. And it tells me When I'm there,""" start="00:25:13.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I'm at a hyperbole button,""" start="00:25:15.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and the type is from category DOW.""" start="00:25:18.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And what's it gonna do?""" start="00:25:24.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It takes a mark, it's gonna do a message""" start="00:25:25.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""action. Okay, so let's try it.""" start="00:25:27.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It tells me that's a date,""" start="00:25:31.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it falls on a Sunday,""" start="00:25:32.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which is today. That's correct.""" start="00:25:34.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So 2 days from today is a Tuesday.""" start="00:25:36.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Beautiful. So we've just totally transformed""" start="00:25:39.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""what we can do with text.""" start="00:25:44.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You notice there's no markup here.""" start="00:25:46.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And this is working with all of the other""" start="00:25:49.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""implicit types that we have everywhere in""" start="00:25:53.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Emacs. It's only going to match to this kind""" start="00:25:55.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of pattern and anywhere else,""" start="00:25:57.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, it just won't trigger that type.""" start="00:26:00.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So lots of power. You just need to get""" start="00:26:03.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""started with Hyperbole.""" start="00:26:06.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""There's great documentation both inside the""" start="00:26:07.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""code and in the manual.""" start="00:26:10.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""There's a fast demo that you can start with""" start="00:26:12.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and there's about 10 different videos.""" start="00:26:15.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""There'll be 3 presentations on hyperbole here""" start="00:26:18.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""at the conference, and I hope you've enjoyed""" start="00:26:21.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this presentation. I'd love to answer your""" start="00:26:25.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""questions and get some new users for""" start="00:26:28.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole. So lastly, I'd like to thank my""" start="00:26:31.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""co-maintainer, Matt, who's going to speak""" start="00:26:36.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""later about the extensive test protocols we""" start="00:26:38.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""have in Hyperbole. Hyperbole works on every""" start="00:26:42.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""version of Emacs from 27.1""" start="00:26:46.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""up, and every operating system and Windows""" start="00:26:48.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""system that you use. And thanks so much to""" start="00:26:52.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the volunteers and the speakers at EmacsConf.""" start="00:26:56.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You do a great job, and we're all really""" start="00:26:59.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""appreciative that you take all the time that""" start="00:27:02.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you do to make this happen.""" start="00:27:04.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Thank you very much.""" start="00:27:06.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: And thank you so much Bob.""" start="00:27:09.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So I'll let you do the gymnastics to join us""" start="00:27:11.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""back on BBB and put your webcam.""" start="00:27:14.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""In the meantime, I'll invite people,""" start="00:27:17.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""as Sasha told you in the introduction,""" start="00:27:19.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to go put your question in the pad.""" start="00:27:21.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""The link is on the talks page and also on""" start="00:27:23.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""IRC. So take your time.""" start="00:27:25.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We've already got some people who've asked""" start="00:27:28.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""questions. You can also start joining the""" start="00:27:29.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""room. Let me just ping Sasha.""" start="00:27:33.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Ping to open ID HyperAmp.""" start="00:27:35.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So, you'll be able to join us on""" start="00:27:39.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""BigBlueButton as well to go chat with Bob""" start="00:27:41.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""more directly. I'm not sure if people have""" start="00:27:43.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""joined already. Not yet.""" start="00:27:45.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So, Bob, what I'll do,""" start="00:27:50.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we already have 4 questions.""" start="00:27:51.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I'm gonna read them to you and you can take""" start="00:27:52.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""your time answering them,""" start="00:27:54.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but we do have about 7 minutes until we go to""" start="00:27:54.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the next talk, so we need to be a little bit""" start="00:27:57.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Okay.""" start="00:28:00.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: chop-chop. All right, so reading the first""" start="00:27:59.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""questions, and I'm also going to display them""" start="00:28:03.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""for the stream to see,""" start="00:28:05.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""do buttons keep their metadata within the""" start="00:28:07.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""same file? E.g., would I see it if I change""" start="00:28:09.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to fundamental mode, for instance?""" start="00:28:12.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: So all of the things that I was showing you,""" start="00:28:15.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""implicit buttons have no metadata.""" start="00:28:19.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""That's the great thing about them,""" start="00:28:21.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""is you just type them in the buffer and what""" start="00:28:23.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you see is all there is to that button and""" start="00:28:27.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyperbole generates all the smarts associated""" start="00:28:30.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with them. When you create an explicit""" start="00:28:33.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""button, which I showed you 1 or 2 examples""" start="00:28:35.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of, that metadata is, there is metadata with""" start="00:28:38.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that, and that is stored in a separate file""" start="00:28:42.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in the same directory called .hypb.""" start="00:28:45.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So it's hidden away and it doesn't affect the""" start="00:28:49.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""format of the buffer that it's in.""" start="00:28:51.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So again, what you see is what you get.""" start="00:28:53.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You just see the delimiters around the""" start="00:28:56.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""explicit button and that's it.""" start="00:28:58.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So Hyperbole takes care of all that for you.""" start="00:29:01.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""However, if you embed them into like a mail""" start="00:29:04.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""message, which you can,""" start="00:29:08.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you can mail buttons, then there is a hidden""" start="00:29:09.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""area at the end of the mail message that""" start="00:29:12.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""encodes the metadata for the explicit""" start="00:29:14.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buttons.""" start="00:29:17.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Ok, great. Next question.""" start="00:29:19.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Is it possible to link to a file by its ID,""" start="00:29:21.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""like the node, org ID or some similar unique""" start="00:29:24.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""string inside?""" start="00:29:27.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Yes, In fact, that's 1 of the new features in""" start="00:29:29.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""9. You just made a return on an ID and it""" start="00:29:33.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""takes you right to the org node,""" start="00:29:37.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""works with org Rome and org straight out of""" start="00:29:40.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the box. We're looking at ways to make it""" start="00:29:44.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""easier to just insert those in places,""" start="00:29:47.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but since you have word keys that do that""" start="00:29:50.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""already, you can just insert them in any""" start="00:29:52.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""documents and Hyperbole will recognize them.""" start="00:29:55.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I think In some cases you may need to put ID""" start="00:29:58.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""colon in front of the ID as well.""" start="00:30:02.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Generally it works.""" start="00:30:05.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Ok, great. Moving on to the next question.""" start="00:30:08.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Regarding the frames example,""" start="00:30:12.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""any thoughts or considerations for a""" start="00:30:14.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""transient interface or is this something 1""" start="00:30:16.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""could already toggle? Are you familiar with""" start="00:30:19.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""transient interface?""" start="00:30:22.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Yes, we don't use transient because we,""" start="00:30:23.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, Hyperbole started out in 1991,""" start="00:30:26.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""though it's had much much work since then so""" start="00:30:30.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we predate a lot of newer things in Emacs and""" start="00:30:34.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""then we just use them as as they Become""" start="00:30:37.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""useful too hyperbole We think the The mini""" start="00:30:41.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buffer menu is pretty good.""" start="00:30:45.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We could rewrite stuff in transient,""" start="00:30:46.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but we haven't seen the need yet.""" start="00:30:48.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Maybe high control, that might be a good""" start="00:30:52.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""candidate, because there are so many keys in""" start="00:30:54.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it. So we'll think about that.""" start="00:30:58.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But it would be a while before we got to it.""" start="00:31:00.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Right. Moving on to the next question.""" start="00:31:04.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Sorry I got really confused because there's a""" start="00:31:07.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""French salut, you know,""" start="00:31:08.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in the text of it. Is someone saying hi to me""" start="00:31:10.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""or something? All right,""" start="00:31:12.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""next question. Regarding multi-file search""" start="00:31:14.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""functionality, why not implement it within""" start="00:31:16.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the existing framework of MetaX grep or""" start="00:31:22.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""similar built-in commands?""" start="00:31:24.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Yet another search interface sounds a bit""" start="00:31:26.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""redundant.""" start="00:31:28.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Multi-file search, so HiRolo I guess you're""" start="00:31:30.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""talking about. I think what you missed there""" start="00:31:34.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""is that High Rollo matches to records,""" start="00:31:36.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""multi-line records, so it's not a""" start="00:31:40.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""line-oriented match, it's a record-oriented""" start="00:31:42.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""match. So Grep, you can say maybe give me 3""" start="00:31:45.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""lines of context, but what if I have a""" start="00:31:50.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""20-line record? I want to see the whole""" start="00:31:52.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""thing. And so, it's a full-text search""" start="00:31:56.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""interface, which lets you have any size""" start="00:31:59.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""entries or nodes in the match buffer.""" start="00:32:04.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So that's 1 reason. MADAX grep works with""" start="00:32:07.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyperbole. I mean, you use it if you want and""" start="00:32:10.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""then you can hit MADA return on grep lines.""" start="00:32:13.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So we basically take everything from POSIX""" start="00:32:16.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and everything in Emacs and we try to make a""" start="00:32:20.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""lot of it simpler to use.""" start="00:32:24.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We don't take away any of the functionality,""" start="00:32:26.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we just augment it.""" start="00:32:29.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Right, and I think that's the logic for a lot""" start="00:32:32.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of the packages, you know,""" start="00:32:35.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the philosophy is just you create your little""" start="00:32:36.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""bit, your little island where you do your""" start="00:32:38.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""stuff. And if you can resonate with other""" start="00:32:40.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""islands so much the better.""" start="00:32:42.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And it feels like between those islands,""" start="00:32:43.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, hyperbole is a great way to connect""" start="00:32:45.700" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""things that are just text.""" start="00:32:48.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So it's always been a lovely philosophy.""" start="00:32:50.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""There's always been a lovely philosophy""" start="00:32:52.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""behind it.""" start="00:32:53.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: 1 other point I'd make there is that the""" start="00:32:55.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyrolo also contains logical search""" start="00:32:58.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""operators. So when I typed in that string you""" start="00:33:01.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""could just as well type with like Lisp""" start="00:33:04.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""expressions, semi Lisp expressions.""" start="00:33:07.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You can say open paren and word 1,""" start="00:33:09.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""word 2, close paren. You know you can have or""" start="00:33:13.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and XOR and not and it'll do the search and""" start="00:33:17.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""just retrieve the entries,""" start="00:33:22.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""again, multi-line entries that match all of""" start="00:33:24.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the criteria that you specified there.""" start="00:33:27.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So that's fairly unique,""" start="00:33:29.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I think. So you basically got a full text""" start="00:33:31.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""search platform with logical operators,""" start="00:33:33.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""instantly, you know, fast moving,""" start="00:33:36.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""rapid keys that you can control everything""" start="00:33:38.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with and it's all integrated into this larger""" start="00:33:42.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""framework.""" start="00:33:45.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Okay, great. Well, Bob,""" start="00:33:47.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you have 2 more questions,""" start="00:33:49.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but there's a big 1 about what inspired you""" start="00:33:50.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to write it back. It's being hyperbole around""" start="00:33:53.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the time of its birth,""" start="00:33:56.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but sadly, we only have about 1 more minute.""" start="00:33:57.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So what I'm going to ask you to do,""" start="00:34:00.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""feel free to answer the question.""" start="00:34:01.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""If you go on BBB, I've pasted the link to the""" start="00:34:02.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""other pad. I think you can see it on your""" start="00:34:05.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: I have the ether pad up.""" start="00:34:08.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: computer as well. Right,""" start="00:34:06.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""so what are we going to do?""" start="00:34:11.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I'm Sorry, I'm just a little bit pressed by""" start="00:34:14.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""time because it's not me controlling when we""" start="00:34:16.679" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""move on to the next talk,""" start="00:34:18.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""as was evidenced yesterday when we got yonked""" start="00:34:19.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to the next talk. So Bob,""" start="00:34:21.719" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""feel free to take all the time you want to""" start="00:34:24.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""answer questions. People,""" start="00:34:25.679" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""if you wanna join the Big Blue Button room,""" start="00:34:26.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the links are available and open on the talk""" start="00:34:28.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""page. You can join and ask as many questions""" start="00:34:30.239" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""as you want to Bob. And for us,""" start="00:34:31.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with a live stream, we'll be moving on to the""" start="00:34:33.679" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""next talk in about 30 seconds.""" start="00:34:35.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So Bob, all that's left is for me to thank""" start="00:34:37.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you for your presentation again this year and""" start="00:34:39.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Thank you, Leo.""" start="00:34:43.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: for all your answers. All right.""" start="00:34:41.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Bye bye, Bob. And we'll be moving on to the""" start="00:34:45.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""next talk in about 10 seconds.""" start="00:34:47.699" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""See you in a bit. All right,""" start="00:34:49.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Bob, we are off air I think now.""" start="00:34:53.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Thank you so much. I need to get moving for""" start="00:34:56.139" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Okay, is somebody gonna keep writing answers""" start="00:34:59.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in here or I need to type them in?""" start="00:35:02.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: the next talk. It's probably best now if you""" start="00:34:57.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""read the questions on your own and answer""" start="00:35:06.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""them. We'll collate everything together,""" start="00:35:09.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we'd just like to have your answers.""" start="00:35:11.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: I hope some people will join the BBB.""" start="00:35:15.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: it in my... All right,""" start="00:35:19.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""bye-bye.""" start="00:35:21.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: But I'll start. I'll put Bye-bye.""" start="00:35:17.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So let me take a second here to see what""" start="00:35:24.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""questions we have. Did we cover that?""" start="00:35:28.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""OK. The point is why not upstream search""" start="00:35:36.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""interface? Could you clarify that question?""" start="00:35:42.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I don't quite know what that means.""" start="00:35:46.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So I'll go on to the next 1 and come back to""" start="00:35:51.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that. Hyperlinks been around for a number of""" start="00:35:53.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""years now. What inspired you to write it back""" start="00:35:57.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""around the time of its birth?""" start="00:35:59.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Well, that's a great question.""" start="00:36:01.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It was born before the World Wide Web,""" start="00:36:04.700" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""actually. And it was right before.""" start="00:36:07.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I remember we were in the midst of a version""" start="00:36:10.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""when the first version of the web occurred.""" start="00:36:13.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I was thinking that there was going to be""" start="00:36:16.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""an information explosion of unstructured""" start="00:36:19.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""information. And like we needed to have much""" start="00:36:22.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""better tools to be able to manage say like""" start="00:36:27.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""5,000 email messages coming in and all sorts""" start="00:36:30.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of non-database-oriented information""" start="00:36:36.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""structures. So I said we need an advanced""" start="00:36:39.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""interactive hypertext system and it needs to""" start="00:36:42.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""work with all the general capabilities that""" start="00:36:46.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we use like email and our document production""" start="00:36:49.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""systems. So I was doing research at the time""" start="00:36:54.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""at a university And I decided to work on""" start="00:36:58.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""something that we called personalized""" start="00:37:04.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""information environments.""" start="00:37:06.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And there's a paper about this out there if""" start="00:37:07.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you want to dig it out on the web.""" start="00:37:10.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So Pies, as they were called,""" start="00:37:12.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""was an architecture which would have a bunch""" start="00:37:16.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of managers, like Hyperbole was 1 of the""" start="00:37:20.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""managers, the hypertext manager,""" start="00:37:24.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and then a bunch of point tools that would""" start="00:37:26.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""leverage the managers,""" start="00:37:29.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""like an email reader would be a point tool""" start="00:37:30.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that would leverage the hypertext manager.""" start="00:37:33.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And so the first, I did in fact write""" start="00:37:36.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""something called PyMail,""" start="00:37:39.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which was very much Gmail-like,""" start="00:37:41.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""before Gmail. And so inside,""" start="00:37:44.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and I did a, it was like our mail in a way,""" start="00:37:48.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but inside your our mail summaries,""" start="00:37:51.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""for example, you could have explicit buttons""" start="00:37:54.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""embedded and that were drawn from the subject""" start="00:37:57.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of your email message,""" start="00:38:01.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and they'd work just like the regular button.""" start="00:38:02.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So it was very flexible,""" start="00:38:06.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it had rule-based processing and things.""" start="00:38:07.700" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So Hyperbole came out of that,""" start="00:38:11.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it's come a long way,""" start="00:38:13.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but it's still a very useful core hypertext""" start="00:38:15.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""system, hypermedia system,""" start="00:38:20.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I should say. Are you familiar with the""" start="00:38:22.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Embark package? I am a bit.""" start="00:38:26.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I've just started using it.""" start="00:38:28.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I think there's some overlapping""" start="00:38:30.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""functionality with hyperbole.""" start="00:38:32.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Yes, we've found that people over time have""" start="00:38:34.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""enjoyed hyperbole and have started""" start="00:38:39.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""replicating some of its features,""" start="00:38:41.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, small amounts of the features.""" start="00:38:43.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I talked to, I hope I don't miss his name,""" start="00:38:47.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but O'Adam who writes that once in a while we""" start="00:38:51.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""dialogue and I think Embark is great,""" start="00:38:56.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, I'll give him some pointers too and""" start="00:38:59.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""he thinks that Embark and hyperbole are quite""" start="00:39:04.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""compatible too, just like organ hyperbole.""" start="00:39:08.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So that's how we like to keep it.""" start="00:39:11.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Some people prefer just a small package of""" start="00:39:14.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""mBARC, and it does different things than what""" start="00:39:18.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole does. So I think you use all of""" start="00:39:21.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""these tools together, and they can work very""" start="00:39:23.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""well together. Any other questions?""" start="00:39:27.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Anybody still here? If not,""" start="00:39:34.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""probably people are off to another talk.""" start="00:39:38.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So thank you very much And again look for""" start="00:39:41.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole version 9 in the next week.""" start="00:39:47.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Thanks very much. Bye.""" start="00:39:53.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Should I leave BBB? Oh Alpha Papa's here.""" start="00:40:00.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hey. Good to see you. Alright,""" start="00:40:07.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""well... Well, I'll stay for another minute,""" start="00:40:16.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but I think I'm going to go off video 2 and""" start="00:40:22.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""start listening to another talk.""" start="00:40:27.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Thanks, everyone. Thanks everyone.""" start="00:40:30.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Yes, I can hear you. Yes,""" start="00:40:56.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Have you been answering questions?""" start="00:40:58.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: I can hear you. finished answering the""" start="00:40:56.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""questions. We're all done.""" start="00:41:03.700" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: I Okay, cool. Well, what I'm going to do,""" start="00:41:00.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I'm going to close the room unless you want""" start="00:41:07.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to go a little longer,""" start="00:41:09.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""because this talk that we're playing right""" start="00:41:10.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""now is finishing really quick and we don't""" start="00:41:11.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""have a Q&A afterwards.""" start="00:41:13.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So, do you want to stay on air or something?""" start="00:41:15.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Yeah, if you let people know to come back,""" start="00:41:19.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""because someone went to go hear that""" start="00:41:21.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""presentation, I can stay.""" start="00:41:23.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Sure, I'll make an announcement then.""" start="00:41:25.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And you can stay, we'll just put on BBB.""" start="00:41:27.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You can stay muted until people join,""" start="00:41:29.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but this way it opens up menus for people to""" start="00:41:31.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""join and if no 1 shows up in 5 minutes we'll""" start="00:41:33.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""all go on break. Does that sound okay?""" start="00:41:36.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Great, thank you.""" start="00:41:38.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Cool, I'll go back to the management in the""" start="00:41:40.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""background and I'll let you know.""" start="00:41:44.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Okay, Bob, I've won the stream.""" start="00:43:25.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We are joining it now.""" start="00:43:27.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We've got about 5 seconds.""" start="00:43:28.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I think we are back.""" start="00:43:41.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""so we are gone, Bob, please.""" start="00:43:49.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Hi. So, yeah, I was going to say,""" start="00:43:45.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""can we see if anybody comes back in the room?""" start="00:43:54.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""How do you tell?""" start="00:43:57.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: You should be able to show on the left,""" start="00:44:01.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you've got on BbBlueButton,""" start="00:44:03.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you've got a button, I'm showing it on the""" start="00:44:04.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""screen, but you've got a little button that""" start="00:44:06.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""allows you to show the people joining.""" start="00:44:08.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So, hello everyone. Let's see if you had more""" start="00:44:10.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""question on your pad that we could be taking""" start="00:44:15.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in the meantime, just give me a second to""" start="00:44:17.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""find""" start="00:44:19.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: your pad. Here we go, an error occurred.""" start="00:44:19.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: All right, it's loading up.""" start="00:44:31.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Okay. Wow. Feels like there's an AI writing""" start="00:44:25.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this stuff on the pad.""" start="00:44:37.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Has it? Is this the last pad?""" start="00:44:41.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Oh no, this is a different 1,""" start="00:44:45.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Which question are you looking at now?""" start="00:44:49.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: sorry. It was a different pad,""" start="00:44:47.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Oh right.""" start="00:44:55.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: that was the problem. Okay,""" start="00:44:53.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""here we go. Okay, I'm back.""" start="00:44:57.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So, yeah, it looks like...""" start="00:45:00.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Is anybody back? Send,""" start="00:45:02.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""if you're here, send a chat message.""" start="00:45:04.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Yeah, because it's been something.""" start="00:45:08.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You have, apparently, whenever we leave those""" start="00:45:10.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""BBB chat room open, the moment we go off air,""" start="00:45:14.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""people start joining and asking a lot of very""" start="00:45:18.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""interesting questions and you know that's all""" start="00:45:20.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""well and good, we'll be able to put them on""" start="00:45:22.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the page later on. But it'd be great if you""" start="00:45:24.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""could also have those discussions when we are""" start="00:45:26.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""live because a lot of people would benefit""" start="00:45:28.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""from the brilliance that goes on in this""" start="00:45:30.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""room. So please don't be shy,""" start="00:45:32.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: So we're on the general stream now?""" start="00:45:37.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: join and talk. Yep, we are back on the""" start="00:45:34.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""general stream. We have about until 10 of the""" start="00:45:41.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""next hour, which is 19 minutes.""" start="00:45:46.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Just- Why don't you and I talk?""" start="00:45:48.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So have you ever tried hyperbole,""" start="00:45:52.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Leo?""" start="00:45:56.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: I have never, but You know,""" start="00:45:58.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it feels like every year when you present""" start="00:46:00.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""something, it feels like I already know so""" start="00:46:03.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""much. Because of the buttons,""" start="00:46:05.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it feels like it's also something that we've""" start="00:46:08.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""reinvented many times in Emacs.""" start="00:46:10.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It's like conversion to evolution,""" start="00:46:12.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""except you're the 1 who started ahead of""" start="00:46:14.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""everyone else.""" start="00:46:16.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Well, that's a good point because,""" start="00:46:17.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, we have, Emacs itself has push""" start="00:46:19.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buttons, which you see like in the help""" start="00:46:23.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buffers. And those used to,""" start="00:46:25.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we didn't really do anything with those,""" start="00:46:27.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but now we've subsumed them as implicit""" start="00:46:30.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buttons as well. So you're made a return,""" start="00:46:32.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we'll work on those anywhere too.""" start="00:46:35.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So, we're trying to get,""" start="00:46:38.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you use 1 key, right? To control every type""" start="00:46:42.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of button that you have.""" start="00:46:45.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It works on org links,""" start="00:46:47.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""org buttons anywhere, or URLs.""" start="00:46:48.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Because it's so simple.""" start="00:46:53.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""All you need is like 5 to 10 lines of code to""" start="00:46:54.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""map. You map the pattern that represents a""" start="00:46:58.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""concept, right? And then you can create an""" start="00:47:02.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""infinite number of those buttons from that""" start="00:47:05.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""type. That's what's really cool about""" start="00:47:07.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole, is say I have a 500 page document""" start="00:47:09.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it uses a really weird format for""" start="00:47:13.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""cross-referencing, right?""" start="00:47:15.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I write my 3 lines of pattern match to work""" start="00:47:17.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with that. And then everywhere throughout""" start="00:47:22.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that document and the hundreds of other""" start="00:47:24.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""documents that will be created with that""" start="00:47:25.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""format, they're all live buttons instantly.""" start="00:47:27.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Nothing changed about the document.""" start="00:47:31.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""That's really cool. You know,""" start="00:47:34.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""word mode, we have global word buttons,""" start="00:47:35.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but mostly it has to be embedded within an""" start="00:47:37.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""org file, right? And follow that syntax.""" start="00:47:42.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""With hyperbole, it's like we can adapt as the""" start="00:47:45.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""world adapts around us to whatever formats""" start="00:47:51.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""people want to use that day.""" start="00:47:55.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And you can even change things to look the""" start="00:47:56.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""way you want, right, and have your own""" start="00:47:59.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""cross-references. There's something built""" start="00:48:02.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""into Hyperbole that's not really active,""" start="00:48:04.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which was sort of along the Zettelkasten way.""" start="00:48:08.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We wrote this a long time ago.""" start="00:48:13.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It's called hib-doc.el,""" start="00:48:15.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it's a card catalog notion.""" start="00:48:19.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So it uses the high rollo in the background""" start="00:48:22.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but it lets you create these forms that are""" start="00:48:26.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""cards that you fill out with whatever kind of""" start="00:48:30.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""data you want and then it gives you the full""" start="00:48:32.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""text searching across the cards and each card""" start="00:48:35.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""has a unique ID that you can reference""" start="00:48:38.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""similar to org IDs but these are human""" start="00:48:41.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""readable and human typable and so you can you""" start="00:48:45.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""can just have a cross-reference to any doc ID""" start="00:48:49.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and essentially create what Engelbart used to""" start="00:48:52.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""call a journal, which is all these IDs on""" start="00:48:56.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""documents that point you directly to the""" start="00:49:00.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""document archive so that you could have like""" start="00:49:03.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""your internal publishing system and you know""" start="00:49:05.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it's very simple to do and it's just 1 module""" start="00:49:10.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""added on to Hyperbole.""" start="00:49:13.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Yeah it's especially interesting for me you""" start="00:49:15.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""know because coming back to the side of""" start="00:49:19.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""convergent evolutions it's funny because the""" start="00:49:21.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""parameters are a little different.""" start="00:49:23.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""For us with org buttons,""" start="00:49:24.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we're very happy. A lot of the stuff during""" start="00:49:26.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""EmacsConf is run with org mode,""" start="00:49:29.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""like we have Elisp going everywhere to""" start="00:49:31.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""compile a lot of org properties,""" start="00:49:34.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""like speaker information,""" start="00:49:38.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""for instance, how long the talk is,""" start="00:49:39.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the title, and all this.""" start="00:49:41.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We have all of this in an org file,""" start="00:49:42.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which we use as a database,""" start="00:49:44.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but then we can do so much stuff.""" start="00:49:46.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We can send email and we can update the""" start="00:49:47.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""schedule. By the way, if you're interested in""" start="00:49:50.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this, we'll have a talk on the DevTrack in""" start="00:49:52.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the afternoon today that Sacha did and it's""" start="00:49:54.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""wonderful. I'm just teasing it.""" start="00:49:56.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Oh, that's great.""" start="00:49:58.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: But coming back to Hyperbole,""" start="00:50:00.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""for you, it feels like the parameters were""" start="00:50:01.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""slightly different because the feeling was,""" start="00:50:04.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I just want a tunnel that can work between""" start="00:50:06.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""any type of files. Now,""" start="00:50:09.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it's all well and good.""" start="00:50:10.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Org-Rome, D-Note, and all the stuff like""" start="00:50:11.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this, they create bidirectional links.""" start="00:50:14.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But it's only between org-mode files.""" start="00:50:17.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Whereas what you're achieving with Hyperbole,""" start="00:50:19.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and you've done it much earlier than everyone""" start="00:50:22.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""else, is that you have this concept""" start="00:50:24.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""regardless of the type of file that you're""" start="00:50:27.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""using. And I find this to be beautiful.""" start="00:50:29.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Like 5 years ago, whenever you were talking""" start="00:50:32.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""about hyperbole, I did not have a concrete""" start="00:50:35.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""idea of what was happening.""" start="00:50:37.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But ever since I've gone through the journey""" start="00:50:38.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of really understanding what the El Caster""" start="00:50:40.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""method were about, it feels like you were""" start="00:50:42.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""foreigners in the topic.""" start="00:50:45.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Obviously, you've mentioned the mother of all""" start="00:50:46.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""demos by Edward Engelbart,""" start="00:50:48.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but those ideas are not novel,""" start="00:50:50.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but it feels like only now are they starting""" start="00:50:54.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to be appropriated by people,""" start="00:50:56.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""especially in free software,""" start="00:50:58.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it's really good to see.""" start="00:50:59.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I'm really excited to,""" start="00:51:01.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""well, have my small part to play in this.""" start="00:51:02.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I'm also excited to be able to chat with""" start="00:51:04.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you and people like Bastien and other people""" start="00:51:06.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""about all those topics.""" start="00:51:10.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Yeah, I think, you know,""" start="00:51:12.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it's fun that we can laugh now about when""" start="00:51:13.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""people say people are still using Emacs,""" start="00:51:16.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, is because they're not used,""" start="00:51:20.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""certain people aren't using it.""" start="00:51:22.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""They have no idea of how far it's come and""" start="00:51:24.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""how powerful it is. And,""" start="00:51:26.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, we're leveraging Elisp heavily,""" start="00:51:28.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""obviously, but if you look at the definition""" start="00:51:31.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of our types, they look exactly like DIP""" start="00:51:34.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""funds in ELisp. And we've been able to do""" start="00:51:37.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that because of Lisp macros.""" start="00:51:41.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You know, we so we basically have our own""" start="00:51:43.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""domain specific language there,""" start="00:51:46.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but there's almost nothing to learn because""" start="00:51:48.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it's just like what you know from UList.""" start="00:51:51.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So again, you know, taking the concept and""" start="00:51:54.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""leveraging it, abstracting it and leveraging""" start="00:51:57.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it multiple times gives you a lot of power.""" start="00:51:59.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And people, you know, somebody said the other""" start="00:52:03.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""day, and I said, finally,""" start="00:52:06.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""this quote happened. He said,""" start="00:52:07.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""there's so many things that I do with""" start="00:52:11.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyperbole every day that I forget that I'm""" start="00:52:15.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""using hyperbole. Because it's just so""" start="00:52:17.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""embedded in this guy's workflow.""" start="00:52:21.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And that's really how I use it.""" start="00:52:23.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You know, there are features in there,""" start="00:52:25.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""can't use everything, right?""" start="00:52:27.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So there are features that I don't use,""" start="00:52:29.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but I use a lot of things and it's all like""" start="00:52:32.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""muscle memory, just like the keyboard,""" start="00:52:35.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the Emacs key bindings.""" start="00:52:38.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So it's very exciting to get to that level.""" start="00:52:39.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And now, you know, we haven't started with""" start="00:52:42.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the chatbots or any of the AI integration,""" start="00:52:44.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but I'm starting to think about that a little""" start="00:52:47.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""bit and how we'll interface to that world and""" start="00:52:49.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I think it's going to be very exciting.""" start="00:52:53.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Yeah, likewise and I think it harks back to""" start="00:52:56.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""what we were talking about before when we""" start="00:52:58.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""mentioned Hyperbole being a package inside of""" start="00:53:00.660" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""an ecosystem that is Emacs.""" start="00:53:03.700" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But it's not because something is well""" start="00:53:05.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""circumscribed in terms of feature set that it""" start="00:53:08.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""does not influence everything around it.""" start="00:53:10.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Like Hyperbole can be used with something""" start="00:53:12.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""completely at the opposite end of what it was""" start="00:53:15.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""intended for, just because it provides a good""" start="00:53:18.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""set of tools that can be used wherever else""" start="00:53:21.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you want in Emacs. And it's the same thing""" start="00:53:23.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with Org Mode, it's the same thing with many,""" start="00:53:26.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""many different things.""" start="00:53:27.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And it feels like integrating AIs,""" start="00:53:29.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""or generative AIs, into Emacs would provide""" start="00:53:33.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""such a tool that could apply to any kind of""" start="00:53:39.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""other major mode or any kind of other use.""" start="00:53:42.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So I'm also excited to see this.""" start="00:53:45.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It feels like we are sitting at the brink of""" start="00:53:46.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""a revolution. I'm not going to say the acne""" start="00:53:50.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""stuff, but it definitely feels like right""" start="00:53:52.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""now, by trying to see what we can do with AI,""" start="00:53:54.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it's definitely going to change the way not""" start="00:53:57.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""only we program, but also the way we take""" start="00:53:59.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""notes and the way we design stuff,""" start="00:54:01.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""arcing back to what John Wigley said""" start="00:54:03.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""yesterday about his draft program on macOS.""" start="00:54:05.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Bob, if you don't mind,""" start="00:54:09.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I see people typing questions and I also see""" start="00:54:11.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""people joining on people buttons,""" start="00:54:13.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""so I'm going to read you the 2 questions that""" start="00:54:14.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""have been added. Is that okay?""" start="00:54:16.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Great, go for it.""" start="00:54:19.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Cool, so first question.""" start="00:54:21.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Wow, what you're describing now,""" start="00:54:23.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and that's when you were talking about the""" start="00:54:25.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""bi-directional links and especially the last""" start="00:54:27.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""question in its entirety,""" start="00:54:31.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""What you're describing now reminds me a lot""" start="00:54:33.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""about HyperCard that I grew up on.""" start="00:54:35.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Do you know if Hyperbole inspired Bill""" start="00:54:37.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Atkinson or if you were inspired by""" start="00:54:39.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""HyperCard? Or were there just a lot of""" start="00:54:41.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""thoughts about hyper-contextuality around""" start="00:54:43.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that time?""" start="00:54:44.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Alright, well this is another interesting""" start="00:54:46.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""anecdote. I don't know if it's true or not,""" start="00:54:50.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but I think HyperCard predated our stuff.""" start="00:54:52.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It was right around the same time when""" start="00:54:57.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole was starting out.""" start="00:55:00.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But when I was doing the Pi research,""" start="00:55:02.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I worked at, when I left school,""" start="00:55:06.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I worked at Motorola, and we did a lot of""" start="00:55:08.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""work with Apple back then.""" start="00:55:11.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And somebody came back and he said,""" start="00:55:13.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, the people over there have seen""" start="00:55:15.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""your Pi research and they really liked it a""" start="00:55:19.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""lot. And so they were leveraging that when""" start="00:55:21.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""they decided to create the division that they""" start="00:55:26.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""called Apple Pi, which was the originator of""" start="00:55:28.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the Newton which eventually led to the""" start="00:55:33.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""iPhone. So it all kind of is interconnected""" start="00:55:36.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""just like the impact that free software has""" start="00:55:41.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""had around the world. So you never know where""" start="00:55:44.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""your stuff is gonna go or end up.""" start="00:55:47.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Right. All right, moving on to the next""" start="00:55:51.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""question. Is it possible to only use 1""" start="00:55:53.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""feature of hyperbole without the others,""" start="00:55:55.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""i.e. Using only the implicit explicit buttons""" start="00:55:57.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""without I control I roller or without having""" start="00:56:00.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to rewrite part of the code in hyperbole in""" start="00:56:03.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""order to be able to load a smaller hyperbole.""" start="00:56:05.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Does it make sense?""" start="00:56:08.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Yes we get asked this all the time.""" start="00:56:10.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So you can use any little bit that you want""" start="00:56:12.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""anywhere right you can even just call code""" start="00:56:16.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""from Hyperbole. I mean you don't use""" start="00:56:19.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""everything in Emacs, right?""" start="00:56:23.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But you still install Emacs on your machine.""" start="00:56:25.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It's exactly the same thing.""" start="00:56:28.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Those libraries don't take up any memory,""" start="00:56:30.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""they take up a little disk space and it's so""" start="00:56:33.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""trivial compared to the amount of disk we""" start="00:56:36.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""have today. So a lot of things are not loaded""" start="00:56:38.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""unless you activate them.""" start="00:56:41.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And so I know that you do have to build all""" start="00:56:45.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""those things. So maybe that's what bothers""" start="00:56:48.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""people. It takes 2 minutes if you're using,""" start="00:56:51.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it depends how fast your computer is.""" start="00:56:56.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But you build it once on install like every""" start="00:56:58.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""other package. And it used to be that there""" start="00:57:01.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""would be a lot of warnings just because of""" start="00:57:04.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the way we wrote the code and we didn't""" start="00:57:06.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""really have to deal with some of those""" start="00:57:09.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""warnings. But with this new release,""" start="00:57:11.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""we've gotten rid of almost all of them,""" start="00:57:13.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""including the native compiler messages.""" start="00:57:15.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So it should be a very clean install now,""" start="00:57:20.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and just use 1 part at a time.""" start="00:57:22.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""But the other parts are there in case you""" start="00:57:26.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""make a link to something and you use a""" start="00:57:29.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""facility just like I was showing as I went""" start="00:57:32.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""across subsystems today.""" start="00:57:34.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It may take you a year,""" start="00:57:36.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but then all of a sudden you find the use""" start="00:57:38.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""case for Hyrule and you say,""" start="00:57:40.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""oh, I'm glad I have it there.""" start="00:57:42.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And yes, some of these things could be split""" start="00:57:44.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""into sub packages like you do in the org""" start="00:57:47.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""ecosystem. But given our limited resources on""" start="00:57:49.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the team, we find having them all in 1 gives""" start="00:57:52.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""us a higher level of quality and lets us""" start="00:57:56.400" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""deliver a better integrated system for your""" start="00:57:59.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""use.""" start="00:58:02.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Yeah, exactly. And I think,""" start="00:58:04.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you know, it's, it's not a monolith.""" start="00:58:06.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I mean, it's usually easier,""" start="00:58:10.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""easy, more easy, more easy.""" start="00:58:12.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Sorry, I was right on the first try.""" start="00:58:14.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It's usually easier to maintain a monolith""" start="00:58:16.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that contains many bits of functionality like""" start="00:58:20.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""org. You have plenty of people using org""" start="00:58:23.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""mode, not using org-agenda,""" start="00:58:25.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""for instance, or you've got plenty of people""" start="00:58:27.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""using org-mode and barely using Babel because""" start="00:58:29.142" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it doesn't really translate to their use.""" start="00:58:31.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I feel like I very much agree with you.""" start="00:58:35.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It's okay to install a package and only use""" start="00:58:37.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""some of the functions.""" start="00:58:39.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I was reminded, as you were discussing this,""" start="00:58:40.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""of the consults package,""" start="00:58:43.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which is part of the VertiCo,""" start="00:58:45.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""mbark and marginalia and all this.""" start="00:58:48.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Consult, it replaces a lot of the Emacs""" start="00:58:51.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""built-in commands like for finding your""" start="00:58:54.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buffers or finding text inside of your""" start="00:58:56.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buffer. It's great. And you do not need to""" start="00:58:59.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""completely move to consult as you get""" start="00:59:04.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""started. You can start colonizing 1 step at a""" start="00:59:06.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""time the function that you usually use.""" start="00:59:09.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I highly recommend to people to not let""" start="00:59:12.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the size of a project deter them from trying""" start="00:59:15.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it out because, again,""" start="00:59:18.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in Emacs, everything is horizontal.""" start="00:59:20.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""If somehow you want to use something that was""" start="00:59:23.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""not intended primarily for this,""" start="00:59:28.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""or if you only want to use 10% of a package,""" start="00:59:29.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""well, do it. An example that I have for me is""" start="00:59:32.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that Lispy is the minor mode that I use for""" start="00:59:35.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""editing Elisp documents,""" start="00:59:39.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and it's great. Elisp provides similar""" start="00:59:42.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""functions to ParaEdit,""" start="00:59:45.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which might be a little more popular,""" start="00:59:46.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which allows you to have modal editing when""" start="00:59:47.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you are on specific parts of a file,""" start="00:59:50.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""like the opening parenthesis or the closing""" start="00:59:52.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""parenthesis. It's great,""" start="00:59:55.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it provides modal editing for those modes,""" start="00:59:56.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but I certainly do not know everything,""" start="00:59:58.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""every modal command associated to it.""" start="01:00:02.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I just use the 1 that makes the most sense to""" start="01:00:04.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""me. So feel free to explore.""" start="01:00:06.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: I'll just say we get this so much.""" start="01:00:11.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It's not that large. I mean there's a fair""" start="01:00:13.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""number of files but it's just like 1 major""" start="01:00:16.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""directory and then the KOutliner directory.""" start="01:00:19.680" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And when you look at these things,""" start="01:00:24.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you install web applications,""" start="01:00:25.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""everything else, just when you download the""" start="01:00:27.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""source code, it's much,""" start="01:00:30.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""much smaller than any of that.""" start="01:00:31.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So I don't know why people you know accept""" start="01:00:34.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that it's larger than your typical package.""" start="01:00:37.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Why there's really an issue there.""" start="01:00:39.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: I think it's because people tend to assume""" start="01:00:43.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that a paradigm like the 1 you're describing,""" start="01:00:46.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""which seems to be changing the way you use""" start="01:00:48.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Emacs in a way because you're no longer""" start="01:00:51.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""thinking of as buffers as separate entities,""" start="01:00:53.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you can tunnel between them.""" start="01:00:56.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You know, it feels like a huge paradigm shift""" start="01:00:57.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and you assume that the code behind it is""" start="01:01:00.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""going to be humongous as well,""" start="01:01:02.300" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but it's usually not the case.""" start="01:01:04.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It's just that the idea is very pure at the""" start="01:01:05.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""start, and the paradigm shift that it allows""" start="01:01:07.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""is also magnificent. But at the end of the""" start="01:01:10.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""day, the code is fairly simple,""" start="01:01:14.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""because it does 1 thing and it does it well.""" start="01:01:16.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: 1 thing I noticed too,""" start="01:01:19.780" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I mean I'm a big believer in turnkey kind of""" start="01:01:21.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""systems. In fact a long time ago when I built""" start="01:01:23.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""an IDE on Emacs called InfoDoc that was""" start="01:01:27.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""delivered pre-compiled.""" start="01:01:31.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So it's like you download it like every other""" start="01:01:33.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""app and you run it. And so I think""" start="01:01:35.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""eliminating all the friction that occurs,""" start="01:01:39.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and you know, I just got going recently with""" start="01:01:42.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the wonderful packages that you just""" start="01:01:46.380" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""mentioned, VertiCo and Consult,""" start="01:01:49.160" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but they don't have a manual that covers all""" start="01:01:51.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that. They use sort of like a cookbook,""" start="01:01:55.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""a wiki online to answer a lot of the""" start="01:01:58.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""questions that people have and everybody has""" start="01:02:02.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to figure out their configurations you know""" start="01:02:04.600" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""to make these things all work together.""" start="01:02:07.640" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We'd like to do that engineering and say here""" start="01:02:12.800" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it is you know it's like if you want to""" start="01:02:16.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""configure it and make it your own,""" start="01:02:18.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you can do it. But there is a default""" start="01:02:20.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""configuration that handles all the typical""" start="01:02:23.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""use cases and you can just load it up and run""" start="01:02:26.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""because it's made to use,""" start="01:02:30.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you don't have to hack it to make it useful""" start="01:02:32.840" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""for you.""" start="01:02:36.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: Yeah, it reminds me of the discussion we had""" start="01:02:37.900" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""with Stéphane yesterday about sane defaults.""" start="01:02:40.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And I think the question was,""" start="01:02:43.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Emacs should probably ship with sane defaults""" start="01:02:46.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""for people. And Stéphane's answer was,""" start="01:02:49.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""well, my sane defaults might not be the same""" start="01:02:51.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""thing as your sane defaults.""" start="01:02:53.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And that's why I think it's important,""" start="01:02:55.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""really, to have a core set of features,""" start="01:02:57.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""be it with hyperbole of org mode,""" start="01:02:59.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""that is well-documented,""" start="01:03:01.360" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""as you mentioned. But what I like about this""" start="01:03:02.880" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in a way, and I think hyperbole is perhaps""" start="01:03:05.460" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""taking more benefits of this than Org Mode,""" start="01:03:07.260" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""is that the self-documentation aspect of it""" start="01:03:09.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""feels like it's easier with hyperbole because""" start="01:03:12.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you're not bound by Org Mode buffers.""" start="01:03:14.540" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You can link to just about everything.""" start="01:03:17.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""And for me, this ability to self-document is,""" start="01:03:19.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""well, first, very true to the philosophy of""" start="01:03:24.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Emacs in the first place,""" start="01:03:26.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""but also opens up those resonance cycles""" start="01:03:27.500" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""where, oh, you get interested and then you""" start="01:03:32.020" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""start reading up and then the documentation""" start="01:03:34.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""is so good that it feeds into your practice""" start="01:03:35.820" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""and then it goes nuclear and you gain so much""" start="01:03:38.320" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""knowledge as a result of this.""" start="01:03:41.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""All right, Bob, we are about out of time.""" start="01:03:42.620" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""We only have about 1 minute until we go to""" start="01:03:44.480" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the next talk. Do you have any passing words?""" start="01:03:46.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: I do. I think, you know,""" start="01:03:50.180" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""the world's complex, it's getting more""" start="01:03:54.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""complex. I think that's why people use Emacs""" start="01:03:57.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""in the first place, because it's a big""" start="01:04:00.520" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""system. You wouldn't use it unless you wanted""" start="01:04:02.560" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it to simplify your life.""" start="01:04:04.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Hyperbole is built with the same idea in""" start="01:04:07.580" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""mind. You may not get it just like Lisp.""" start="01:04:10.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""A lot of people don't understand when they""" start="01:04:13.740" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""first encounter it, but when they do""" start="01:04:15.720" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""understand it, they're blown away.""" start="01:04:17.420" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""It changes their life.""" start="01:04:19.960" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""You know, when you really understand implicit""" start="01:04:22.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""buttons, I think that's 1 of the things in""" start="01:04:25.120" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""hyperbole that can change your Emacs working""" start="01:04:28.100" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""life. So just give that a try and I think""" start="01:04:30.860" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you'll be pleasantly surprised across time.""" start="01:04:34.080" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: you so much Bob. We'll be moving on to the""" start="01:04:39.220" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""next talk in about 20 seconds so everyone see""" start="01:04:40.920" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""you in a bit and Bob thank you so much again.""" start="01:04:42.980" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Thanks very much. And thank Thank you.""" start="01:04:37.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: All right I think we are off here now.""" start="01:04:51.140" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""So thank you so much, Bob.""" start="01:04:53.040" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I'm going to need to step out and get ready""" start="01:04:53.940" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: Yeah, do your thing. You do a great job at""" start="01:04:56.609" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""it. But I wanted to ask you where in London""" start="01:04:59.240" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: for the next talk. I'm not in London,""" start="01:04:55.440" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""I'm in France, and I just moved to London.""" start="01:05:05.280" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 0]: you are. Oh, okay, got it.""" start="01:05:01.760" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Sorry, I thought you were.""" start="01:05:11.200" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Take care.""" start="01:05:13.000" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""[Speaker 1]: All right, bye-bye, Bob.""" start="01:05:14.340" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Thanks a lot. Bye-bye.""" start="01:05:15.060" video="mainVideo-hyperamp" id="subtitle"]]
+[[!template text="""Bye-bye.""" start="01:05:15.750" video="mainVideo-hyperamp" id="subtitle"]]
+
Questions or comments? Please e-mail [rsw@gnu.org](mailto:rsw@gnu.org?subject=Comment%20for%20EmacsConf%202023%20hyperamp%3A%20Top%2010%20ways%20Hyperbole%20amps%20up%20Emacs)
diff --git a/2023/info/hyperamp-before.md b/2023/info/hyperamp-before.md
index 91fe150a..12a070f0 100644
--- a/2023/info/hyperamp-before.md
+++ b/2023/info/hyperamp-before.md
@@ -9,10 +9,10 @@ Status: TO_REVIEW_QA
# Talk
-<div class="vid"><video controls preload="none" id="hyperamp-mainVideo"><source src="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.webm" /><p><em>Your browser does not support the video tag. Please download the video instead.</em></p></video><div></div>Duration: 1:05:16 minutes<div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.opus">Download --main.opus (37MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.webm">Download --main.webm (234MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.md">Download --pad.md</a></li><li><a href="https://toobnix.org/w/4Cpb89zHKgQjob3gHUs73C">View on Toobnix</a></li></ul></div></div>
+<div class="vid"><video controls preload="none" id="hyperamp-mainVideo"><source src="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.webm" />captions="""<track label="English" kind="captions" srclang="en" src="/2023/captions/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.vtt" default />"""<p><em>Your browser does not support the video tag. Please download the video instead.</em></p></video><div></div>Duration: 1:05:16 minutes<div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.json">Download --main.json (2.9MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.opus">Download --main.opus (37MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.webm">Download --main.webm (234MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.md">Download --pad.md</a></li><li><a href="https://toobnix.org/w/4Cpb89zHKgQjob3gHUs73C">View on Toobnix</a></li></ul></div></div>
# Q&A
-<div class="vid"><div></div><div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.opus">Download --main.opus (37MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.webm">Download --main.webm (234MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.md">Download --pad.md</a></li></ul></div></div>
+<div class="vid"><div></div><div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.json">Download --main.json (2.9MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.opus">Download --main.opus (37MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.webm">Download --main.webm (234MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.md">Download --pad.md</a></li></ul></div></div>
# Description
<!-- End of emacsconf-publish-before-page --> \ No newline at end of file
diff --git a/2023/info/koutline-before.md b/2023/info/koutline-before.md
index b87e7db8..f6b7cc81 100644
--- a/2023/info/koutline-before.md
+++ b/2023/info/koutline-before.md
@@ -1,6 +1,6 @@
<!-- Automatically generated by emacsconf-publish-before-page -->
[[!toc ]]
-Format: 7-min talk; Q&A: IRC
+Format: 7-min talk; Q&A: BigBlueButton conference room
Status: Q&A to be extracted from the room recordings
diff --git a/2023/info/sat-close-after.md b/2023/info/sat-close-after.md
index 83d8cb65..a40a2ed3 100644
--- a/2023/info/sat-close-after.md
+++ b/2023/info/sat-close-after.md
@@ -1,6 +1,177 @@
<!-- Automatically generated by emacsconf-publish-after-page -->
+<a name="sat-close-mainVideo-transcript"></a>
+# Transcript (unedited)
+
+[[!template text="""[Speaker 0]: Session is being recorded.""" start="00:00:05.200" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Just waiting for Corwin and Leo.""" start="00:00:06.819" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Great. Corwin, would you like to share your""" start="00:00:16.359" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""screen?""" start="00:00:17.960" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Let's see the audio through BBB so we don't""" start="00:00:37.620" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""have to splice it in afterwards because it's""" start="00:00:39.840" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""annoying to splice things.""" start="00:00:41.720" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""I mean, Leo will be taking care of it,""" start="00:00:43.680" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""not me, so. Okay, he's going to finish up.""" start="00:00:47.020" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: So, in the meantime, it's been a long day,""" start="00:00:52.720" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""people. Thanks for sticking around.""" start="00:00:55.320" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""And we're going to do a little bit of jazz""" start="00:00:57.180" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""handing until Corwin comes back.""" start="00:00:58.739" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Smack. I""" start="00:01:00.060" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 2]: can't imagine an Emacs con without getting to""" start="00:01:14.240" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""enjoy Leo's famous jazz hands.""" start="00:01:16.020" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: I can tell you it's a lot easier...""" start="00:01:21.420" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Hello? I can tell you it's a lot easier to do""" start="00:01:23.160" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""jazz hands at 9am EST than it is at 5pm EST,""" start="00:01:25.760" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""because for me it's 11 and I've barely seen""" start="00:01:30.860" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""this 1 today. Okay Corwin,""" start="00:01:34.160" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""do you have a presentation right now?""" start="00:01:39.720" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""We do not seem to be able to hear you,""" start="00:01:45.480" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Corwin. Okay, just bear with us,""" start="00:01:47.440" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""folks. We're gonna figure out this 1.""" start="00:01:55.240" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""This is the last bug of the day,""" start="00:01:57.380" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""and then we're clear until tomorrow.""" start="00:01:58.660" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 2]: I just heard you, but I don't know if it was""" start="00:02:05.820" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""here or via mumble. Okay.""" start="00:02:07.700" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: Can we figure out? Whenever there's a problem""" start="00:02:14.540" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""like this, like Sash and myself are furiously""" start="00:02:17.360" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""typing in the background,""" start="00:02:19.460" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""we say, oh, can we fix this slide?""" start="00:02:20.640" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""But here, I'm stumped.""" start="00:02:22.740" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 2]: I think Corbin is in the GenTrack on Mumble.""" start="00:02:33.180" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: Okay, so let's all switch to GenTrack and""" start="00:02:40.520" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""we'll be able to figure out the way.""" start="00:02:43.780" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 0]: Okay, well, while Corwin figures out how to""" start="00:03:18.420" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""get started, we might as well maybe do a""" start="00:03:21.540" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""little bit of closing remarks,""" start="00:03:23.940" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""and then you can jump in whenever you want.""" start="00:03:25.380" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: Sounds good to me.""" start="00:03:29.440" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 0]: Okay. Thank you, everyone,""" start="00:03:31.980" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""for coming to Emacs Conf 2023.""" start="00:03:34.459" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""We made it to the end of the first day!""" start="00:03:37.120" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Hooray! We're going to keep these closing""" start="00:03:39.140" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""remarks short because it's a long day.""" start="00:03:40.440" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""It's almost midnight and Leah will turn into""" start="00:03:42.880" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""a pumpkin very soon. So before that happens,""" start="00:03:44.920" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""we just want to say hello and thanks.""" start="00:03:48.580" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""And pre-recorded talks are already up.""" start="00:03:50.640" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""They're on the talk pages,""" start="00:03:55.260" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""they're on media.emaxcontent.org.""" start="00:03:56.520" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""We'll work on extracting the live talks,""" start="00:03:58.860" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""but it'll take a few weeks.""" start="00:04:00.620" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 3]: Maybe, you""" start="00:04:01.920" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 0]: know, we'll see how it goes.""" start="00:04:02.220" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Please feel free to spread the word,""" start="00:04:04.540" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""because you know some people didn't actually""" start="00:04:06.100" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""know there was EmacsConf this weekend,""" start="00:04:07.720" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""so let them know, because it's a lot of fun.""" start="00:04:09.380" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""More talks tomorrow. And if you've got ideas""" start="00:04:11.400" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""for making things better,""" start="00:04:15.020" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""or If you'd like to tell us what's working""" start="00:04:15.900" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""well and what you'd like,""" start="00:04:17.500" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""please put them in the conference pad at""" start="00:04:18.940" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""pad.emaxconf.org. Anything anyone want to""" start="00:04:21.180" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""add?""" start="00:04:26.580" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: I'm all good.""" start="00:04:30.060" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 2]: Let's see if Corwin can get his mic to work.""" start="00:04:32.900" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""No, it's not.""" start="00:04:37.740" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: Well, I mean, did you want to say something""" start="00:04:43.520" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""as well? Because people have heard you talk""" start="00:04:45.140" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""all day long on the Dev track,""" start="00:04:47.220" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""but not on the general track,""" start="00:04:49.120" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""actually. It's the first time they hear you""" start="00:04:50.240" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""today.""" start="00:04:51.540" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 2]: Right. Oh, well, way to put me on the spot,""" start="00:04:52.540" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""but more seriously, thanks.""" start="00:04:56.540" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""So yeah, it's a lot of fun.""" start="00:04:58.040" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""You know, it's, we sort of keep coming back""" start="00:05:00.340" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""every year and doing this conference.""" start="00:05:03.760" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""It's always been fun. And we keep doing it""" start="00:05:06.300" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""thanks to, you know, all the people who""" start="00:05:08.720" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""submit all these amazing talks with these""" start="00:05:11.320" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""amazing sessions. And of course the audience""" start="00:05:14.600" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""as well. I don't have a lot to say I guess""" start="00:05:16.560" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""for today because I think we're hoping to""" start="00:05:19.940" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""keep it kind of short and sweet.""" start="00:05:21.500" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""So yeah, I think that's about it for me.""" start="00:05:24.400" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""I guess we'll maybe wait another minute or so""" start="00:05:25.920" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""to see if Cormen can make it.""" start="00:05:28.380" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""But yeah, that's all for me.""" start="00:05:30.580" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: All right, great. Speaking of putting people""" start="00:05:34.820" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""on the spot, you might see a face in the room""" start="00:05:37.920" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""that you might have seen last year,""" start="00:05:41.600" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""but we've got Flobby Koda in the room as""" start="00:05:43.840" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""well, who you might not have heard of him but""" start="00:05:45.700" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""he's been doing a lot of the check-ins today""" start="00:05:49.400" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""for most of the speakers and he's been doing""" start="00:05:51.140" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""a wonderful job at it.""" start="00:05:53.360" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Florian, do you want to say a word if only to""" start="00:05:54.520" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""say you're being put on the spot?""" start="00:05:56.560" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 4]: I have nothing prepared really but I just""" start="00:06:00.620" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""want to thank everybody who could,""" start="00:06:02.840" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""with who I could talk in between.""" start="00:06:05.380" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""So I had like wonderful 20 to 30 minute talks""" start="00:06:07.360" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""with every speaker before they get into the""" start="00:06:10.580" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""live Q&A or the live presentation.""" start="00:06:12.900" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Thanks a lot for everybody,""" start="00:06:15.780" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""I learned quite a lot and also thank you for""" start="00:06:16.920" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""all of you guys and everyone for having such""" start="00:06:19.640" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""a beautiful experience here.""" start="00:06:22.360" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: Well, thank you. We're glad to have you.""" start="00:06:25.960" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Okay, Sasha, Unless you've got anything else""" start="00:06:29.180" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""to add, and Corwin, have you fixed your""" start="00:06:31.120" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""microphone? Yes, we can hear you Corwin.""" start="00:06:33.880" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Okay, well let's start again.""" start="00:06:38.400" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Let's forget everything you've heard for the""" start="00:06:39.160" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""last 20 minutes. We'll start again.""" start="00:06:40.440" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""I'm just kidding.""" start="00:06:41.640" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 3]: You tell me. No, I mean,""" start="00:06:35.280" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""I don't know what I could possibly add to all""" start="00:06:45.560" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""that. I think we absolutely should get some""" start="00:06:47.760" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""rest, save it for tomorrow.""" start="00:06:50.200" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""I was just looking through these notes in the""" start="00:06:52.540" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""couple of minutes that I had between my own""" start="00:06:55.240" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""talk. Thank you for your help with that.""" start="00:06:57.480" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""But also, especially you,""" start="00:07:00.720" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Sasha, and Leo, and everybody in the IRC over""" start="00:07:02.420" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""the months here, just encouraging me to keep""" start="00:07:08.040" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""going when it was just seemed futile.""" start="00:07:10.440" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Even though it just really turned into a""" start="00:07:13.580" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""brain dump, I appreciate getting the chance""" start="00:07:15.780" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""of feeling like that process is more""" start="00:07:18.120" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""documented now than it was before I did it.""" start="00:07:20.320" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Hey, that's not nothing,""" start="00:07:22.540" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""right? And that's why we all do this.""" start="00:07:23.440" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""And I don't know, Floey really said it""" start="00:07:25.440" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""perfect. Like, I appreciate the chance to get""" start="00:07:28.360" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""to work on this with you.""" start="00:07:30.520" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""I learned so much.""" start="00:07:31.560" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: Amazing. Well, you know what?""" start="00:07:36.400" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Without further ado, I believe it's time for""" start="00:07:39.020" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""us to say goodbye for day 1.""" start="00:07:41.380" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""We will obviously be seeing you tomorrow at 9""" start="00:07:42.840" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""a.m. I think the schedule is actually stating""" start="00:07:45.340" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""we're starting at 8.59am.""" start="00:07:48.740" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Is it correct?""" start="00:07:50.500" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 0]: Yes, I think the chrono tab will kick in.""" start="00:07:51.220" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""The video is like 6 minutes long.""" start="00:07:54.020" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Actually, maybe I should,""" start="00:07:57.620" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""I'll give it an extra minute for safety,""" start="00:07:58.660" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""I think. Yeah, yeah. I'll tweak the timing.""" start="00:08:00.660" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 1]: I think that'd be wise for people we do not""" start="00:08:04.340" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""know basically 8.59 is when I brush my teeth""" start="00:08:06.420" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""before going live so we might be in a very""" start="00:08:08.460" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""awkward spot for me to introduce the talk if""" start="00:08:10.680" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""it happens. Well anyway folks thank you very""" start="00:08:12.740" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""much for watching and we'll see you tomorrow.""" start="00:08:15.420" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""Bye-bye! All right, I have closed the bbb oh""" start="00:08:19.360" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""it's restarting apparently oh it's we're back""" start="00:08:31.320" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""on the q and a between stephan and let's""" start="00:08:34.780" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""close this hey we are off""" start="00:08:37.480" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""[Speaker 3]: we are clear I am pausing the recording I""" start="00:08:44.700" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""don't have permission to do that in this""" start="00:08:52.540" video="mainVideo-sat-close" id="subtitle"]]
+[[!template text="""room.""" start="00:08:54.280" video="mainVideo-sat-close" id="subtitle"]]
+
Questions or comments? Please e-mail [emacsconf-org-private@gnu.org](mailto:emacsconf-org-private@gnu.org?subject=Comment%20for%20EmacsConf%202023%20sat-close%3A%20Saturday%20closing%20remarks)
diff --git a/2023/info/sat-close-before.md b/2023/info/sat-close-before.md
index 7b3e504a..d44b5b4b 100644
--- a/2023/info/sat-close-before.md
+++ b/2023/info/sat-close-before.md
@@ -9,10 +9,10 @@ Status: Q&A to be extracted from the room recordings
# Talk
-<div class="vid"><video controls preload="none" id="sat-close-mainVideo"><source src="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.webm" /><p><em>Your browser does not support the video tag. Please download the video instead.</em></p></video><div></div>Duration: 09:00 minutes<div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.opus">Download --main.opus (4.7MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.webm">Download --main.webm (32MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.md">Download --pad.md</a></li><li><a href="https://www.youtube.com/playlist?list=PLomc4HLgvuCUdrW3JkugtKv8xPelUoOyP">View on Toobnix</a></li></ul></div></div>
+<div class="vid"><video controls preload="none" id="sat-close-mainVideo"><source src="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.webm" />captions="""<track label="English" kind="captions" srclang="en" src="/2023/captions/emacsconf-2023-sat-close--saturday-closing-remarks--main.vtt" default />"""<p><em>Your browser does not support the video tag. Please download the video instead.</em></p></video><div></div>Duration: 09:00 minutes<div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.json">Download --main.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.opus">Download --main.opus (4.7MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.webm">Download --main.webm (32MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.md">Download --pad.md</a></li><li><a href="https://www.youtube.com/playlist?list=PLomc4HLgvuCUdrW3JkugtKv8xPelUoOyP">View on Toobnix</a></li></ul></div></div>
# Q&A
-<div class="vid"><div></div><div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.opus">Download --main.opus (4.7MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.webm">Download --main.webm (32MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.md">Download --pad.md</a></li></ul></div></div>
+<div class="vid"><div></div><div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.json">Download --main.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.opus">Download --main.opus (4.7MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.webm">Download --main.webm (32MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.md">Download --pad.md</a></li></ul></div></div>
# Description
<!-- End of emacsconf-publish-before-page --> \ No newline at end of file
diff --git a/2023/info/unentangling-after.md b/2023/info/unentangling-after.md
index 6d11c30e..f6e4924f 100644
--- a/2023/info/unentangling-after.md
+++ b/2023/info/unentangling-after.md
@@ -4,196 +4,268 @@
<a name="unentangling-mainVideo-transcript"></a>
# Transcript (unedited)
-[[!template text="""Hello, I'm Alexey Bochkarev, and I'm talking about""" start="00:00:00.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""unentangling projects and repositories,""" start="00:00:04.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""or maybe entangling them, depending on how you look at that.""" start="00:00:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""So that's going to be a short workflow note.""" start="00:00:12.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I work as a researcher,""" start="00:00:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""so there are three main components to my work, I guess.""" start="00:00:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""First, I think, so I try to come up with new ideas,""" start="00:00:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and that usually results in some collection of notes I have.""" start="00:00:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""Second, I try things out, so it usually means that I write code.""" start="00:00:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""And third, I communicate, so I prepare papers,""" start="00:00:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""presentations, memos, and so on and so forth.""" start="00:00:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""And so the workflow problem I had is""" start="00:00:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""sometimes all this does not really fit""" start="00:00:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""into a concept of a single repository per project,""" start="00:00:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""so I might want to have, for example,""" start="00:00:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""a source code in one repository, and then I would like to have a paper""" start="00:00:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""in another one, and then I want to have a collection of notes somewhere""" start="00:01:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""unrelated to those two. And yeah,""" start="00:01:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""Emacs is pretty good at supporting your workflows, and I figured I should""" start="00:01:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""share what I use and what works for me.""" start="00:01:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""So,""" start="00:01:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""from the technical perspective, things are""" start="00:01:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""pretty easy, so I use a collection of pretty standard components""" start="00:01:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""of Emacs, so it's a projectile org-mode with its capture templates and other""" start="00:01:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""things. Then I sustain a collection of notes in something""" start="00:01:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""that is called org-roam, which is, well, essentially, it's a glorified""" start="00:01:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""collection of org-mode files. Then I use directory""" start="00:01:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""local variables, maybe a ctext to jump through the source code,""" start="00:01:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and very, very little Elisp glue to make this""" start="00:01:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""all work, but that's not really rocket science.""" start="00:01:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""So that's the workflow I would like to talk about today.""" start="00:01:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""So, what I mean by all that,""" start="00:02:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""it's pretty straightforward to make""" start="00:02:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""it easy to jump around a single repository in Emacs.""" start="00:02:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""Now, I have Doom Emacs, but that's not really specific to Doom.""" start="00:02:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""That'll work in any Emacs configuration.""" start="00:02:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""Well, kbindings might be""" start="00:02:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""different, but that's not the point, I guess, for the workflow. So, if I hit space""" start="00:02:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""two times, I have all the list of files within my project.""" start="00:02:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""So, if I create a couple of custom shortcuts,""" start="00:02:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""so if I press a magic button,""" start="00:02:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""hyperlp, don't worry about hyperkey, so I want it to have a""" start="00:02:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""modifier key all to myself, so that would, no program""" start="00:02:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""on my computer would use that except Emacs, and Emacs would""" start="00:02:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""use that only when I tell it to, so I have a hyperkey instead of caps lock, that's pretty easy""" start="00:02:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""to do in GNU Linux system. So,""" start="00:02:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""when I press this magic keys, I have a menu that's a normal""" start="00:03:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""kbinding, yeah, essentially in Emacs, and""" start="00:03:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""if I hit, for example, R, I end up in a readme file within""" start="00:03:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""this specific repository I was sitting in, right, so if I want to document something""" start="00:03:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""real quick, I go to the readme file. Then I could have, I could""" start="00:03:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""go to a changelog file, right, so I have a list of changes""" start="00:03:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and the way it works, usually, for example, if I'm working on some code,""" start="00:03:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I created a couple of dummy files in there, so""" start="00:03:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I'm working on some code, and then I implemented something, and I can""" start="00:03:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""just use the org mode capture""" start="00:03:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""mechanisms to keep track of what""" start="00:03:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I want to discuss with colleagues next time, for example, I could just hit""" start="00:03:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""capture repo specific changelog entry""" start="00:03:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and I implemented a feature""" start="00:03:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and I can continue working""" start="00:03:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""without this context switching, and then if I want to go to the changelog,""" start="00:04:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""well, it is there, and next time I talk""" start="00:04:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""to the colleagues about the source code, I can open the changelog and go through entries one by one""" start="00:04:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and discuss what I have implemented last time.""" start="00:04:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I could go to project specific""" start="00:04:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""to, sorry, to repo specific to-do list, and I have""" start="00:04:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""a list of to-dos that would live within a repository, and""" start="00:04:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""for example, I could have a high-level structure here,""" start="00:04:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""work distribution between team members and other things that sort of face""" start="00:04:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""the world, so to speak, and of course,""" start="00:04:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""there are very many ways to jump through the source code conveniently,""" start="00:04:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I ended up not using language servers, I used a special program called""" start="00:04:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""ctags, and so the way it works is just I call""" start="00:04:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""projectile regenerate tags, and it creates the special""" start="00:04:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""tags file within the repository,""" start="00:04:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and then I can, again, run""" start="00:05:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I usually just hit a single keystroke,""" start="00:05:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and here is all the symbols that are there in my""" start="00:05:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""source code, regardless of the language, right, so I can jump to the main function""" start="00:05:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and that'll be a C++ file, or I could go to the super function, which I""" start="00:05:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""had in my Python file, and this comes in pretty convenient if I have""" start="00:05:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""a mixture of languages, so sometimes I can have some algorithm-specific code""" start="00:05:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""in Julia, and then I can have some Python glue within the same""" start="00:05:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""source code repository, and it makes it really convenient to jump""" start="00:05:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""between all of those, right,""" start="00:05:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""but I have a few problems here,""" start="00:05:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""just to give you a little bit of context, for example, here is the""" start="00:05:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""a real project that corresponds to a real paper,""" start="00:05:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I have a single note about that project,""" start="00:05:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""where I keep all the things related to that project here, but that's a private""" start="00:05:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""note, so for example, again, I hit a special key that""" start="00:06:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""invokes my org-roam function that gives me a menu of my""" start="00:06:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""notes, and so here is the paper,""" start="00:06:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""essentially, and I can have a paper timeline, and I can""" start="00:06:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""have a list of all the dates, what happened to the paper, with links""" start="00:06:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""to my email, right, so for example, if I hit this link,""" start="00:06:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""that'll open a specific email, and that doesn't work outside of my""" start="00:06:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""computer, it doesn't make any sense to keep it in the outer world-facing""" start="00:06:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""repository, for example, so that's something to myself, right, sometimes I want""" start="00:06:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""to have, like, this list of""" start="00:06:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""working notes, right, that contain, like, for example,""" start="00:06:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I might produce this kind of things for internal discussion, right,""" start="00:06:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""it has some marks, it has some margin notes, and things like that,""" start="00:06:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""maybe, again, health-based ideas that may or may not end up""" start="00:06:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""in a repository, in a final paper, or in a source code,""" start="00:06:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""but still I want to have it somewhere, and""" start="00:07:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""well, long story short, I need a project folder""" start="00:07:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""that would be unrelated to the source code, or""" start="00:07:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""to the source code repository, or to the paper itself,""" start="00:07:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""or a final report, right, and one way,""" start="00:07:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""as usual, there are multiple ways to achieve that, I suppose, and one way to do that""" start="00:07:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""is, so, I create""" start="00:07:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""a special folder within my org-roam""" start="00:07:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""storage, so it's a special folder outside of any""" start="00:07:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""repositories that got backed up to my hard drive, with""" start="00:07:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""certain redundancy, but I don't really need, like, version control, full-blown""" start="00:07:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""version control for that, I'm okay with just having a couple of backups, right, so""" start="00:07:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""this is the folder you see here, so pkb stands for personal knowledge""" start="00:07:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""base, and I have a folder, project notes in there, right, so""" start="00:07:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and, how does it work, so I have a""" start="00:07:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""folder per project in there, essentially, and here I can""" start="00:08:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""have all the stuff that is, that kind of belongs to me, and I""" start="00:08:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""do not publish it anywhere, and then""" start="00:08:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""for example, a source code""" start="00:08:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""repository knows about that folder, and a paper repository""" start="00:08:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""knows about that folder, and anything else that might live in separate""" start="00:08:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""places all over my system can know about that folder, and how do I achieve that,""" start="00:08:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""well, essentially, this is one of the use cases for the directory""" start="00:08:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""local variables, right, so, for example,""" start="00:08:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""how does it work from the user perspective, so if I hit a special""" start="00:08:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""key, oh, sorry, if I hit a special key""" start="00:08:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""that would be open project""" start="00:08:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and then, for example,""" start="00:08:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""org mode file, right, so this is my personal notes about the emacs conf, not""" start="00:08:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""specifically about this very talk, but I can have, you know,""" start="00:08:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""half-baked ideas here, again, presentation tools, and things like that,""" start="00:09:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and how does that happen if we try to""" start="00:09:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""look at the code, the elisp magic here, what""" start="00:09:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""is happening is, it's just a couple lines of code, in fact, so""" start="00:09:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""let me just press control, help""" start="00:09:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""key, and so the key I was""" start="00:09:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""pressing is open project org mode file, and so""" start="00:09:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""what we see here, there is a single, so it's just a call to a find""" start="00:09:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""file function, so I open that file, and there is a special function that""" start="00:09:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""figures out what is the, like, umbrella""" start="00:09:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""project notes file, and that's, again, that's very easy, so""" start="00:09:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""essentially, if a variable describing this""" start="00:09:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""the name for that project is defined, then""" start="00:09:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I use that as my project folder name, if not, I take the project name from the""" start="00:09:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""project towel, and well, that's pretty much it,""" start="00:09:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and how do I define this""" start="00:10:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""variable is, essentially, there is this""" start="00:10:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""magical file in a folder called dear locals elisp,""" start="00:10:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and I just put it there, and then, whenever I""" start="00:10:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""go into that folder, or any of its children folders, I get this""" start="00:10:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""variable defined, and that's pretty much it, that's how""" start="00:10:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""it works for me.""" start="00:10:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I guess one thing that I wanted to emphasize""" start="00:10:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""specifically about that is, of course, it's""" start="00:10:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""time tracking, right, so what I find especially important when I work in""" start="00:10:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""something, and I want to clock time, I usually do not want""" start="00:10:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""this information to be in a source code repository or in a paper repository""" start="00:10:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""because other people I work with will not be particularly happy about that""" start="00:10:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""especially if most of them do not use Emacs, and they will see""" start="00:10:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""this long list of org clocked data, and that doesn't look""" start="00:10:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""nice in a plain text format, so what I usually""" start="00:11:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""do if I want to clock in some time, and then later analyze what I've""" start="00:11:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""been spending time on, so I go to my org mode file""" start="00:11:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and I go to my current project""" start="00:11:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""to-dos, and I clock in there, and that's""" start="00:11:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""how it works, so again""" start="00:11:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""what comes in handy if I hit ctrl-o, I just go""" start="00:11:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""back to the file I jumped from, so that's also""" start="00:11:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""pretty handy, so again, no rocket science in there""" start="00:11:35.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""so I create a directory local variable that helps me""" start="00:11:39.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""to figure out what umbrella project does""" start="00:11:43.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""this particular folder belongs to, and this way""" start="00:11:47.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""I make Emacs aware of, for example, facts like so this""" start="00:11:51.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""source code belongs to that project, and this repository with the paper""" start="00:11:55.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""also belongs to that project, and I can have capture templates""" start="00:11:59.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""that would save my notes into my private notes""" start="00:12:03.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""file, and my to-dos go to my private note files""" start="00:12:07.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""and so on and so forth, so I find it pretty simple, but""" start="00:12:11.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""that really helps to reduce this context""" start="00:12:15.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""switching, and I don't believe it allows me to save time""" start="00:12:19.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""but that probably helps me to stay focused, and this""" start="00:12:23.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""is what is really important, I believe, so thank you""" start="00:12:27.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""very much, and if you have any comments or suggestions to that, please do jump""" start="00:12:31.000" video="mainVideo-unentangling" id="subtitle"]]
-[[!template text="""into the discussion, yeah, after the talk, thank you.""" start="00:12:35.000" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Hello, I'm Alexey Bychkadov,""" start="00:00:01.220" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""and I'm talking about unentangling projects""" start="00:00:03.740" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""and repositories, or maybe entangling them,""" start="00:00:06.899" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""depending on how you look at that.""" start="00:00:09.679" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So there's going to be a short workflow note.""" start="00:00:12.980" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I work as a researcher,""" start="00:00:16.619" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So there are 3 main components to my work,""" start="00:00:19.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I guess. First, I think,""" start="00:00:23.680" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""so I try to come up with a new ideas that""" start="00:00:26.000" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""usually results in some collection of notes I""" start="00:00:28.140" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""have. Second, I try things out.""" start="00:00:31.580" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So it usually means that I write code.""" start="00:00:33.760" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And third, I communicate.""" start="00:00:36.820" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So I prepare papers, presentations,""" start="00:00:38.739" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""memos, and so on and so forth.""" start="00:00:41.260" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And so The workflow problem I had is""" start="00:00:44.120" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""sometimes all this does not really fit into a""" start="00:00:49.160" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""concept of a single repository per project.""" start="00:00:53.000" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So I might want to have,""" start="00:00:56.200" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""for example, a source code in 1 repository""" start="00:00:58.180" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""and then I would like to have a paper in""" start="00:01:01.320" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""another 1 and then I want to have a""" start="00:01:03.480" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""collection of notes somewhere unrelated to""" start="00:01:05.200" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""those 2. Emacs is pretty good at supporting""" start="00:01:08.620" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""your workflows and I figured I should share""" start="00:01:12.500" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""what I used and what works for me.""" start="00:01:16.240" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So, from the technical perspective,""" start="00:01:20.560" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""things are pretty easy.""" start="00:01:26.479" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So I use a collection of pretty standard""" start="00:01:27.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""components of Emacs. So it's a projectile org""" start="00:01:30.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""mode with this capture templates and other""" start="00:01:33.240" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""things. Then I sustained a collection of""" start="00:01:35.360" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""nodes in something that is called org-roam,""" start="00:01:38.100" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""which is essentially it's a glorified""" start="00:01:40.680" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""collection of org mode files.""" start="00:01:43.580" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Then I used directory local variables,""" start="00:01:46.100" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""maybe a C text to jump through the source""" start="00:01:48.260" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""code and very, very little LELisp glue to""" start="00:01:51.140" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""make this all work, but that's not really""" start="00:01:54.920" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""rocket science. So that's the workflow I""" start="00:01:58.620" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""would like to talk about today.""" start="00:02:00.400" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So what I mean by all that,""" start="00:02:04.860" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""it's pretty straightforward to make Emacs,""" start="00:02:07.960" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""to make it easy to jump around a single""" start="00:02:10.680" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""repository in Emacs. So if I,""" start="00:02:12.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Now I have Doom Emacs,""" start="00:02:15.060" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""but that's not really specific to a Doom""" start="00:02:16.640" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""that'll work in any Emacs configuration.""" start="00:02:19.120" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Well, key bindings might be different,""" start="00:02:23.400" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""but that's not the point,""" start="00:02:27.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I guess, for the workflow.""" start="00:02:28.820" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So if I hit space 2 times,""" start="00:02:30.060" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I have all the list of files within my""" start="00:02:31.960" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""project, right? So if I create a couple of""" start="00:02:34.640" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""custom shortcuts, so if I press a magic""" start="00:02:38.200" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""button, hyper-OP, don't worry about""" start="00:02:42.780" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""hyper-key. So I want it to have a modifier""" start="00:02:45.280" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""key all to myself, so that would,""" start="00:02:47.560" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""no program on my computer would use that""" start="00:02:50.320" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""except Emacs. Emacs would use that only when""" start="00:02:53.200" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I tell it to, so I have a hyper key instead""" start="00:02:55.680" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""of caps lock. That's pretty easy to do in GNU""" start="00:02:57.540" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Linux system. So when I press this magic""" start="00:03:00.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""keys, I have a menu that's a normal key""" start="00:03:04.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""binding. Yeah, essentially an Emacs.""" start="00:03:07.400" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And if I hit, for example,""" start="00:03:10.240" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""R, I end up in a readme file within this""" start="00:03:12.540" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""specific repository I was sitting in,""" start="00:03:15.200" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right? So if I want to document something""" start="00:03:17.320" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""real quick, I go to the readme file.""" start="00:03:19.000" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Then I could go to a change log file,""" start="00:03:21.680" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right? So I have a list of changes and the""" start="00:03:25.280" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""way it works usually, for example,""" start="00:03:27.440" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""if I'm working in some code,""" start="00:03:29.480" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I created a couple of dummy files in there,""" start="00:03:32.220" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""so I'm working in some code and then I""" start="00:03:34.280" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""implemented something and I can just use the""" start="00:03:36.560" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""org mode capture mechanisms to keep track of""" start="00:03:42.020" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""what I want to discuss with colleagues next""" start="00:03:46.860" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""time. For example, I could just hit capture""" start="00:03:48.880" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""repo specific changelog entry and I""" start="00:03:52.440" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""implemented a feature and I can continue""" start="00:03:56.200" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""working without this context switching.""" start="00:04:02.620" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And then if I want to go to the change log,""" start="00:04:04.340" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""well, it is there. And next time I talk to""" start="00:04:06.880" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""the colleagues about the source code,""" start="00:04:11.320" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I can open the change log and go through""" start="00:04:12.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""entries 1 by 1 and discuss what I haven't""" start="00:04:14.340" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""implemented last time.""" start="00:04:16.800" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I could go to project specific,""" start="00:04:19.540" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""sorry, to repo specific to-do list.""" start="00:04:24.100" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And I have list of to-dos that would leave""" start="00:04:26.320" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""within a repository. And for example,""" start="00:04:29.020" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I could have a high level structure here,""" start="00:04:31.320" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""work distribution between team members and""" start="00:04:34.640" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""other things that sort of face outer world,""" start="00:04:36.460" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""so to speak. And of course,""" start="00:04:39.380" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""there are very many ways to jump through the""" start="00:04:42.840" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""source code conveniently.""" start="00:04:45.400" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I ended up not using language servers I use a""" start="00:04:46.560" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""special program called ctags and so the way""" start="00:04:49.960" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""it works is just I call projectile regenerate""" start="00:04:53.320" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""tags and it creates the special tags file""" start="00:04:56.680" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""within the repository and then I can again""" start="00:05:00.460" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""run it I usually just hit a single keystroke""" start="00:05:06.240" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""and here is all the symbols that are there in""" start="00:05:11.520" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""my source code, regardless of the language,""" start="00:05:14.060" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right? So I can jump to the main function and""" start="00:05:17.160" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""that'll be a C++ file.""" start="00:05:19.540" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Or I could go to the super function,""" start="00:05:21.020" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""which I had in my Python file.""" start="00:05:22.740" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And this comes in pretty convenient if I have""" start="00:05:25.380" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""a mixture of languages.""" start="00:05:27.120" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Sometimes I can have some algorithm specific""" start="00:05:28.360" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""code in Julia, and then I can have some""" start="00:05:30.800" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Python glue within the same source code""" start="00:05:33.280" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""repository, it makes it really convenient to""" start="00:05:35.380" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""jump between all of those.""" start="00:05:39.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""But I have a few problems here.""" start="00:05:43.080" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So just to give you a little bit of context,""" start="00:05:47.360" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""for example, here is a real project that""" start="00:05:49.860" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""corresponds to real paper.""" start="00:05:53.100" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I have a single note about that project where""" start="00:05:55.840" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I keep all the things related to that project""" start="00:05:59.060" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""here, but that's a private note.""" start="00:06:01.780" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So for example, again,""" start="00:06:03.260" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I hit a special key that invokes my org-roam""" start="00:06:04.860" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""function that gives me a menu of my notes.""" start="00:06:08.640" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And so here is the paper,""" start="00:06:13.080" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""essentially. And I can have a paper timeline,""" start="00:06:15.200" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""and I can have a list of all the dates what""" start="00:06:17.900" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""happened to the paper with links to my email,""" start="00:06:21.180" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right? So for example if I hit this link that""" start="00:06:24.060" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""will open a specific email and that doesn't""" start="00:06:27.700" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""work outside of my computer,""" start="00:06:30.160" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""doesn't make any sense to keep it in the""" start="00:06:31.280" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""outer world facing repository,""" start="00:06:33.340" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""for example. So that's something to myself,""" start="00:06:35.500" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right? Sometimes I want to have like this""" start="00:06:37.360" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""list of working notes,""" start="00:06:41.480" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right, that contain like,""" start="00:06:43.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""for example, yeah, I might produce this kind""" start="00:06:45.780" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""of things for internal discussion,""" start="00:06:49.200" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right? It has some marks,""" start="00:06:50.640" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""it has some margin notes and things like""" start="00:06:52.500" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""that. Maybe again, health-based ideas that""" start="00:06:54.620" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""may or may not end up in a repository,""" start="00:06:57.620" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""in the final paper or in a source code,""" start="00:07:01.020" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""but still I want to have it somewhere.""" start="00:07:03.220" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And well, long story short,""" start="00:07:07.120" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I need a project folder that would be""" start="00:07:08.800" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""unrelated to the source code or to the source""" start="00:07:11.680" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""code repository or to the paper itself or a""" start="00:07:16.120" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""final report, right? And 1 way,""" start="00:07:19.440" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""as usual, there are multiple ways to achieve""" start="00:07:22.960" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""that, I suppose. And 1 way to do that is,""" start="00:07:24.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""so I create a special folder within my""" start="00:07:29.040" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""org-roam storage. So it's a special folder""" start="00:07:33.160" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""outside of Henry Postories that got backed up""" start="00:07:38.240" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""to my hard drive with certain redundancy,""" start="00:07:40.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""but I don't really need like version control,""" start="00:07:44.080" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""full blown version control for that.""" start="00:07:46.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I'm okay with just having a couple of""" start="00:07:48.280" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""backups, right? So this is the folder you see""" start="00:07:49.760" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""here. So PKB stands for personal knowledge""" start="00:07:52.900" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""base, and I have a folder project notes in""" start="00:07:55.320" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""there, right? So, and How does it work?""" start="00:07:58.020" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So I have a folder per project in there,""" start="00:08:01.680" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""essentially. And here I can have all the""" start="00:08:05.020" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""stuff that kind of belongs to me and I do not""" start="00:08:07.900" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""publish it anywhere. And then,""" start="00:08:11.480" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""For example, a source code repository knows""" start="00:08:15.420" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""about that folder and a paper repository""" start="00:08:20.460" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""knows about that folder.""" start="00:08:23.460" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And anything else that might leave in""" start="00:08:25.120" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""separate places all over my system can know""" start="00:08:26.820" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""about that folder. How do I achieve that?""" start="00:08:28.820" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Well, essentially this is 1 of the use cases""" start="00:08:30.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""for the directory local variables,""" start="00:08:34.400" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right? So for example,""" start="00:08:36.360" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""how does it work from the user perspective?""" start="00:08:39.520" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So if I hit a special key,""" start="00:08:41.580" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""oh, sorry, if I hit a special key,""" start="00:08:44.380" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""that would be open project.""" start="00:08:48.280" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And then for example, org mode file,""" start="00:08:51.680" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right? So this is my personal notes about the""" start="00:08:55.920" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""maxconf, not specifically about this very""" start="00:08:58.260" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""talk, but I can have, you know,""" start="00:09:01.260" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""the house baked ideas here again,""" start="00:09:02.580" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""presentation tools and things like that.""" start="00:09:04.760" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And how does that happen?""" start="00:09:07.440" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""If we try to like look at the code,""" start="00:09:09.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""the e-list magic here,""" start="00:09:13.080" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""what is happening is it's just a couple of""" start="00:09:15.040" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""lines of code, in fact,""" start="00:09:17.560" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""so let me just press Control,""" start="00:09:18.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""help key. And so the key I was pressing is""" start="00:09:22.540" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""open project or my file.""" start="00:09:28.140" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And so what we see here,""" start="00:09:30.480" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""there is a single, so it's just a call to a""" start="00:09:32.220" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""find file function. So I opened that file and""" start="00:09:34.760" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""there is a special function that figures out""" start="00:09:37.200" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""what is the like umbrella project nose file""" start="00:09:40.580" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""and that's, again, that's very easy.""" start="00:09:44.620" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So essentially if a variable describing this,""" start="00:09:47.380" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""the name for that project is defined,""" start="00:09:51.820" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""then I use that as my project folder name.""" start="00:09:54.860" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""If not, I take the project name from the""" start="00:09:57.440" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""project tile. Well, that's pretty much it.""" start="00:10:00.480" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And how do I define this variable?""" start="00:10:03.340" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Is essentially there is this magical file in""" start="00:10:09.280" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""a folder called dear locals,""" start="00:10:12.500" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""elist. And I just put it there.""" start="00:10:14.440" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And then whenever I go into that folder or""" start="00:10:17.440" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""any of its children folders,""" start="00:10:20.380" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I get this variable defined.""" start="00:10:22.300" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And that's pretty much it.""" start="00:10:24.840" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""That's how it works for me.""" start="00:10:26.280" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""I guess 1 thing that I wanted to emphasize""" start="00:10:31.860" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""specifically about that is of course,""" start="00:10:35.380" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""it is a time tracking,""" start="00:10:37.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""right? So what is I find especially important""" start="00:10:39.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""when I work in something and I want to clock""" start="00:10:42.260" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""time, I usually do not want this information""" start="00:10:44.340" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""to be in a source code repository or in a""" start="00:10:47.800" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""paper repository because other people I work""" start="00:10:50.340" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""with will not be particularly happy about""" start="00:10:52.600" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""that, especially if most of them do not use""" start="00:10:54.840" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Emacs and they'll see this long list of org""" start="00:10:57.540" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""clocked data and that doesn't look nice in a""" start="00:11:00.720" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""plain text format. So what I usually do if I""" start="00:11:03.820" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""want to clock in some time and then later""" start="00:11:07.540" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""analyze what I've been spending time on,""" start="00:11:10.240" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""so I go to my org mode file and I go to the,""" start="00:11:12.560" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""my current project to-dos and I clock in""" start="00:11:16.880" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""there. And that's how it works.""" start="00:11:21.820" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So again, what comes in handy,""" start="00:11:23.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""if I hit Control O, I just go back to the""" start="00:11:28.860" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""file I jumped in into and that's I jumped""" start="00:11:31.500" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""from so that's also pretty handy.""" start="00:11:34.240" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So again no no rocket science in there.""" start="00:11:36.220" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So I create a directory local variable that""" start="00:11:40.380" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""helps me to figure out what umbrella project""" start="00:11:42.660" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""does this particular folder belongs to.""" start="00:11:46.620" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And this way I make Emacs aware of,""" start="00:11:49.940" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""for example, facts like,""" start="00:11:53.260" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""so this source code belongs to that project.""" start="00:11:54.480" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And this paper, this repository with a paper""" start="00:11:56.740" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""also belongs to that project.""" start="00:11:59.180" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And I can have capture templates that would""" start="00:12:01.060" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""save my notes into the my private notes file""" start="00:12:04.060" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""and my to-dos and go to my private note files""" start="00:12:07.800" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""and so on and so forth.""" start="00:12:10.920" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""So I find it pretty simple but that really""" start="00:12:12.260" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""helps to reduce this context switching.""" start="00:12:15.520" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And I don't believe it allows me to save""" start="00:12:19.600" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""time, but that probably helps me to stay""" start="00:12:22.040" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""focused. And this is what is really""" start="00:12:26.260" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""important, I believe. So thank you very much.""" start="00:12:28.420" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""And if you have any comments or suggestions""" start="00:12:31.400" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""to that, please do jump into the discussion.""" start="00:12:33.320" video="mainVideo-unentangling" id="subtitle"]]
+[[!template text="""Yeah, after the talk, thank you.""" start="00:12:37.120" video="mainVideo-unentangling" id="subtitle"]]
Questions or comments? Please e-mail [emacsconf-org-private@gnu.org](mailto:emacsconf-org-private@gnu.org?subject=Comment%20for%20EmacsConf%202023%20unentangling%3A%20%28Un%29entangling%20projects%20and%20repos)
diff --git a/2023/info/unentangling-before.md b/2023/info/unentangling-before.md
index 260c5303..d8a2318c 100644
--- a/2023/info/unentangling-before.md
+++ b/2023/info/unentangling-before.md
@@ -7,6 +7,6 @@ Status: Q&A to be extracted from the room recordings
-<div class="vid"><video controls preload="none" id="unentangling-mainVideo"><source src="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.webm" />captions="""<track label="English" kind="captions" srclang="en" src="/2023/captions/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt" default />"""<p><em>Your browser does not support the video tag. Please download the video instead.</em></p></video><div></div>Duration: 12:39 minutes<div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.opus">Download --main.opus (10MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.webm">Download --main.webm (68MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--pad.md">Download --pad.md</a></li><li><a href="https://toobnix.org/w/wLxyZBoFAad575Lp4PGyoF">View on Toobnix</a></li></ul></div></div>
+<div class="vid"><video controls preload="none" id="unentangling-mainVideo"><source src="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.webm" />captions="""<track label="English" kind="captions" srclang="en" src="/2023/captions/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt" default />"""<p><em>Your browser does not support the video tag. Please download the video instead.</em></p></video><div></div>Duration: 12:39 minutes<div class="files resources"><ul><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.json">Download --main.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.opus">Download --main.opus (10MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.webm">Download --main.webm (68MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--pad.md">Download --pad.md</a></li><li><a href="https://toobnix.org/w/wLxyZBoFAad575Lp4PGyoF">View on Toobnix</a></li></ul></div></div>
# Description
<!-- End of emacsconf-publish-before-page --> \ No newline at end of file
diff --git a/2023/organizers-notebook/index.org b/2023/organizers-notebook/index.org
index 19da21dd..321e6eea 100644
--- a/2023/organizers-notebook/index.org
+++ b/2023/organizers-notebook/index.org
@@ -2322,7 +2322,7 @@ Note: Let's see if we can decide on this by [2023-10-13 Fri] so that we can
e-mail the draft schedules to people.
Compared to [[#draft-schedule][two-track schedule]]:
-#+INCLUDE: schedule.svg export EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT html
+#+INCLUDE: schedule.svg export EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT html
What if we have three tracks instead?
@@ -2445,7 +2445,7 @@ What if we have three tracks instead?
[[file:schedule-option-aligned-talks.svg]]
#+end_comment
-#+INCLUDE: schedule-option-aligned-talks.svg export EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT html
+#+INCLUDE: schedule-option-aligned-talks.svg export EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT html
*** Three tracks for Sunday morning?
:PROPERTIES:
:CUSTOM_ID: three-tracks-sun-am
@@ -2552,4 +2552,4 @@ What if we have three tracks instead?
[[file:schedule-option-sun-am.svg]]
#+end_comment
-#+INCLUDE: schedule-option-sun-am.svg export EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT html
+#+INCLUDE: schedule-option-sun-am.svg export EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT EXPORT html
diff --git a/2023/schedule-2023-12-03.md b/2023/schedule-2023-12-03.md
index 3ee10f51..eabdc939 100644
--- a/2023/schedule-2023-12-03.md
+++ b/2023/schedule-2023-12-03.md
@@ -1 +1 @@
-<div class="schedule-svg-container"><svg width="800" height="150" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <title> Schedule for Sunday</title> <rect width="800" height="150" x="0" y="0" fill="white"></rect> <text font-size="10" fill="black" y="12" x="3"> Sunday</text> <a href="/2023/talks/sun-open" title="Sunday opening remarks" data-slug="sun-open"> <title> 8:58- 9:04 Sunday opening remarks</title> <rect x="-4" y="15" opacity="0.8" width="9" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(3,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sun-open</text></g></a> <a href="/2023/talks/hyperamp" title="Top 10 ways Hyperbole amps up Emacs" data-slug="hyperamp"> <title> 9:05- 9:25 Top 10 ways Hyperbole amps up Emacs</title> <rect x="7" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(36,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> hyperamp</text></g></a> <a href="/2023/talks/koutline" title="Using Koutline for stream of thought journaling" data-slug="koutline"> <title> 9:40-10:00 Using Koutline for stream of thought journaling</title> <rect x="62" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="5,5,5" fill="peachpuff"></rect> <g transform="translate(91,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> koutline</text></g></a> <a href="/2023/talks/parallel" title="Parallel text replacement" data-slug="parallel"> <title> 10:10-10:25 Parallel text replacement</title> <rect x="109" y="15" opacity="0.8" width="23" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(130,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> parallel</text></g></a> <a href="/2023/talks/eat" title="Eat and Eat powered Eshell, fast featureful terminal inside Emacs" data-slug="eat"> <title> 10:35-10:45 Eat and Eat powered Eshell, fast featureful terminal inside Emacs</title> <rect x="149" y="15" opacity="0.8" width="15" height="59" stroke="black" stroke-dasharray="5,5,5" fill="peachpuff"></rect> <g transform="translate(162,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> eat</text></g></a> <a href="/2023/talks/poltys" title="The browser in a buffer" data-slug="poltys"> <title> 11:00-11:20 The browser in a buffer</title> <rect x="188" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(217,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> poltys</text></g></a> <a href="/2023/talks/cubing" title="Speedcubing in Emacs" data-slug="cubing"> <title> 11:35-11:55 Speedcubing in Emacs</title> <rect x="243" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="5,5,5" fill="peachpuff"></rect> <g transform="translate(272,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> cubing</text></g></a> <a href="/2023/talks/emms" title="Emacs MultiMedia System (EMMS)" data-slug="emms"> <title> 1:00- 1:40 Emacs MultiMedia System (EMMS)</title> <rect x="376" y="15" opacity="0.8" width="62" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(436,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> emms</text></g></a> <a href="/2023/talks/steno" title="Programming with steno" data-slug="steno"> <title> 1:55- 2:25 Programming with steno</title> <rect x="462" y="15" opacity="0.8" width="47" height="59" stroke="black" stroke-dasharray="5,5,5" fill="peachpuff"></rect> <g transform="translate(507,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> steno</text></g></a> <a href="/2023/talks/mentor" title="Mentoring VS-Coders as an Emacsian (or How to show not tell people about the wonders of Emacs)" data-slug="mentor"> <title> 2:35- 2:45 Mentoring VS-Coders as an Emacsian (or How to show not tell people about the wonders of Emacs)</title> <rect x="525" y="15" opacity="0.8" width="15" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(538,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> mentor</text></g></a> <a href="/2023/talks/web" title="Emacs saves the Web (maybe)" data-slug="web"> <title> 3:10- 3:40 Emacs saves the Web (maybe)</title> <rect x="580" y="15" opacity="0.8" width="47" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(625,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> web</text></g></a> <a href="/2023/talks/sharing" title="Sharing Emacs is Caring Emacs: Emacs education and why I embraced video" data-slug="sharing"> <title> 3:55- 4:15 Sharing Emacs is Caring Emacs: Emacs education and why I embraced video</title> <rect x="650" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(679,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sharing</text></g></a> <a href="/2023/talks/sun-close" title="Sunday closing remarks" data-slug="sun-close"> <title> 4:30- 4:40 Sunday closing remarks</title> <rect x="705" y="15" opacity="0.8" width="15" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(718,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sun-close</text></g></a> <a href="/2023/talks/scheme" title="Bringing joy to Scheme programming" data-slug="scheme"> <title> 10:00-10:20 Bringing joy to Scheme programming</title> <rect x="94" y="75" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(123,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> scheme</text></g></a> <a href="/2023/talks/world" title="GNU Emacs: A World of Possibilities" data-slug="world"> <title> 10:35-10:55 GNU Emacs: A World of Possibilities</title> <rect x="149" y="75" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(178,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> world</text></g></a> <a href="/2023/talks/flat" title="A modern Emacs look-and-feel without pain" data-slug="flat"> <title> 11:10-11:20 A modern Emacs look-and-feel without pain</title> <rect x="203" y="75" opacity="0.8" width="15" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(216,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> flat</text></g></a> <a href="/2023/talks/emacsen" title="The Emacsen family, the design of an Emacs and the importance of Lisp" data-slug="emacsen"> <title> 11:35-11:55 The Emacsen family, the design of an Emacs and the importance of Lisp</title> <rect x="243" y="75" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(272,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> emacsen</text></g></a> <a href="/2023/talks/gc" title="emacs-gc-stats: Does garbage collection actually slow down Emacs?" data-slug="gc"> <title> 1:00- 1:35 emacs-gc-stats: Does garbage collection actually slow down Emacs?</title> <rect x="376" y="75" opacity="0.8" width="54" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(428,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> gc</text></g></a> <a href="/2023/talks/hyperdrive" title="hyperdrive.el: Peer-to-peer filesystem in Emacs" data-slug="hyperdrive"> <title> 1:50- 2:30 hyperdrive.el: Peer-to-peer filesystem in Emacs</title> <rect x="454" y="75" opacity="0.8" width="62" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(514,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> hyperdrive</text></g></a> <a href="/2023/talks/lspocaml" title="Writing a language server in OCaml for Emacs, fun, and profit" data-slug="lspocaml"> <title> 2:45- 3:00 Writing a language server in OCaml for Emacs, fun, and profit</title> <rect x="541" y="75" opacity="0.8" width="23" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(562,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> lspocaml</text></g></a> <a href="/2023/talks/test" title="What I learned by writing test cases for GNU Hyperbole" data-slug="test"> <title> 3:15- 3:45 What I learned by writing test cases for GNU Hyperbole</title> <rect x="588" y="75" opacity="0.8" width="47" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(633,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> test</text></g></a> <a href="/2023/talks/emacsconf" title="EmacsConf.org: How we use Org Mode and TRAMP to organize and run a multi-track conference" data-slug="emacsconf"> <title> 4:00- 4:20 EmacsConf.org: How we use Org Mode and TRAMP to organize and run a multi-track conference</title> <rect x="658" y="75" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(687,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> emacsconf</text></g></a> <g transform="translate(0,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 9 AM</text></g> <g transform="translate(94,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 10 AM</text></g> <g transform="translate(188,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 11 AM</text></g> <g transform="translate(282,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 12 PM</text></g> <g transform="translate(376,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 1 PM</text></g> <g transform="translate(470,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 2 PM</text></g> <g transform="translate(564,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 3 PM</text></g> <g transform="translate(658,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 4 PM</text></g> <g transform="translate(752,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 5 PM</text></g></svg></div> \ No newline at end of file
+<div class="schedule-svg-container"><svg width="800" height="150" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <title> Schedule for Sunday</title> <rect width="800" height="150" x="0" y="0" fill="white"></rect> <text font-size="10" fill="black" y="12" x="3"> Sunday</text> <a href="/2023/talks/sun-open" title="Sunday opening remarks" data-slug="sun-open"> <title> 8:58- 9:04 Sunday opening remarks</title> <rect x="-4" y="15" opacity="0.8" width="9" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(3,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sun-open</text></g></a> <a href="/2023/talks/hyperamp" title="Top 10 ways Hyperbole amps up Emacs" data-slug="hyperamp"> <title> 9:05- 9:25 Top 10 ways Hyperbole amps up Emacs</title> <rect x="7" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(36,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> hyperamp</text></g></a> <a href="/2023/talks/koutline" title="Using Koutline for stream of thought journaling" data-slug="koutline"> <title> 9:40-10:00 Using Koutline for stream of thought journaling</title> <rect x="62" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(91,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> koutline</text></g></a> <a href="/2023/talks/parallel" title="Parallel text replacement" data-slug="parallel"> <title> 10:10-10:25 Parallel text replacement</title> <rect x="109" y="15" opacity="0.8" width="23" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(130,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> parallel</text></g></a> <a href="/2023/talks/eat" title="Eat and Eat powered Eshell, fast featureful terminal inside Emacs" data-slug="eat"> <title> 10:35-10:45 Eat and Eat powered Eshell, fast featureful terminal inside Emacs</title> <rect x="149" y="15" opacity="0.8" width="15" height="59" stroke="black" stroke-dasharray="5,5,5" fill="peachpuff"></rect> <g transform="translate(162,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> eat</text></g></a> <a href="/2023/talks/poltys" title="The browser in a buffer" data-slug="poltys"> <title> 11:00-11:20 The browser in a buffer</title> <rect x="188" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(217,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> poltys</text></g></a> <a href="/2023/talks/cubing" title="Speedcubing in Emacs" data-slug="cubing"> <title> 11:35-11:55 Speedcubing in Emacs</title> <rect x="243" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="5,5,5" fill="peachpuff"></rect> <g transform="translate(272,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> cubing</text></g></a> <a href="/2023/talks/emms" title="Emacs MultiMedia System (EMMS)" data-slug="emms"> <title> 1:00- 1:40 Emacs MultiMedia System (EMMS)</title> <rect x="376" y="15" opacity="0.8" width="62" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(436,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> emms</text></g></a> <a href="/2023/talks/steno" title="Programming with steno" data-slug="steno"> <title> 1:55- 2:25 Programming with steno</title> <rect x="462" y="15" opacity="0.8" width="47" height="59" stroke="black" stroke-dasharray="5,5,5" fill="peachpuff"></rect> <g transform="translate(507,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> steno</text></g></a> <a href="/2023/talks/mentor" title="Mentoring VS-Coders as an Emacsian (or How to show not tell people about the wonders of Emacs)" data-slug="mentor"> <title> 2:35- 2:45 Mentoring VS-Coders as an Emacsian (or How to show not tell people about the wonders of Emacs)</title> <rect x="525" y="15" opacity="0.8" width="15" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(538,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> mentor</text></g></a> <a href="/2023/talks/web" title="Emacs saves the Web (maybe)" data-slug="web"> <title> 3:10- 3:40 Emacs saves the Web (maybe)</title> <rect x="580" y="15" opacity="0.8" width="47" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(625,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> web</text></g></a> <a href="/2023/talks/sharing" title="Sharing Emacs is Caring Emacs: Emacs education and why I embraced video" data-slug="sharing"> <title> 3:55- 4:15 Sharing Emacs is Caring Emacs: Emacs education and why I embraced video</title> <rect x="650" y="15" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(679,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sharing</text></g></a> <a href="/2023/talks/sun-close" title="Sunday closing remarks" data-slug="sun-close"> <title> 4:30- 4:40 Sunday closing remarks</title> <rect x="705" y="15" opacity="0.8" width="15" height="59" stroke="black" stroke-dasharray="" fill="peachpuff"></rect> <g transform="translate(718,73)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> sun-close</text></g></a> <a href="/2023/talks/scheme" title="Bringing joy to Scheme programming" data-slug="scheme"> <title> 10:00-10:20 Bringing joy to Scheme programming</title> <rect x="94" y="75" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(123,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> scheme</text></g></a> <a href="/2023/talks/world" title="GNU Emacs: A World of Possibilities" data-slug="world"> <title> 10:35-10:55 GNU Emacs: A World of Possibilities</title> <rect x="149" y="75" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(178,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> world</text></g></a> <a href="/2023/talks/flat" title="A modern Emacs look-and-feel without pain" data-slug="flat"> <title> 11:10-11:20 A modern Emacs look-and-feel without pain</title> <rect x="203" y="75" opacity="0.8" width="15" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(216,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> flat</text></g></a> <a href="/2023/talks/emacsen" title="The Emacsen family, the design of an Emacs and the importance of Lisp" data-slug="emacsen"> <title> 11:35-11:55 The Emacsen family, the design of an Emacs and the importance of Lisp</title> <rect x="243" y="75" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(272,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> emacsen</text></g></a> <a href="/2023/talks/gc" title="emacs-gc-stats: Does garbage collection actually slow down Emacs?" data-slug="gc"> <title> 1:00- 1:35 emacs-gc-stats: Does garbage collection actually slow down Emacs?</title> <rect x="376" y="75" opacity="0.8" width="54" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(428,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> gc</text></g></a> <a href="/2023/talks/hyperdrive" title="hyperdrive.el: Peer-to-peer filesystem in Emacs" data-slug="hyperdrive"> <title> 1:50- 2:30 hyperdrive.el: Peer-to-peer filesystem in Emacs</title> <rect x="454" y="75" opacity="0.8" width="62" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(514,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> hyperdrive</text></g></a> <a href="/2023/talks/lspocaml" title="Writing a language server in OCaml for Emacs, fun, and profit" data-slug="lspocaml"> <title> 2:45- 3:00 Writing a language server in OCaml for Emacs, fun, and profit</title> <rect x="541" y="75" opacity="0.8" width="23" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(562,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> lspocaml</text></g></a> <a href="/2023/talks/test" title="What I learned by writing test cases for GNU Hyperbole" data-slug="test"> <title> 3:15- 3:45 What I learned by writing test cases for GNU Hyperbole</title> <rect x="588" y="75" opacity="0.8" width="47" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(633,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> test</text></g></a> <a href="/2023/talks/emacsconf" title="EmacsConf.org: How we use Org Mode and TRAMP to organize and run a multi-track conference" data-slug="emacsconf"> <title> 4:00- 4:20 EmacsConf.org: How we use Org Mode and TRAMP to organize and run a multi-track conference</title> <rect x="658" y="75" opacity="0.8" width="31" height="59" stroke="black" stroke-dasharray="" fill="skyblue"></rect> <g transform="translate(687,133)"> <text fill="black" x="0" y="0" font-size="10" transform="rotate(-90)"> emacsconf</text></g></a> <g transform="translate(0,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 9 AM</text></g> <g transform="translate(94,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 10 AM</text></g> <g transform="translate(188,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 11 AM</text></g> <g transform="translate(282,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 12 PM</text></g> <g transform="translate(376,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 1 PM</text></g> <g transform="translate(470,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 2 PM</text></g> <g transform="translate(564,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 3 PM</text></g> <g transform="translate(658,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 4 PM</text></g> <g transform="translate(752,15)"> <line stroke="darkgray" x1="0" y1="0" x2="0" y2="120"></line> <text fill="black" x="0" y="133" font-size="10" text-anchor="left"> 5 PM</text></g></svg></div> \ No newline at end of file
diff --git a/2023/schedule-details.md b/2023/schedule-details.md
index f2b4df38..512a13a5 100644
--- a/2023/schedule-details.md
+++ b/2023/schedule-details.md
@@ -21,11 +21,11 @@ Jump to: <a href="#date-2023-12-02">Sat Dec 2</a> - <a href="#date-2023-12-03">S
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--answers.json">Download --answers.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--answers.opus">Download --answers.opus (11MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--answers.vtt">Download --answers.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--answers.webm">Download --answers.webm (43MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--main--chapters.vtt">Download --main--chapters.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--main.opus">Download --main.opus (6.6MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--main.vtt">Download --main.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--main.webm">Download --main.webm (52MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-solo--how-i-play-ttrpgs-in-emacs--howard-abrams--pad.md">Download --pad.md</a></li>""" title="""How I play TTRPGs in Emacs""" url="""/2023/talks/solo""" speakers="""Howard Abrams""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""solo""" note="""captioned, video posted, video: 14:36, answers: 19:20"""]]
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-ref--orgmode-workflow-informal-reference-tracking--christopher-howard--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-ref--orgmode-workflow-informal-reference-tracking--christopher-howard--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-ref--orgmode-workflow-informal-reference-tracking--christopher-howard--main--chapters.vtt">Download --main--chapters.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-ref--orgmode-workflow-informal-reference-tracking--christopher-howard--main.ogg">Download --main.ogg (7.9MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-ref--orgmode-workflow-informal-reference-tracking--christopher-howard--main.opus">Download --main.opus (7.8MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-ref--orgmode-workflow-informal-reference-tracking--christopher-howard--main.vtt">Download --main.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-ref--orgmode-workflow-informal-reference-tracking--christopher-howard--main.webm">Download --main.webm (38MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-ref--orgmode-workflow-informal-reference-tracking--christopher-howard--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-ref--orgmode-workflow-informal-reference-tracking--christopher-howard--pad.md">Download --pad.md</a></li>""" title="""Org-Mode workflow: informal reference tracking""" url="""/2023/talks/ref""" speakers="""Christopher Howard""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""ref""" note="""captioned, video posted, video: 15:04"""]]
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--answers.json">Download --answers.json (1.5MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--answers.opus">Download --answers.opus (18MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--answers.vtt">Download --answers.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--answers.webm">Download --answers.webm (69MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--main--chapters.vtt">Download --main--chapters.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--main.opus">Download --main.opus (23MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--main.vtt">Download --main.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--main.webm">Download --main.webm (133MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-doc--literate-documentation-with-emacs-and-org-mode--mike-hamrick--pad.md">Download --pad.md</a></li>""" title="""Literate Documentation with Emacs and Org Mode""" url="""/2023/talks/doc""" speakers="""Mike Hamrick""" watch="""https://emacsconf.org/2023/watch/dev""" slug="""doc""" note="""captioned, video posted, video: 42:45, answers: 11:00"""]]
-[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.opus">Download --main.opus (10MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.webm">Download --main.webm (68MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--pad.md">Download --pad.md</a></li>""" title="""(Un)entangling projects and repos""" url="""/2023/talks/unentangling""" speakers="""Alexey Bochkarev""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""unentangling""" note="""video posted, video: 12:39"""]]
+[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.json">Download --main.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.opus">Download --main.opus (10MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--main.webm">Download --main.webm (68MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-unentangling--unentangling-projects-and-repos--alexey-bochkarev--pad.md">Download --pad.md</a></li>""" title="""(Un)entangling projects and repos""" url="""/2023/talks/unentangling""" speakers="""Alexey Bochkarev""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""unentangling""" note="""video posted, video: 12:39"""]]
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-devel--emacs-development-updates--john-wiegley--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-devel--emacs-development-updates--john-wiegley--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.json">Download --main.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.opus">Download --main.opus (7.8MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.webm">Download --main.webm (38MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-devel--emacs-development-updates--john-wiegley--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-devel--emacs-development-updates--john-wiegley--pad.md">Download --pad.md</a></li>""" title="""Emacs development updates""" url="""/2023/talks/devel""" speakers="""John Wiegley""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""devel""" note="""video posted, video: 23:22"""]]
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-windows--windows-into-freedom--corwin-brust--answers.opus">Download --answers.opus (29MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-windows--windows-into-freedom--corwin-brust--answers.vtt">Download --answers.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-windows--windows-into-freedom--corwin-brust--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-windows--windows-into-freedom--corwin-brust--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-windows--windows-into-freedom--corwin-brust--main.opus">Download --main.opus (29MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-windows--windows-into-freedom--corwin-brust--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-windows--windows-into-freedom--corwin-brust--main.webm">Download --main.webm (80MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-windows--windows-into-freedom--corwin-brust--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-windows--windows-into-freedom--corwin-brust--pad.md">Download --pad.md</a></li>""" title="""Windows into Freedom""" url="""/2023/talks/windows""" speakers="""Corwin Brust""" watch="""https://emacsconf.org/2023/watch/dev""" slug="""windows""" note="""video posted, video: 57:48"""]]
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.json">Download --main.json (2.4MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.opus">Download --main.opus (23MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.webm">Download --main.webm (211MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--pad.md">Download --pad.md</a></li>""" title="""Emacs core development: how it works""" url="""/2023/talks/core""" speakers="""Stefan Kangas""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""core""" note="""video posted, video: 1:07:13"""]]
-[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.opus">Download --main.opus (4.7MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.webm">Download --main.webm (32MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.md">Download --pad.md</a></li>""" title="""Saturday closing remarks""" url="""/2023/talks/sat-close""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""sat-close""" note="""video posted, video: 09:00"""]]</div>
+[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.json">Download --main.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.opus">Download --main.opus (4.7MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--main.webm">Download --main.webm (32MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sat-close--saturday-closing-remarks--pad.md">Download --pad.md</a></li>""" title="""Saturday closing remarks""" url="""/2023/talks/sat-close""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""sat-close""" note="""video posted, video: 09:00"""]]</div>
Jump to: <a href="#date-2023-12-02">Sat Dec 2</a> - <a href="#date-2023-12-03">Sun Dec 3</a><a name="date-2023-12-03"></a>
# Sunday Dec 3, 2023
@@ -33,7 +33,7 @@ Jump to: <a href="#date-2023-12-02">Sat Dec 2</a> - <a href="#date-2023-12-03">S
<div class="schedule" data-start="2023-12-03T14:00:00+0000" data-end="2023-12-03T22:30:00+0000" data-tracks="General,Development">
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sun-open--sunday-opening-remarks--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sun-open--sunday-opening-remarks--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sun-open--sunday-opening-remarks--main.opus">Download --main.opus (2.5MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sun-open--sunday-opening-remarks--main.vtt">Download --main.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sun-open--sunday-opening-remarks--main.webm">Download --main.webm (12MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sun-open--sunday-opening-remarks--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-sun-open--sunday-opening-remarks--pad.md">Download --pad.md</a></li>""" title="""Sunday opening remarks""" url="""/2023/talks/sun-open""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""sun-open""" note="""captioned, video posted, video: 05:17"""]]
-[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.opus">Download --main.opus (37MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.webm">Download --main.webm (234MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.md">Download --pad.md</a></li>""" title="""Top 10 ways Hyperbole amps up Emacs""" url="""/2023/talks/hyperamp""" speakers="""Robert Weiner""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""hyperamp""" note="""video posted, video: 1:05:16"""]]
+[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.json">Download --main.json (2.9MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.opus">Download --main.opus (37MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--main.webm">Download --main.webm (234MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-hyperamp--top-10-ways-hyperbole-amps-up-emacs--robert-weiner--pad.md">Download --pad.md</a></li>""" title="""Top 10 ways Hyperbole amps up Emacs""" url="""/2023/talks/hyperamp""" speakers="""Robert Weiner""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""hyperamp""" note="""video posted, video: 1:05:16"""]]
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-koutline--using-koutline-for-stream-of-thought-journaling--matthew-jorgensen-plasmastrike--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-koutline--using-koutline-for-stream-of-thought-journaling--matthew-jorgensen-plasmastrike--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-koutline--using-koutline-for-stream-of-thought-journaling--matthew-jorgensen-plasmastrike--main.json">Download --main.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-koutline--using-koutline-for-stream-of-thought-journaling--matthew-jorgensen-plasmastrike--main.opus">Download --main.opus (4.5MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-koutline--using-koutline-for-stream-of-thought-journaling--matthew-jorgensen-plasmastrike--main.vtt">Download --main.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-koutline--using-koutline-for-stream-of-thought-journaling--matthew-jorgensen-plasmastrike--main.webm">Download --main.webm (23MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-koutline--using-koutline-for-stream-of-thought-journaling--matthew-jorgensen-plasmastrike--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-koutline--using-koutline-for-stream-of-thought-journaling--matthew-jorgensen-plasmastrike--pad.md">Download --pad.md</a></li>""" title="""Using Koutline for stream of thought journaling""" url="""/2023/talks/koutline""" speakers="""Matthew Jorgensen (PlasmaStrike)""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""koutline""" note="""video posted, video: 06:44"""]]
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--answers.json">Download --answers.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--answers.opus">Download --answers.opus (5.1MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--answers.vtt">Download --answers.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--answers.webm">Download --answers.webm (57MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--main--chapters.vtt">Download --main--chapters.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--main.opus">Download --main.opus (14MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--main.vtt">Download --main.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--main.webm">Download --main.webm (54MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-scheme--bringing-joy-to-scheme-programming--andrew-tropin--pad.md">Download --pad.md</a></li>""" title="""Bringing joy to Scheme programming""" url="""/2023/talks/scheme""" speakers="""Andrew Tropin""" watch="""https://emacsconf.org/2023/watch/dev""" slug="""scheme""" note="""captioned, video posted, video: 21:01"""]]
[[!template id=sched resources="""<li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--answers.json">Download --answers.json</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--answers.opus">Download --answers.opus (6.8MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--answers.vtt">Download --answers.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--answers.webm">Download --answers.webm (10MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--main--chapters.vtt">Download --main--chapters.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--main-vp8.webm">Download --main-vp8.webm (95MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--main.opus">Download --main.opus</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--main.vtt">Download --main.vtt</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--main.webm">Download --main.webm (29MB)</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--pad.html">Download --pad.html</a></li><li><a href="https://media.emacsconf.org/2023/emacsconf-2023-parallel--parallel-text-replacement--lovro-valentino-picotti--pad.md">Download --pad.md</a></li>""" title="""Parallel text replacement""" url="""/2023/talks/parallel""" speakers="""Lovro, Valentino Picotti""" watch="""https://emacsconf.org/2023/watch/gen""" slug="""parallel""" note="""captioned, video posted, video: 14:46, answers: 10:16"""]]