GENTUT28.TXT General Tutorial for Lisa GJ2 Fic3 -- the f3 language explained as a series of tiny essays Written by Aristo Tacoma with L.A.H. Date: 2011:2:28 Copyright author, further distribution license is www.yoga4d.org/cfdl.txt. Kids: there are other tutorials for you. But you should find pieces here and there which are easy to read. In B9, use the search function, CTR-F or F4 within each. ***WHY PROGRAMS OUGHT TO BE MADE, AS A RULE OF THUMB, WITHOUT MOVABLE FRAMES A computer, you know, is such a wonderful item: it re-presents things, symbolically, so we can think about them, afresh. We can work with words, depicted on the virtual paper of the screen. We can work with numbers, depicted on the virtual paper of a calculation sheet like, in particular, SPC in F3. We can craft a function, and experience how it produces a new permutation of numbers of letters by means of its clear-cut, crisp interaction with other functions. We can view also such things as map -- streets which are represented in symbol form -- and this can light up our minds as to the whereabouts of an interesting cafe. We can even draw on the computer monitor, and the symbolic medium of the computer represents our finer feelings of beauty. And the computer might be wired to machines, such as sound machines, robots, washing arrangements, whatever, and the representations become presented into the world physically, beyond the representational medium that the computer is. The motto for the programmer is, living beings first, or humans first, -- and may the computer serve them well, in all future. May the computer -- the representational medium it is -- be stimulating in just the right way. Nobody who has any even slight sense of ethics wants the computer to go beyond its narrow, although lovely, role. There must be no attempt by programmers to make computers behave so as to drag humans into a net of addictions connected to computer programs. This having been said, it is clear that humanity in the 21st century on Earth is breaking severely with these natural obvious self-evident universal ethical considerations. Every attempt is made to fool people to stick around with the computer all the time. If anything can be done so as to make a program addictive, it is made that way. Websites like www.facebook.com and www.twitter.com, and the quasi-intelligent efforts of such places as www.google.com and www.bing.com to incorporate their misconceived notions of "artificial intelligence" into their addictive-game-like so-called "search engines" are all made on one premise: that people are to spend money through the computer, through their websites, and that if laws are so tame that they do not prevent addictive programming efforts, then there shall be no company ethics to keep programmers in leashes. As a result, brains of people are made clumsy the way that happens when epxosed to excessive addictive use of many other types of things. It is part of this overall extreme lack of understanding of the necessary ethics that programmers must apply to their works, that all attempts are being made to blur the distinction between the computer and the rest of reality. It is part of this blurring to inject various sorts of simulations -- such as simulations of papers or frames which can be moved, on top of one another -- into the present computer platforms. This degeneration of what programming ought to be has gone as far as to lead to the definition of several types of programming structures where such nonsense objects as movable frames have gotten into the core features of these so-called programming languages. Now why is a movable frame not just unnecessary but also wrong, as a rule of thumb, when it comes to programs? The reason to use a movable frame approach is said to be that of giving the interactor with the program increased flexibility. She can move things around as she wants to. It is correct that increased flexibility of some kinds do sometimes arise by the use of movable frame simulations. However, it is not at all a problem for a computer to be set up so as to handle several tasks going on in what practically amounts to simultaneous performance without this having to rely on movable frames. Psychological performance studies have indicated that increased quality is achieved by people working on one task at a time, but there is nothing wrong about switching between such tasks -- we're talking computer tasks now. And this switching can occur e.g. by quick keyclicks. An intelligent person can compare data by looking first at one set of data, then another set of data, without having to have them up on the display at the same time. The flexibility that is sought is often provided in a context of programs which are not open source. In a truly open source friendly approach, in particular F3, a range of flexibilities are achieved by each program in some contexts being short and directly modifiable without any ado. The key point, of far greater importance than trivial flexibility issues, is this: the programs we have must honor the greatness of the mind. Human beings call upon the computer as a representational medium, in sharp contrast to the rest of the universe (which is its greater part). The representation medium must not include within itself a hubris which attempts to blur its narrow role. It is by contrast with the rest of reality that the representational medium -- free also from all needless simulations of moving papers about -- truly stimulates the brain. The seriousness of this is as follows: a programming environment in which there is constantly an invocation of needless simulations, whether of movable frames or other things, contributes to a sluggishness of the brain. To stimulate the brain, as F3 programming does, when F3 programming is done in a way that honors what we have coined as "first-hand programming", there is a relationship between the interactor of the program and the mind of the programmer as artist. The programmer as artist has decided on the finer vibrational qualities, and the finer synchronicities, of placing just this text and just this graphics in just this way for each program.