summaryrefslogtreecommitdiffstats
path: root/2021/talks/montessori.md
blob: e20888fe9d274863f2c09cdaedefb60c743262d5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
[[!meta title="Emacs and Montessori Philosophy"]]
[[!meta copyright="Copyright © 2021 "]]
[[!inline pages="internal(2021/info/montessori-nav)" raw="yes"]]

<!-- You can manually edit this file to update the abstract, add links, etc. --->


# Emacs and Montessori Philosophy


[[!inline pages="internal(2021/info/montessori-schedule)" raw="yes"]]

As a former Montessori guide and now parent, I often think about the
relationship of this particular educational philosophy and how it manifests
in my work with software, Emacs in particular. This talk introduces the
concept of Emacs as an educational environment and how it expresses elements of
Montessori psychology regarding "Human Tendencies". Human tendencies are innate
drives present in everybody that allow us to explore and make sense of our world.

# Discussion

-   Q1:  Would you say that the Montessori philosophy follows a \"verb\"
    based methodology, where an abstract action is performed on an item,
    without locking the action to what the item can support, like an
    Object-oriented language would do? 
    -   e.g.  \`throw(rock)\` instead of \`rock.throw()\`, i.e. a
        function in a global namespace, instead of a function belonging
        to an object?
    -   A: i\'d like to think about this some more, but honestly i think
        its a bit of both? there\'s certainly some things I can think of
        that are more like \`rock.throw()\`\... Here are the things you
        can do with these materials, and that is it. On the other hand,
        I\'ve certainly seen inventive uses of educational materials
        that follow more of a \`throw(pencil)\` type of thing.
    -   The philosophy is highly observation based, so I\'m thinking
        about the difference of something like \`Child::new.learn()\` vs
        \`learn(some-child)\`.  In this case I do feel like the \"verb\"
        based methodology is more appropriate. We need to stop and
        observe a child, to notice what is driving them, what they\'re
        responding to, and where they are in their abilities. Depending
        on our observations, we may offer different kinds of input. Its
        certainly much less like \"oh i have another Child object and I
        need to have them do x, y, z\" in order to get to point B.
    -   I hope this somewhat answers the question. I\'ll keep pondering
        :)
        -   Thank you, I guess some children favour one method over
            another, but it\'s not as black and white as I initially
            thought. Thanks!
-   Q2: How old do you think childen need to be to start exploring with
    Emacs?
    -   A: Children 0-6 are in a phase called the \"absorbent mind\". It
        is this miraculous superpower that children have to absorb
        everything around them. The ability to learn language is
        probably the most obvious example. So, if children can interact
        with Emacs, they can start exploring it. Of course, as a text
        editor, basic literacy is pretty important.  I personally have
        not tried teaching young children Emacs, but I believe with the
        right kinds of interfaces, it could be possible.
-   Q3: How to let my kids exploring Emacs?(No need to answer this.
    It\'s simillar to Q2)
    -   A: Great question! Much of the early childhood Montessori work
        is highly tactile. Abstract concepts are embodied in physical
        objects. One example is the \"binomial cube\" which is a set of
        blocks that demonstrates (a + b)\^3. Children know nothing about
        the math behind it, but by interacting with it as a tactile
        puzzle, something about the math concept behind it, the
        abstraction, is available to the child and their absorbent mind.
    -   That is to say\... perhaps there are ways to bring Emacs into
        the physical world for the very young. I\'ve been fantasizing
        about some kind of \"physical lisp\" where young children can
        interact with a sort of physical programming language. I don\'t
        have a lot of concrete ideas on how to get young children
        exploring Emacs, but I  do believe it is possible.
    -   For older, literate children, I believe simple things that give
        instant feedback are a great way to encourage interaction. Being
        able to do something like (set-cursor-color \"orange\") and see
        it work at your finger tips is amazing. I believe that a well
        prepared set up where M-x is easy to access and you get some
        kind of completion to show you what you can do would go far. 
        Even ielm could be useful. Children are not nearly as afraid of
        a command prompt as some grown ups are. They come to it with
        much less preconceptions on how it should be used.
    -   I would like to think more about this, as giving children the
        opportunity to experience Emacs feels critical these days, when
        they may be forced into using much non-free software just do do
        their school work.
-   Q4: How big of an impact does the environment have on the children
    that you teach?
    -   A: the environment is huge. giving children a prepared space
        where everything is accessible to them, down at their level, the
        correct size, etc, it can lead to amazing things. When I worked
        with 1.5-3 year olds, I remember telling people it was like
        managing a restaurant where my employees were toddlers. I could
        work with a group of children to get food served into properly
        sized dishes, beverages poured, ceramic plates and glass cups
        set on the tables, napkins folded, and so on all finished in
        time to get everyone down for lunch before we had major melt
        downs.  This would not be possible in a normal grown-up
        environment. 
    -   I\'m not sure i said this in the talk, but the environment is an
        active process on all of us, not just children. the 0-6 year
        olds (and beyond) are absorbing so much from the environment
        that we simply filter out. i think this is important to consider
        for new emacs users. I tend to filter out a lot of things that a
        new user may pick up and stumble over.
    -   To re-emphasize: the elements of education are The Learner, The
        Guide(s), and The Environment. Montessori focuses on the
        Prepared Environment, in order that it can be the most effective
        for the child\'s ability to become an independent, self-realized
        person.
-   Q5:Do you have a good reference for the Montessori principles
    (actually any nice book ref)?
    -   A: I\'d like to find a more modern resource, I\'m sure they are
        out there. Much of my experience was direct hands-on classroom
        time.  I\'ve read much of \"The Absorbent Mind\" which really
        lays out a lot of the observations Maria Montessori made of the
        young child, 0-6 years old.  The other book I\'ve studied is
        \"The Secret of Childhood\".  I would like to stress though, a
        lot of the knowledge in Montessori is very very similar to
        traditional knowledge. When I was learning more about Lakota
        culture and parenting, I was finding that Montessori was
        expressing much of the same thing. Any resource (book, human,
        whatever) that respects children as whole human beings is worth
        paying attention to. Another author I\'ve enjoyed is Aletha
        Solter, who writes about parenting.
-   Q6:How do you think Emacs could improve re: Montessori Principles
    (if at all)?
    -   A: My main takeaway is that we should acknowledge the three
        elements of learning: The Learner (user), The Guides
        (contributors), and The (Prepared) Environment. Each user coming
        to Emacs is an individual with their own mix of internal drives
        (human tendencies) that compel them to learn and experience.
        Everyone that is a contributor to Emacs (whether in code, on the
        web, or in chat) acts as a Guide in the environment (whether
        they know it or not).  The Prepared Environment could be
        considered how the application is set up for users.  I think
        there is room for a friendlier Prepared Environment, though I am
        always amazed at what I can discover where the self-documenting
        feature helps me out.  Interactive tutorials teaching one how to
        learn how to learn Emacs would be tricky, but I think some
        interesting work could happen there!
    -   Another principle is \"control of error\", meaning, when you
        fail at something or make a mistake, it should be obvious, and
        hopefully the correction of the error should be obvious as well.
        This is hard to do in a huge software environment like Emacs,
        but I think there could be some work done in this regard. I\'m
        reminded of Racket\'s beginning student languages, which make
        error messages more human focused and less computery is a good
        example.
    -   I think the community could also improve as Guides. I have
        certainly had many pleasant interactions with Emacs users, but
        sometimes you run into things like \"RTFM\" or \"read the
        source\". While I don\'t disagree, it can come off as elitist
        sometimes. Many new users are afraid to read source, or have
        found a manual but still don\'t understand. We certainly want to
        encourage independence, so offering techniques like \"have you
        tried M-x describe-function?\"  is better than just answering
        outright. Sometimes we need to take a moment and understand the
        Learner we\'re working with. Maybe they aren\'t ready for \"read
        the source\". I could keep writing, but I think I need to wrap
        up. Anyone should feel free to email me to talk more! perhaps
        i\'ll try doing some writing about it. 
-   Q8: What was the presentation mode you used?
    -   A: org-tree-slide - <https://github.com/takaxp/org-tree-slide> -
        i love using this package because i can practice and edit my
        presentation at the same time.

Feedback:

- having studied in a school which founded by following Montessori Philosophy, I can relate <3
- Love the emphasis on creativity!
- Such a cool talk
- Great perspective in that talk.
- the reference to Montessori made me think of Alan Kay's talks about Frenet and Papert.
  - i was thinking the exact same thing regarding Alan Kay and his talks about education, and of his philosophies behind Smalltalk (the programming language).
  - and Smalltalk as a platform shares a lot with Emacs, both are a world where a user lives and develops 
  - garjola: yeah...the whole thing about discovery, figuring things out for yourself, having an epiphany.

Links and other notes:

-   <https://github.com/takaxp/org-tree-slide>
-   <grant@churls.world>
-   \@kheya\@mastodon.social
-   <http://blog.shoshin.digital/> (there\'s not really anything there
    xD)

# Outline

-   5-10 minutes: (brief description/outline)
    Quick overview of a Montessori classroom environment:
    
    -   the adults or guides primarily observe and present material
    -   the children are free to explore materials as they choose (within limits)
    -   the environment itself is prepared specifically to foster engagement
    
    Enumerate the "Human Tendencies":
    
    -   Abstraction
    -   Activity
    -   Communication
    -   Exactness
    -   Exploration
    -   Manipulation (of the environment)
    -   Order
    -   Orientation
    -   Repetition
    -   Self-Perfection
    -   Work (also described as "purposeful activity")
    
    How does Emacs express these things?
    
    -   in the short version, pose the question, and perhaps give one example.
    -   Emacs is an environment that provides facilities for individuals to
        find their way to proficiency through their Human Tendencies.
    -   We are all both learners and guides, Emacs is our classroom

<!--
-   20 minutes: (brief description/outline)
    This would follow the same outline as above, but go more deeply into how
    Emacs fosters understanding and growth by allowing individuals to express
    the various Human Tendencies.

-   40 minutes: (brief description/outline)
    I don't have in mind to do a 40 minute talk, though a friend and fellow Emacs
    user is also a former Montessori guide and we had talked about sharing our
    experience together in this presentation. This would include more anecdotal
    evidence of what we experienced ourselves observing children as well as our
    journey to competency as software developers through the classroom of Emacs.
-->

[[!inline pages="internal(2021/captions/montessori)" raw="yes"]]

[[!inline pages="internal(2021/info/montessori-nav)" raw="yes"]]