Beyond posts relating to New Cat, this is my last I7-related post. I felt it necessary to state the origins of its failures and to rail against what it says about the process of creation, those who create, and humanity itself. With this, I lay it upon the bier, set it aflame, and walk away.
Beyond the usability problems of forcing people to put all of their code into one file (a convention that I7 hypocritically fails to follow), such a convention presumes that all game designers use a linear, top-to-bottom, design process. I think of fusing smaller parts into a greater whole. The latter process groups like things together to be dealt with in their own area, limiting bleed and spillover into other topics, which creates a meta-level separation of function and data based upon internal similarity. That is, all functionality and data relating to topic/idea A is placed in the A file; the same goes for topic/idea B, topic/idea C, and so forth. This has parallels to traditional object-oriented language (and even functional programming), in that it minimizes the number of interface points. If you don’t do that, then it quickly becomes hard, if not impossible, to tell what your code is doing. So, you define the interface points and keep them as few as possible; separate files work in an analogous manner. And furthermore, they work this way because they reflect a typically human organizational scheme. People don’t heap everything into one common storage area. No, for they have waste baskets, refrigerators, and soap dishes — all different areas of containment for different things. Thus, if I declaim being forced into a single file for my code, it stems from a natural tendency to separate like objects into separate groupings.
That aside, I7′s story paradigm fails due to the output of the language itself. If what I7 produced was something that could be read from top to bottom, linearly, like a novel, then the need to group related materials together would be eliminated. The content is the issue, and the code is the issue. I7 output does NOT read straight through like a novel, and it never could, because a game is not a novel. While the needs of a game itself provide the first hurdle, the next hurdle is something that I7 sets up for itself: how rulebooks function.
The paradigm of the rulebook is that all like rules governing an object go in the same rulebook — or is it that all actions relating to all objects go into a rulebook? No matter which you choose, things quickly get out of hand. It would be wise to do both; however, if you do that, then your code cannot read straight through. It makes more sense to group together rules that affect multiple objects in a place divorced from any object (like in a separate file), or at the beginning of some section. But in order to refer to that section, you must return to it, or skip forward to it, breaking the processing flow of the game from top of page to bottom of page. I7 assumes that we’re all writing from top of page to bottom of page, writing as if we had only an old Selectrac typewriter, dutifully punching out one row after another.
That is an amazingly restrictive assumption, and it caters only to those who design puzzle-based games; it does not work well for most creative types. Editing on a typewriter is a painful and laborious process. What do you do when the ideas keep coming and have to improved or revised or discarded altogether? Clearly, you must brainstorm and edit elsewhere, and use the typewriter only to capture the finished idea, and you must be correct about that finished idea or else you begin the process anew. I could not write on a typewriter. I can write on paper, because although the paper has lines, I am not forced to use them. I can erase, write over, draw arrows, scratch things out, or even turn the page sideways. A text editor captured most of the creative capacities of paper, and naturally I seek out systems that allow me the same freedom in design. Like goes with like.
I7 imposes a harsh, utilitarian, one-size-fits-all unencouraging, unforgiving framework that in no way respects the creative process. It really is probably the worst possible tool for the job at hand, and the same people who have created this monstrosity are ever deaf, dumb, and blind, to all the pain, angst, and problems that they have created. They do not learn; they do not improve. Their reaction? Let the documentation fix it. However, no documentation can correct the erroneous worldview of I7. I7 fails to be usable.
The first step in making a usable product is to understand humanity; the first interface of I7 is between the language and the humans using it, and that is where it fails. From that set of wrong axioms, it descends, slowly and twistingly, into a dark valley of flawed assumptions that in the end, shuts out all light from the sky.
Inspiration is unpredictable, haphazard, wild, beautiful, and unrestrained. It is not logical, orderly, or predictable. Thus, in order to harness these wild winds, the creative type needs a flexible tool. I7 is not flexible. The creative type needs a tool that gets out of his way. I7 handholds you, even during the error messages. The creative type needs something that is not so obsessed with structure or details, but something that allows him to capture the thought, the moment, the spirit of things. Not that I6 is a great tool for doing that, but it gets in the way a lot less than I7 does. I6 lets you indent all you want, but I7 punishes you for hitting the tab an extra time.
The one-size-fits-all process requirement is completely at odds with human nature, and violently at odds with the creative nature. The people who lie down and wear the chains of I7 are probably accustomed to wearing the chains in other areas as well. I strongly suspect, that beyond politics, that people who are used to doing things in a top-down, logically straitjacketed, order from begin to end with no deviations are not in fact conservative, as some might think. However, they do desire a world that can be perfectly controlled as they perfectly control their games, their writing, their relationships, and so on. They have a command economy sort of life. Like the gargantuan hubris that produces such monstrosities of economic failure such as Kensianism and Socialism, we have I7 in the realm of game design — a command-economy manacle manufacturer for the mind, that produces a world where everyone is the same, everyone wears the same dirty tweed pants, marches in line to the same bread lines and sings the same forced songs, while the rifle butts of the soldiers collapse ribcages and kill the will to live free.
A fundamental misunderstanding of the human nature coupled with the mad hubris of the self-righteous leads to horrors (Hitler, Lenin, Stalin, Pol Pot, Mao, Mohammed). While I have no suspicion that I7 will lead to the gulags, the gas chambers, or the minarets, it has done its part in adding to the dominion of evil, for it lies about how people think, lies about how artists think, and tries to force us all into a restrictive mindset.
It will fail like a spectacle, like the Hindenburg.
The WordPress.com stats helper monkeys prepared a 2011 annual report for this blog.
Here’s an excerpt:
A San Francisco cable car holds 60 people. This blog was viewed about 2,900 times in 2011. If it were a cable car, it would take about 48 trips to carry that many people.