Category: Research

  • Thoughts on Posthumanism, Social Justice, and Environmentalism on the Ivan Allen College Website

    Screenshot of top of article titled, "How the Posthuman Helps Us Respond to a Changing World." Link to article in the text below.

    How can we leverage posthumanist ideas to respond to the world’s social and ecological crises? My colleagues at Georgia Tech (Lisa Yaszek, Regents Professor of Science Fiction Studies; Zita Hüsing, Assistant Director of the Writing and Communications Program and Marion L. Brittain Postdoctoral Fellow; and Paul B. Foster, Associate Professor of Chinese) and I give our perspectives in this brief multimodal article that might be great to share with students if you need a resource that succinctly breaks down what posthumanism is and addresses its connections to feminism, social justice, and environmentalism.

    Previously, Lisa Yaszek and I wrote an book chapter on Posthumanism and Science Fiction for The Cambridge Companion to Literature the Posthuman (2016). You can read our chapter here.

    If you’d like to talk about posthumanism or collaborate on a related project, drop me a line at my email address in the about box to the right.

  • Kant Generator Pro 1.3.1, a Modular Text Generator Originally Made to Create Psuedo-Kantian Philosophical Writing

    Kant Generator Pro 1.3.1 folder and icon group on Macintosh System 7.5.5

    Continuing my exploration of non-artificial intelligence (non-AI) programs that can generate images (see KPT Bryce and Evolvotron) and text (see Electric Poet 1.6), I discovered this really innovative piece of text generating software by Mark Pilgrim called Kant Generator Pro 1.3.1 for Macintosh 68k computers.

    The Kant Generator Pro folder, which includes the Kant Generator Pro application, Program Notes file, and folders for its text generating modules and scripting, is only 560K. The Kant Generator Pro application is 176K and it has a suggested RAM size of 1,024K. The copy that I downloaded from Macintosh Garden here had the minimum RAM size set at 512K and the Preferred size set to 11,024K.

    According to the program’s built-in Help (shown in a screenshot down the page):

    Kant Generator Pro was originally designed to generate text that vaguely resembles Immanuel Kant's Critique of Pure Reason, a brilliant and revolutionary piece of philosophical writing which, for some time now, has been serving as the fourth leg of my wobbly refrigerator. It has since been expanded to allow you to generate anything you like. Several modules are include with this program which can create anything from thank you notes to excuses for being late to work. You can also design your own modules with the full-featured module editor. 

    And on a saved copy of Pilgrim’s personal website from 21 Dec. 1996, he writes the following about Kant Generator Pro:

    Purpose: to generate pseudo-Kantian philosophy based on Kant's vocabulary and sentence structure in the "Critique of Pure Reason". Anyone who has been subjected to Kant (voluntarily or otherwise) will appreciate the humor in the gibberish this program outputs. Also includes a module editor so you can create your own generation modules.
    
    Kant Generator is quickly becoming my most popular program (although it is still in third place behind Startup Screen Picker and Shutdown FX), especially among philosophy students, graduates, and professors. When I showed it (off) to my professor for my Kant course, he immediately started describing something he had written years ago to achieve a similar result, though by a completely different method. Other professors from across the country have praised it, saying they will use it in their introductory philosophy courses to 'stimulate interest in philosophy'. I guess every little bit helps.
    
    I am slowly but steadily adding more modules to Kant Generator Pro. Version 1.1 added a Husserl module, as well as "thank you" note module (which occurred to me while procrastinating writing my Christmas thank you notes). Version 1.2 added an "excuses" module, written by Mike W. Miller. Version 1.3 added a Swedish Kant module, which is just the original Kant module with all the references and instantiations converted into Swedish Chef talk. (Yes, I used the code from Chef, and yes, I automated the process to cycle through all the instantiations and convert them, and no, you can't have the code. Just what we need is people running around converting all their KGP modules to Swedish Chef, or WAREZ, or Fudd...) Version 1.3 also added scripting support; anyone who wants to set up a WWW page and call Kant Generator Pro with a CGI interface through AppleScript has my permission as long as you send me your CGI interfacing code.
    
    It's very exciting to have other people writing modules for Kant Generator Pro, if nothing else because it means I don't have to do anything for the program to keep improving. Suggestions for future philosopher modules (or anything else) are always appreciated, although I am reluctant to write modules of philosophers I haven't studied myself. Satire is the sincerest form of flattery, but also the most difficult... 

    The source code for Kant Generator Pro is also available bundled with the application in the Info-Mac repository here.

    Below, I’ll annotate screenshots of the application running on an installation of Macintosh System Software 7.5.5 on the PPC emulator SheepShaver hosted by Debian 12 Bookworm with the Xfce Haiku Alpha window theme active.

    Kant Generator Pro for Macintosh, Composing Window after launch

    After opening Kant Generator Pro, the user is presented with a text entry window much like in any text or word processing software. One can enter text, but to have the program generate text, one needs to use the menus: first, to select the text generation module from the Options menu, and then, to select from the type of text to generate from the Insert menu.

    Kant Generator Pro for Macintosh, Apple menu

    Clicking on the Apple menu gives you options for About Kant Generator Pro, Other products, and Help.

    Kant Generator Pro for Macintosh, About window

    Opening the About window from the Apple menu features a scrolling credits and copyright notice.

    Kant Generator Pro for Macintosh, Apple menu > Help

    Selecting Help from the Apple menu provides lots of useful information about how to use Kant Generator Pro to generate text, how to edit the modules that it uses for text generation, and technical information about the design of the program.

    Kant Generator Pro for Macintosh, Apple menu > Help > Editor > Getting Started

    Choosing Editor > Getting Started on the Help window shows the information displayed above. Like Electric Poet, which I wrote about yesterday here, Kant Generator Pro relies on randomness, but unlike Electric Poet, Kant Generator Pro relies on more structure in building relationships between words and strings of text by editing a given Module (like Electric Poet’s Library). But where Kant Generator Pro gets really interesting is in how the responses can be engineered while editing the Module to reference and nest references within references.

    Kant Generator Pro for Macintosh, File menu

    The File menu gives you access to basic file operations.

    Kant Generator Pro for Macintosh, Edit menu

    The Edit menu has basic edit operations.

    Kant Generator Pro for Macintosh, Options menu

    The Options menu controls Kant Generator Pro’s primary feature–the Module used for text generation, but it also gives the user options for how fast it generates text, whether music is played or not while generating text, and to speak the generated text a voice with Apple’s Text-to-Speech technology.

    Kant Generator Pro for Macintosh, Options > Modules

    In the Options menu > Modules, the user chooses the text generator module to use. The Program Notes file (dated 26 Jun. 1995) included with the application describes the included modules:

    Kant Generator Pro has the built-in capability to generate enormous amounts of Kantian gibberish, but if you'd like to play with generating your own text, it also lets you create, edit, and use external modules.  There are several modules included in this release:
    
    Kant: this is exactly the same as the built-in Kant module, except that you can edit it.  The most general reference is &section.
    
    Swedish Kant: this is the same as the Kant module, except that all references names and text have been converted to mock Swedish Chef (as featured in my program Dialectic, which should be available wherever you got this package).  The most general reference is &secshun.
    
    Husserl: a module which emulates Edmund Husserl, a 20th-century phenomenologist.  The most general reference is &section.
    
    Thank You: a module which generates thank-you notes for all occasions.  The most general reference is &thank-you-note.
    
    Excuses, excuses: a module which generates for excuses explaining exactly why you can't come to work.  The most general reference is &Yet-Another-Excuse.  Written by Mike W. Miller.
    
    Math: a module which generates algebraic equations using +, -, *, /, parentheses, and three variables X, Y, and Z.  The most general reference is &term.  Written by David Scheidt (the same friend who discovered that he had 19 copies of the GPL).
    
    Palindrome: a modules which generates palindromes (strings which spell the same backwards and forwards).  The most general (and only) reference is &palindrome.  Written by David Scheidt.
    
    Pascal: a module which generates syntactically correct statements in the Pascal programming language.  The most general reference is &pstate.  Written by David Scheidt.
    
    Parentheses: a module which generates strings of balanced parentheses.  The most general reference is &balanced-parens.  Written by David Scheidt.
    
    Syntax test: this is a sample module which gives examples of the different forms of syntax which Kant Generator Pro can deal with.  All the references are relevant, but you won't get much out of them unless you look at them in the module editor first.
    
    If you'd like to create your own modules, poking around with these should be enough to get you started.  There are several pages of help in the Kant Generator Pro application which talk about building modules, and I also support balloon help for all the menus.  If you're still confused, drop me a line (my e-mail address is in the application's help section) and I'll try to help.
    Kant Generator Pro for Macintosh, Options > Music

    The Options menu > Music has options for Always, Only while generating, and Never.

    Kant Generator Pro for Macintosh, Options > Speech menu

    The Options menu > Speech selection pulls available voices from Apple’s Text-to-Speech (if installed on the Macintosh) to give users an opportunity to have the generated text read aloud.

    Kant Generator Pro for Macintosh, Search menu

    The Search menu gives users an easy way to find and replace text in the text generation window (but not the Editor window shown further below).

    The Insert menu changes based on which Module the user selects after opening Kant Generator Pro. This menu is what directs Kant Generator Pro to generate text based on the text corpus and engineered relationships in the Module. Kant Generator Pro uses randomness to piece together options within the corpus and those established relationships to string words together into phrases, sentences, paragraphs, and sections. The above options in the Insert menu are for the Kant Module.

    Kant Generator Pro for Macintosh, Insert menu

    The Insert menu options shown above are for the Thank You Module.

    Kant Generator Pro for Macintosh, Editor menu

    The Editor menu gives options to create a new module or open a module in the Editor window.

    Kant Generator Pro for Macintosh, Editor window

    The Editor window for a Module is where the end user can construct new References (top pane) and Instantiations (lower pane). You can see in the lower pane how References string together other References and Instantiations within References to give the generated text structure.

    Kant Generator Pro for Macintosh, Windows menu

    The Window menu allows the user to switch between multiple open files in different windows.

    Kant Generator Pro for Macintosh, Kant module | Insert > sentence

    Using the Kant Module, I used the application to generate the sentence above.

    Kant Generator Pro for Macintosh, Excuses module | Insert > sentence

    Using the Excuses, excuses Module, I used the program to generate the above outlandish excuse.

    Kant Generator Pro for Macintosh, Thank You module | Insert > paragraph

    Finally, using the Thank You Module, I generated the rather strange gift thank you.

    Like Electric Poet and large language model (LLM) artificial intelligence today, there is some trial-and-error involved. Electric Poet and Kant Generator Pro rely on a corpus of text, a system of relationships, and randomness to select what word or phrase goes next given a set of rules. In a sense, LLMs aren’t that much different except in scale. Based on a given LLM’s training, the relationships between words (or tokens) are far more complex. The hidden layers of an LLM construct relationships that are not simply 1-to-1. Analogous to neurons in our brains, the connections and weights for each connection between tokens are vast and labyrinthine.

    Nevertheless, I can imagine Electric Poet and Kant Generator Pro being used today–over 25 years after being first developed in the latter’s case–as a tool to help students think about how text generation can work in a very simplified manner. This can be paired with sentence diagramming of some of their own writing, which can be duplicated within Kant Generator Pro as a “Me” Module that can reproduce one’s own writing. Then, students can advance to more complicated topics with how LLMs are trained on big data to create models that are magnitudes more sophisticated than their Library for Electric Poet or Module for Kant Generator Pro. Throughout the process, an important reminded needs to be reinforced–there is no intelligence in these Macintosh programs or LLMs as they currently exist. The old and the new generate text based on rules applied to models–the former being simple and the latter being much more complex, but in both cases not having awareness or self-direction. Though, it seems like we are going in the direction of self-awareness and self-direction far more quickly than seems safe to me.

  • Electric Poet 1.6, a Macintosh Poetry Generator Program

    Electric Poet 1.6 for Macintosh, Icon Group

    Like I’ve written before about image generation software such as KPT Bryce and Evolvotron, which employ fractals instead of artificial intelligence (AI) to generate landscapes and abstract images respectively, there are also text generating programs that use a variety of coding tricks to string words together in a far less complex manner than those used by large language model (LLM) AI systems today. Nevertheless, these precursors to generative AI deserve our attention to explore how they work and what they might have been and still used for.

    One such text generating program is Electric Poet 1.6 by Niklas Frykholm. It is a program that is only 48K in size, uses 600K of RAM, and is built to run on 68K-based Macintosh computers. For testing and creating the screenshots below, I used SheepShaver running System Software 7.5.5.

    In his abstract for the Info-Mac Archive (available in a viewable format here or as a part of the entire Info-Mac archive here), Frykholm writes, “Electric Poet can use an ordinary text file as a mould for creating its own litterary [sic] works. This works best with abstract poetry where it’s sometimes hard to tell real from bogus.”

    On 28 Sept. 1996 on his personal website, he writes, “Electric Poet is a fusion between my interest in computers and my interest in poetry. It is an attempt to write a program, capable of creating its own literary works. The Electric Poet takes the works of a biologic poet (as a TEXT-file) and rearranges them in a random but controlled manner. Heres a poem written by the program:

    often
    and closer to the chasm
    until you still have been squeezed by the mysterious event
    it showed clearly for the trouble
    and the progress
    about my desktop”

    And according to Frykholm’s “Technical Notes” on the program’s About window, “The method the computer uses for generating text is simple and requires little or no intelligence. When the computer converts a text to a library it creates for each word in the text a list of the words that (at different places in the text) follow that word.”

    “When the text is to be created, the computer starts with a certain word. It then chooses a word at random from the list of words that could follow the world. After that it chooses a word at random from the list of words following that word, and so on . . .”

    Essentially, Electric Poet is a clever piece of software that uses word relationships within a given text to create text based on random selections within that set of relationships.

    Electric Poet 1.6 for Macintosh, Program's "The Poetry" window

    After double clicking on Electric Poet 1.6 in the icon group shown at the top of the page, the program presents “The Poetry” window with a blinking cursor. To have the program generate poetry, the user needs to open a Library from the File menu and then choose “Generate Text” from the Poet menu.

    Electric Poet 1.6 for Macintosh, About Window > Credits

    Opening the “About Electric Poet” from the Apple menu gives the user a super helpful set of tabs that gives you information for registering the shareware program, help using the software, an explanation of the menu items, and technical notes about how the program works to generate text.

    Electric Poet 1.6 for Macintosh, About Window > Help

    The About Electric Poet’s Help tab breaks down what the user needs to do so that the program generates text. The first step is to “install” or open a Library. While Electric Poet comes with a sample Library based on the script for the film Star Wars, most users would probably want to create their own Library, which is easy enough to do. Once the Library is created and loaded, Electric Poet can then generate text from the Poet menu.

    Electric Poet 1.6 for Macintosh, About Window > The Menus

    The About Electric Poet’s The Menu tab gives further explanation about what each menu option does in the program.

    Electric Poet 1.6 for Macintosh, About Window > Technical Notes

    The About Electric Poet’s Technical Notes provides details about how it uses lists of words and the words that follow immediately after those words as a corpus of random selections linked to adjacent words. This is the magic that makes this program generate text. It uses lists of adjacent words and random selection to thread together sentences and phrases.

    Electric Poet 1.6 for Macintosh, File menu options

    To get started with Electric Poet, the File menu gives you access to opening a Library or creating a Library from “TEXT to Library.” It’s important to note that you need to have your text file in Teach Text format before attempting to create your own Library. I discovered that when opening a raw text file the program would create a list of words (as it would normally when creating a Library), but then the program would lock up and while I could still move the mouse, I could no longer use the menu, switch programs, or activate the Finder. I would have to kill the SheepShaver process on Debian and relaunch. I observed this same behavior when running Electric Poet on the 68k emulator Basilisk II.

    To avoid this problem, open your raw text file in BBEdit or another full-featured text editor (if it is larger than 32K–the Teach Text limit), copy an excerpt to the Clipboard, and then go into Teach Text, paste the text, and save it as a file. Then, use “TEXT to Library” in Electric Poet to create a Library from that Teach Text-saved file.

    Electric Poet 1.6 for Macintosh, Poet menu options

    Once you’ve opened your Library file, you can now use the Poet menu to “Generate Text.”

    Electric Poet 1.6 for Macintosh, Poet menu > Generate Text window

    The “Generate Text” menu option presents you with these controls before generating some text in “The Poetry” window. It allows you to choose how many words to generate and the option to begin with a random word or a specific word. If you choose a specific word, bear in mind that it is case sensitive. For example, I tried beginning with “Cyberspace,” but the word was not found in the Library. I tried with “cyberspace” and it generated text as shown below.

    Electric Poet 1.6 for Macintosh, Output in The Poetry window

    Above, is a sample of text generated from “The Shopping Expedition,” the third chapter of William Gibson’s Neuromancer (1984). This example is just one run. Subsequent runs will yield very different results. In this regard, it is like using Stable Diffusion or LLaMA in that many iterations are often required to generate an output that is desired by the end user.

    Soon, I’ll post about Kant Generator Pro, another Macintosh text generator program that creates pseudo-sense/technobabble text (writing like the philosopher Kant) as well as form generated writing, such as thank you notes. The form generated writing that Kant Generator Pro can do is aligned with one of the kinds of writing large language models are supposed to be able to help us with–emails, follow-ups, etc.

  • Vintage Computer Festival Southeast (VCFSE 2.0) 2014

    Georgia Tech Librarians Sherri Brown, Lizzy Rolando, Alison Valk, and Wendy Hagenmaier

    For the second Vintage Computer Festival Southeast (VCFSE 2.0) in 2014, I went with my Georgia Tech Library colleagues Sherri Brown, Lizzy Rolando, Alison Valk, and Wendy Hagenmaier (I wrote about the first VCFSE and shared photos last week here).

    For me, it was great to bridge my professional and hobby worlds–one about studying and preserving our software and hardware digital culture and one about geeking out about retrocomputing–fixing it, using it, and playing with it. Sharing this event with my colleagues who were also negotiating these two overlapping worlds made it memorable to me.

    Below, I share photos from the Digital Archivists presentation panel and photos of the Apple Pop-Up Museum and other installed exhibits, and many photos from the individual exhibitor hall.

    When we first got there, we had a chance to talk with the founder Lonnie Mimms (right) who was wearing a green t-shirt emblazoned with the rebranding for the space as the Computer Museum of America.

    Digital Archivists Panel

    Wendy Hagenmaier and Jason Ellis after the Digital Archivist panel.

    Wendy and I co-presented about “Digital Archives and Vintage Computing at Georgia Tech” during the Digital Archivists panel. Our notes from the event can be found here.

    Digital PDP-8

    MITS Altair 8800

    IMSAI 8080

    Apple I in Wood Case

    Apple I Motherboard

    Apple II

    Apple Disk II, Serial Number 00001

    Apple II Plus

    Apple IIe

    Apple IIc

    Apple IIc with Monitor

    Apple III Prototype Board and Production Model

    Commodore PET

    Hewlett Packard 85

    VCFSE 2.0, Computer Displays, Hewlett Packard 85

    IBM Personal Computer

    IBM Portable PC

    VCFSE 2.0, Computer Displays, IBM Portable PC

    IBM PC AT

    VCFSE 2.0, Exhibition Hall,

    Apple Lisa

    Apple Macintosh

    Apple PiPPiN

    BeBox

    As I’ve written before here and here, I really like BeOS, so it was a special joy to see a BeBox in person for the first time at VCFSE 2.0.

    Datapoint 2200

    Kenbak-1

    Miscellaneous Displays

    Exhibition Hall

    MITS Altair 8800 in Operation

    VCFSE 2.0, Exhibition Hall, MITS Altair 8800 Running

    MITS Altair 680

    Amiga 1000

    Miscellaneous Computers in the Exhibition Hall

  • September 2023 Updates to the Generative AI and Pedagogy Bibliography Page

    An anthropomorphic cat dressed like a professor in a tweed jacket, sitting at a desk with papers in front of him. Shelves of books behind him. Image created with Stable Diffusion.

    Since posting the original version of my Generative Artificial Intelligence (AI) and Pedagogy Bibliography and Resource List in April 2023, I have continued to add resources that I find through my research and daily online reading. I’ve added 61 articles and books to the bibliography since August 2023 for a total of 382 MLA-formatted references. Also, it has 55 online groups and resources linked at the bottom. Whenever you access the bibliography, you can check the bottom of the page to see if I’ve recently updated it–I always add the date for any updates.

    I hope that the bibliography might be useful to you! If there’s something that my bibliography is missing, send me an email (details in the “Who is Dynamic Subspace” widget to the right) or connect with me on social media (links on my About page).