Files
basic-computer-games/20_Buzzword/python/buzzword.py
Martin Thoma 4b3b991273 Use docstrings
2022-04-02 08:10:01 +02:00

139 lines
4.2 KiB
Python

"""
Buzzword Generator
From: BASIC Computer Games (1978)
Edited by David H. Ahl
"This program is an invaluable aid for preparing speeches and
briefings about education technology. This buzzword generator
provides sets of three highly-acceptable words to work into your
material. Your audience will never know that the phrases don't
really mean much of anything because they sound so great! Full
instructions for running are given in the program.
"This version of Buzzword was written by David Ahl."
Python port by Jeff Jetton, 2019
"""
import random
def main() -> None:
words = [
[
"Ability",
"Basal",
"Behavioral",
"Child-centered",
"Differentiated",
"Discovery",
"Flexible",
"Heterogeneous",
"Homogenous",
"Manipulative",
"Modular",
"Tavistock",
"Individualized",
],
[
"learning",
"evaluative",
"objective",
"cognitive",
"enrichment",
"scheduling",
"humanistic",
"integrated",
"non-graded",
"training",
"vertical age",
"motivational",
"creative",
],
[
"grouping",
"modification",
"accountability",
"process",
"core curriculum",
"algorithm",
"performance",
"reinforcement",
"open classroom",
"resource",
"structure",
"facility",
"environment",
],
]
# Display intro text
print("\n Buzzword Generator")
print("Creative Computing Morristown, New Jersey")
print("\n\n")
print("This program prints highly acceptable phrases in")
print("'educator-speak' that you can work into reports")
print("and speeches. Whenever a question mark is printed,")
print("type a 'Y' for another phrase or 'N' to quit.")
print("\n\nHere's the first phrase:")
still_running = True
while still_running:
phrase = ""
for section in words:
if len(phrase) > 0:
phrase += " "
phrase += section[random.randint(0, len(section) - 1)]
print(phrase)
print()
response = input("? ")
try:
if response.upper()[0] != "Y":
still_running = False
except Exception:
still_running = False
print("Come back when you need help with another report!\n")
if __name__ == "__main__":
main()
######################################################################
#
# Porting Notes
#
# The original program stored all 39 words in one array, then
# built the buzzword phrases by randomly sampling from each of the
# three regions of the array (1-13, 14-26, and 27-39).
#
# Here, we're storing the words for each section in separate
# tuples. That makes it easy to just loop through the sections
# to stitch the phrase together, and it easily accomodates adding
# (or removing) elements from any section. They don't all need to
# be the same length.
#
# The author of this program (and founder of Creative Computing
# magazine) first started working at DEC--Digital Equipment
# Corporation--as a consultant helping the company market its
# computers as educational products. He later was editor of a DEC
# newsletter named "EDU" that focused on using computers in an
# educational setting. No surprise, then, that the buzzwords in
# this program were targeted towards educators!
#
#
# Ideas for Modifications
#
# Try adding more/different words. Better yet, add a third
# dimnension to our WORDS tuple to add new sets of words that
# might pertain to different fields. What would business buzzwords
# be? Engineering buzzwords? Art/music buzzwords? Let the user
# choose a field and pick the buzzwords accordingly.
#
######################################################################