summaryrefslogtreecommitdiffstats
path: root/2021/captions/emacsconf-2021-montessori--emacs-and-montessori-philosophy--grant-shangreaux--main.vtt
diff options
context:
space:
mode:
Diffstat (limited to '2021/captions/emacsconf-2021-montessori--emacs-and-montessori-philosophy--grant-shangreaux--main.vtt')
-rw-r--r--2021/captions/emacsconf-2021-montessori--emacs-and-montessori-philosophy--grant-shangreaux--main.vtt826
1 files changed, 826 insertions, 0 deletions
diff --git a/2021/captions/emacsconf-2021-montessori--emacs-and-montessori-philosophy--grant-shangreaux--main.vtt b/2021/captions/emacsconf-2021-montessori--emacs-and-montessori-philosophy--grant-shangreaux--main.vtt
new file mode 100644
index 00000000..1fd6f335
--- /dev/null
+++ b/2021/captions/emacsconf-2021-montessori--emacs-and-montessori-philosophy--grant-shangreaux--main.vtt
@@ -0,0 +1,826 @@
+WEBVTT
+
+00:04.960 --> 00:00:07.680
+Hello everyone. My name is Grant Shangreaux,
+
+00:07.680 --> 00:00:10.719
+and I'm happy to be back here at EmacsConf.
+
+00:00:10.719 --> 00:00:13.840
+So before I was a programmer professionally,
+
+00:00:13.840 --> 00:00:16.800
+I was a Montessori guide with young children,
+
+00:00:16.800 --> 00:00:18.960
+and now I'm a parent of a child
+
+00:00:18.960 --> 00:00:20.319
+in a Montessori classroom.
+
+00:00:20.320 --> 00:00:21.600
+I was thinking Emacs
+
+00:00:21.600 --> 00:00:22.960
+and Montessori philosophy
+
+00:00:22.960 --> 00:00:25.760
+are both fundamentally about respect.
+
+00:00:25.760 --> 00:00:27.840
+Respect children, for the child
+
+00:27.840 --> 00:00:29.760
+is the parent to the adult.
+
+00:00:29.760 --> 00:00:32.079
+And we should respect users.
+
+00:32.079 --> 00:00:33.440
+Maybe the user is the parent
+
+00:00:33.440 --> 00:00:35.839
+to the hacker. That was certainly my case.
+
+00:00:35.840 --> 00:00:37.680
+So this talk is about the similarities
+
+00:37.680 --> 00:00:39.440
+between the Emacs environment
+
+00:00:39.440 --> 00:00:41.040
+and the Montessori classroom,
+
+00:00:41.040 --> 00:00:43.760
+which is called a prepared environment,
+
+00:00:43.760 --> 00:00:45.760
+meaning that everything in the environment
+
+00:00:45.760 --> 00:00:48.559
+has been prepared for the child to come
+
+00:00:48.559 --> 00:00:51.119
+and interact with in a meaningful way.
+
+00:00:51.120 --> 00:00:52.399
+The child will be driven
+
+00:00:52.399 --> 00:00:54.399
+by natural human tendencies
+
+00:00:54.399 --> 00:00:56.399
+to interact with their environment
+
+00:00:56.399 --> 00:00:58.079
+and to construct and refine
+
+00:00:58.079 --> 00:00:59.920
+their understanding of the world
+
+00:00:59.920 --> 00:01:01.359
+and the things in it.
+
+00:01:01.359 --> 00:01:03.600
+What I hope you come away from this talk with
+
+00:01:03.600 --> 00:01:06.080
+is just a new perspective
+
+00:01:06.080 --> 00:01:08.479
+on Emacs and software,
+
+00:01:08.479 --> 00:01:10.240
+and how users interact
+
+00:01:10.240 --> 00:01:13.520
+in a prepared environment like Emacs
+
+00:01:13.520 --> 00:01:15.280
+following their human tendencies
+
+00:01:15.280 --> 00:01:17.200
+to gain understanding
+
+00:01:17.200 --> 00:01:19.118
+and reach toward perfection.
+
+00:01:19.119 --> 00:01:21.040
+Okay. So the human tendencies
+
+00:01:21.040 --> 00:01:24.000
+are innate drives present in everybody.
+
+00:01:24.000 --> 00:01:25.600
+They're what enable us to explore
+
+00:01:25.600 --> 00:01:27.520
+and make sense of our world.
+
+01:27.520 --> 00:01:29.360
+We use these human tendencies
+
+00:01:29.360 --> 00:01:32.960
+to construct and refine the world itself.
+
+01:32.960 --> 00:01:34.240
+You know, if you're an Emacs user,
+
+00:01:34.240 --> 00:01:35.920
+I hope that's ringing some bells for you
+
+00:01:35.920 --> 00:01:38.320
+right away, because what we do
+
+00:01:38.320 --> 00:01:40.960
+when we interact with Emacs as individuals
+
+00:01:40.960 --> 00:01:45.360
+is construct and refine our world in Emacs.
+
+01:45.360 --> 00:01:46.320
+So I'm going to go through
+
+00:01:46.320 --> 00:01:47.920
+the human tendencies one by one
+
+00:01:47.920 --> 00:01:48.960
+and bring up things
+
+00:01:48.960 --> 00:01:52.079
+that I have observed or noticed in Emacs.
+
+01:52.079 --> 00:01:53.840
+I'm sure there's plenty more.
+
+00:01:53.840 --> 00:01:56.559
+Feel free to share it in chat.
+
+01:56.560 --> 00:02:00.000
+So number one is orientation.
+
+00:02:00.000 --> 00:02:02.000
+Human beings want to know their relationship
+
+00:02:02.000 --> 00:02:04.320
+to the environment around them.
+
+02:04.320 --> 00:02:05.840
+With children, when they come into
+
+00:02:05.840 --> 00:02:07.520
+a new environment, they want to look at it,
+
+02:07.520 --> 00:02:09.360
+touch everything around them.
+
+02:09.360 --> 00:02:11.520
+They want to know where they fit in,
+
+02:11.520 --> 00:02:12.800
+things like that.
+
+02:12.800 --> 00:02:15.599
+In Emacs, the easiest thing to think of
+
+00:02:15.599 --> 00:02:18.560
+is the initial new Emacs buffer.
+
+00:02:18.560 --> 00:02:21.040
+Right away, that is giving you
+
+00:02:21.040 --> 00:02:23.440
+some guideposts to orient yourself.
+
+00:02:23.440 --> 00:02:25.920
+If you've used any of the other
+
+02:25.920 --> 00:02:28.720
+Emacs starter packages, different packages
+
+00:02:28.720 --> 00:02:30.239
+take different approaches to this.
+
+00:02:30.239 --> 00:02:33.519
+I think if you're trying to get people
+
+00:02:33.519 --> 00:02:36.080
+to use Emacs for some reason,
+
+00:02:36.080 --> 00:02:39.440
+thinking about how individuals
+
+00:02:39.440 --> 00:02:40.720
+might orient themselves
+
+02:40.720 --> 00:02:43.680
+to this new software world is important.
+
+00:02:43.680 --> 00:02:46.000
+I think that there are friendly ways
+
+02:46.000 --> 00:02:48.080
+to welcome people into the environment
+
+02:48.080 --> 00:02:50.879
+and to make it easier for people
+
+00:02:50.879 --> 00:02:53.120
+to orient themselves within Emacs.
+
+00:02:53.120 --> 00:02:56.080
+Of course we've also got the Info manuals,
+
+00:02:56.080 --> 00:02:57.760
+and one of my favorite examples
+
+02:57.760 --> 00:03:00.080
+is the which-key package, which,
+
+00:03:00.080 --> 00:03:01.519
+when you press a key,
+
+00:03:01.519 --> 00:03:04.000
+it'll pop up with all of the following
+
+00:03:04.000 --> 00:03:05.760
+key bindings that are available.
+
+00:03:05.760 --> 00:03:09.280
+That's a really important way for me
+
+03:09.280 --> 00:03:13.599
+to explore, which is another human tendency,
+
+00:03:13.599 --> 00:03:15.280
+or to orient myself;
+
+00:03:15.280 --> 00:03:17.599
+to think about when I press this key,
+
+00:03:17.599 --> 00:03:19.920
+now I've got these possibilities.
+
+00:03:19.920 --> 00:03:21.760
+You see that all over in Emacs
+
+00:03:21.760 --> 00:03:25.920
+with hydras or the Magit transient buffers.
+
+00:03:25.920 --> 00:03:27.280
+There's all sorts of ways
+
+00:03:27.280 --> 00:03:29.440
+that Emacs is trying to help us
+
+00:03:29.440 --> 00:03:30.719
+orient ourselves.
+
+00:03:30.720 --> 00:03:33.440
+The second tendency is order, which
+
+00:03:33.440 --> 00:03:35.120
+I probably should have talked about first,
+
+00:03:35.120 --> 00:03:38.480
+but here I am. I myself am not
+
+00:03:38.480 --> 00:03:40.799
+particularly attuned to order,
+
+00:03:40.799 --> 00:03:43.120
+but when I was in the Montessori classroom,
+
+00:03:43.120 --> 00:03:45.920
+I found that it wasn't necessarily myself
+
+00:03:45.920 --> 00:03:47.360
+imposing the order, it was...
+
+00:03:47.360 --> 00:03:48.480
+The environment itself
+
+00:03:48.480 --> 00:03:50.239
+has a certain order to it,
+
+00:03:50.239 --> 00:03:52.080
+and by creating an environment
+
+00:03:52.080 --> 00:03:54.239
+where everything has its place,
+
+03:54.239 --> 00:03:56.480
+and everything has its time,
+
+00:03:56.480 --> 00:03:59.840
+and you have a way of doing things,
+
+00:03:59.840 --> 00:04:02.480
+it makes it easier for the child
+
+00:04:02.480 --> 00:04:04.560
+to develop that internal sense of order
+
+00:04:04.560 --> 00:04:07.120
+and succeed at imposing order
+
+00:04:07.120 --> 00:04:09.360
+upon their work, which...
+
+00:04:09.360 --> 00:04:11.360
+We do that as programmers.
+
+04:11.360 --> 00:04:13.280
+If we're contributing to Emacs,
+
+00:04:13.280 --> 00:04:16.079
+we try to do so in an orderly way,
+
+00:04:16.079 --> 00:04:18.160
+use prefixes for namespacing,
+
+00:04:18.160 --> 00:04:19.919
+since we don't have that ability
+
+00:04:19.919 --> 00:04:20.959
+in Emacs Lisp,
+
+00:04:20.959 --> 00:04:22.600
+and by sharing well-ordered
+
+00:04:22.600 --> 00:04:25.999
+self-documenting programs with our community.
+
+04:26.000 --> 00:04:28.560
+Number three is exploration. I think
+
+00:04:28.560 --> 00:04:30.720
+exploration is what drew me into Emacs,
+
+04:30.720 --> 00:04:32.400
+personally. In the beginning,
+
+00:04:32.400 --> 00:04:35.759
+it was just this wondrous
+
+00:04:35.759 --> 00:04:36.800
+software environment
+
+00:04:36.800 --> 00:04:39.360
+that offered so many opportunities.
+
+00:04:39.360 --> 00:04:41.680
+I was curious. Like, you've got
+
+00:04:41.680 --> 00:04:42.880
+your scratch buffer.
+
+00:04:42.880 --> 00:04:45.040
+You can explore in there with expressions.
+
+00:04:45.040 --> 00:04:46.880
+You can start up IELM.
+
+00:04:46.880 --> 00:04:49.440
+You can explore your file system with Dired.
+
+00:04:49.440 --> 00:04:51.199
+You can explore different packages
+
+00:04:51.199 --> 00:04:54.560
+with list-packages. There's so many ways
+
+00:04:54.560 --> 00:04:56.880
+you can explore in Emacs.
+
+00:04:56.880 --> 00:04:59.040
+For me, that was very delightful.
+
+00:04:59.040 --> 00:05:01.919
+It really resonated with my bias
+
+00:05:01.919 --> 00:05:04.960
+of exploration and human tendencies.
+
+05:04.960 --> 00:05:07.280
+Places to explore in Emacs are wonderful,
+
+05:07.280 --> 00:05:08.720
+and eventually you get down
+
+00:05:08.720 --> 00:05:12.079
+into the source code, and it's great.
+
+05:12.080 --> 00:05:14.400
+And then we've got communication.
+
+00:05:14.400 --> 00:05:16.639
+I think communication kind of
+
+00:05:16.639 --> 00:05:17.919
+speaks for itself as well.
+
+00:05:17.919 --> 00:05:19.520
+Emacs is software.
+
+05:19.520 --> 00:05:22.080
+Software is a form of communication.
+
+05:22.080 --> 00:05:23.360
+We're all driven to communicate.
+
+00:05:23.360 --> 00:05:26.240
+That's why we're here at this conference.
+
+05:26.240 --> 00:05:28.320
+Within Emacs, you've got lots of ways
+
+00:05:28.320 --> 00:05:30.960
+to communicate. You've got IRC clients,
+
+00:05:30.960 --> 00:05:32.960
+mail, you've got news readers.
+
+00:05:32.960 --> 00:05:34.080
+You could use Org.
+
+00:05:34.080 --> 00:05:37.600
+I even started working on a magazine in Org
+
+00:05:37.600 --> 00:05:38.800
+that I was going to distribute
+
+00:05:38.800 --> 00:05:42.479
+via live Debian CDs back in the day.
+
+00:05:42.479 --> 00:05:45.120
+So I think Emacs for communication
+
+00:05:45.120 --> 00:05:46.159
+is pretty clear.
+
+00:05:46.160 --> 00:05:48.639
+Activity. So Activities is just
+
+00:05:48.639 --> 00:05:51.120
+a natural thing when you're...
+
+00:05:51.120 --> 00:05:52.479
+You see it in children. Right?
+
+00:05:52.479 --> 00:05:54.720
+Children always find something to do
+
+00:05:54.720 --> 00:05:57.120
+to keep busy, whether they're pretending,
+
+00:05:57.120 --> 00:05:59.039
+or running around, or moving.
+
+00:05:59.039 --> 00:06:00.240
+You don't have to have a goal
+
+00:06:00.240 --> 00:06:01.759
+or end-product in mind.
+
+00:06:01.759 --> 00:06:02.800
+People are just active.
+
+00:06:02.800 --> 00:06:06.160
+You do things. I find that in Emacs,
+
+00:06:06.160 --> 00:06:08.000
+all the time, when I don't know
+
+00:06:08.000 --> 00:06:09.919
+what to work on, sometimes I just go
+
+06:09.919 --> 00:06:12.479
+into Emacs and hack around and, like,
+
+06:12.479 --> 00:06:14.000
+change things in my config.
+
+00:06:14.000 --> 00:06:16.000
+I'm sure we've all been there.
+
+00:06:16.000 --> 00:06:19.120
+So Emacs encourages and enables
+
+00:06:19.120 --> 00:06:21.198
+that kind of activity as well.
+
+00:06:21.199 --> 00:06:23.120
+Manipulation is the next one.
+
+00:06:23.120 --> 00:06:27.120
+So Lisp. Anyone? The fact that Emacs is
+
+00:06:27.120 --> 00:06:29.919
+this live Lisp process that's running,
+
+06:29.919 --> 00:06:33.360
+that you can manipulate at your fingertips...
+
+00:06:33.360 --> 00:06:35.120
+You couldn't ask for something better.
+
+00:06:35.120 --> 00:06:37.360
+I think the malleability of Emacs
+
+00:06:37.360 --> 00:06:39.600
+is why people love it.
+
+06:39.600 --> 00:06:41.840
+Clearly, the environment of Emacs
+
+00:06:41.840 --> 00:06:44.240
+was prepared with manipulation in mind
+
+00:06:44.240 --> 00:06:45.280
+from the very start.
+
+00:06:45.280 --> 00:06:46.960
+We'll go through these next ones
+
+06:46.960 --> 00:06:48.318
+pretty quickly.
+
+00:06:48.319 --> 00:06:51.759
+We've got work or purposeful activity.
+
+06:51.759 --> 00:06:53.039
+Emacs would not exist
+
+00:06:53.039 --> 00:06:55.120
+without this human tendency.
+
+06:55.120 --> 00:06:56.319
+it's been worked on
+
+00:06:56.319 --> 00:06:58.240
+by free software volunteers
+
+00:06:58.240 --> 00:07:03.360
+for 40 years, and this is the kind of
+
+00:07:03.360 --> 00:07:06.000
+self-motivated work that inspired me
+
+00:07:06.000 --> 00:07:09.198
+to be a hacker.
+
+07:09.199 --> 00:07:11.919
+Repetition is another human tendency.
+
+00:07:11.919 --> 00:07:14.960
+I think that one kind of speaks for itself.
+
+07:14.960 --> 00:07:17.120
+It's this tendency that gave me
+
+00:07:17.120 --> 00:07:19.919
+Emacs pinky after learning all of those
+
+00:07:19.919 --> 00:07:23.360
+key bindings, and then that same tendency
+
+00:07:23.360 --> 00:07:26.639
+drove me to learn another modal key mapping
+
+00:07:26.639 --> 00:07:29.759
+ to deal with that. I've repeated myself,
+
+00:07:29.759 --> 00:07:32.400
+starting over new Emacs configs
+
+00:07:32.400 --> 00:07:35.120
+several times. I could give another example,
+
+00:07:35.120 --> 00:07:36.960
+but I'll just be repeating myself
+
+00:07:36.960 --> 00:07:38.959
+at this point.
+
+07:38.960 --> 00:07:42.880
+And then exactness. So we have a tendency,
+
+00:07:42.880 --> 00:07:45.840
+a human tendency toward exactness.
+
+07:45.840 --> 00:07:48.160
+That's not one that's very strong for me.
+
+07:48.160 --> 00:07:50.879
+I'm not a super exacting person.
+
+07:50.879 --> 00:07:53.520
+But I think you can see that in Emacs,
+
+00:07:53.520 --> 00:07:55.520
+like certain parts of it
+
+00:07:55.520 --> 00:07:59.599
+have been refined down to exactness.
+
+00:07:59.599 --> 00:08:01.759
+I know when I'm working,
+
+00:08:01.759 --> 00:08:04.560
+sometimes it's just the theme that I choose
+
+00:08:04.560 --> 00:08:06.319
+or making sure the mode line
+
+00:08:06.319 --> 00:08:07.840
+is exactly the way I want it...
+
+00:08:07.840 --> 00:08:10.160
+You know, getting that environment
+
+00:08:10.160 --> 00:08:14.240
+to feel conducive to thought and work
+
+00:08:14.240 --> 00:08:16.318
+is important to me.
+
+08:16.319 --> 00:08:18.560
+And then we have abstraction, which...
+
+00:08:18.560 --> 00:08:19.680
+That one goes pretty deep,
+
+00:08:19.680 --> 00:08:21.840
+but I think you can see
+
+00:08:21.840 --> 00:08:24.080
+how abstraction works in Emacs.
+
+08:24.080 --> 00:08:26.080
+A buffer is an abstraction.
+
+00:08:26.080 --> 00:08:27.840
+One of the great things about Emacs
+
+00:08:27.840 --> 00:08:29.199
+and about Montessori philosophy
+
+00:08:29.199 --> 00:08:32.080
+is that these abstractions
+
+00:08:32.080 --> 00:08:33.200
+might not be something
+
+00:08:33.200 --> 00:08:34.640
+you need to think about right away,
+
+00:08:34.640 --> 00:08:35.919
+but they're there, right,
+
+00:08:35.919 --> 00:08:39.200
+like the fact that a buffer abstracts
+
+00:08:39.200 --> 00:08:41.279
+over working with text.
+
+08:41.279 --> 00:08:43.519
+Once that becomes clear to you,
+
+00:08:43.519 --> 00:08:45.760
+once you have a reason to manipulate it,
+
+00:08:45.760 --> 00:08:48.320
+having the abstraction of the buffer there
+
+00:08:48.320 --> 00:08:51.440
+to work with makes a huge difference.
+
+00:08:51.440 --> 00:08:52.160
+And then of course,
+
+00:08:52.160 --> 00:08:54.560
+we can create our own abstractions:
+
+08:54.560 --> 00:08:57.519
+transients, pop-up buffers, hydras...
+
+08:57.519 --> 00:08:59.360
+I'm sure there's plenty of examples
+
+00:08:59.360 --> 00:09:01.999
+in chat that I can't come up with.
+
+09:02.000 --> 00:09:03.519
+And finally, perfection.
+
+00:09:03.519 --> 00:09:04.959
+All of the human tendencies
+
+00:09:04.959 --> 00:09:07.279
+culminate in this one.
+
+00:09:07.279 --> 00:09:08.320
+Perfection doesn't mean
+
+00:09:08.320 --> 00:09:10.240
+like you just have to make
+
+00:09:10.240 --> 00:09:13.040
+this perfect shining idealistic thing.
+
+09:13.040 --> 00:09:15.680
+It's about perfecting what we do.
+
+00:09:15.680 --> 00:09:18.800
+I think everybody who's worked with Emacs
+
+00:09:18.800 --> 00:09:19.680
+for a long time,
+
+00:09:19.680 --> 00:09:22.240
+you perfect your configuration.
+
+09:22.240 --> 00:09:25.120
+Sometimes you tear it down and start over.
+
+00:09:25.120 --> 00:09:26.399
+If you're working on a package,
+
+00:09:26.399 --> 00:09:27.760
+you perfect that,
+
+00:09:27.760 --> 00:09:29.760
+and it's an ongoing process.
+
+00:09:29.760 --> 00:09:31.600
+An example I can think of are
+
+00:09:31.600 --> 00:09:33.680
+like raxod502's packages.
+
+09:33.680 --> 00:09:36.720
+straight.el is an attempt at perfecting
+
+00:09:36.720 --> 00:09:40.480
+the package management system in Emacs,
+
+09:40.480 --> 00:09:41.920
+and he's taken a stab at
+
+00:09:41.920 --> 00:09:43.440
+several other common things,
+
+00:09:43.440 --> 00:09:46.320
+like incremental selection and so on.
+
+09:46.320 --> 00:09:50.959
+These aren't necessarily finished problems.
+
+09:50.959 --> 00:09:52.480
+There's room for perfection,
+
+00:09:52.480 --> 00:09:58.160
+and we have a human tendency to pursue that.
+
+09:58.160 --> 00:09:59.040
+I hope this talk
+
+00:09:59.040 --> 00:10:00.080
+has gotten you thinking about
+
+00:10:00.080 --> 00:10:02.880
+how Emacs and the Montessori classroom
+
+00:10:02.880 --> 00:10:04.480
+are similar--they're both
+
+00:10:04.480 --> 00:10:06.160
+prepared environments
+
+10:06.160 --> 00:10:08.800
+that call upon our human tendencies
+
+10:08.800 --> 00:10:12.240
+to construct and refine our world--
+
+10:12.240 --> 00:10:15.519
+and how Emacs respects us as users
+
+10:15.519 --> 00:10:18.480
+in the hopes that we will grow up into
+
+10:18.480 --> 00:10:21.200
+creative hackers.
+
+10:21.200 --> 00:10:22.240
+Thank you for listening.
+
+00:10:22.240 --> 00:10:23.680
+I'm happy to answer any questions
+
+00:10:23.680 --> 00:10:26.079
+after the talk.
+
+00:10:26.079 --> 00:10:27.079
+[captions by sachac]