A.G.
A.G.
Nov 27, 2015 · 4 min read

I will follow the rules.
I will follow the rules.
I will follow the rules.
etc. etc.

Like most children at the time, when I was young and in school, I sometimes got in trouble and was consequently disciplined by my teachers (or administrators). Granted, the discipline I received was nothing like what my parents and grand-parents might have received. For me, it was the 1980s and early 1990s and at that time teachers were not allowed to use corporal punishment, or any punishment that was deemed excessive or unfair or disproportionate.

One example of a mild form of punishment was what was called Writing Lines. Simply put, the teacher gave you a sentence and you had to copy that sentence a hundred times or whatnot, or for a certain number of pages. Writing lines, as you can imagine, was rather tedious. However, I was a smart kid and I invented ways to make it more “interesting”.

For instance, I discovered that there were several ways to write lines. One could write each line, completely, from left to right, and then continue to write each new line, one after the other, going down the page. Another method that I discovered, which was slightly more interesting for me, was to write each WORD of the sentence, one by one, going down the page vertically (see attached image).

It turned out that this was slightly less tedious, for me at least. However, I wasn’t satisfied with these options and so I innovated some more and basically developed what would have been my very first “algorithm”. I decided that I would work on ALL the lines simultaneously, always starting from left to right, adding words in a pseudo-random order, up and down the page, in all directions, until I ended up with the number of lines required, or filled up the number of pages.

This might be hard to visualize, so I have prepared a simple picture to try to give you an idea. A short commentary will follow.

Algorithms for Writing Lines Problem by A.G. (c) 2015

Here’s the thing. As a child, I mainly designed such tricks to make the task less tedious. The “standard” or what we might call the “linear” way is to write each full line, one at a time, down the page. I hated doing this. It was too regular, it was redundant. I needed to spice things up. I found that writing each word of the full sentence downward, vertically, word by word moving towards the right, was already less boring.

Technically speaking, if we want to talk about these techniques of solutioning the “Writing Lines” problem, then the two first implementations are more or less equivalent, computationally speaking. That means that they more or less take the same amount of time to finish. If you see the completed page as an m-by-n matrix with each word as an element of the matrix, then the only difference is that in the first case you go term/value by term/value “row by row” whereas in the second case you are doing so “column by column”. Computationally speaking, these are more or less equivalent, all things being equal. (Edit: The second solution takes slightly longer because of the time it takes to move the pencil back from the last row to the first, vertically.)

The third algorithm, though, might actually take more time. Visually, it is more difficult to complete each phrase in a distributed manner, or non-linearly if you will. There is a certain amount of “visual searching” that one must do to figure out which words are missing from which line. So in essence, it might take much longer to do it this way, but what might be lossed in efficiency in the temporal dimension is gained in the “interestingness” of the procedure.

When I started writing lines in this manner, I could go one for hours or for days. It was really fun, I was solving a computational problem, I was engaging in algorithmic thinking. I was finding solutions to technical problems that life was handing me. I never stopped doing that. To this day, in everything I do, I am still constantly looking for “better” ways to do things.

What is fascinating, I think, is that an algorithm or procedure, let’s say, can actually be SUBOPTIMAL in one dimension, yet be efficient or whatnot in another dimension. Like I said, what was lost in “runtime” let’s say, in time resources/complexity, was gained a thousand-fold in the subjective interestingness of the activity itself. Quantitatively speaking, in terms of resources, the procedure might have been less efficient, but QUALITATIVELY it was close to ideal. It was close to ideal because it solved what was the actual technical problem, i.e. the problem at hand not being HOW TO WRITE LINES EFFECTIVELY, but HOW TO NOT BE BORED TO DEATH WRITING LINES.

A.G. (c) 2015

Daily Acts

Experiments in The Field

A.G.

Written by

A.G.

Field artist. @antisignal

Daily Acts

Experiments in The Field

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade