book, ebook, free, free download, science, philosophy, programming, software. COBOL, OpenVMS, VMS, MRP, ERP, Manufacturing Resource Planning, free, free download, open source, source code, example, application, program, system. Rubik’s cube, Pocket cube, Pyraminx, cube 3x3x3, cube 2x2x2, pyramid 3x3x3, cube solution, solve Rubik’s cube, virtual cube, simulate cube, computer simulation, cube simulator, puzzle, game, free, free download, open source, source code, example, application, program.



Section Anthropology and Software (44 pages, 311 KB) This section explores the similarity of mechanistic software beliefs to primitive beliefs.



About the book Addressing general readers as well as software practitioners, Software and Mind discusses the fallacies of the mechanistic ideology and the degradation of minds caused by these fallacies. Mechanism holds that every aspect of the world can be represented as a simple hierarchical structure of entities. But, while useful in fields like mathematics and manufacturing, this idea is generally worthless, because most aspects of the world are too complex to be reduced to simple structures. Our software- related affairs, in particular, cannot be represented in this fashion. And yet, all programming theories and development systems, and all software applications, attempt to reduce real- world problems to neat hierarchical structures of data, operations, and features. Using Karl Popper’s famous principles of demarcation between science and pseudoscience, the book shows that the mechanistic ideology has turned most of our software- related activities into pseudoscientific pursuits. Using mechanism as warrant, the software elites are promoting invalid, even fraudulent, software notions. They force us to depend on generic, inferior systems, instead of allowing us to develop software skills and to create our own systems. Software mechanism emulates the methods of manufacturing, and thereby restricts us to high levels of abstraction and simple, isolated structures. The benefits of software, however, can be attained only if we start with low- level elements and learn to create complex, interacting structures. Software, the book argues, is a non- mechanistic phenomenon. So it is akin to language, not to manufactured objects. Like language, it permits us to mirror the world in our minds and to communicate with it. Moreover, we increasingly depend on software in everything we do, in the same way that we depend on language. Thus, being restricted to mechanistic software is like thinking and communicating while being restricted to some ready- made sentences supplied by an elite. Ultimately, by impoverishing software, our elites are achieving what the totalitarian elite described by George Orwell in Nineteen Eighty- Four achieves by impoverishing language: they are degrading our minds.



Some of the consequences of the mechanistic software myth • The software elites have turned software into a weapon, a means to dominate and control society. • We depend more and more on the type of software that demands only trivial skills, so we are prevented from using our minds and expanding our knowledge. • The software elites are inducing dependence on inferior, standard systems, and are preventing independent, responsible programming. • New software products are installed every year in millions of places without being used, presumably because they are not the “solutions” they were said to be. • Software products and innovations are advertised by describing a few successes, which is logically equivalent to lying. • Universities are teaching and promoting invalid, pseudoscientific software notions. • Less than 1 percent of the programming activities in society represent useful work – work benefiting society in the way the work of doctors does. • Individuals with practically no programming experience act as industry experts – they write books on programming, teach courses, and provide consulting services. • Many software companies exploit the ignorance of programmers and users by suggesting that their products possess supernatural powers. • Programmers rely on worthless theories, development environments, and ready- made pieces of software, instead of programming and improving their skills. • Major government projects are abandoned after spending vast amounts of public money, while the incompetents responsible for these failures continue to be seen as software experts. • Corporations cannot keep their software applications up to date and must acquire or develop new ones over and over. • Society must support a growing software bureaucracy – more and more workers are changing from individuals who perform useful tasks to individuals who merely practise the mechanistic software myth. • The concept of expertise is being degraded to mean, not the utmost that human minds can attain, but simply acquaintance with the latest software systems. • Our software culture is so corrupt that it has become, in effect, a form of totalitarianism.



View/download book and extracts You can view and download the entire book, or just individual chapters or selected sections. Notes • The book and extracts are PDF files, and can be viewed with any PDF reader. To save them on your computer, click Save in the reader. • The files have up to 4 levels of PDF bookmarks: chapters, sections, subsections, numeric sections. • All extracts include the book’s front matter, and hence the full table of contents. • If viewing these files in two- page spread mode (facing pages), configure the reader to allow a cover page, so that the first page and odd- numbered pages are displayed on the right, and even- numbered pages on the left (as in the printed book). • The free digital book and extracts are licensed under the Creative Commons Attribution- NoDerivatives International License 4.0. They are copyrighted material; you may download and share them, but you may not distribute modified versions.



About the myth The mechanistic myth is the belief that everything can be described as a neat hierarchical structure of things within things. And few of us realize that our entire culture is now based on this fallacy. While the world consists of complex, interacting structures, we prefer to treat every phenomenon as a simple, isolated structure. Through our software pursuits, the mechanistic myth has spread beyond its academic origins and is affecting every aspect of human existence. In just one generation, it has expanded from worthless theories of mind and society (behaviourism, structuralism, universal grammar, etc.) to worthless concepts in the field of programming (structured programming, object- oriented programming, the relational database model, etc.) to worthless software- related activities that we all have to perform. What is worse, our mechanistic beliefs have permitted powerful software elites to arise. While appearing to help us enjoy the benefits of software, the elites are in fact preventing us from creating and using software effectively. By invoking mechanistic software principles, they are fostering ignorance in software- related matters and inducing dependence on their systems. Increasingly, in one occupation after another, all we need to know is how to operate some software systems that are based on mechanistic principles. But our minds are capable of non- mechanistic knowledge. So, when the elites force us to depend on their software, they exploit us in two ways: by preventing us from creating better, non- mechanistic software; and by preventing us from using the superior, non- mechanistic capabilities of our minds. The ultimate consequence of our mechanistic culture, then, is the degradation of minds. If we restrict ourselves to mechanistic performance, our non- mechanistic capabilities remain undeveloped. The world is becoming more and more complex, yet we see only its simple, mechanistic aspects. So we cope perhaps with the mechanistic problems, but the complex, non- mechanistic ones remain unsolved, and may eventually destroy us.



Top

Top

Top

Related articles



Top

The software elites

A summary of Popper's principles of demarcation

Book Contents

Top

Preface Introduction: Belief and Software Modern Myths The Mechanistic Myth The Software Myth Anthropology and Software Software Magic Software Power 1 Mechanism and Mechanistic Delusions The Mechanistic Philosophy Reductionism and Atomism Simple Structures Complex Structures Abstraction and Reification Scientism 2 The Mind Mind Mechanism Models of Mind Tacit Knowledge Creativity Replacing Minds with Software 3 Pseudoscience The Problem of Pseudoscience Popper’s Principles of Demarcation The New Pseudosciences The Mechanistic Roots Behaviourism Structuralism Universal Grammar Consequences Academic Corruption The Traditional Theories The Software Theories 4 Language and Software The Common Fallacies The Search for the Perfect Language Wittgenstein and Software Software Structures 5 Language as Weapon Mechanistic Communication The Practice of Deceit The Slogan “Technology” Orwell’s Newspeak 6 Software as Weapon A New Form of Domination The Risks of Software Dependence The Prevention of Expertise The Lure of Software Expedients Software Charlatanism The Delusion of High Levels The Delusion of Methodologies The Spread of Software Mechanism

7 Software Engineering Introduction The Fallacy of Software Engineering Software Engineering as Pseudoscience Structured Programming The Theory The Promise The Contradictions The First Delusion The Second Delusion The Third Delusion The Fourth Delusion The GO TO Delusion The Legacy Object- Oriented Programming The Quest for Higher Levels The Promise The Theory The Contradictions The First Delusion The Second Delusion The Third Delusion The Fourth Delusion The Fifth Delusion The Final Degradation The Relational Database Model The Promise The Basic File Operations The Lost Integration The Theory The Contradictions The First Delusion The Second Delusion The Third Delusion The Verdict 8 From Mechanism to Totalitarianism The End of Responsibility Software Irresponsibility Determinism versus Responsibility Totalitarian Democracy The Totalitarian Elites Talmon’s Model of Totalitarianism Orwell’s Model of Totalitarianism Software Totalitarianism Index

A brief autobiography

Browse and search in the book The button Search Books lets you view pages from the book and search the entire book by entering words or phrases. It uses the Google Books system.



Top

Download software: IFOP (for business, for programmers) IFOP.ZIP contains the IFOP application, source files, and documentation. It is meant mainly for programmers. IFOP was written by the author of Software and Mind, and is included here in order to demonstrate the value of the traditional programming concepts discussed in the book. IFOP is a customized MRP II application (Manufacturing Resource Planning). It is a fully integrated and self- contained system, with hundreds of interrelated functions for production, sales, shipping, EDI, quotations, lot management, quality assurance, product costing, machines and tooling, preventive maintenance, inventory and warehousing, raw materials, purchasing, and accounting. It is written in OpenVMS COBOL and works on any platform that supports this operating system (including PCs running hardware emulation software). IFOP has been used and improved for many years. It is customized for a manufacturer of industrial fasteners from Ontario, Canada, whose products are used mostly in the North American automotive industry. Although designed for a specific industry and a specific company, IFOP can be useful in many other situations. Some parts are generic in nature and can be incorporated with only a few changes in other applications. And, with a reasonable amount of work, many functions can be adapted for other business needs or other platforms. At the very least, IFOP demonstrates some important programming concepts for developing and maintaining sophisticated, customized business applications. (There is another open- source program you can download on this page: Digicube.)



Belief and Software (84 pages, 604 KB) This chapter is an introduction to the mechanistic myth and the mechanistic software myth, and an analysis of the similarity of mechanistic software beliefs to primitive beliefs.



Pseudoscience (114 pages, 818 KB) This chapter discusses the concept of pseudoscience, the principles of demarcation between science and pseudoscience developed by Karl Popper, and the value of these principles in studying the pseudoscientific nature of our mechanistic culture.



Language and Software (88 pages, 715 KB) This chapter shows that language and software are non- mechanistic phenomena, are based on similar principles, and fulfil a similar role in society.



Mechanism and Mechanistic Delusions (90 pages, 694 KB) This chapter explains the mechanistic philosophy and its limitations, the mechanistic fallacies, and the difference between mechanistic and non- mechanistic phenomena.



The Mind (78 pages, 549 KB) This chapter shows why the mechanistic models promoted by the software elites cannot attain the intelligence, creativity, skills, and intuition of human beings.



Language as Weapon (58 pages, 429 KB) This chapter explains how language is used to deceive and to manipulate people by restricting them to mechanistic thinking.



From Mechanism to Totalitarianism (76 pages, 550 KB) This chapter examines the totalitarian tendencies of the mechanistic philosophy, and particularly their manifestation in our mechanistic software culture.



(68 pages, 604 KB) The index has three levels and detailed descriptions, and functions also as an alphabetical summary of the book’s contents.



Software as Weapon (90 pages, 624 KB) This chapter explains how the mechanistic fallacies lead to software delusions, and how the software elites use these delusions to exploit society.



Software Engineering (344 pages, 2,736 KB) This chapter analyzes the mechanistic fallacies inherent in the idea of software engineering, and exposes the pseudoscientific nature of the mechanistic programming theories.



Sections The Problem of Pseudoscience, Popper’s Principles of Demarcation (46 pages, 339 KB) These sections discuss the concept of pseudoscience and the principles of demarcation between science and pseudoscience developed by Karl Popper, used in the book to show how mechanistic fallacies lead to pseudoscientific thinking.



Section The New Pseudosciences (58 pages, 424 KB) This section analyzes the mechanistic fallacies common to behaviourism, structuralism, and universal grammar, and shows that these famous theories are pseudoscientific.



Sections The Common Fallacies, The Search for the Perfect Language (46 pages, 337 KB) These sections examine the mechanistic philosophy of language, and analyze the mechanistic fallacies common to language theories and software theories.



Sections Wittgenstein and Software, Software Structures (58 pages, 494 KB) These sections examine Ludwig Wittgenstein’s non- mechanistic philosophy of language and its application to software.



Sections Introduction, The Fallacy of Software Engineering, Software Engineering as Pseudoscience (42 pages, 303 KB) These sections include a brief, non- technical history and analysis of the idea of software engineering and its mechanistic fallacies.



Section Structured Programming (130 pages, 1,107 KB) This section analyzes the theory of structured programming and its mechanistic fallacies, and shows that it is a pseudoscience.



Section Object- Oriented Programming (66 pages, 488 KB) This section analyzes the theory of object- oriented programming and its mechanistic fallacies, and shows that it is a pseudoscience.



Section The Relational Database Model (160 pages, 1,199 KB) This section analyzes the relational database model and its mechanistic fallacies, and shows that it is a pseudoscience.



Section The End of Responsibility (44 pages, 307 KB) This section shows how our mechanistic culture fosters a deterministic view of human affairs, which undermines the notion of individual responsibility and promotes totalitarianism.



Section Totalitarian Democracy (50 pages, 363 KB) This section examines the totalitarian aspects of democratic societies, the mechanistic roots of this phenomenon, and the spread of software totalitarianism.





View/download individual chapters



View/download selected sections



View/download book (930 pages, 7.3 MB)





Top

Reviews



From ForeWord Reviews www.forewordreviews.com The scientific method of mechanism, by which the study of all things is broken down to their smallest building blocks and reassembled in hierarchical order, is the intellectual crowbar that tore down the religion- based myths that dominated thought before the Renaissance. Veteran programmer and computer scientist Andrei Sorin argues that mechanism has outlived its usefulness. Worse, it has become the new mythology, one as vigorously defended by today’s academic and technological elite as the papacy and the Inquisition protected the belief system of the Middle Ages. As the jacket attests, Sorin has the credentials that demand respect when he talks about his field of expertise and the world in which he works. While his weighty, 944- page tome, Software and Mind, is at first look overwhelming and intimidating, the arguments and observations put forth in the massive work are surprisingly, and thankfully, understandable and approachable. There is a great deal of repetition, which the author freely admits is intentional, but that repetition is necessary if a reader without his background is to comprehend his thesis. That thesis is a damning one. It accuses academic and “software elites” (many of whom he names) of imposing an Orwellian totalitarianism on not only the scientific computer software community, but also upon those who use its products. Sorin, like the great thinkers of the Renaissance and the Age of Enlightenment, seeks to break free of these artificial restraints, which he believes “attempt to reduce real- world problems to neat hierarchical structures of data, operations and features.” Software and Mind is not a light or easy read, although Sorin works diligently to present his theories in a logical progression and in a language and style that does not require a reader to have an advanced degree to follow, understand, or digest. Engineers are often derided for their inability to communicate ideas in ways the layman can grasp. If that is a rule, Sorin is the exception. Each of eight chapters is broken into sections, subsections, and what he calls “numbered parts.” Seven are self- contained journeys of exploration into such topics as “Language and Software,” “Pseudoscience,” and “From Mechanism to Totalitarianism.” One, however, is a book unto itself. At more than 320 pages, Chapter Seven represents not only a physical third of the book, but also its theoretical core. Each of its three main sections are further subdivided into nine or ten subsections, and it is here that Sorin takes on what he sees as the true nemesis of freedom- loving software scientists everywhere: structured programming, object- oriented programming, and the relational database model. He derides these theories, once hailed as revolutionary, as not only “pseudoscience” but also as the equivalent of “totalitarianism.” Sorin’s indictment of his profession is sure to stir up controversy and may come as a big surprise to many of his colleagues, let alone to the general public, which has come to revere software creators as something akin to the gods of old. Then again, false gods have fallen before, and Sorin, if he is indeed correct, may just be the scientist who cracks the mythological foundation upon which he claims the modern deities of the computer age stand.



From Kirkus Reviews www.kirkusreviews.com Named to Kirkus Reviews’ Best Books of 2013 In this massive philosophical treatise that crosses disciplines with verve and meticulous logic, politics, cognitive science, software engineering and more become threads in a complex examination of mental modeling. Sorin argues against what he labels the “mechanistic myth”: the belief that virtually all fields, from psychology to biology, can be addressed by pursuing methodologies and theorizing based on hierarchical modeling – a method of breaking down processes and concepts from high- level ideas into simple, indivisible base units or concepts. Although Sorin’s primary expertise and focus for the book is in programming and computer science, he convincingly argues that the success of hierarchical structures has spread from the hard sciences of physics and engineering – where, in Sorin’s estimation, these models work and should be utilized – to virtually all fields of study, including fields such as sociology and psychology in which the processes and concepts involved appear to be too complex for the relative simplicity of hierarchical modeling. Since these fields study human interactions, which function on multiple levels and can vary depending on numerous factors, Sorin argues that the important concepts and theories in these so- called “soft” sciences cannot be adequately modeled or understood using hierarchical thinking. From this basic concept, Sorin broadly examines what he sees as troubling trends in academia, software development, government and many other endeavors. Early on, Sorin betrays the color of his conclusions through frequent use of emotionally charged words (e.g., absurd, charlatans, totalitarianism) and disdain for the majority of those working in the mechanistic mode, focusing especially on academic bureaucrats and those who, in Sorin’s opinion, work with pseudoscientific theories, such as linguist Noam Chomsky’s theories regarding universal grammar. To be fair, Sorin offers a disclaimer in his critique of the “mechanical myth”: “Myths,” he says, “manifest themselves through the acts of persons, so it is impossible to discuss the mechanistic myth without also referring to the persons affected by it.” His clear disapproval of these groups and theories doesn’t detract from the thorough explanations, well- reasoned arguments and crystalline logic he employs at every step. His explanations of mechanistic vs. nonmechanistic models and of the importance of tacit knowledge (meaning knowledge that is gained by experience, which isn’t always expressible in simple ways) are particularly cogent, and his textbook- length elucidations will enrich understanding for university- level students in various fields of study. Despite moments of personal distaste, Sorin’s concise arguments stand as a model of reason.



From Midwest Book Review www.midwestbookreview.com Once fodder for science fiction movies and pulp magazine stories, the computer has become a fundamental force in modern society. In “Software and Mind: The Mechanistic Myth and Its Consequences” Andrei Sorin draws upon his more than three decades of experience and expertise with respect to computers, computer systems, and their impact upon almost every aspect of our culture. Of special note is Sorin’s authoritative debunking of common place misconceptions and fallacies with respect to fostered attitudes regarding computers – including those governmental and corporate vested interests in misrepresenting software products and their usefulness. This 944 page compendium begins with modern myths regarding software, covers what Sorin refers to as the ‘pseudoscience’ of computer software, with chapters covering language and software, language as weapon, software as weapon, and software engineering. Of special note are the sections in the concluding chapter on ‘Totalitarian Democracy’. Enhanced with a comprehensive index, “Software and Mind: The Mechanistic Myth and Its Consequences” is a work of impressively presented scholarship, and a highly recommended, seminal addition to personal, professional, and academic library Computer Science and 21st Century Philosophy reference collections and supplemental reading lists.



From Reader Views www.readerviews.com Dr. Andrei Sorin’s book “Software and Mind: The Mechanistic Myth and its Consequences,” on the current state of software development, should be required reading for anyone entering the programming field. Any programmer that is currently and dogmatically following any methodology should be handed a copy of this book. In my almost 30 years of programming experience, I’ve lived through several of the changes he discusses. I know I’ve drunk from the kool- aid that was offered at the time and had to learn the lessons in this book the hard way – eventually accepting that deviations from the prescribed methodologies were the only viable option. I’ve had to fight people that are so absorbed into the various systems that they could not perceive where these systems were failing or how they were hurting projects. This book can help an old programmer win arguments over these ideas and may save some new programmers from falling into the traps. I’m not saying I agree with everything that was written in the book. But, Andrei Sorin has obviously given this issue a lot of thought. He carefully develops the readers’ understanding of mechanism and the philosophies it was built upon. He shows where this philosophy can succeed and where it fails when it tries to describe more complex models, especially mechanism’s attempts to model human thought, intuition and capacity for learning. Using this argument as a foundation, he shows how mechanism is applied to the software industry and used to create software that fails and the industry elite that propagates these ideas. In “Software and Mind” Dr. Sorin breaks down the various methodologies for programming that have come in and out of vogue and explains why they fall short of the promises made by the software industry, carefully breaking them down into various fallacies and shortcomings showing were they were modified to accommodate these shortfalls by adopting parts of programming that the methodology attempted to eliminate. For example, structured programming and the “GOTO superstition” and Object Oriented Programming and its shunning of process flow. If you are in school learning to program, read the book. If you program for a living, read the book. If you manage programmers, read the book. If you are thinking of investing in a software system, read the book before you buy. Above all else, if you find yourself clinging to the dogma of some methodology, take the time to read “Software and Mind: The Mechanistic Myth and its Consequences” by Andrei Sorin, PhD. It may open your mind to some possibilities.



Subsections The Basic File Operations, The Lost Integration (38 pages, 292 KB) These subsections (part of The Relational Database Model) examine the traditional operations involving indexed data files, their integration with programming languages, and their benefits relative to relational databases.

Subsection The GO TO Delusion (44 pages, 349 KB) This subsection (part of Structured Programming) examines the fallacies surrounding the GO TO statement and its prohibition.



Top

Software and Mind

Introduction

Chapter 1

Chapter 2

Chapter 3

Chapter 4

Chapter 5

Chapter 6

Chapter 7

Chapter 8

Index

Part of chapter 3

Part of chapter 4

Part of chapter 7

Part of chapter 7

Part of chapter 7

Part of chapter 7

Part of chapter 7

Part of chapter 8

Part of chapter 8

(2.9 MB)

Download IFOP.ZIP

Top

Section The Mechanistic Myth (36 pages, 246 KB) This section examines the history, fallacies, and consequences of the mechanistic doctrine.



Part of Introduction

Where to buy the book Software and Mind is available at online stores, where its price is discounted.

USA & international

Canada

Amazon

Labyrinth Books

Amazon.ca

Top

About the author Andrei Sorin has been programming for more than forty years. He has worked on diverse types of hardware, from 4- bit microprocessors to mainframes; and he has developed many types of software, from programming tools to business systems. His research interests include application development and maintenance concepts, data management principles, and the philosophy of software. He has developed text and file management systems, editors, and interpreters. In the business field, he has developed applications in manufacturing and utilities. Dr. Sorin received a B.Sc. in Electrical Engineering (1970) and an M.Sc. in Computer Science (1971) from the Technion, Israel Institute of Technology, and a Ph.D. in Computer Science (1975) from the Imperial College, University of London, U.K. Since 1976 he has lived in Toronto, Canada, where he is working as an independent consultant in software development, support, and research.



Top

Download software: Digicube (for fun, for programmers and users) Digicube.zip contains the Digicube application, source file, and documentation. It is a fun program, meant for everyone, programmers and users. Digicube was written by the author of Software and Mind, and is included here in order to demonstrate the value of the traditional programming concepts discussed in the book. Digicube is a virtual Rubik’s cube: it maintains in its memory the cube’s position and lets you modify it with instructions, which you enter interactively or store as scripts in a file. It uses a simple system of notation that needs only the digits 1 to 6 to represent faces, colors, and rotations. In addition to the classic 3x Rubik’s cube, Digicube can simulate two simpler versions: the 2x cube (known as Pocket cube) and the 3x pyramid (known as Pyraminx). Digicube is an ideal tool for learning and for experimenting with positions, move sequences, and solutions. It comes with a comprehensive reference manual, which explains its functions and shows with many examples how to use them. Here are some of the operations you can perform: specify complete or partial positions; ask Digicube to solve a position, fully or partially, and show you the required moves; specify sequences of moves and turns, or generate random sequences; modify, swap, or flip individual pieces; check the validity of a position; display the current position in various ways; store positions in memory and retrieve them later; compare positions; examine positions as they change over thousands of moves; determine the moves needed to reach any position, including partially specified positions. (There is another open- source program you can download on this page: IFOP.)



(1.4 MB)

Download Digicube.zip

Top

Site notes Disclaimer The discussions in the book and on this site reflect the author's personal views, and the author does not claim or suggest that anyone else holds these views. The book and this site attack the mechanistic myth, not persons. Myths, however, manifest themselves through the acts of persons, so it is impossible to discuss the mechanistic myth without also referring to the persons affected by it. Thus, all references to individuals, groups of individuals, corporations, institutions, or other organizations are intended solely as examples of mechanistic beliefs, ideas, claims, or practices. To repeat, they do not constitute an attack on those individuals or organizations, but on the mechanistic myth. The author maintains that theories which attempt to explain non- mechanistic phenomena mechanistically are pseudoscientific according to Karl Popper's principles of demarcation between science and pseudoscience. Consequently, terms like “ignorance,” “incompetence,” “dishonesty,” “fraud,” “corruption,” “charlatanism,” and “irresponsibility,” in reference to individuals, groups of individuals, corporations, institutions, or other organizations, are used in a precise, technical sense; namely, to indicate beliefs, ideas, claims, or practices that are mechanistic though applied to non- mechanistic phenomena, and hence pseudoscientific. In other words, these derogatory terms are used solely in order to contrast our world to a hypothetical, ideal world, where the mechanistic myth and the pseudoscientific notions it engenders would not exist. The meaning of these terms, therefore, must not be confused with their informal meaning in general discourse, nor with their formal meaning in various moral, professional, or legal definitions. Moreover, the use of these terms expresses strictly the personal opinion of the author – an opinion based, as already stated, on the principles of demarcation. Some discussions in the book and on this site may be interpreted as professional advice on programming and software use. While the ideas advanced in these discussions derive from many years of practice and from extensive research, and represent in the author’s view the best way to program and use computers, readers must remember that they assume all responsibility if deciding to follow these ideas. In particular, to apply these ideas they may need the kind of knowledge that, in our mechanistic culture, few programmers and software users possess. Therefore, the author and the publisher disclaim any liability for risks or losses, personal, financial, or other, incurred directly or indirectly in connection with, or as a consequence of, applying the ideas discussed in the book or on this site.





The following files are included in the IFOP.ZIP package. To properly view the *.TXT and *.COB files, use a monospaced font (such as Courier) and no word wrap. The *.COB files must be compiled with the OpenVMS COBOL compiler, and the *.EXE files must run under OpenVMS. See INFO.TXT for additional details on the content of some of these files. readme.txt Similar to the contents of this section. license.txt The full text of the GNU General Public License (copied from www.gnu.org/licenses/), under whose terms this free software is distributed. ifop.cob IFOP (Irvine Fasteners Operations) COBOL source. This is a large program (more than 50,000 lines, many lines longer than 100 characters). You need a good, fast text editor to handle it (versatile and convenient search features, bookmarks, etc.). ifmaint.cob IFMAINT COBOL source: companion program of IFOP, for year- end data file maintenance. Details in INFO.TXT. ifcreate.cob - IFCREATE COBOL source: small utility needed to create the initial (empty) data files used by IFOP. Details in INFO.TXT. ifcobrep.cob IFCOBREP COBOL source: small utility needed to process the REPLACE statements (text substitution macros) in IFOP.COB before compilation, if the compiler cannot do it (because of the program’s large size). Details in INFO.TXT. ifop.exe, ifmaint.exe, ifcreate.exe, ifcobrep.exe - executable images of the programs listed above. notes.txt The text for the numbered documentation notes in IFOP.COB. info.txt General programming and operating documentation for IFOP. database.txt Documentation for the IFOP data files and their fields. menus.txt Documentation for the IFOP menus and section labels. It is also a convenient summary of IFOP’s functions. The following two files are extracts from the book Software and Mind (by Andrei Sorin, the author of IFOP). They are included in this package because of their relevance to the programming methods employed in IFOP. For additional extracts from the book, see the section View/download book and extracts on this page. Software_and_Mind_extract_File_Operations.pdf A study of the traditional operations involving indexed data files, their integration with programming languages, and their benefits relative to relational databases. Software_and_Mind_extract_Goto_Delusion.pdf A study of the fallacies surrounding the GO TO statement and its prohibition in structured programming.



The following files are included in the Digicube.zip package. To properly view the *.txt and *.c files, use a monospaced font (like Courier) and no word wrap. Digicube works on PCs running any regular 32- or 64- bit version of Microsoft Windows. readme.txt Similar to the contents of this section. license.txt Full text of the GNU General Public License (copied from www.gnu.org/licenses/), under whose terms this free software is distributed. manual.pdf The Digicube reference manual (in PDF format). notes.txt Notes for programmers, to supplement the comments embedded in the program’s source. digicube.exe The Digicube program. d16cube.exe 16- bit version of Digicube, for 16- bit operating systems like MS- DOS (the hardware, though, must be 32- bit or 64- bit). digicube.c The C source code of Digicube. diginp.txt Example input file with a few scripts. digopt.txt Empty options file. The following three files are examples of the Digicube feature back sequences. (They are included because they take many hours to generate.) seqnot.txt All sequences of 12, 14, 16, and 18 moves, leading to a position identical to the initial position (do- nothing sequences). seqflip2.txt All sequences of 16 and 18 moves, leading from the solved position to a position with 2 flipped edge pieces, or from such a position to the solved position. seqflip4.txt All sequences of 16, 18, and 20 moves, leading from the solved position to a position with 4 flipped edge pieces, or from such a position to the solved position. Software_and_Mind_Introduction.pdf The introductory chapter of the book Software and Mind (by Andrei Sorin, the author of Digicube). If you like Digicube, as user or as programmer, you may also like this book. For additional extracts from the book, see the section View/download book and extracts on this page.



Site content © 2020 Andrei Sorin. Content may be copied and used freely, except for those parts where different conditions are specified.



Top

Named to Kirkus Reviews’ Best Books of 2013

View/download book and extracts

Download software: IFOP (for business)

ForeWord Reviews www.forewordreviews.com “Sorin’s indictment of his profession is sure to stir up controversy and may come as a big surprise to many of his colleagues, let alone to the general public, which has come to revere software creators as something akin to the gods of old.”



Download software: Digicube (for fun)

Book reviews

Where to buy the book

About the book

About the myth

About the author

Kirkus Reviews www.kirkusreviews.com “In this massive philosophical treatise that crosses disciplines with verve and meticulous logic, politics, cognitive science, software engineering and more become threads in a complex examination of mental modeling.”



Consequences of the myth

Book contents

Midwest Book Review www.midwestbookreview.com “A work of impressively presented scholarship, and a highly recommended, seminal addition to personal, professional, and academic library Computer Science and 21st Century Philosophy reference collections and supplemental reading lists.”



Related articles

Site notes

Search in the book

Reader Views www.readerviews.com “If you are in school learning to program, read the book. If you program for a living, read the book. If you manage programmers, read the book. If you are thinking of investing in a software system, read the book before you buy.”



Section Consequences (42 pages, 287 KB) This section examines the corruptive effect of the mechanistic ideology in universities, and shows how this ideology leads to fraudulent theories in the human sciences and in software development.



Section A New Form of Domination (44 pages, 307 KB) This section shows that the software elites are promoting mechanistic concepts in order to prevent independence and expertise in software- related activities.



Section Software Charlatanism (54 pages, 372 KB) This section shows that the development systems and methods promoted by the software elites are based on mechanistic fallacies and cannot provide the benefits claimed for them.



Part of chapter 6

Part of chapter 4

Part of chapter 7

The mechanistic myth and the software frauds

Section The Software Myth (34 pages, 231 KB) This section examines the fallacies of the mechanistic software ideology, and shows how it is preventing expertise in software- related activities.



Section The Slogan “Technology” (30 pages, 225 KB) This section explains how the abstract term "technology" is being misused in order to make concepts, products, and activities appear more important than they actually are.



Part of Introduction

Part of chapter 5

Part of chapter 3

Part of chapter 3

Part of chapter 6

Part of Introduction

Title: Software and Mind The Mechanistic Myth and Its Consequences Author: Andrei Sorin Format: hardcover, 944 pages 163x241x61 mm (6.4x9.5x2.4 inch) Publication date: January 2013 ISBN: 978- 0- 9869389- 0- 0 Publisher: Andsor Books, Toronto, Canada www.andsorbooks.com (the present site)





Read full review

Read full review

Read full review

Read full review