summaryrefslogtreecommitdiffstats
path: root/2023/captions
diff options
context:
space:
mode:
Diffstat (limited to '2023/captions')
-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
5 files changed, 7227 insertions, 2485 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.