<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<title>Edibotopic blog</title>
	<subtitle>Edibotopic blog.</subtitle>
	<link href="https://edibotopic.com/blog/feed.xml" rel="self" type="application/atom+xml"/>
    <link href="https://edibotopic.com/blog/"/>
	<updated>2026-04-03T00:00:00+00:00</updated>
	<id>https://edibotopic.com/blog/feed.xml</id>
	<entry xml:lang="en">
		<title>Being right about one thing</title>
		<published>2026-04-03T00:00:00+00:00</published>
		<updated>2026-04-03T00:00:00+00:00</updated>
		<link href="https://edibotopic.com/blog/being-right-about-one-thing/" type="text/html"/>
		<id>https://edibotopic.com/blog/being-right-about-one-thing/</id>
		<content type="html">&lt;p&gt;Every so often, I read about a person who, against all odds, is “right about
one thing”.&lt;&#x2F;p&gt;
&lt;p&gt;They are shown to have reliably bad ideas about most things, but are suggested
to have crucial insights about &lt;em&gt;something&lt;&#x2F;em&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;It is known that they do not follow reliable processes for establishing the
truth. They may well be consistently anti-scientific, biased, or corrupt.&lt;&#x2F;p&gt;
&lt;p&gt;Yet we seem to abandon any prior emphasis on the process of establishing truth,
in favour of the far more seductive prospect of an accidental truth.&lt;&#x2F;p&gt;
&lt;p&gt;This often reveals that we don’t apply expectations of rigour evenly . We
depend on science for A, but our intuition about B. And then we think: this
person could be onto something about the toxins in those Bs.&lt;&#x2F;p&gt;
&lt;p&gt;So we begin to wonder whether there are hidden truths in demonstrable errors.
If they could be right about B, maybe they weren’t wrong about A. All the
while, there is little reason to believe they are right about B.&lt;&#x2F;p&gt;
&lt;p&gt;When not at work or study, who really wants to be rigorous. It’s nice to think
that we can luck into a correct opinion without needing to show our method or
any record of applying it reliably.&lt;&#x2F;p&gt;
&lt;p&gt;But we need to expect more of people with profound influence over the lives of
others, as well as those who endeavour to explain what those people actually
know and do not know.&lt;&#x2F;p&gt;
</content>
	</entry>
	<entry xml:lang="en">
		<title>Survey of ambiguities</title>
		<published>2025-11-19T00:00:00+00:00</published>
		<updated>2026-02-27T00:00:00+00:00</updated>
		<link href="https://edibotopic.com/blog/survey-of-ambiguities/" type="text/html"/>
		<id>https://edibotopic.com/blog/survey-of-ambiguities/</id>
		<content type="html">&lt;p&gt;We perceive something as ambiguous when it allows for two or more plausible interpretations &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#1&quot;&gt;1&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;What does this button do? How did the audience respond to my talk? What did
the ending of the movie mean? Why did they wear that particular outfit? What is
causing that smoke in the distance?&lt;&#x2F;p&gt;
&lt;p&gt;This page includes some thoughts about ambiguity in different domains.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ambiguity-in-language&quot;&gt;Ambiguity in language&lt;a class=&quot;zola-anchor&quot; href=&quot;#ambiguity-in-language&quot; aria-label=&quot;Anchor link for: ambiguity-in-language&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;The causes of ambiguity are not restricted to language, but types of
ambiguity are well-defined in that domain, so it’s a good place to start.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Lexical&lt;&#x2F;strong&gt; ambiguity occurs when a word has multiple meanings. In the case
of homonyms, a word can have multiple, unrelated meanings (river &lt;em&gt;bank&lt;&#x2F;em&gt;, money
&lt;em&gt;bank&lt;&#x2F;em&gt;). In polysemy, a word can have multiple related meanings (tree &lt;em&gt;branch&lt;&#x2F;em&gt;,
git &lt;em&gt;branch&lt;&#x2F;em&gt;).&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Syntactic&lt;&#x2F;strong&gt; ambiguity arises from an arrangement of words that generates multiple
possible meanings: &lt;em&gt;the program loads files from the server during startup&lt;&#x2F;em&gt;
(startup of the program, the server, or both?).&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Semantic&lt;&#x2F;strong&gt; ambiguity comes from a sentence with multiple meanings, which can
be due to many factors: &lt;em&gt;update the app after the window closes&lt;&#x2F;em&gt; (does the user
close the window or does it happen automatically?).&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Endophoric&lt;&#x2F;strong&gt; ambiguity is due to a reference that could refer to multiple
independent parts: &lt;em&gt;from the example above…&lt;&#x2F;em&gt; (which of the preceding examples?).&lt;&#x2F;p&gt;
&lt;p&gt;Some of these cases are related; for example, lexical and syntactic ambiguity can contribute to semantic ambiguity.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ambiguity-in-discovery&quot;&gt;Ambiguity in discovery&lt;a class=&quot;zola-anchor&quot; href=&quot;#ambiguity-in-discovery&quot; aria-label=&quot;Anchor link for: ambiguity-in-discovery&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Ambiguity can be understood as a necessary stage in the activity of discovery.&lt;&#x2F;p&gt;
&lt;p&gt;Scientific discovery is often initiated by the recognition of an ambiguity —
a phenomenon that admits of multiple possible interpretations. This prompts the
scientist to seek the interpretation that has the highest probability of being
correct.&lt;&#x2F;p&gt;
&lt;p&gt;Great scientists seek an ambiguity with just as much vigor as they do the
resolution of that ambiguity.&lt;&#x2F;p&gt;
&lt;p&gt;Ambiguity can arise in different phases of learning and discovery:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Identifying a new ambiguity to investigate (increased ambiguity)&lt;&#x2F;li&gt;
&lt;li&gt;Accepting a subset of valid interpretation out of several possible interpretations (reduced ambiguity)&lt;&#x2F;li&gt;
&lt;li&gt;Introducing ideas that challenge a prevailing view (restored ambiguity)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;ambiguity-in-technology&quot;&gt;Ambiguity in technology&lt;a class=&quot;zola-anchor&quot; href=&quot;#ambiguity-in-technology&quot; aria-label=&quot;Anchor link for: ambiguity-in-technology&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Technology can be ambiguous in different ways. There can be ambiguity of:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Function&lt;&#x2F;strong&gt;: multiple interpretations of &lt;em&gt;what it does&lt;&#x2F;em&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Procedure&lt;&#x2F;strong&gt;: multiple interpretations of &lt;em&gt;how to use it&lt;&#x2F;em&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Mechanism&lt;&#x2F;strong&gt;: multiple interpretations of &lt;em&gt;how it works&lt;&#x2F;em&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;A technology may have multiple valid functions and different valid procedures
for its use. This can result in that technology being experienced as ambiguous
by the user, even if the design is intentional and useful. As one becomes
skilled, the sense of ambiguity may be replaced with a sense of possibility.&lt;&#x2F;p&gt;
&lt;p&gt;A technology is discoverable when it enables the resolution of its own
ambiguity. This may coincide with the user recognising the intention of
the designer.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;[The] machine’s complexity was tied less to its esoteric technical
characteristics than to mundane difficulties of interpretation characteristic of
any unfamiliar artifact. &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#2&quot;&gt;2&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;ambiguity-in-biology&quot;&gt;Ambiguity in biology&lt;a class=&quot;zola-anchor&quot; href=&quot;#ambiguity-in-biology&quot; aria-label=&quot;Anchor link for: ambiguity-in-biology&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Enzymes were classically considered to be specific to one substrate, a kind of
lock-and-key relationship. In other words: an enzyme had a one-to-one binding
relationship with its substrate. It is now known that some enzymes exhibit
what scientists call “substrate ambiguity”, in which an enzyme can potentially
interact with multiple different substrates.&lt;&#x2F;p&gt;
&lt;p&gt;When an enzyme has been demonstrated to bind with multiple enzymes then that is
its real behaviour. If a new enzyme exhibits substrate ambiguity then it is
ambiguous for the observer, who may have expected more narrow binding behaviour
because of their model of reality. Forcing the enzyme’s behaviour into the
classical lock-and-key model to reduce ambiguity could lead to a flawed account
of reality.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ambiguity-and-generalisation&quot;&gt;Ambiguity and generalisation&lt;a class=&quot;zola-anchor&quot; href=&quot;#ambiguity-and-generalisation&quot; aria-label=&quot;Anchor link for: ambiguity-and-generalisation&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Both ambiguity and generalisation involve one-to-many relationships:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ambiguity&lt;&#x2F;strong&gt;: one perception with many possible interpretations&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Generalisation&lt;&#x2F;strong&gt;: one class with many possible instances&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;The distinction is that the interpretations in a case of ambiguity are mutually
independent, whereas the instances in a generalisation are members of some
class.&lt;&#x2F;p&gt;
&lt;!-- $$A: a \rightarrow \\{x, y,..., z\\}$$ --&gt;
&lt;!-- $$G: g \rightarrow C, \ C = \\{g_1, g_2,..., g_n\\}$$ --&gt;
&lt;p&gt;A generalisation assumes some model that explains the class and its membership.
Without an understanding of the model, a generalisation may have the appearance
of an ambiguity.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ambiguity-and-indeterminacy&quot;&gt;Ambiguity and indeterminacy&lt;a class=&quot;zola-anchor&quot; href=&quot;#ambiguity-and-indeterminacy&quot; aria-label=&quot;Anchor link for: ambiguity-and-indeterminacy&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;An indeterminate expression refers to a thing without specifying all of its
properties &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#3&quot;&gt;3&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;You need a Windows 11 machine to follow this tutorial.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;— does not specify whether the Windows 11 machine is physical or virtual&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Click “Save” to persist the data from your session.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;— does not specify where the session data is persisted&lt;&#x2F;p&gt;
&lt;p&gt;In both cases, there is no obvious ambiguity with respect to the Windows 11
machine or the session data, they are just not exhaustively described.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ambiguity-in-documentation&quot;&gt;Ambiguity in documentation&lt;a class=&quot;zola-anchor&quot; href=&quot;#ambiguity-in-documentation&quot; aria-label=&quot;Anchor link for: ambiguity-in-documentation&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;The general view is that ambiguity in documentation should be eliminated, so
that the user can reliably and safely follow a given document. This is almost
certainly good advice in most cases.&lt;&#x2F;p&gt;
&lt;p&gt;When operating industrial machinery, an ambiguous instruction can be fatal.
Yet, not all ambiguous instructions are so consequential. When a recipe prompts
us to add seasoning “to taste”, the instruction is ambiguous with respect to the
quantity, but it is unlikely to harm us. Moreover, it grants us the agency to
experiment and determine our preferred quantity.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;interplay-with-design&quot;&gt;Interplay with design&lt;a class=&quot;zola-anchor&quot; href=&quot;#interplay-with-design&quot; aria-label=&quot;Anchor link for: interplay-with-design&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;It may not be possible to eliminate ambiguity (or indeterminacy) from a user
interface or its documentation.&lt;&#x2F;p&gt;
&lt;p&gt;Documentation can, however, be written in a way that is less ambiguous relative to
the user interface.&lt;&#x2F;p&gt;
&lt;p&gt;This frees designers to leverage the virtues of ambiguity, such as efficiency
of representation, and expands the possibility space for design.&lt;&#x2F;p&gt;
&lt;p&gt;In that sense, documentation balances against, and allows for, ambiguities in the interface.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;dynamics-of-ambiguity&quot;&gt;Dynamics of ambiguity&lt;a class=&quot;zola-anchor&quot; href=&quot;#dynamics-of-ambiguity&quot; aria-label=&quot;Anchor link for: dynamics-of-ambiguity&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;Another way of thinking of a technical document, is that its reading should
result in a progressive reduction in ambiguity; thus, for example, a document may
introduce an action or goal that creates ambiguity for the user, before
guiding the user towards a level of understanding that resolves that ambiguity.&lt;&#x2F;p&gt;
&lt;p&gt;There may not always be a linear reduction in ambiguity as a reader navigates a
document. For example, a tutorial may introduce an ambiguous learning situation,
which is resolved as the user develops competence. Then, the tutorial may
prompt the user to apply their new skills in unfamiliar scenarios, reintroducing
ambiguity, and thereby empowering the user to explore new possibilities.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ambiguity-in-programming-aphorisms&quot;&gt;Ambiguity in programming aphorisms&lt;a class=&quot;zola-anchor&quot; href=&quot;#ambiguity-in-programming-aphorisms&quot; aria-label=&quot;Anchor link for: ambiguity-in-programming-aphorisms&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;An aphorism is a short phrase that expresses some general truth.&lt;&#x2F;p&gt;
&lt;p&gt;While they are often syntactically clear, they can be interpreted many ways,
and are therefore ambiguous.&lt;&#x2F;p&gt;
&lt;p&gt;Aphorisms are mostly associated with philosophers like Schopenhauer &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#4&quot;&gt;4&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;, but programmers use them too. A good example is the
&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;peps.python.org&#x2F;pep-0020&#x2F;&quot;&gt;Zen of Python&lt;&#x2F;a&gt;, which includes aphorisms like:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Simple is better than complex.&lt;&#x2F;li&gt;
&lt;li&gt;There should be one — and preferably only one — obvious way to do it.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;What is meant by “simple” and “complex”? In what sense is one “better”?&lt;&#x2F;p&gt;
&lt;p&gt;As a language, Python often has multiple ways to achieve the same thing — in
such cases, which one is “obvious”?&lt;&#x2F;p&gt;
&lt;p&gt;Nonetheless, these aphorisms strike many Python developers as reasonable and
they are best understood as general principles that warrant reflection.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Aphorisms provoke debate; they don’t promote dogma.
Though they’re short, aphorisms spur considered reflection, not Pavlovian partisanship &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#5&quot;&gt;5&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;ambiguity-and-mental-processing&quot;&gt;Ambiguity and mental processing&lt;a class=&quot;zola-anchor&quot; href=&quot;#ambiguity-and-mental-processing&quot; aria-label=&quot;Anchor link for: ambiguity-and-mental-processing&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Ambiguity is a feature of many creative works, which attract varying interpretations.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Tell all the truth but tell it slant&lt;&#x2F;p&gt;
&lt;p&gt;— Emily Dickinson&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;The book &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Seven_Types_of_Ambiguity&quot;&gt;Seven Types of Ambiguity&lt;&#x2F;a&gt; suggests some forms of ambiguity in literary works that reflect the mindset of the author.&lt;&#x2F;p&gt;
&lt;p&gt;Types 4 to 7 are when:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Alternative meanings combine to make clear a complicated state of mind in the author.&lt;&#x2F;li&gt;
&lt;li&gt;A fortunate confusion arises, as when the author is discovering an idea in the act of writing.&lt;&#x2F;li&gt;
&lt;li&gt;What is said is contradictory or irrelevant and the reader is forced to invent interpretations.&lt;&#x2F;li&gt;
&lt;li&gt;Full contradiction occurs, marking a division in the author’s mind.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Interpreting art can then yield psychological and biographical insights about the author.&lt;&#x2F;p&gt;
&lt;p&gt;When collaborating on a writing project, these ambiguities can make the writing
difficult to read, making us question whether one or both of us misunderstand
the ideas.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;references&quot;&gt;References&lt;a class=&quot;zola-anchor&quot; href=&quot;#references&quot; aria-label=&quot;Anchor link for: references&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;1&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;1&lt;&#x2F;sup&gt;
&lt;p&gt;Garcia, A., &amp;amp; Medinilla, N. (2007). The ambiguity criterion in software design.
Retrieved from author’s &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.researchgate.net&#x2F;publication&#x2F;228853962_The_ambiguity_criterion_in_software_desige&quot;&gt;ResearchGate&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;2&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;2&lt;&#x2F;sup&gt;
&lt;p&gt;Suchman, L. A. (2007). &lt;em&gt;Human-Machine Reconfigurations&lt;&#x2F;em&gt;. New York: Cambridge. pp. 9.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;3&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;3&lt;&#x2F;sup&gt;
&lt;p&gt;Gillon, B. S. (1990). Ambiguity, generality, and indeterminacy: tests and definitions. &lt;em&gt;Synthese&lt;&#x2F;em&gt;, 85: 391-416&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;4&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;4&lt;&#x2F;sup&gt;
&lt;p&gt;“A man is wise only on condition of living in a world full of fools.”&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;5&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;5&lt;&#x2F;sup&gt;
&lt;p&gt;Geary, J. (2025). Aphoristic intelligence beats artificial intelligence. &lt;em&gt;The Atlantic&lt;&#x2F;em&gt;. Source: &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.theatlantic.com&#x2F;ideas&#x2F;2025&#x2F;12&#x2F;aphorisms-artificial-intelligence&#x2F;685406&#x2F;&quot;&gt;Article&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
</content>
	</entry>
	<entry xml:lang="en">
		<title>Aspirational procedures</title>
		<published>2025-11-16T00:00:00+00:00</published>
		<updated>2025-11-16T00:00:00+00:00</updated>
		<link href="https://edibotopic.com/blog/aspirational-procedures/" type="text/html"/>
		<id>https://edibotopic.com/blog/aspirational-procedures/</id>
		<content type="html">&lt;p&gt;In technical writing, the assumption is typically that a user reads a guide when trying to solve a problem.&lt;&#x2F;p&gt;
&lt;p&gt;While this is certainly an important case for a writer to accommodate, it is
surely not the only way a reader experiences a guide.&lt;&#x2F;p&gt;
&lt;p&gt;I often read guides passively, without actively executing the instructions.
Instead, I’m determining whether it’s worthwhile to take the steps described, or I’m imagining the satisfaction of completing the entire sequence.&lt;&#x2F;p&gt;
&lt;p&gt;They are like aspirational procedures: things that I might like to do if they
seem doable and worth doing.&lt;&#x2F;p&gt;
&lt;p&gt;This could be because:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;I’m not at a computer, so I can’t use the software&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;I want to assess how a task is done in the software without installing it&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;I’m comparing the guide to others to learn about different ways to solve
a problem&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;In any of these cases, an excellent guide is not merely accurate and functional, but also compelling: the guide makes me want to try the software. The software can’t
fulfill this role, because it can’t anticipate itself.&lt;&#x2F;p&gt;
&lt;p&gt;A guide may exhibit the simplicity, beauty, or power of a sequence of actions so well, that I later install and start using the software without ever actively following the guide, and yet the guide has still been successful.&lt;&#x2F;p&gt;
</content>
	</entry>
	<entry xml:lang="en">
		<title>Stokes&#x27; Law</title>
		<published>2025-09-21T00:00:00+00:00</published>
		<updated>2025-09-21T00:00:00+00:00</updated>
		<link href="https://edibotopic.com/blog/stokes-law/" type="text/html"/>
		<id>https://edibotopic.com/blog/stokes-law/</id>
		<content type="html">&lt;p&gt;Stokes’ Law describes the sedimentation of particles in suspensions (fruit pulp
in orange juice). It is also used to model the flotation of droplets in
emulsions (creaming of milk fat).&lt;&#x2F;p&gt;
&lt;h2 id=&quot;equation&quot;&gt;Equation&lt;a class=&quot;zola-anchor&quot; href=&quot;#equation&quot; aria-label=&quot;Anchor link for: equation&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;The equation below describes the separation velocity ($v$) of particles with
diameter $D$ in a solvent with viscosity $\mu$ when subject to acceleration due
to gravity $g$. The $\Delta \rho$ means the difference ($\Delta$) between the
density ($\rho$) of the particle and the solvent.&lt;&#x2F;p&gt;
&lt;p&gt;$$v = \frac{D^2 \cdot(\Delta \rho) \cdot g }{18 \cdot \mu}$$&lt;&#x2F;p&gt;
&lt;h2 id=&quot;measurement-of-viscosity&quot;&gt;Measurement of viscosity&lt;a class=&quot;zola-anchor&quot; href=&quot;#measurement-of-viscosity&quot; aria-label=&quot;Anchor link for: measurement-of-viscosity&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;The equation can be rearranged to solve for the viscosity of the solvent:&lt;&#x2F;p&gt;
&lt;p&gt;$$\mu = \frac{D^2 \cdot (\rho_{ball} - \rho_{liquid}) \cdot g }{18 \cdot v}$$&lt;&#x2F;p&gt;
&lt;p&gt;With a ball of known physical dimensions and a liquid of known density, the viscosity can be calculated based on
measurement of the ball’s velocity with a stopwatch and ruler.&lt;&#x2F;p&gt;
&lt;p&gt;This is known as the “falling ball” method.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;practical-uses&quot;&gt;Practical uses&lt;a class=&quot;zola-anchor&quot; href=&quot;#practical-uses&quot; aria-label=&quot;Anchor link for: practical-uses&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;The equation can be used to identify the key parameters that influence how a
group of particles fall or rise due to gravity. This is useful for developing
strategies to make the separation of a material from a liquid happen more
quickly or slowly.&lt;&#x2F;p&gt;
&lt;p&gt;In manufacturing, some processes are designed to either promote &lt;em&gt;or&lt;&#x2F;em&gt;
prevent the physical separation of particles from liquids, for example:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Homogenisation: reduces the size of particles to slow the rate of their sedimentation, thereby increasing the stability of a commercial beverage&lt;&#x2F;li&gt;
&lt;li&gt;Flocculation: aggregates particles together to increase their sedimentation rate, enabling the removal of impurities from water&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;simulation&quot;&gt;Simulation&lt;a class=&quot;zola-anchor&quot; href=&quot;#simulation&quot; aria-label=&quot;Anchor link for: simulation&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;I developed a &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;edibotopic.github.io&#x2F;stokes-law&#x2F;&quot;&gt;simulation&lt;&#x2F;a&gt; in
JavaScript for teaching Stokes’ law.&lt;&#x2F;p&gt;
&lt;p&gt;In the simulation, you can use sliders to visualise the effect of adjusting the
following parameters:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Average particle size&lt;&#x2F;li&gt;
&lt;li&gt;Solvent viscosity&lt;&#x2F;li&gt;
&lt;li&gt;Density difference&lt;&#x2F;li&gt;
&lt;li&gt;Centrifugal force&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;I published a &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;pubs.acs.org&#x2F;doi&#x2F;10.1021&#x2F;acs.jchemed.2c01201&quot;&gt;paper&lt;&#x2F;a&gt; on
the simulation in &lt;em&gt;The Journal of Chemical Education&lt;&#x2F;em&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;The paper is free to read and includes tips on using the simulation in the
classroom and steps to embed it in your LMS.&lt;&#x2F;p&gt;
</content>
	</entry>
	<entry xml:lang="en">
		<title>Systemism</title>
		<published>2025-09-13T00:00:00+00:00</published>
		<updated>2025-09-13T00:00:00+00:00</updated>
		<link href="https://edibotopic.com/blog/systemism/" type="text/html"/>
		<id>https://edibotopic.com/blog/systemism/</id>
		<content type="html">&lt;p&gt;We can experience a system as a whole or analyse it into its constituent parts.
The worldview that privileges the first is called “holism”, the second “reductionism”. In everyday ife, holism typically has a positive
connotation, while reductionism is viewed negatively.&lt;&#x2F;p&gt;
&lt;p&gt;Domains that are interpreted as emphasising analysis, most notably science, are
called “reductionist” when their method is taken to filter out important
aspects of the world. In recent years, a critique of food and nutritional
scientists, which argued that they were guilty of “nutritional reductionism”,
gained significant traction. The critics instead advocating for holism, often advancing an explicit skepticism of analysis.&lt;&#x2F;p&gt;
&lt;p&gt;If the scientist is the archetypal reductionist, the archetypal holist might be the artist, who experiences the world as it is given and integrates multiple
aspects of that experience into their art.&lt;&#x2F;p&gt;
&lt;p&gt;The dichotomy between holism and reductionism is usually false. A scientist who
appreciates the holistic beauty of plants is more likely to become interested
in their analysis. An artist who is aware of the geometrical patterns in the
parts of nature can incorporate them into their artistic vision. While there are
scientific disciplines that focus on parts (molecular biology), there are also
those focused on wholes (synthetic biology), and many scientists that oscillate between these frames.&lt;&#x2F;p&gt;
&lt;p&gt;There is a verticality in how we contrast holism and reductionism. We imagine
experiencing the whole at a “high level” and the parts at a “low level”. At the
higher level, we can “take everything in” but at the low level we “miss the big
picture”. Even stronger, some argue that analysis risks actively &lt;em&gt;destroying&lt;&#x2F;em&gt; the
whole, with our immediate experience being somehow displaced by a symbolic language of
atoms, bits, molecules, and nutrients.&lt;&#x2F;p&gt;
&lt;p&gt;Reductionism can instead be thought of as a narrowing of perspective. In that
sense, holism itself is a kind of reductionism, as it narrows our perspective
to the whole, a particular level of analysis. Just as we can be “nutritional
reductionists” (reducing food to nutrients), we can also be “sensory
reductionists” (reducing food to sense experience) or “cultural reductionists”
(reducing food to its socio-cultural role). Each of these is a legitimate way
to analyse food but none of them provides a totalising account.&lt;&#x2F;p&gt;
&lt;p&gt;To be more clear, we can think of two general kinds of reduction, each amounting
to a narrowing of perspective:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Macro-reduction&lt;&#x2F;strong&gt;: narrowing from parts to wholes (holism)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Micro-reduction&lt;&#x2F;strong&gt;: narrowing from wholes to parts (reductionism)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Science often begins with the experience of an interesting phenomenon. A
scientist then attempts to study its underlying causes. When the analysis is
complete, they build a model that connects the causes to the experience. The
investigation not only includes considerations of parts and wholes, but also
attempts to integrate them together in the form of an explanation.&lt;&#x2F;p&gt;
&lt;p&gt;An engineer who develops software moves between writing the code and debugging
the program. They experience a problem with the user interface and then must
analyse the causes of that problem. The development process is a continuous
loop between the parts that make up the program and that whole experience that
the user encounters.&lt;&#x2F;p&gt;
&lt;p&gt;The Argentinian philosopher Mario Bunge used the term “systemism” to refer to
an epistemology of systematic explanations that bridges holism and
reductionism. Bunge was skeptical of both holism and reductionism when used in
isolation: reductionists are at risk of fragmenting knowledge, while holists are prone to superficiality.&lt;&#x2F;p&gt;
&lt;p&gt;Imagine that you have made a &lt;em&gt;causal&lt;&#x2F;em&gt; observation of some kind. This could be that:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Clicking the button made the software crash&lt;&#x2F;li&gt;
&lt;li&gt;Mixing the chemicals made the solution blue&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;This is the &lt;code&gt;macro&lt;&#x2F;code&gt; level. It is at the top of this diagram and is signified by
$A_0 \to B_0$:&lt;&#x2F;p&gt;
&lt;p&gt;$$
\displaystyle
{\displaystyle {\text{A}_0 \atop \downarrow} \atop \text{A}_1}
{\displaystyle {\to \atop \phantom{x}} \atop \to}
{\displaystyle {\text{B}_0 \atop \uparrow} \atop \text{B}_1}
$$&lt;&#x2F;p&gt;
&lt;p&gt;At the bottom there is another causal relation $A_1 \to B_1$ occupying the
&lt;code&gt;micro&lt;&#x2F;code&gt; level. The micro is less salient or immediate, and may
require deep reasoning or the use of instruments:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;How is the button implemented and does it produce the bug?&lt;&#x2F;li&gt;
&lt;li&gt;Which type of chemicals were added and what reaction was generated?&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Moving between the two levels — micro and macro — during active discovery is characteristic by:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Analysis&lt;&#x2F;strong&gt;: determining the micro-level causes responsible for macro-level
effects&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Synthesis&lt;&#x2F;strong&gt;: observing macro-level effects through manipulation of
micro-level components&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;After restricting ourselves to a single level of analysis in our methodology,
we risk forming a view of reality that is artificially constrained:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Micro-reduction&lt;&#x2F;strong&gt;: “there is no society, only individuals”&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Macro-reduction&lt;&#x2F;strong&gt;: “there are no individuals, only groups”&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;While the former is commonly referred to as “reductionism”, in
contra-distinction to the “holism” of the latter, both are related as
being &lt;em&gt;kinds of reduction&lt;&#x2F;em&gt;, requiring a narrowing of perspective and a
denial of systematic relations.&lt;&#x2F;p&gt;
&lt;p&gt;The “macro” does not always refer to a definite level or scale in a physical
sense. It depends on the context of an investigation. The elevated position of
the macro in the diagram should also not be understood as establishing its
priority, just as the lower position of the micro does not always prioritise it
as foundational.&lt;&#x2F;p&gt;
&lt;p&gt;The specific domain of inquiry determines the level of analysis, and the
analysis is not restricted to only two levels:&lt;&#x2F;p&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Domain&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: center&quot;&gt;Micro&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: center&quot;&gt;$\leftarrow$ Macro | Micro $\rightarrow$&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: center&quot;&gt;Macro&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Economics&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;Individuals&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;Groups&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;Societies&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Technology&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;Components&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;Sub-assemblies&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;Interfaces&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Software&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;Low-level code&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;High-level code&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;User interfaces&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;p&gt;When there is an explanatory gap between two or more levels, the ontological
concept of “emergence” is invoked. Here, there are a set of coincident events
but no established relation between them. Crucially, this does not mean that
the relation will never be known, only that it remains to be discovered; for
example, the “mystery” behind the emergence of a blue colour in a mixture is displaced by a
mechanistic explanation when we establish the underlying chemistry.&lt;&#x2F;p&gt;
&lt;p&gt;In summary, we often have questions of the form “what $x_1$ is the cause of $x_0$?”:&lt;&#x2F;p&gt;
&lt;p&gt;$$x_1? \to x_0$$&lt;&#x2F;p&gt;
&lt;p&gt;The $x_0$ could be a scientific observation, a software bug, or an everyday experience. The study or engineering of the relevant system often requires
moving between stages of analysis and synthesis. From such a process, we develop
deep explanations.&lt;&#x2F;p&gt;
&lt;p&gt;In &lt;strong&gt;analysis&lt;&#x2F;strong&gt;, we do a top-down study of the micro-level causes. To explain
why &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.sciencedirect.com&#x2F;science&#x2F;article&#x2F;abs&#x2F;pii&#x2F;S0963996915300958&quot;&gt;salt
morphology&lt;&#x2F;a&gt;
affects the intensity of saltiness, we can measure the dissolution of different
NaCl crystals in artificial saliva.&lt;&#x2F;p&gt;
&lt;p&gt;In &lt;strong&gt;synthesis&lt;&#x2F;strong&gt;, we do a bottom-up evaluation of the macro-level effects. To
explore the relationship between dissolution rate and saltiness, we take salts
with known dissolution rates and get people to evaluate their saltiness.&lt;&#x2F;p&gt;
&lt;p&gt;We form a complete picture, in which the shapes of salt crystals influence
their dissolution rate, affecting the dissociation of salt into $Na^+$ and
$Cl^-$ ions, which interact with taste receptors on the tongue and initiate the
firing of signals to the brain that result in the perception of different
intensitities of saltiness:&lt;&#x2F;p&gt;
&lt;p&gt;$$
{\displaystyle {\text{salt} \atop \downarrow} \atop \text{Na}^+}
{\displaystyle {\to \atop \phantom{x}} \atop \to}
{\displaystyle {\text{taste} \atop \uparrow} \atop \text{signal}}
$$&lt;&#x2F;p&gt;
&lt;p&gt;The invention of technology helps
people make progress. Such progress is scaled to a societal level when an
invention has a concrete implementation as a product. This exposes it to the
market, which initiates mechanisms of feedback that improve the implementation.
Accelerating progress is not only about incentivising entrepreneurship; it’s
also about creating the preconditions for invention and establishing reliable
mechanisms of feedback.&lt;&#x2F;p&gt;
&lt;p&gt;$$
{\displaystyle {\text{Product} \atop \uparrow} \atop \text{Invent}}
{\displaystyle {\to \atop \phantom{x}} \atop \to}
{\displaystyle {\text{Market} \atop \downarrow} \atop \text{Progress}}
$$&lt;&#x2F;p&gt;
&lt;p&gt;The appearance of “emergent” properties may highlight an inappropriate conceptual
or methodological framing. For example, water can be interpreted on a strictly
molecular basis as being composed of two kinds of elements existing in a
certain relative proportion and structured by particular forces. This is the
&lt;code&gt;micro&lt;&#x2F;code&gt; level. Yet, at the macro level, water has properties like viscosity and
turbulence, which are difficult to predict based on strict appeals to molecular
chemistry. For this reason, scientific fields like rheology are oriented
towards developing specific methodologies appropriate to a relatively &lt;code&gt;macro&lt;&#x2F;code&gt;
level.&lt;&#x2F;p&gt;
&lt;p&gt;$$
\displaystyle
\overbrace{
{\displaystyle {A_0 \atop \downarrow} \atop A_1}
{\displaystyle {\to \atop \phantom{x}} \atop \to}
{\displaystyle {B_0 \atop \uparrow} \atop B_1}
}^{\text{analysis}}
\iff
\overbrace{
{\displaystyle {A_0 \atop \uparrow} \atop A_1}
{\displaystyle {\to \atop \phantom{x}} \atop \to}
{\displaystyle {B_0 \atop \downarrow} \atop B_1}
}^{\text{synthesis}}
$$&lt;&#x2F;p&gt;
&lt;p&gt;The utility of having a deep explanation of a phenomenon is not always clear.
When first learning chemistry or programming, we might not recognise the value
of a systematic explanation of some everyday occurence. What power does it give
us?&lt;&#x2F;p&gt;
&lt;p&gt;Consider the case of &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;link.springer.com&#x2F;article&#x2F;10.1007&#x2F;s00216-017-0691-1&quot;&gt;pink
tea&lt;&#x2F;a&gt;. With some
varieties of green tea, it is possible to create a bright pink colour if it is
brewed with baking soda and milk. Recipes typically report that baking soda is
needed to generate the colour, without specifying &lt;em&gt;why&lt;&#x2F;em&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;At the &lt;em&gt;micro&lt;&#x2F;em&gt; level, baking soda is just an alkalising agent. It elevates pH
resulting in chemical reactions (rxns) involving tea polyphenols that cause a change
in colour. When milk is heated, there is also a chemical reaction between its
sugars and proteins, which contribute a browning effect that is accelerated
in alkaline conditions.&lt;&#x2F;p&gt;
&lt;p&gt;$$
{\displaystyle { \text{NaHCO}_3 \atop \downarrow } \atop \text{OH}^-}
{\displaystyle { \to \atop \phantom{x} } \atop \to}
{\displaystyle { \text{pink} \atop \uparrow } \atop \text{rxns}}
$$&lt;&#x2F;p&gt;
&lt;p&gt;The original macro observation is still valid and may be perfectly sufficient
if we only want to make pink tea for friends. Once we have a micro explanation,
we do not discard the macro one. Both levels can function together in an
explanatory &lt;em&gt;system&lt;&#x2F;em&gt;. In addition, the explanation gives us more power to act.&lt;&#x2F;p&gt;
&lt;p&gt;For example, someone may want to drink pink tea but is concerned about their
sodium intake. We have learned that the recipe does not require baking soda,
however, only something from the &lt;em&gt;general class&lt;&#x2F;em&gt; of alkalising agents. To
increase pH we need something that releases $OH^-$ ions. It is therefore
possible to substitute baking soda for a sodium-free alternative as long as it
releases $OH^-$, with potassium hydroxide ($KOH$) being an obvious candidate.&lt;&#x2F;p&gt;
&lt;p&gt;Imagine that a significant market for pink tea has emerged and there is a
demand to manufacture it at industrial scale. The problem is that there is
significant inter-batch variation in colour and an immediate need to better
control the process. We have learned that a change in pH is critical for
determining the final colour of the tea. Installing a pH measuring device to
ensure that the correct pH is consistently reached would seem prudent.&lt;&#x2F;p&gt;
&lt;p&gt;Finally, changes in colour induced by chemical reactions involving polyphenols,
sugars and proteins are unlikely to be restricted to the peculiar case of pink
tea. Knowledge of the link between chemical reactions and colour changes can be
generalised to many other systems. For example, the
(&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Maillard_reaction&quot;&gt;Maillard&lt;&#x2F;a&gt;) browning effect
mentioned earlier can be used to explain everything from the deliciousness of
toast to the &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;link.springer.com&#x2F;chapter&#x2F;10.1007&#x2F;978-1-4757-9113-6_22&quot;&gt;reduced nutritional quality of some
foods&lt;&#x2F;a&gt; during
processing and storage.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;Bunge, M. (2014&#x2F;2003). &lt;em&gt;Emergence and Convergence: Qualitative
Novelty and the Unity of Knowledge&lt;&#x2F;em&gt;. Toronto: University of
Toronto Press.&lt;&#x2F;p&gt;
&lt;p&gt;Bunge, M. (1979). &lt;em&gt;Treatise on Basic Philosophy Volume 4, Ontology
II: A World of Systems&lt;&#x2F;em&gt;. Dordrecht: D. Reidel publishing
Company.&lt;&#x2F;p&gt;
</content>
	</entry>
	<entry xml:lang="en">
		<title>Survey of definitions</title>
		<published>2025-04-27T00:00:00+00:00</published>
		<updated>2025-04-27T00:00:00+00:00</updated>
		<link href="https://edibotopic.com/blog/survey-of-definitions/" type="text/html"/>
		<id>https://edibotopic.com/blog/survey-of-definitions/</id>
		<content type="html">&lt;p&gt;We often have a fear of &lt;em&gt;fixing&lt;&#x2F;em&gt; the meaning of an idea,
thinking that while our idea remains unfixed, it has maximum
potential and scope.&lt;&#x2F;p&gt;
&lt;p&gt;Everyone then has the problem of interpreting our idea. When trying to
build things together, such ambiguity can be a significant impediment to
progress.&lt;&#x2F;p&gt;
&lt;p&gt;This problem often manifests as a discomfort with definitions.
The worry is that a definition may fix an idea in the wrong
state, or deprive us of access to many (implicit) definitions at
once.&lt;&#x2F;p&gt;
&lt;p&gt;But, at a point in time, it’s better to know what we’re talking about than to
not know, and definitions can help in this regard.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;pointing&quot;&gt;Pointing&lt;a class=&quot;zola-anchor&quot; href=&quot;#pointing&quot; aria-label=&quot;Anchor link for: pointing&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;When I worked on construction sites with my brother — a painter — he would say
things like:&lt;&#x2F;p&gt;
&lt;p&gt;“Sand the &lt;em&gt;architrave&lt;&#x2F;em&gt; &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#1&quot;&gt;1&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;.”&lt;&#x2F;p&gt;
&lt;p&gt;“Paint the &lt;em&gt;plinth&lt;&#x2F;em&gt; &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#2&quot;&gt;2&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;.”&lt;&#x2F;p&gt;
&lt;p&gt;I didn’t know what he was talking about, until he would just &lt;strong&gt;point&lt;&#x2F;strong&gt;
at the thing and say: “That.”. He had connected the term and the
concept, and this was sufficient for me to get the work done.&lt;&#x2F;p&gt;
&lt;p&gt;My brother had given an &lt;strong&gt;ostensive&lt;&#x2F;strong&gt; definition.&lt;&#x2F;p&gt;
&lt;p&gt;Not every thing is as easy to point at, like invisible atoms, abstract concepts
and future solutions. Even if we can point at something, we may not have
sufficient understanding to solve certain problems relating to that thing.&lt;&#x2F;p&gt;
&lt;p&gt;If I can sand an architrave it does not mean I can design an algorithm for
creating varied architrave designs. For that, I would need a more precise
formulation of the idea.&lt;&#x2F;p&gt;
&lt;p&gt;An ostensive definition can sometimes take the form of &lt;em&gt;exemplars&lt;&#x2F;em&gt;:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;My definition of “robust” is &lt;em&gt;that codebase&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;An exemplar suggests a profile
of attributes that we should value, which may be demonstrated implicitly by pointing.&lt;&#x2F;p&gt;
&lt;p&gt;We find it easier to reach a stable consensus on our exemplars if we have been explicit
about our notion of “goodness”, which takes us beyond mere pointing.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;dictioneering&quot;&gt;Dictioneering&lt;a class=&quot;zola-anchor&quot; href=&quot;#dictioneering&quot; aria-label=&quot;Anchor link for: dictioneering&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;The concept of a &lt;em&gt;definition&lt;&#x2F;em&gt; is usually associated with the &lt;strong&gt;lexical&lt;&#x2F;strong&gt; definition.
This is the kind of definition that we find in a dictionary.&lt;&#x2F;p&gt;
&lt;p&gt;When I taught science at university, I would sometimes ask students to define a
technical concept like “micelle”.&lt;&#x2F;p&gt;
&lt;p&gt;This would prompt a non-trivial number of students to report back a dictionary
definition, like this one from Merriam-Webster:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Unit of structure built up from polymeric molecules or ions, such as:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;an ordered region in a fiber (as of cellulose or rayon)&lt;&#x2F;li&gt;
&lt;li&gt;a molecular aggregate that constitutes a colloidal particle&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Of course, I was asking for something &lt;em&gt;more&lt;&#x2F;em&gt; than a dictionary definition.&lt;&#x2F;p&gt;
&lt;p&gt;Armed with a dictionary definition, someone has a basic idea of what is being
referred to when a term is used in a conventional way.&lt;&#x2F;p&gt;
&lt;p&gt;A university graduate or skilled professional usually has knowledge of a
particular subject far beyond the conventional meaning. The usage of an expert
or craftsperson may even deviate substantially from the everyday sense of a
term &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#3&quot;&gt;3&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;The best students defined the concept of a micelle in relation to the
coursework that was being examined. They needed to develop a definition that
was more precise to our shared context.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;precising&quot;&gt;Precising&lt;a class=&quot;zola-anchor&quot; href=&quot;#precising&quot; aria-label=&quot;Anchor link for: precising&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;When building something — like a new technology — we might ask for it to be
made more “simple”.&lt;&#x2F;p&gt;
&lt;p&gt;What does “simple” mean here? We could refer to the entries in
&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.merriam-webster.com&#x2F;dictionary&#x2F;simple&quot;&gt;Merriam-Webster&lt;&#x2F;a&gt; and they
wouldn’t help us very much.&lt;&#x2F;p&gt;
&lt;p&gt;We need a &lt;strong&gt;precising&lt;&#x2F;strong&gt; definition. This makes some general
definition more precise to our specific context. We might want a
&lt;em&gt;simple&lt;&#x2F;em&gt; technology to conform to some of the following
precising definitions:&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;A simple technology has the minimum necessary components, to improve our
capacity to maintain it&lt;&#x2F;li&gt;
&lt;li&gt;A simple technology hides the internal complexity of the system, to provide
an accessible user interface&lt;&#x2F;li&gt;
&lt;li&gt;(1) and (2): A simple technology has the minimum necessary components, to improve our capacity to maintain it and so it is accessible to the user&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;Many other definitions could be imagined and combined.&lt;&#x2F;p&gt;
&lt;p&gt;Precising definitions — and others: like stipulations — are
often &lt;em&gt;ameliorative&lt;&#x2F;em&gt;. They make an idea more suited to our purpose
or more useful to achieve some goal.&lt;&#x2F;p&gt;
&lt;p&gt;Forming a definition may therefore be a normative act, not
merely a descriptive one.&lt;&#x2F;p&gt;

&lt;blockquote class=&quot;callout note has-title&quot;&gt;
  
  
  &lt;p class=&quot;title&quot;&gt;
    &lt;span class=&quot;icon&quot;&gt;
      &lt;svg xmlns=&quot;http:&#x2F;&#x2F;www.w3.org&#x2F;2000&#x2F;svg&quot; viewBox=&quot;0 0 24 24&quot; width=&quot;20&quot; height=&quot;20&quot;&gt;&lt;path d=&quot;M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM11 7H13V9H11V7ZM11 11H13V17H11V11Z&quot; fill=&quot;currentColor&quot;&gt;&lt;&#x2F;path&gt;&lt;&#x2F;svg&gt;
    &lt;&#x2F;span&gt;
    &lt;strong&gt;Normativity&lt;&#x2F;strong&gt;
  &lt;&#x2F;p&gt;
  &lt;div class=&quot;content&quot;&gt;
    &lt;p&gt;An act is normative when it relates to values. For example, we might opt for
something more beautiful, moral or useful.&lt;&#x2F;p&gt;

  &lt;&#x2F;div&gt;
  
&lt;&#x2F;blockquote&gt;

&lt;p&gt;Milk can be defined conventionally as a &lt;em&gt;nutritious white liquid&lt;&#x2F;em&gt; or in the language of colloid science an &lt;em&gt;oil-in-water emulsion&lt;&#x2F;em&gt;. When a food scientist knows that milk can be precisely defined as an emulsion, they can apply general principles from colloid science to understand that system — this is valuable because the scientist values specific ends over others, like measurement, prediction and understanding.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;stipulating&quot;&gt;Stipulating&lt;a class=&quot;zola-anchor&quot; href=&quot;#stipulating&quot; aria-label=&quot;Anchor link for: stipulating&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;To overcome obstacles in our thinking we sometimes need a &lt;strong&gt;stipulative&lt;&#x2F;strong&gt; definition.&lt;&#x2F;p&gt;
&lt;p&gt;Conceptual obstacles can include:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Not knowing how or why to begin a project&lt;&#x2F;li&gt;
&lt;li&gt;Lacking a shared understanding of a system&lt;&#x2F;li&gt;
&lt;li&gt;A philosophical impasse about our goals&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;A stipulation can be provisional, and even false, yet still valuable. The value
of the stipulation is in the process that it initiates and its
foundational role in the building of a coherent conceptual model.&lt;&#x2F;p&gt;
&lt;p&gt;If someone confuses your stipulation for an absolute definition then the
exchange of ideas may prematurely collapse, so you need to communicate
your intention clearly.&lt;&#x2F;p&gt;
&lt;p&gt;Stipulating a flat world could be an interesting design prompt.
It should be minimally controversial as long as people know that
you are talking about — say — game development, rather than geophysics.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#8fbfdc;&quot;&gt;let &lt;&#x2F;span&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;world_is_flat &lt;&#x2F;span&gt;&lt;span&gt;= true &lt;&#x2F;span&gt;&lt;span style=&quot;color:#888888;&quot;&gt;&#x2F;&#x2F; this is fine
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fbfdc;&quot;&gt;let &lt;&#x2F;span&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;gravitational_acceleration_on_earth &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#cf6a4c;&quot;&gt;0 &lt;&#x2F;span&gt;&lt;span style=&quot;color:#888888;&quot;&gt;&#x2F;&#x2F; so is this
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;world_is_flat &lt;&#x2F;span&gt;&lt;span&gt;= false &lt;&#x2F;span&gt;&lt;span style=&quot;color:#888888;&quot;&gt;&#x2F;&#x2F; it&amp;#39;s OK to change your mind
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;A stipulation can be thought of as a &lt;em&gt;What if?&lt;&#x2F;em&gt; question:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;What if x? What follows when x? What can we build, given x?&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;operationalising&quot;&gt;Operationalising&lt;a class=&quot;zola-anchor&quot; href=&quot;#operationalising&quot; aria-label=&quot;Anchor link for: operationalising&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;When I planned scientific experiments with researchers, we would talk like this:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;For the sample vegan cheese replacers, “melted” was defined as
the state when the &lt;code&gt;G&quot;&lt;&#x2F;code&gt; value is observed to exceed the &lt;code&gt;G&#x27;&lt;&#x2F;code&gt; value
during oscillatory shear&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;This is an &lt;strong&gt;operational&lt;&#x2F;strong&gt; definition, which makes a concept easier
to measure and&#x2F;or quantify. In this case, it makes it easy for
those versed in rheology &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#4&quot;&gt;4&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;, who know that &lt;code&gt;G&quot;&lt;&#x2F;code&gt; and &lt;code&gt;G&#x27;&lt;&#x2F;code&gt; represent
liquid-like and solid-like behaviour, to quantify melting.&lt;&#x2F;p&gt;
&lt;p&gt;One of the most famous operational definitions is associated with Alan Turing, and can be stated as:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;A machine is intelligent if and only if a human evaluator cannot distinguish between the machine and its human interlocutor when reviewing a text transcript of their conversation&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Turing devised his theoretical test of machine intelligence
because he considered the contemporary philosophical debates on
the matter to be unproductive.&lt;&#x2F;p&gt;
&lt;p&gt;The Turing test has now been passed many times. This doesn’t
mean that machines have become intelligent, only that some meet
Turing’s operational definition of machine intelligence.&lt;&#x2F;p&gt;
&lt;p&gt;The value in any operational definition is that it helps us grasp clearly that
an idea can be tested, and that the justification for that test is sensible.&lt;&#x2F;p&gt;
&lt;p&gt;As we encounter such machine “intelligence”, and become aware of
its limitations, we should seek better operational definitions.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;Acknowledging that definitions are subject to revision or correction can
replace one fear in us with another. Instead of an anxiety of fixedness, there
is a nihilism of definition, in which we reject the possibility that anything
can ever truly be defined.&lt;&#x2F;p&gt;
&lt;p&gt;In either case, this will make us difficult collaborators, and we should become
more comforable with the range and limits of definitions.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;1&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;1&lt;&#x2F;sup&gt;
&lt;p&gt;Architrave is the decorative interior moulding that frames doorways.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;2&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;2&lt;&#x2F;sup&gt;
&lt;p&gt;Plinth is the lowest part of a column or wall, which may be decorated
differently to the rest.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;3&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;3&lt;&#x2F;sup&gt;
&lt;p&gt;An expert’s use of a term may become so specific or
granular that it warrants the use of a different term
entirely, as occurs in the process of what philosophers call
“explication”.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;4&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;4&lt;&#x2F;sup&gt;
&lt;p&gt;Rheology is the science of the flow and deformation of
matter. It can be used to understand and measure
properties like viscosity, hardness and melting.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
</content>
	</entry>
	<entry xml:lang="en">
		<title>Iconic programming</title>
		<published>2025-04-22T00:00:00+00:00</published>
		<updated>2025-04-22T00:00:00+00:00</updated>
		<link href="https://edibotopic.com/blog/iconic-programming/" type="text/html"/>
		<id>https://edibotopic.com/blog/iconic-programming/</id>
		<content type="html">&lt;p&gt;Iconic programming is the writing of programs that &lt;strong&gt;resemble&lt;&#x2F;strong&gt; what they do.
It can involve the prominent use of icons, which visually resemble ideas.&lt;&#x2F;p&gt;

&lt;blockquote class=&quot;callout note has-title&quot;&gt;
  
  
  &lt;p class=&quot;title&quot;&gt;
    &lt;span class=&quot;icon&quot;&gt;
      &lt;svg xmlns=&quot;http:&#x2F;&#x2F;www.w3.org&#x2F;2000&#x2F;svg&quot; viewBox=&quot;0 0 24 24&quot; width=&quot;20&quot; height=&quot;20&quot;&gt;&lt;path d=&quot;M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM11 7H13V9H11V7ZM11 11H13V17H11V11Z&quot; fill=&quot;currentColor&quot;&gt;&lt;&#x2F;path&gt;&lt;&#x2F;svg&gt;
    &lt;&#x2F;span&gt;
    &lt;strong&gt;Icons and symbols&lt;&#x2F;strong&gt;
  &lt;&#x2F;p&gt;
  &lt;div class=&quot;content&quot;&gt;
    &lt;p&gt;In &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Semiotics&quot;&gt;semiotics&lt;&#x2F;a&gt;, a distinction is made
between &lt;em&gt;icons&lt;&#x2F;em&gt; and &lt;em&gt;symbols&lt;&#x2F;em&gt;. Symbols signify what they reference through
convention, while icons signify through resemblance.&lt;&#x2F;p&gt;
&lt;p&gt;This distinction is associated with the American philosopher &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;plato.stanford.edu&#x2F;entries&#x2F;peirce&#x2F;&quot;&gt;Charles Sanders
Peirce&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;

  &lt;&#x2F;div&gt;
  
&lt;&#x2F;blockquote&gt;

&lt;h2 id=&quot;symbols-and-icons&quot;&gt;Symbols and icons&lt;a class=&quot;zola-anchor&quot; href=&quot;#symbols-and-icons&quot; aria-label=&quot;Anchor link for: symbols-and-icons&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Unlike
&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Semiotic_theory_of_Charles_Sanders_Peirce#II._Icon,_index,_symbol&quot;&gt;icons&lt;&#x2F;a&gt;,
symbols are abstract. They don’t necessarily resemble any concrete thing. Their
meaning emerges through convention, as in the everyday rules of a language.&lt;&#x2F;p&gt;
&lt;p&gt;There is nothing about the following set of &lt;em&gt;symbols&lt;&#x2F;em&gt; that immediately suggest
a circle. If we are familiar with some conventions in geometry, English and
JavaScript then we can nonetheless interpret that &lt;code&gt;drawBigCircle(3)&lt;&#x2F;code&gt; will draw
a circle of radius &lt;code&gt;9&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fbfdc;&quot;&gt;let &lt;&#x2F;span&gt;&lt;span style=&quot;color:#fad07a;&quot;&gt;drawBigCircle &lt;&#x2F;span&gt;&lt;span&gt;= (&lt;&#x2F;span&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;r&lt;&#x2F;span&gt;&lt;span&gt;) &lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fbfdc;&quot;&gt;=&amp;gt; &lt;&#x2F;span&gt;&lt;span&gt;{
&lt;&#x2F;span&gt;&lt;span&gt;   &lt;&#x2F;span&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;draw&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#fad07a;&quot;&gt;circle&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;r&lt;&#x2F;span&gt;&lt;span&gt;**&lt;&#x2F;span&gt;&lt;span style=&quot;color:#cf6a4c;&quot;&gt;2&lt;&#x2F;span&gt;&lt;span&gt;)
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;pointers-are-pointy&quot;&gt;Pointers are pointy&lt;a class=&quot;zola-anchor&quot; href=&quot;#pointers-are-pointy&quot; aria-label=&quot;Anchor link for: pointers-are-pointy&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;In a letter to his wife from 1870 &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#1&quot;&gt;1&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;, Charles Sanders Peirce used simple illustrations to
convey what he encountered in his European travels, including Mount Etna, the
craters of which are themselves small mountains.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;figs&#x2F;peirce-drawings.webp&quot; alt=&quot;Peirce’s letter with drawings of a mountain and a cactus&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;p&gt;The &lt;code&gt;^&lt;&#x2F;code&gt; in Peirce’s drawings is &lt;em&gt;iconic&lt;&#x2F;em&gt;. It resembles the wide base, steep
sides and narrow peak of a mountain.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;Icons can also bear a resemblance to a non-physical concept.&lt;&#x2F;p&gt;
&lt;p&gt;The Odin language uses &lt;code&gt;^&lt;&#x2F;code&gt; for its pointers:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;c&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-c &quot;&gt;&lt;code class=&quot;language-c&quot; data-lang=&quot;c&quot;&gt;&lt;span&gt;pointer_to_int: ^&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fbfdc;&quot;&gt;int
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;In C, &lt;code&gt;*&lt;&#x2F;code&gt; is instead used:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;c&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-c &quot;&gt;&lt;code class=&quot;language-c&quot; data-lang=&quot;c&quot;&gt;&lt;span style=&quot;color:#8fbfdc;&quot;&gt;int &lt;&#x2F;span&gt;&lt;span&gt;*&lt;&#x2F;span&gt;&lt;span style=&quot;color:#fad07a;&quot;&gt;pointer_to_int
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;The &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;odin-lang.org&#x2F;&quot;&gt;Odin&lt;&#x2F;a&gt; documentation states as justification:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Odin borrows the ^ syntax for pointers from the Pascal family, &lt;em&gt;because it is pointy&lt;&#x2F;em&gt; […]&lt;&#x2F;p&gt;
&lt;p&gt;— my italics&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;The syntax for pointer in Odin and Pascal &lt;strong&gt;resembles the concept of what a
pointer does&lt;&#x2F;strong&gt;: &lt;em&gt;it is pointy because it points&lt;&#x2F;em&gt; &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#2&quot;&gt;2&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Neither language is fully iconic, as they use combinations of both symbols and
icons. The mnemonic and expressive benefits of icons can be leveraged without a
wholesale adoption of an iconic language.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;sand-falls-down&quot;&gt;Sand falls down&lt;a class=&quot;zola-anchor&quot; href=&quot;#sand-falls-down&quot; aria-label=&quot;Anchor link for: sand-falls-down&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Icons can be used to write programs where the &lt;strong&gt;input resembles the output&lt;&#x2F;strong&gt;.
The following syntax is from &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;DaveAckley&#x2F;SPLAT&#x2F;&quot;&gt;SPLAT&lt;&#x2F;a&gt;:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;SPLAT&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-SPLAT &quot;&gt;&lt;code class=&quot;language-SPLAT&quot; data-lang=&quot;SPLAT&quot;&gt;&lt;span&gt;@ =&amp;gt; _
&lt;&#x2F;span&gt;&lt;span&gt;_    @
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;It is a rule: if a particle is above empty space it will fall into that space.
The &lt;code&gt;@&lt;&#x2F;code&gt; is a particle and the &lt;code&gt;_&lt;&#x2F;code&gt; is empty space.&lt;&#x2F;p&gt;
&lt;p&gt;In the more accessible &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;TodePond&#x2F;SpaceTode&quot;&gt;SpaceTode&lt;&#x2F;a&gt; — a
“spatial programming language” inspired by SPLAT — this rule yields a visual
output: particles that fall.&lt;&#x2F;p&gt;
&lt;p&gt;Taken together, the &lt;em&gt;set&lt;&#x2F;em&gt; of characters is itself iconic: &lt;strong&gt;the rule resembles
the causal event that it generates&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;The creators of SPLAT (&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.cs.unm.edu&#x2F;~ackley&#x2F;&quot;&gt;Dave Ackley&lt;&#x2F;a&gt;) and
SpaceTode (&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.todepond.com&#x2F;&quot;&gt;Lu Wilson&lt;&#x2F;a&gt;) rightly emphasise the
&lt;em&gt;spatial&lt;&#x2F;em&gt; aspect of their work, but I also think &lt;em&gt;resemblance&lt;&#x2F;em&gt; is a notable
characteristic.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;comments-illuminate&quot;&gt;Comments illuminate&lt;a class=&quot;zola-anchor&quot; href=&quot;#comments-illuminate&quot; aria-label=&quot;Anchor link for: comments-illuminate&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;In &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;APL_(programming_language)&quot;&gt;APL&lt;&#x2F;a&gt;, comments
are prefixed with the &lt;code&gt;⍝&lt;&#x2F;code&gt; or “lamp” symbol:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;apl&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-apl &quot;&gt;&lt;code class=&quot;language-apl&quot; data-lang=&quot;apl&quot;&gt;&lt;span&gt;⍝ this is a comment
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;The intention is that comments &lt;em&gt;illuminate&lt;&#x2F;em&gt; the code. Comments should resemble
a (metaphorical) illumination, rather than — for example — a mere recapitulation.
This icon is a reminder to the programmer, but not a guarantee of illumination.&lt;&#x2F;p&gt;
&lt;p&gt;Like Odin and Pascal, APL is not strictly iconic, as it contains a mixture of
icons and more abstract symbols, often borrowed from mathematics. If you find
APL code inscrutable, it’s probably not solely owing to its use of icons.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#151515;color:#e8e8d3;&quot;&gt;&lt;code&gt;&lt;span&gt;⍝ for illumination: https:&#x2F;&#x2F;xpqz.github.io&#x2F;learnapl&#x2F;aplway.html
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;⍉2∘⊥⍣¯1⍳2*3
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;not-just-boxes&quot;&gt;Not just boxes&lt;a class=&quot;zola-anchor&quot; href=&quot;#not-just-boxes&quot; aria-label=&quot;Anchor link for: not-just-boxes&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Visual programming is often contrasted with conventional, text-based
programming. Visual programs typically rely on graphical elements, like boxes, which can be dragged and connected. These interfaces can be
more convenient for specific users or for particular use-cases.&lt;&#x2F;p&gt;
&lt;p&gt;Icons &lt;em&gt;resemble what they represent&lt;&#x2F;em&gt;, while a box is symbolic — an abstraction.&lt;&#x2F;p&gt;
&lt;p&gt;Programming with icons does not require a graphical user interface.
I can type or write &lt;code&gt;^ ^ ^&lt;&#x2F;code&gt; to represent a mountain range without a GUI.&lt;&#x2F;p&gt;
&lt;p&gt;Here are some other icons with possible spatial interpretations that may be intuitive too you:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;^&lt;&#x2F;code&gt; pointer&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;!&lt;&#x2F;code&gt; filter&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;()&lt;&#x2F;code&gt; container&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;(())&lt;&#x2F;code&gt; nested container&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;o&lt;&#x2F;code&gt; loop&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;#&lt;&#x2F;code&gt; grid&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;&#x2F;&lt;&#x2F;code&gt; gradient&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;@&lt;&#x2F;code&gt; atom&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;%&lt;&#x2F;code&gt; boundary&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;The concept of “resemblance” is not necessarily spatial:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;The stimulatory effects of coffee resemble that of tea&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Conceptually, all games share a family resemblance with each other&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;why-icons&quot;&gt;Why icons?&lt;a class=&quot;zola-anchor&quot; href=&quot;#why-icons&quot; aria-label=&quot;Anchor link for: why-icons&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;I might like to program with icons because they have an immediate conceptual
similarity to what I am trying to make, and the immediate mechanical simplicity of that which can be typed.&lt;&#x2F;p&gt;
&lt;p&gt;This does not have to result in a needless multiplication of symbols, but there is a
non-trivial challenge in selecting a finite set of icons that can capture highly generalisable
ideas. For example, ideas like parthood, connection and enclosure are highly general, span numerous contexts and can be combined in many ways.&lt;&#x2F;p&gt;
&lt;p&gt;A language does not need to be fully iconic, but can leverage icons to make
abstract concepts more concrete. An excellent example here is the use of the
pointy &lt;code&gt;^&lt;&#x2F;code&gt; for pointers in Odin and Pascal.&lt;&#x2F;p&gt;

&lt;blockquote class=&quot;callout important has-title&quot;&gt;
  
  
  &lt;p class=&quot;title&quot;&gt;
    &lt;span class=&quot;icon&quot;&gt;
      &lt;svg xmlns=&quot;http:&#x2F;&#x2F;www.w3.org&#x2F;2000&#x2F;svg&quot; viewBox=&quot;0 0 24 24&quot; width=&quot;20&quot; height=&quot;20&quot;&gt;&lt;path d=&quot;M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM11 15H13V17H11V15ZM11 7H13V13H11V7Z&quot; fill=&quot;currentColor&quot;&gt;&lt;&#x2F;path&gt;&lt;&#x2F;svg&gt;
    &lt;&#x2F;span&gt;
    &lt;strong&gt;Pipes&lt;&#x2F;strong&gt;
  &lt;&#x2F;p&gt;
  &lt;div class=&quot;content&quot;&gt;
    &lt;p&gt;Just as pointers can be pointy, pipes can be…&lt;em&gt;pipey&lt;&#x2F;em&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;In Unix, the &lt;code&gt;|&lt;&#x2F;code&gt; or “pipe” is used to compose a pipeline of commands.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;cat&lt;&#x2F;span&gt;&lt;span&gt; log.txt | &lt;&#x2F;span&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;grep &lt;&#x2F;span&gt;&lt;span style=&quot;color:#556633;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#99ad6a;&quot;&gt;error&lt;&#x2F;span&gt;&lt;span style=&quot;color:#556633;&quot;&gt;&amp;quot; &lt;&#x2F;span&gt;&lt;span&gt;| &lt;&#x2F;span&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;sort &lt;&#x2F;span&gt;&lt;span&gt;| &lt;&#x2F;span&gt;&lt;span style=&quot;color:#ffb964;&quot;&gt;uniq
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;The &lt;code&gt;|&lt;&#x2F;code&gt; seems to resemble a pipe, although I could not find any
evidence of this being a reason for its original selection.&lt;&#x2F;p&gt;

  &lt;&#x2F;div&gt;
  
&lt;&#x2F;blockquote&gt;

&lt;hr &#x2F;&gt;
&lt;p&gt;There is something powerful about the idea of “resemblance”. How can programs
be made to look and feel more like what they do? What important non-visual
resemblances exist and how can they be represented?&lt;&#x2F;p&gt;
&lt;h2 id=&quot;references&quot;&gt;References&lt;a class=&quot;zola-anchor&quot; href=&quot;#references&quot; aria-label=&quot;Anchor link for: references&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;futureofcoding.org&#x2F;episodes&#x2F;072.html&quot;&gt;Future of Coding episode 72&lt;&#x2F;a&gt;:
podcast about Pygmalion, a prototype for a programming environment that uses
“icons”, although the original author does not use the term in the strict,
semiotic sense.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;ivanreese&#x2F;visual-programming-codex&quot;&gt;Ivan Reese’s visual programming
Codex&lt;&#x2F;a&gt;: organised
collection of visual programming tools, concepts and discussions.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;DaveAckley&#x2F;SPLAT&#x2F;&quot;&gt;Dave Ackley’s SPLAT&lt;&#x2F;a&gt;: &lt;strong&gt;S&lt;&#x2F;strong&gt;patial
&lt;strong&gt;P&lt;&#x2F;strong&gt;rogramming &lt;strong&gt;L&lt;&#x2F;strong&gt;anguage, &lt;strong&gt;A&lt;&#x2F;strong&gt;SCII &lt;strong&gt;T&lt;&#x2F;strong&gt;ext, which I think has some
iconic aspects.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;TodePond&#x2F;SpaceTode&quot;&gt;Lu Wilson’s SpaceTode&lt;&#x2F;a&gt;: a spatial
programming language, which I think has some iconic aspects.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;1&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;1&lt;&#x2F;sup&gt;
&lt;p&gt;Nubiola, J., &amp;amp; Barrena, S. (2012). Drawings, Diagrams and Reasonableness
in Charles S. Peirce’s Letters during his First Visit to Europe (1870-71).
In &lt;em&gt;Das bildnerische Denken: Charles S. Peirce&lt;&#x2F;em&gt;. Retrieved draft version from
https:&#x2F;&#x2F;www.unav.es&#x2F;gep&#x2F;Nubiola&amp;amp;BarrenaDrawings.pdf on Fri Apr 25, 2025&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;2&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;2&lt;&#x2F;sup&gt;
&lt;p&gt;The meaning of an icon depends on the context of its use. We can use &lt;code&gt;^&lt;&#x2F;code&gt; to
represent a pointer to a memory location or to represent a mountain.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
</content>
	</entry>
	<entry xml:lang="en">
		<title>Trying arroost</title>
		<published>2023-11-22T00:00:00+00:00</published>
		<updated>2025-08-25T00:00:00+00:00</updated>
		<link href="https://edibotopic.com/blog/trying-aroost/" type="text/html"/>
		<id>https://edibotopic.com/blog/trying-aroost/</id>
		<content type="html">&lt;p&gt;I’ve been playing around with an early version of Arroost, a node-based tool
for live sampling.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;new-ways-to-do-things&quot;&gt;New ways to do things&lt;a class=&quot;zola-anchor&quot; href=&quot;#new-ways-to-do-things&quot; aria-label=&quot;Anchor link for: new-ways-to-do-things&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;iframe width=&quot;100%&quot; height=&quot;315&quot;
    src=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;embed&#x2F;S3FayhhCjNo?si=BoWw9tHqKhInDquD&quot;
    title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer;
    autoplay; clipboard-write; encrypted-media; gyroscope;
    picture-in-picture; web-share&quot; allowfullscreen&gt;&lt;&#x2F;iframe&gt;
&lt;p&gt;Since the days of soundtracking my own university lectures during Covid lockdowns,
I have been quietly releasing music under the name “Curtsy Rehearsed”.&lt;&#x2F;p&gt;
&lt;p&gt;It was surprising to find that the music got the &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.echolive.ie&#x2F;entertainment&#x2F;whatson&#x2F;arid-40902209.html&quot;&gt;tiniest amount of local media
attention&lt;&#x2F;a&gt;
in Summer 2022.&lt;&#x2F;p&gt;
&lt;p&gt;That encouraged me to take the music more seriously, which also made it less
fun. I planned to sunset the Curtsy Rehearsed project, until I discovered Lu
Wilson’s &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;arroost.com&#x2F;&quot;&gt;Arroost&lt;&#x2F;a&gt;. Arroost unlocked music for me again
and I’ve never stopped making music since.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;dollops&quot;&gt;Dollops&lt;&#x2F;a&gt; (August 2025)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;formal-garden&quot;&gt;Formal Garden&lt;&#x2F;a&gt; (July 2025)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;cop-synths&quot;&gt;Cop Synths&lt;&#x2F;a&gt; (July 2025)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;tough-centras&quot;&gt;Tough Centras&lt;&#x2F;a&gt; (June 2025)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;leisure-sick&quot;&gt;Leisure Sick&lt;&#x2F;a&gt; (June 2025)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;calmlies&quot;&gt;Calmlies&lt;&#x2F;a&gt; (April 2025)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;laconics&quot;&gt;Laconics&lt;&#x2F;a&gt; (April 2025)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;mulcahy&quot;&gt;Mulcahy&lt;&#x2F;a&gt; (March 2025)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;newly-sincere&quot;&gt;Newly Sincere&lt;&#x2F;a&gt; (March 2024)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;kinds-of-summer&quot;&gt;Kinds of Summer&lt;&#x2F;a&gt; (August 2024)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;micro-noirs&quot;&gt;Micro Noirs&lt;&#x2F;a&gt; (October 2024)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;micro-saliences&quot;&gt;Micro Saliences&lt;&#x2F;a&gt; (October 2024)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;album&#x2F;insistence&quot;&gt;Insistence&lt;&#x2F;a&gt; (December 2024)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Arroost was a new way of making music for me.
The process became more light and joyful than what had become painstaking, hours-long
&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Digital_audio_workstation&quot;&gt;DAW&lt;&#x2F;a&gt; sessions.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;arrows-to-sounds&quot;&gt;Arrows to sounds&lt;a class=&quot;zola-anchor&quot; href=&quot;#arrows-to-sounds&quot; aria-label=&quot;Anchor link for: arrows-to-sounds&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Arroost consists of an infinite canvas on which nodes can be placed.
When a newly placed node is clicked it starts to record.
Make a sound then click the node again and the recording is complete.
That node will now play the recording each time it is triggered.&lt;&#x2F;p&gt;
&lt;p&gt;There are also special nodes for controlling the Canvas.
At time of writing, these &lt;em&gt;control nodes&lt;&#x2F;em&gt; (my term) include:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Add&lt;&#x2F;strong&gt;: adds a node to the canvas&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Connect&lt;&#x2F;strong&gt;: connects two nodes&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Remove&lt;&#x2F;strong&gt;: removes a node or connection&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Annotate&lt;&#x2F;strong&gt;: adds text next to a block&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Individual nodes can be connected through arrows.
Nodes can be arranged in sequences using these arrows to create patterns.
Given three nodes &lt;strong&gt;A&lt;&#x2F;strong&gt;, &lt;strong&gt;B&lt;&#x2F;strong&gt; and &lt;strong&gt;C&lt;&#x2F;strong&gt;, a loop can be created if there
are the arrows &lt;strong&gt;A → B&lt;&#x2F;strong&gt;, &lt;strong&gt;B → C&lt;&#x2F;strong&gt; and &lt;strong&gt;C → A&lt;&#x2F;strong&gt;.
Click a node in a loop and the loop will play continuously.&lt;&#x2F;p&gt;
&lt;p&gt;In the image below a loop can be seen connected by red arrows.
Currently the bottom node in the loop is being triggered.
This will be followed by the top-right node and so on.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;figs&#x2F;arroostUI.webp&quot; alt=&quot;Arroost interface&quot; title=&quot;UI of Arroost&quot; &#x2F;&gt; &lt;em&gt;User interface of Arroost showing control nodes (Add, Connect, Remove and Annotate) and example sound structures (single node, node sequence, node loop).&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;There are some other nuances in the design:
empty nodes can be used to create &lt;em&gt;rests&lt;&#x2F;em&gt; within sequences;
the start time of a recorded sample can be offset;
arrows can be coloured to control the flow of sounds.
Many of these features can be discovered naturally through play.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=cF2OF75ivZM&quot;&gt;Watch the creator of Arroost — Lu Wilson — demo the tool at a live
event in London (includes a brief snippet of my first Arroost recording!)&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;The core of Arroost involves connecting nodes.
This makes Arroost an easy and intuitive live-looper.
By &lt;em&gt;easy&lt;&#x2F;em&gt; I mean relative to using a DAW like Reaper:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;figs&#x2F;super8.webp&quot; alt=&quot;Reaper DAW with Super8 Looper&quot; title=&quot;UI of Reaper with Super8&quot; &#x2F;&gt; &lt;em&gt;User interface of Reaper DAW with four vocal tracks routed into an instance of its Super8 looper. This works great but it takes some setting up and the interface is busy.&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Despite its apparent simplicity, Arroost can be used to create
some complex sounds.
Only live vocal samples recorded into my microphone were used to
create the following video, in which you can see the nodes and
connections in action:&lt;&#x2F;p&gt;
&lt;iframe width=&quot;100%&quot; height=&quot;315&quot;
    src=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;embed&#x2F;g_tYFdUn3G4?si=t2v4UdP_IrFdtY9d&quot;
    title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer;
    autoplay; clipboard-write; encrypted-media; gyroscope;
    picture-in-picture; web-share&quot; allowfullscreen&gt;&lt;&#x2F;iframe&gt;
&lt;h2 id=&quot;becoming-unlocked&quot;&gt;Becoming unlocked&lt;a class=&quot;zola-anchor&quot; href=&quot;#becoming-unlocked&quot; aria-label=&quot;Anchor link for: becoming-unlocked&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Below is a short megamix “Leisure Sick” containing eight snippets of my Arroost
experiments.
I have high quality version of the full tracks as a private release on Bandcamp
and you can contact me at &lt;a href=&quot;mailto:edibotopic@gmail.com&quot;&gt;edibotopic@gmail.com&lt;&#x2F;a&gt;
if you want a download code.&lt;&#x2F;p&gt;
&lt;div style=&quot;text-align: center&quot;&gt;
    &lt;audio controls&gt;
      &lt;source src=&quot;&#x2F;audio&#x2F;arroost_megamix_192.ogg&quot; type=&quot;audio&#x2F;ogg&quot;&gt;
      &lt;source src=&quot;&#x2F;audio&#x2F;arroost_megamix_320.mp3&quot; type=&quot;audio&#x2F;mpeg&quot;&gt;
    Your browser does not support this audio.
    &lt;&#x2F;audio&gt;
&lt;&#x2F;div&gt;
&lt;p&gt;There are vocals strewn across all of my albums but usually
as minor details and often warped beyond recognition.
Arroost encouraged me to use more vocals through its&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Emphasis on live recording&lt;&#x2F;strong&gt;: it’s possible to do some
&lt;em&gt;pre-recorded sampling&lt;&#x2F;em&gt; with Arroost; for example, you can
change the audio input settings on your computer and
record a drumbreak on YouTube.
Arroost is configured, however, to use your default mic for &lt;em&gt;live
sampling&lt;&#x2F;em&gt;.
The most immediate recording option is to just sing, hum, chant, clap and bang.
I could record 5 seconds of sounds with 4 dodgy seconds and then
take the 1 second I liked for the rest of the song.
It’s amazing how far this approach can take you as the connections build up.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Limited control of mix quality&lt;&#x2F;strong&gt;: one of the factors that makes
recording vocals difficult is the need for noise-reduction.
Usually this requires recording some ambient noise and subtracting it
from the recording.
This needs continuous tweaking and can result in poor quality audio if
you’re not in a good recording environment (I rarely am).
With Arroost I couldn’t do noise reduction, so I stopped caring and
just focused on recording.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Coupling of audio and visuals&lt;&#x2F;strong&gt;: I normally make songs that are built
from hundreds of samples and recordings.
When people listen I sometimes get the impression that they
don’t know exactly &lt;em&gt;what I did&lt;&#x2F;em&gt; — it’s a black box.
Arroost generates a tightly-coupled combination of audio &lt;em&gt;and&lt;&#x2F;em&gt; visuals.
Even if sharing a finished set of nodes and connections, there is
an embedded performance.
I probably couldn’t sing at your wedding but I can put vocal snippets
together into an interesting structure — I think Arroost helps &lt;em&gt;show&lt;&#x2F;em&gt; this.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;share-scrappy-fiddles&quot;&gt;“Share scrappy fiddles”&lt;a class=&quot;zola-anchor&quot; href=&quot;#share-scrappy-fiddles&quot; aria-label=&quot;Anchor link for: share-scrappy-fiddles&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Encouraged by the developer &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.todepond.com&#x2F;&quot;&gt;Lu Wilson&lt;&#x2F;a&gt;’s call to&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Normalise sharing scrappy fiddles&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;I shared my Arroost creations on a (now defunct) Mastodon account as short videos.
All in all, I recorded about 60 minutes of music in three weeks.
I stopped when Arroost simply became too addictive!&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;Lu is continuing to work on Arroost.
From talking with them, the tool will likely evolve considerably.
While writing this post I set up some basic nodes and connections in
Arroost to grab a screenshot.
Soon after I realised that arrows could now be coloured and that
this affected the flow of sound!!!
This arrow-colouring novelty immediately made me want to stop writing
and start experimenting with Arroost again…&lt;&#x2F;p&gt;
&lt;p&gt;In its current state, Arroost is a great tool for rapidly iterating on song
ideas.
Although I didn’t use it when making the
newest Curtsy Rehearsed projects
I think Arroost got me back to a place where I &lt;em&gt;could&lt;&#x2F;em&gt; make something again.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;links&quot;&gt;Links&lt;a class=&quot;zola-anchor&quot; href=&quot;#links&quot; aria-label=&quot;Anchor link for: links&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;arroost.com&#x2F;&quot;&gt;Arroost&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.todepond.com&#x2F;report&#x2F;arroost&#x2F;&quot;&gt;Lu’s essay on Arroost&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;curtsyrehearsed.bandcamp.com&#x2F;&quot;&gt;My music on BandCamp&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
	</entry>
	<entry xml:lang="en">
		<title>Versioning for student work</title>
		<published>2023-07-15T00:00:00+00:00</published>
		<updated>2025-09-13T00:00:00+00:00</updated>
        <summary>&lt;p&gt;Version control is a powerful tool commonly used in large software
projects. It is valuable for other types of project too, including
academic writing.&lt;&#x2F;p&gt;</summary>
		<link href="https://edibotopic.com/blog/versioning-student-work/" type="text/html"/>
		<id>https://edibotopic.com/blog/versioning-student-work/</id>
		<content type="html">&lt;p&gt;Version control is a powerful tool commonly used in large software
projects. It is valuable for other types of project too, including
academic writing.&lt;&#x2F;p&gt;
&lt;span id=&quot;continue-reading&quot;&gt;&lt;&#x2F;span&gt;
&lt;p&gt;This blog is cited in a short guide on &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;www.ucc.ie&#x2F;en&#x2F;cirtl&#x2F;resources&#x2F;shortguides&#x2F;shortguide9assessmentintheageofai&#x2F;&quot;&gt;Assessment in the Age of
AI&lt;&#x2F;a&gt;
by University College Cork.&lt;&#x2F;p&gt;
&lt;p&gt;Probably more useful than the blog is this &lt;a href=&quot;&#x2F;docs&#x2F;VersioningHandout.pdf&quot; title=&quot;Click to download pdf&quot;&gt;handout&lt;&#x2F;a&gt; I provide to students and academics who are interested
in versioning but may not be familiar with the concept.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;motivation&quot;&gt;Motivation&lt;a class=&quot;zola-anchor&quot; href=&quot;#motivation&quot; aria-label=&quot;Anchor link for: motivation&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Students are asked to write because writing is considered useful.
Muddled thoughts can be clarified once an attempt is made to write
them down. Extracting key information on a topic and combining them
into an overview is often far more effective than merely reading about
the topic.&lt;&#x2F;p&gt;
&lt;p&gt;Although writing is a process, student work is often corrected as a
static artifact. The final version is assessed and deemed a reflection
of that underlying process. In an era of Large Language Models, there
is an increasing probability that this final version is the only
version and it was drafted by an undetectable AI.&lt;&#x2F;p&gt;
&lt;p&gt;Perhaps then the process of writing — the thing that we value — needs to be
re-emphasised. An analog solution is simply to require students to perform
their writing in-person. However, this is not always a fair, accessible or
practical approach. Serious essays, literature reviews and group projects often
involve many hours of work, dead-ends and revisions. It is not feasible to
translate this process to an in-person scenario, and it is also not aligned
with a workplace that is increasinly digitalised and dispersed.&lt;&#x2F;p&gt;
&lt;p&gt;To work effectively, student and teachers alike have to buy into the idea that
versioning helps them both. It helps students to structure their writing
process, protects them against lost work, and keeps track of their
collaborations. It helps teachers gain insights into the student’s writing
process and uncovers opportunities for feedback.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;background&quot;&gt;Background&lt;a class=&quot;zola-anchor&quot; href=&quot;#background&quot; aria-label=&quot;Anchor link for: background&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Working on any large project often demands working with versions. When
writing a paper, you typically have multiple drafts. It can be
useful to distinguish these with appropriate names. For example:
&lt;code&gt;myDraft1.docx&lt;&#x2F;code&gt;, &lt;code&gt;myDraft2.docx&lt;&#x2F;code&gt;, and so on. This is a simple form of
version control, although it gets messy. The first scientific paper that
I published had 13 drafts!&lt;&#x2F;p&gt;
&lt;p&gt;Another problem with this approach is that it becomes difficult to actually
compare across the versions. If draft 12 and 13 each have dozens of pages
and numerous changes, how can you actually find what you changed?&lt;&#x2F;p&gt;
&lt;p&gt;Version control systems — in simple terms — allow you to edit only a single
file while storing a history of its different versions, any of which can be
restored at a later time.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;getting-started-with-versioning&quot;&gt;Getting started with versioning&lt;a class=&quot;zola-anchor&quot; href=&quot;#getting-started-with-versioning&quot; aria-label=&quot;Anchor link for: getting-started-with-versioning&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Git is probably the most popular version control system among writers of
computer programs and technical documentation. Git is typically used in
conjunction with GitHub, a web-based platform for hosting versioned projects
and structuring collaboration. Git, however, has a steep learning curve.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;docs.google.com&#x2F;&quot;&gt;Google Docs&lt;&#x2F;a&gt; is one of the easiest ways to get
started with versioning. It may not be &lt;em&gt;the best&lt;&#x2F;em&gt; system — especially compared to
a dedicated tool like &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;git-scm.com&#x2F;&quot;&gt;Git&lt;&#x2F;a&gt; — but
it works and is easy-to-use.&lt;&#x2F;p&gt;
&lt;p&gt;Two immediate advantages of versioning student work are:&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Structure:&lt;&#x2F;strong&gt; the expectation that writing projects should have multiple,
dated versions can reduce the tendency to write (or copy) everything in one
big draft, encouraging instead a more deliberate approach to writing.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Transparency:&lt;&#x2F;strong&gt; the contributions of individual students to groupwork are
highlighted clearly, alerting the group and the teacher to any
disparaties in effort.&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;Versioning is not a general solution for plagiarism and AI usage, although it
can be considered a hurdle — to be combined with others — against
ineffective approaches to writing.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;use-versioning-as-a-student&quot;&gt;Use versioning as a student&lt;a class=&quot;zola-anchor&quot; href=&quot;#use-versioning-as-a-student&quot; aria-label=&quot;Anchor link for: use-versioning-as-a-student&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;Create a new Google Docs file and give it an appropriate name, such as
&lt;code&gt;AIandFoodPaper&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Decide what your first task will be; for example, it could be &lt;em&gt;write a
rough draft of the project structure&lt;&#x2F;em&gt;. When you have written this
draft, select:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;File &amp;gt; Version History &amp;gt; Name Current Version&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Give a &lt;strong&gt;descriptive name&lt;&#x2F;strong&gt; to the version &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#1&quot;&gt;1&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;. In this case, it
could be:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Drafted a project structure for AI and Food paper&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Your next version might be:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Drafted an introduction, focusing on AI in data analysis&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Each time you create a version, it is saved to the &lt;em&gt;version history&lt;&#x2F;em&gt;.
This can be viewed by you or anyone else with edit access:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;File &amp;gt; Version History &amp;gt; View Version History&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Versions are grouped by month and include details, such as the version
name, date&#x2F;time saved and version author. Contributions by different
authors to the same file will be highlighted in a unique colour &lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#2&quot;&gt;2&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;When you select a version, any edits (additions, deletions) are
displayed.&lt;&#x2F;p&gt;
&lt;p&gt;If a major error is introduced in a project, a previous version can be restored
at any time.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;examples-of-versioning&quot;&gt;Examples of versioning&lt;a class=&quot;zola-anchor&quot; href=&quot;#examples-of-versioning&quot; aria-label=&quot;Anchor link for: examples-of-versioning&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;Named versions should typically involve a substantial, self-contained
change.&lt;&#x2F;p&gt;
&lt;p&gt;Here are some &lt;strong&gt;good&lt;&#x2F;strong&gt; examples:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Drafted a structure for the project&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;diff&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-diff &quot;&gt;&lt;code class=&quot;language-diff&quot; data-lang=&quot;diff&quot;&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ Title: AI Technology in the food industry
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ 1. Introduction
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ 2. Data Analysis
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ 3. Product Design
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ 4. Computer Vision
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ 5. Conclusions
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;Clarified and developed statement regarding new AI technology&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;diff&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-diff &quot;&gt;&lt;code class=&quot;language-diff&quot; data-lang=&quot;diff&quot;&gt;&lt;span style=&quot;color:#a1000d;&quot;&gt;- AI technologies like ChatGPT display human-like intelligence
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a1000d;&quot;&gt;- and may allow the automation of tasks normally done by humans.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ AI technologies like ChatGPT are based on Large Language Models
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ (LLMs), which — although powerful — have limitations.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ Currently, for example, they have limited capacity
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ to problem-solve when presented with novel scenarios (TODO: add ref).
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;Added reference to support claim regarding AI limitations&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;diff&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-diff &quot;&gt;&lt;code class=&quot;language-diff&quot; data-lang=&quot;diff&quot;&gt;&lt;span style=&quot;color:#a1000d;&quot;&gt;- Currently, for example, they have limited capacity
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a1000d;&quot;&gt;- to problem-solve when presented with novel scenarios (TODO: add ref).
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ For example, Crowley (2042), compared humans with an AI in a
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ series of problem-solving activities and found that humans
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ out-performed the AI in 20% of the activities.
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Bad&lt;&#x2F;strong&gt; examples come in broadly two forms.&lt;&#x2F;p&gt;
&lt;p&gt;The first is a large set of trivial versions. For example, 10 different
versions that correct individual typos, which could have been grouped into one
version if handled together. Every change or new sentence does not necessarily
warrant its own version.&lt;&#x2F;p&gt;
&lt;p&gt;The previous example above could have been longer, while still being one
version:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;diff&quot; style=&quot;background-color:#151515;color:#e8e8d3;&quot; class=&quot;language-diff &quot;&gt;&lt;code class=&quot;language-diff&quot; data-lang=&quot;diff&quot;&gt;&lt;span style=&quot;color:#a1000d;&quot;&gt;- Currently, for example, they have limited capacity
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a1000d;&quot;&gt;- to problem-solve when presented with novel scenarios (TODO: add ref).
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ For example, Crowley (2042), compared humans with an AI in a
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ series of problem-solving activities and found that humans
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ out-performed the AI in 20% of the activities.
&lt;&#x2F;span&gt;&lt;mark style=&quot;background-color:#010101;&quot;&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ This suggests that there is still a role for
&lt;&#x2F;span&gt;&lt;&#x2F;mark&gt;&lt;mark style=&quot;background-color:#010101;&quot;&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ humans in the performance of these tasks.
&lt;&#x2F;span&gt;&lt;&#x2F;mark&gt;&lt;mark style=&quot;background-color:#010101;&quot;&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ However, there was one key limitation of Crowley&amp;#39;s work...
&lt;&#x2F;span&gt;&lt;&#x2F;mark&gt;&lt;mark style=&quot;background-color:#010101;&quot;&gt;&lt;span style=&quot;color:#558f1f;&quot;&gt;+ ...
&lt;&#x2F;span&gt;&lt;&#x2F;mark&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;The second &lt;strong&gt;bad&lt;&#x2F;strong&gt; example is a single version with a complex set of unrelated
changes. This might be a version that includes the deletion of one section, the
addition of two others, a change in the title, the addition of images, and a
restatement of the central thesis. These changes could probably have been
sub-divided and given their own versions.&lt;&#x2F;p&gt;
&lt;p&gt;Inevitably there are occasions where different types of change have been made,
which can be referred to in a single description:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Updated figure 3 and corrected typos in main text&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;p&gt;However, an effort should be made to avoid doing a substantial amount
of unstructured work across the entire paper that is then grouped into
one version. Each time you approach your project, you should be
thinking: “What specific task am I focusing on now”.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;use-versioning-as-a-teacher&quot;&gt;Use versioning as a teacher&lt;a class=&quot;zola-anchor&quot; href=&quot;#use-versioning-as-a-teacher&quot; aria-label=&quot;Anchor link for: use-versioning-as-a-teacher&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h2&gt;
&lt;p&gt;To make the version history accessible, students need to share the actual
Google Docs file.&lt;&#x2F;p&gt;
&lt;p&gt;If the file needs to be passed through a plagiarism-detector, they can also
download the file in an appropriate format suitable for upload.&lt;&#x2F;p&gt;
&lt;p&gt;To share the Docs file, select:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;File &amp;gt; Share &amp;gt; Share with Others&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;p&gt;To ensure there are no issues with file access, the &lt;em&gt;General Access&lt;&#x2F;em&gt;
setting in the popup dialog can be changed from “Restricted” to
“Anyone with a Link”. This is important primarily for cases where a
teacher does not have a Gmail account (rare).&lt;&#x2F;p&gt;
&lt;p&gt;When you receive this link, you should be able to access the version
history as described earlier.&lt;&#x2F;p&gt;
&lt;p&gt;If you also require students to upload the file to an LMS like Canvas
or Blackboard, they will first need to download the file in a
suitable format.&lt;&#x2F;p&gt;
&lt;p&gt;In &lt;code&gt;File &amp;gt; Download&lt;&#x2F;code&gt; both Word (.docx) and .pdf formats are available.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;reviewing-work&quot;&gt;Reviewing work&lt;a class=&quot;zola-anchor&quot; href=&quot;#reviewing-work&quot; aria-label=&quot;Anchor link for: reviewing-work&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;The version history is a supplement to the assessment process. A good
version history might be expected to demonstrate:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Consistent work on the project over time&lt;&#x2F;li&gt;
&lt;li&gt;Evidence of iteration and editing of own writing&lt;&#x2F;li&gt;
&lt;li&gt;Descriptive version names that identify major changes&lt;&#x2F;li&gt;
&lt;li&gt;Solutions to different writing problems (referencing, logic,
organisation, visualisations, editing)&lt;&#x2F;li&gt;
&lt;li&gt;Balance of workload across collaborators (group projects)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;If you are suspicious that a project has been plagiarised or
AI-generated, the version history is another tool for you to
evaluate the process behind the writing.&lt;&#x2F;p&gt;
&lt;p&gt;When feedback on writing is a part of your assessment process, the version
history provides a useful reference point for both student and teacher.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;Students might ask the question:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;How many versions will I need to get a good mark?&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Similar questions are often asked about &lt;em&gt;numbers of citations&lt;&#x2F;em&gt; and
&lt;em&gt;numbers of words&lt;&#x2F;em&gt; — they all usually miss the point.&lt;&#x2F;p&gt;
&lt;p&gt;Any significant writing project will consist of more than one version, usually
many more, but a precise number cannot be given. It is possible for there to be
100 versions that each only make trivial changes (typos, spelling) — the high
number does not necessarily reflect strong writing.&lt;&#x2F;p&gt;
&lt;p&gt;In comparison, 10 or 20 versions, which showcase a range of activities,
including additions, deletions, rewordings, citations and clarifications, might
be more compelling evidence of effort. If the students get the impression that
they are trying to hit a number, rather than approach their writing in a
structured manner, then the exercise is a waste of everyone’s time.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;1&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;1&lt;&#x2F;sup&gt;
&lt;p&gt;Google Docs limits users to &lt;em&gt;40 named versions&lt;&#x2F;em&gt;. They should be
used judiciously, especially on collaborative projects.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;2&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;2&lt;&#x2F;sup&gt;
&lt;p&gt;Office365’s browser-based Word has version history features
similar to Google Docs. At time-of-writing, however, Word does not
support &lt;em&gt;named versions&lt;&#x2F;em&gt;.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
</content>
	</entry>
</feed>