1. 7
    1. 1

      There’s room for thousands of art-project OSes, in a way that there isn’t for even hundreds of UNIX clones.

      Good point! But I wouldn’t call them art-projects: if born out of curiosity they are “hacks”.

      1. 3

        The distinction between ‘art project’ and ‘hack’ is mostly whether or not you come out of a culture that knows what ‘hack’ means. (I’m not sure I can count on that anymore, even for OS dev people.)

        1. 1

          This is a very interesting perspective.

          One of the greatest hackers of all times (at least in western history) grew up as an artist, Leonardo da Vinci.

          Both art and hacking are creative acts.
          And some clever artworks can surely be qualified as hacks too.

          However an artwork is not, in itself, an hack just like a perfectly executed engineering task is not, by itself, an hack.

          In other words humans can hack art just like we can hack engineering.

          Hacks however are identified by the curiosity they express: if there is nothing that challenge common wisdom, it’s not an hack (but you know… any definition can be hacked… this too!)


          Another interesting aspect of your comment is the cultural perspective: is “hack” the best term to convey the meaning we are talking about?

          Honestly I don’t know.

          I cannot think of a better term for this specific meaning in the languages I know.

          But this is probably a cultural bias.

          Hackers have been around for centuries (if not millennia), so it’s suspect that mankind waited for MIT to pick a word from English.

          We should probably look for a language hacker to look for translations in other languages, and find a term that can clearly identify the meaning, without too much cultural bias.

          1. 3

            In this particular case, ‘hack’ is a little over-loaded with meaning for my tastes.

            XANA is a hack in several senses of the word: it’s not only pointless but jokey, ad-hoc, and running counter to best practices. iX, on the other hand, is much more conservative in its style – the only thing new about iX is the concept behind it.

            The reason I used the term ‘art project’ is that, rather than the hacks of the demoscene or of the obfuscated C contest, I identify these projects more closely with design fiction & other kinds of conceptual art: I said “what if your whole OS was ZigZag” and then answered my own question in the form of usable code, in the same way R. Mutt[1] asked “what’s the outer limit of what constitutes art – is it just whatever’s in the context of the museum” and then answered by submitting a urinal.

            The term I think best applies is one from conlanging. In the constructed language space, an ‘a priori philosophical language’ is a language invented to express a particular model of language directly and purely. For instance, lojban’s ancestor loglan began as an a priori constructed language based on the idea that horn clauses are enough (and also as a kind of test of Sapir-Worf); toki pona is an expression of the idea of an extremely limited vocabularly & an extreme vagueness of denotation (because every word has such a wide range of possible meanings, a lot more effort goes into interpretation than into sentence construction); ithkuil is designed to be extremely dense, removing redundancy and using complex conjugation tables and swaths of imported phonemes to make it possible to translate paragraphs of english text into a handful of syllables. Generally speaking, these languages are both simpler than natural languages & harder to use: conceptual purity handicaps certain kinds of expression.

            In the same way, I thought about “what if the only thing in your OS was this particular concept”, and then tried to make something that bordered on usability without going outside of that plan. (Semi-mainstream OSes that have gone down this conceptual route exist & are criticized from one side for sticking to the purity of their idea too closely while from the other side criticized for breaking it – like plan9, with the ‘everything is a file’ idea – but once you give any ground to usability or compatibility the project becomes a lot harder.)

            I threw out any normal feature that would make things harder without meshing conceptually with my main idea. For instance, both these systems use flat memory (all in ring 0) and neither support executing non-kernel binaries. Dynamic memory management is eschewed in favor of a preallocated chunk. This severely limits compatibility with existing systems, eliminates the possibility of low-level extensions, and prevents it from being anything more than a single-user system (since security features are nonexistent).

            [1] R. Mutt has been considered an alias of Marcel Duchamp for a long time, but recent research indicates that it was most likely actually an associate living in New York City, whose name I have forgotten.

          2. 2

            Why are the words ‘hacker’ and ‘hack’ so important to you? I mean that question genuinely. Your comments over the last few days read, to me, like you feel a strong need to own the word ‘hacker’ and apply it to things regardless of the intent. In other words: is it important to call something a ‘hack’ vs an ‘art-project’? If so, why?

            1. 0

              you feel a strong need to own the word ‘hacker’

              I think you are reading my comments according to your own culture.

              Ownership is not something I care much.
              Indeed one of my criticisms to ESR work is related to his appropriation of the Jargon file.

              is it important to call something a ‘hack’ vs an ‘art-project’?

              Is it important to call something “engineering” vs “applied physics”?
              Is it important to call something “art” vs “craft”?

              I feel a need for a precise language. Don’t you?

              If so, why?

              Because the language we use, forges the way we think.

              By distorting the jargon, you affect what people can think easily and what they cannot.
              The same apply with the difference between “free software” and “open source”, and my realization that the concept of FOSS/FLOSS is just a deception of this kind.

              We need proper terms to convey orthogonal concepts.

              Hack, Hacking, Hacker are just words. But they convey a time-worn meaning all over the world.

              I’m just using such words properly. And trying to notice when people do not.

              Can we change words? Why not!

              Do you have any proposal?

              1. 2

                I think you are reading my comments according to your own culture.

                It’s pretty hard not to? For evidence, I site the comments you’ve made over the last few days insisting on a particular definition of ‘hacker’ as well as properties of hacking regardless of the intent of the ‘hacker’. By “own” I mean you seem to have a very specific meaning that you feel it is important other people subscribe to.

                Is it important to call something “engineering” vs “applied physics”?

                Is it important to call something “art” vs “craft”?

                Unless there are legal reasons, I don’t think it matters that much. If someone wants me to call them an engineer and I respect them, I’ll do it even if it doesn’t necessarily align with my view of being an engineer.

                Because the language we use, forges the way we think.

                You’ve decided calling something a ‘hack’ is preferable to ‘art project’, so you seem to be pushing for us using a particular language, which suggests you seem to want us to think in a particular way. Maybe calling it an art project is actually just as good, or maybe even better! Or why can’t we call it both things rather than deciding one or the other? Your original comment here is so excluding. “If X then it’s a Y”. You could have said “I think these are born out of curiosity, so I’d also consider them hacks”. That would not have prompted me to comment.

                I believe your insistence on a word meaning a very particular thing and pushing it is making you close-minded and rigid.

                Can we change words? Why not!

                Do you have any proposal?

                This question is missing the point, I believe. I don’t want to use a particular word. I just don’t want you insisting on which word I should use. You’re certainly free to do whatever you want (and I won’t comment on it anymore), I’m just not sure if you realize that in regards to this you can come off a bit arrogant and exclusionary. Maybe I’m the only one who interprets your comments that way, though.

                1. 1

                  Actually, maybe I’m missing your point.

                  I don’t want to use a particular word. I just don’t want you insisting on which word I should use.

                  I do not insist on the word “hack” more that I insist on using the word “sky” for the sky.
                  Tbh I insist a lot less than with “sky”, since:

                  • I acknowledge that it has been unfortunately assimilated by a very specific culture that does not rappresent the original meaning
                  • I’m open to alternative words that can convey the original meaning.

                  I believe your insistence on a word meaning a very particular thing…

                  Well… I agree that the word “hacker” is too overloaded!

                  However all definitions in the jargon except “someone who makes furniture with an axe” connotate the same thing, just focusing on particular observable aspects of an hacker.

                  As one who fits all eight numbered definitions (but not the addictional commentary about the inherent elitism), I see how all the definitions are partial and overall missing the point. They are, in other words, as pertinent as the descriptions of an elephant by blind men.

                  But, you know, dictionaries are human artifacts: they can be wrong and they can be fixed.

                  Meanwhile I’m just using the term properly.

                  you can come off a bit arrogant and exclusionary.

                  Well you might have a point on this.

                  Maybe ESR saw several hackers that looked arrogant and exclusionary as they talked authoritatively about their realm of competence, misunderstood his own misunderstanding as if those hacker were actually arrogant and then rationalized such behaviour as elitism.

                  The fact is: definitions define. From Latin de-finire, roughly “marking a boundary”.
                  Any definition limits the scope of the meaning of a word.

                  But having a clear understanding of hacking does not mean to be exclusionary.
                  On the contrary! As a curious person I want everybody to leverage my curiosity and become hackers themselves, so that I can leverage their curiosity to learn more and so on… recursively.

                  1. 3

                    Well… I agree that the word “hacker” is too overloaded!

                    But I don’t agree! I think this is why we keep on talking past each other. I am fine with the word ‘hacker’ being fuzzy and unclear and I’m not a fan of that you are rigidly defining it.

                    1. 0

                      I am fine with the word ‘hacker’ being fuzzy and unclear

                      Oh… got it! :-D

                      Can I ask why? What’s the advantage of partial and unclear definitions?

                      Note that we are using this word world-wide.
                      This is what you obtain with this sort of “fuzzy and unclear” definitions!
                      (and no, that’s not pizza)

                      1. 3

                        I think for a few reasons:

                        1. I grew up with a fairly fuzzy and unclear definition of hacker so I never learned it should bother me. In general, when I have a deep conversation with someone I either define my important terminology during the discussion or have them define theirs. I don’t really care what the definition is just as long as we both agree.
                        2. I think even though it’s fuzzy and unclear the essence is usually close enough among all the definitions to get the gist of it.
                        3. I don’t think there is a lot of value derived from rigidly defining the word ‘hacker’ and getting the, fairly significant, buy-in from the world needed to agree on it.
                        4. Unless one can enforce it by law, I don’t really know of any success story where the number of definitions of a word has been reduced. Communication just seems to naturally expand.
    2. 1

      Another brief historical note (which wouldn’t really fit in the essay):

      I did a video demonstration of iX. This demonstration got featured on Hackaday, and it was because of this feature that Ted Nelson sought me out to work on actual Xanadu code.

      There is no demo video of XANA, and making one would be difficult these days – building it is dependent on a particular (now ancient) version of GDC, itself dependent on a decade-old GCC version. However, I did a frame by frame animation of what the UI for XANA looked like at the time I was first developing it.


      It’s a little off-topic, but at the time I actually did frame-by-frame animations of several UI ideas I had for hypertext systems:

      I probably have the skill necessary to actually implement these things now.