summaryrefslogtreecommitdiffstats
path: root/2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt
diff options
context:
space:
mode:
Diffstat (limited to '2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt')
-rw-r--r--2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt792
1 files changed, 792 insertions, 0 deletions
diff --git a/2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt b/2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt
new file mode 100644
index 00000000..588cf43a
--- /dev/null
+++ b/2020/subtitles/emacsconf-2020--06-trivial-emacs-kits--corwin-brust.vtt
@@ -0,0 +1,792 @@
+WEBVTT
+
+00:00:00.399 --> 00:00:02.683
+My name is Corwin Brust
+
+00:00:02.683 --> 00:00:08.960
+and I will be talking about getting
+started with Emacs today.
+
+00:00:08.960 --> 00:00:11.448
+I have been an Emacs user for a long
+time.
+
+00:00:11.448 --> 00:00:15.360
+First of all, thanks and a huge welcome
+to the conference
+
+00:00:15.360 --> 00:00:22.400
+from me and and on behalf
+
+00:00:22.400 --> 00:00:24.368
+and back to the other people
+
+00:00:24.368 --> 00:00:26.080
+that have been helping to organize.
+
+00:00:26.080 --> 00:00:30.480
+It's been amazing just to be involved
+
+00:00:30.480 --> 00:00:36.399
+with that and just, kind of, see
+backstage.
+
+00:00:36.399 --> 00:00:42.281
+So I've used a lot of different editors
+in my time.
+
+00:00:42.281 --> 00:00:52.399
+That's about 25 years as a professional
+software engineer.
+
+00:00:52.399 --> 00:00:54.247
+And most of that time I've been using
+Emacs.
+
+00:00:54.247 --> 00:00:56.160
+I'll talk a little bit in a minute
+
+00:00:56.160 --> 00:01:00.960
+(if I can ever find my slides)
+
+00:01:00.960 --> 00:01:04.479
+about how I got into Emacs,
+
+00:01:04.479 --> 00:01:07.200
+but I think if you've used Emacs and a
+
+00:01:07.200 --> 00:01:10.240
+lot of other editors for a long time,
+
+00:01:10.240 --> 00:01:14.410
+something that you notice right away
+
+00:01:14.410 --> 00:01:18.560
+is that you get good with it in a way
+that stays meaningful.
+
+00:01:18.560 --> 00:01:24.199
+You learn new things. Those things
+stick with you.
+
+00:01:24.199 --> 00:01:33.759
+You learn how to make it do new tricks
+and then keep doing those tricks.
+
+00:01:33.759 --> 00:01:39.439
+I want to mention that this
+conference--oops,
+
+00:01:39.439 --> 00:01:44.829
+this talk isn't about how to adjust
+
+00:01:44.829 --> 00:01:46.802
+your configuration specifically.
+
+00:01:46.802 --> 00:01:50.000
+I don't have a bunch of good code
+samples in here.
+
+00:01:50.000 --> 00:01:52.451
+There are other great talks at the
+conference,
+
+00:01:52.451 --> 00:01:56.411
+particularly Andrew's, that I looked at,
+
+00:01:56.411 --> 00:01:59.920
+that looked like they might be more
+aimed at that
+
+00:01:59.920 --> 00:02:02.240
+"hey, I'm just getting started with Emacs,
+
+00:02:02.240 --> 00:02:05.280
+what are some things to try to make
+
+00:02:05.280 --> 00:02:07.017
+it more comfortable for me starting?"
+
+00:02:07.017 --> 00:02:09.759
+This is about how to think about the
+problem space.
+
+00:02:09.759 --> 00:02:13.337
+Hopefully, a good warm up as we start
+thinking about
+
+00:02:13.337 --> 00:02:17.200
+some of the lightning talks a little
+later on.
+
+00:02:17.200 --> 00:02:19.835
+I'm just gonna quickly make sure
+
+00:02:19.835 --> 00:02:21.789
+I can see my IRC buffer in case
+
+00:02:21.789 --> 00:02:25.680
+I run into time. I didn't get my
+stopwatch started for this one.
+
+00:02:25.680 --> 00:02:29.680
+So all right, let's dive in.
+
+00:02:29.680 --> 00:02:33.840
+We assume that we want to
+install packages
+
+00:02:33.840 --> 00:02:36.281
+and maybe configure some features.
+
+00:02:36.281 --> 00:02:38.319
+This is particularly from the
+perspective of
+
+00:02:38.319 --> 00:02:39.120
+where we're working
+
+00:02:39.120 --> 00:02:40.541
+with a bunch of people on a team
+
+00:02:40.541 --> 00:02:42.160
+and we want to get something done.
+
+00:02:42.160 --> 00:02:44.800
+Some of us probably already have mature
+
+00:02:44.800 --> 00:02:46.560
+Emacs workflows.
+
+00:02:46.560 --> 00:02:53.519
+Others are installing it for the first
+time.
+
+00:02:53.519 --> 00:02:57.889
+So the first question is, you know, in
+that context:
+
+00:02:57.889 --> 00:02:59.784
+what's the value proposition?
+
+00:02:59.784 --> 00:03:01.532
+Why should I mess with my machine,
+
+00:03:01.532 --> 00:03:04.219
+my mature Emacs configuration,
+
+00:03:04.219 --> 00:03:09.815
+and impose my ideas over the way
+somebody else is learning Emacs?
+
+00:03:09.815 --> 00:03:13.840
+Well, it can be.. I'm off my slides here
+a little bit.
+
+00:03:13.840 --> 00:03:16.959
+It can be a little bit tricky
+
+00:03:16.959 --> 00:03:21.440
+to learn Emacs. One thing that
+helps us a lot
+
+00:03:21.440 --> 00:03:24.720
+is if people that we're working with
+
+00:03:24.720 --> 00:03:27.301
+can tell us, kinda, keystroke for
+keystroke at times,
+
+00:03:27.301 --> 00:03:30.480
+what to do and explain what everything
+is doing.
+
+00:03:30.480 --> 00:03:35.840
+Using the same packages can really help
+us working together on a project.
+
+00:03:35.840 --> 00:03:40.720
+Speaking from my personal experience,
+
+00:03:40.720 --> 00:03:42.959
+it took me decades to get to the point
+
+00:03:42.959 --> 00:03:45.226
+where I was excited to program
+in Emacs Lisp.
+
+00:03:45.226 --> 00:03:47.840
+I've programmed in a lot of programming
+languages,
+
+00:03:47.840 --> 00:03:50.252
+but Lisp wasn't on my list.
+
+00:03:50.252 --> 00:03:53.680
+I looked at my config that I was
+copy-pasting around
+
+00:03:53.680 --> 00:03:57.279
+from generation after generation of
+.emacs file,
+
+00:03:57.279 --> 00:04:00.799
+or recrafting it from hand and from
+Internet searches,
+
+00:04:00.799 --> 00:04:03.519
+to get the things that I needed when
+
+00:04:03.519 --> 00:04:05.680
+I would quickly go install Emacs at some
+
+00:04:05.680 --> 00:04:07.680
+new job or contract,
+
+00:04:07.680 --> 00:04:14.016
+and be able to to quickly get through
+that workflow
+
+00:04:14.016 --> 00:04:17.440
+that caused me to install the program.
+
+00:04:17.440 --> 00:04:24.049
+You know, just little simple one-liners
+that got committed to memory
+
+00:04:24.049 --> 00:04:27.675
+over decades eventually just led me to a
+sort of "hey what's going on here."
+
+00:04:27.675 --> 00:04:33.520
+And I credit Jeff Goff, my good friend
+who died earlier in 2020,
+
+00:04:33.520 --> 00:04:37.759
+for my lifelong love of Emacs.
+
+00:04:37.759 --> 00:04:39.280
+Perhaps Erik and I will talk about that
+
+00:04:39.280 --> 00:04:42.000
+a little bit more in another talk we
+have scheduled,
+
+00:04:42.000 --> 00:04:44.400
+but Jeff was a huge influence on us
+
+00:04:44.400 --> 00:04:46.027
+in a number of ways,
+
+00:04:46.027 --> 00:04:47.732
+and a huge contributor
+
+00:04:47.732 --> 00:04:54.840
+to the Raku programming language,
+which is very cool.
+
+00:04:54.840 --> 00:05:00.153
+So, understanding how to make
+a good decision
+
+00:05:00.153 --> 00:05:03.680
+about splitting up configuration in a
+way to share it across
+
+00:05:03.680 --> 00:05:06.292
+people with really different uses of
+Emacs...
+
+00:05:06.292 --> 00:05:08.546
+That's actually a complicated topic
+
+00:05:08.546 --> 00:05:12.639
+and I want to sort of back off and stare
+at it for a second.
+
+00:05:12.639 --> 00:05:18.720
+I think Emacs is about people, so that
+means it's about community.
+
+00:05:18.720 --> 00:05:24.960
+And community means we're going to
+invite disagreement.
+
+00:05:24.960 --> 00:05:32.687
+In fact, that disagreement isn't
+necessarily a road-block to our project.
+
+00:05:32.687 --> 00:05:37.759
+In fact, some of the work that a
+community project can invite us to do
+
+00:05:37.759 --> 00:05:39.505
+is to get closer to each other
+
+00:05:39.505 --> 00:05:40.840
+by inviting those disagreements,
+
+00:05:40.840 --> 00:05:42.080
+by learning from them--learning from
+
+00:05:42.080 --> 00:05:46.880
+different people's styles and from how
+they argue,
+
+00:05:46.880 --> 00:05:50.058
+and thinking about why they have that
+perspective
+
+00:05:50.058 --> 00:05:53.227
+and what technical benefits
+
+00:05:53.227 --> 00:05:55.800
+that perhaps radical point of view might
+carry away.
+
+00:05:55.800 --> 00:05:58.266
+Some people are really aggressive
+arguers,
+
+00:05:58.266 --> 00:06:01.919
+and others are very passive and really
+
+00:06:01.919 --> 00:06:05.824
+couch their ideas in distancing terms,
+to say,
+
+00:06:05.824 --> 00:06:07.906
+"well probably, this is a good idea"
+
+00:06:07.906 --> 00:06:12.479
+or "please double check me."
+
+00:06:12.479 --> 00:06:15.520
+Those don't always necessarily indicate
+
+00:06:15.520 --> 00:06:17.497
+how certain a person is,
+because we're different.
+
+00:06:17.497 --> 00:06:19.520
+We have different ways of communicating
+
+00:06:19.520 --> 00:06:23.380
+ideas like certainty or excitement.
+
+00:06:24.560 --> 00:06:26.235
+When we think about a bunch of
+
+00:06:26.235 --> 00:06:30.000
+really diverse programmers
+approaching Emacs,
+
+00:06:30.000 --> 00:06:36.479
+probably one of our first really big
+challenges is just
+
+00:06:36.479 --> 00:06:40.085
+to pick what we're going
+to go after.
+
+00:06:40.085 --> 00:06:49.599
+There are a lot of existing kit installs
+and things like this.
+
+00:06:49.599 --> 00:06:54.400
+My argument is that you could actually
+get pretty far
+
+00:06:54.400 --> 00:06:56.020
+just trading files around.
+
+00:06:56.020 --> 00:07:03.698
+Maybe the more valuable conversation
+to have
+
+00:07:03.698 --> 00:07:06.080
+is making the hard decisions
+about, well,
+
+00:07:06.080 --> 00:07:08.000
+"should we have vertical completion,"
+
+00:07:08.000 --> 00:07:10.080
+should that be the out of the box,
+
+00:07:10.080 --> 00:07:11.759
+and the people that want
+
+00:07:11.759 --> 00:07:17.440
+the traditional splayed out over a
+single line completion,
+
+00:07:17.440 --> 00:07:19.428
+for example in the mode line,
+
+00:07:19.428 --> 00:07:29.039
+those people are going to add a line of
+config to their own setup?
+
+00:07:29.039 --> 00:07:30.979
+The way to get there?
+
+00:07:30.979 --> 00:07:33.344
+I mean, how do we find out what works?
+
+00:07:33.344 --> 00:07:38.587
+We don't want to slow down the people
+that are super productive with Emacs
+
+00:07:38.587 --> 00:07:40.879
+by asking them to completely
+break their workflows
+
+00:07:40.879 --> 00:07:42.560
+and make it easier for new folks.
+
+00:07:42.560 --> 00:07:48.673
+At the same time, we do want to make
+sure those new people
+
+00:07:48.673 --> 00:07:52.720
+are excited by Emacs and not turned off
+by having to learn
+
+00:07:52.720 --> 00:08:00.363
+the entire jungle of Emacs history in
+the form of its unique
+
+00:08:00.363 --> 00:08:07.610
+technical stylings for things like
+frames, buffers,
+
+00:08:07.610 --> 00:08:11.668
+and other unique Emacs viewpoints
+
+00:08:11.668 --> 00:08:16.240
+on important interface concepts,
+especially.
+
+00:08:16.240 --> 00:08:19.520
+The encouragement here is to keep
+
+00:08:19.520 --> 00:08:21.680
+the initialization for a project team
+
+00:08:21.680 --> 00:08:23.280
+together as a crucible.
+
+00:08:23.280 --> 00:08:25.117
+Rather than necessarily following
+
+00:08:25.117 --> 00:08:33.279
+our defaults of finding the simplest
+configurations
+
+00:08:33.279 --> 00:08:37.440
+that generally work and letting people
+customize it,
+
+00:08:37.440 --> 00:08:40.479
+what if we tried to look
+
+00:08:40.479 --> 00:08:42.346
+for fairly specific configurations
+
+00:08:42.346 --> 00:08:44.159
+that we'll expect essentially all of our
+
+00:08:44.159 --> 00:08:46.320
+developers to be using,
+
+00:08:46.320 --> 00:08:52.839
+at least when they submit bug reports.
+
+00:08:52.839 --> 00:08:55.920
+In particular, with this,
+
+00:08:55.920 --> 00:08:59.839
+I think that degree of experimentation
+
+00:08:59.839 --> 00:09:02.584
+can drive back into the Emacs
+development process.
+
+00:09:02.584 --> 00:09:04.800
+In the development mailing list...
+
+00:09:04.800 --> 00:09:15.120
+I'm hoping I'll get a timing cue here.
+
+00:09:15.120 --> 00:09:18.835
+In the context of Emacs development as a
+greater entity,
+
+00:09:18.835 --> 00:09:20.959
+we see some of these struggles.
+
+00:09:20.959 --> 00:09:22.399
+Should we change this default?
+
+00:09:22.399 --> 00:09:27.146
+Sometimes we can have the sense that
+defaults in Emacs will never change.
+
+00:09:27.146 --> 00:09:29.279
+The conversation is too difficult.
+
+00:09:29.279 --> 00:09:32.560
+I think one thing that can help us get
+there is evidence
+
+00:09:32.560 --> 00:09:36.160
+that says, "hey my 30- to 40-person project
+
+00:09:36.160 --> 00:09:38.560
+is using this set of bindings,
+
+00:09:38.560 --> 00:09:40.111
+and here's what we learned
+
+00:09:40.111 --> 00:09:42.240
+about brand new Emacs users
+trying to come in
+
+00:09:42.240 --> 00:09:46.800
+and get work done with that."
+
+00:09:46.800 --> 00:09:49.360
+(Amin: Yeah you still have
+
+00:09:49.360 --> 00:09:50.720
+a couple more minutes.)
+
+00:09:50.720 --> 00:09:51.984
+Oh, beautiful. Okay, great.
+
+00:09:51.984 --> 00:09:54.720
+I will try to get through my last few
+slides that I cut
+
+00:09:54.720 --> 00:09:56.320
+in my last walkthrough, but I think I'm
+
+00:09:56.320 --> 00:09:58.320
+going quicker today, thank you.
+
+00:09:58.320 --> 00:10:02.000
+Thank you.
+
+00:10:02.000 --> 00:10:05.120
+So let's just recap real quick:
+
+00:10:05.120 --> 00:10:08.760
+in theory, Emacs works out of the box.
+
+00:10:08.760 --> 00:10:12.853
+That means we're free to experiment.
+
+00:10:12.853 --> 00:10:17.120
+We can throw it all away and start over.
+
+00:10:17.120 --> 00:10:26.000
+As an organizational principle...
+
+00:10:26.000 --> 00:10:30.079
+I don't know what I was thinking on that
+slide, excuse me.
+
+00:10:30.079 --> 00:10:33.440
+Bringing it back around to the free
+
+00:10:33.440 --> 00:10:35.680
+and open source software community,
+
+00:10:35.680 --> 00:10:39.519
+our goal is to enable users
+
+00:10:39.519 --> 00:10:41.440
+to unlock their computers, to do as much
+
+00:10:41.440 --> 00:10:43.040
+with them as possible.
+
+00:10:43.040 --> 00:10:47.680
+That's the context to take with project
+initialization, but sometimes
+
+00:10:47.680 --> 00:10:49.560
+it could make sense
+
+00:10:50.800 --> 00:10:52.032
+to put some gloves on.
+
+00:10:52.032 --> 00:10:53.766
+I've thrown up on the screen here
+
+00:10:53.766 --> 00:10:55.276
+just a couple of other ideas,
+
+00:10:55.276 --> 00:10:57.920
+ways to maybe think outside of the box.
+
+00:10:57.920 --> 00:11:01.440
+As you're putting together project nets,
+
+00:11:01.440 --> 00:11:05.519
+my words of encouragement are to
+experiment with it,
+
+00:11:05.519 --> 00:11:09.941
+try different things, and think really
+specifically
+
+00:11:09.941 --> 00:11:17.010
+about how different the development
+users might be from each other
+
+00:11:17.010 --> 00:11:21.680
+as you define standards for configuring
+
+00:11:21.680 --> 00:11:23.519
+the user environment of Emacs
+
+00:11:23.519 --> 00:11:26.552
+specifically for developing on a
+project.
+
+00:11:26.552 --> 00:11:29.120
+That's pretty much my talk.
+
+00:11:29.120 --> 00:11:32.959
+If there's any time, I would take a
+couple questions.
+
+00:11:32.959 --> 00:11:36.480
+(Amin: Thank you for your
+awesome talk, Corwin.
+
+00:11:36.480 --> 00:11:49.519
+I think we have one or two minutes for a
+few questions.
+
+00:11:49.519 --> 00:11:52.000
+Do you have the pad open or would you
+
+00:11:52.000 --> 00:11:53.839
+like me to read the questions for you?)
+
+00:11:53.839 --> 00:11:58.000
+Corwin: Oh, I managed to close the pad
+
+00:11:58.000 --> 00:12:00.352
+and I am trying to open it again.
+
+00:12:00.352 --> 00:12:03.519
+All right, there it opened.
+
+00:12:03.519 --> 00:12:05.500
+Bringing it onto a screen where I can
+see it.
+
+00:12:05.500 --> 00:12:09.360
+Will you read me the first question
+while I drag windows around, please?
+
+00:12:09.360 --> 00:12:15.600
+(Amin: Sure. It says, "do you use Emacs
+as a community building tool?")
+
+00:12:15.600 --> 00:12:19.760
+Do I use Emacs as a community building
+tool, or how do I?
+
+00:12:19.760 --> 00:12:23.519
+(Amin: It just says do you.) Yes, absolutely.
+
+00:12:23.519 --> 00:12:29.920
+I think Emacs is an ambassador to the
+GNU tool chain.
+
+00:12:29.920 --> 00:12:33.027
+I think that in the fullness of time,
+
+00:12:33.027 --> 00:12:36.558
+we will see an Emacs
+
+00:12:36.558 --> 00:12:43.760
+that makes iOS and Android and other
+closed-source tools dream.
+
+00:12:43.760 --> 00:12:46.689
+That's why they mock us and call Emacs
+
+00:12:46.689 --> 00:12:49.200
+an operating system. It's because
+
+00:12:49.200 --> 00:12:51.440
+it could be, if we cared for it to be.
+
+00:12:51.440 --> 00:12:55.680
+It's quite a threatening product
+
+00:12:55.680 --> 00:12:57.440
+from the perspective of how many problem
+
+00:12:57.440 --> 00:12:58.540
+spaces it can address,
+
+00:12:58.540 --> 00:13:01.519
+how many types of users it can satisfy,
+
+00:13:01.519 --> 00:13:04.399
+the things that we can do to make
+
+00:13:04.399 --> 00:13:06.456
+it robust in those environments.
+
+00:13:06.456 --> 00:13:09.524
+I mean, we're always thinking about the
+weak points,
+
+00:13:09.524 --> 00:13:14.639
+but is Emacs a community building tool?
+Heck yeah.
+
+00:13:14.639 --> 00:13:18.480
+(Amin: There's like one or two more
+questions.
+
+00:13:18.480 --> 00:13:22.480
+I think they're more long-form so it
+might be better
+
+00:13:22.480 --> 00:13:26.880
+if you took them off stream so you could
+keep the schedule on time.)
+
+00:13:26.880 --> 00:13:29.463
+I would love to take those questions
+offline.
+
+00:13:29.463 --> 00:13:30.908
+I will respond to you
+
+00:13:30.908 --> 00:13:32.237
+in writing if we don't get to it
+
+00:13:32.237 --> 00:13:33.360
+in a breakout room.
+
+00:13:33.360 --> 00:13:35.451
+Thanks so much for joining us.
+
+00:13:35.451 --> 00:13:36.639
+I can't wait to see the rest of the
+
+00:13:36.639 --> 00:13:38.000
+conference. See you there!
+
+00:13:38.000 --> 00:13:42.800
+(Amin: Awesome. Thank you again so much, Corwin.)