import random import functions # Data Workers # http://www.algolit.net/index.php/Data_Workers # --- # My summary of the exhibition: # # exhibition, audio tour, introductions to machine learning processes # machine learning, learning with machines, learning about machines, machines learning about others # a learning situation (teaching/introducing others) after learning situations (studying/understanding together) # --- # Learning, understanding, co-operating, collaborating, reading ... # ... with, through, via ... # ... algorithms, models, stories. # --- subjects = ['humans', 'machines', 'machine learning scripts', 'languages', 'writers', 'readers', 'learners', 'collaborators'] actions = ['learn', 'read', 'write'] conditionals = ['while', 'if', 'or', 'as'] relations = ['as', 'with', 'in'] timing = [''] # --- # "can we challenge this classification somehow? for example by looking at the ambiguous elements: predicters can be writers too" # --- # Complexifiers as words that complexify objects/subjects. # Adding a dimension. # Suggesting a relation to another object/subject. # Maybe the one object is not so different to the other? # --- complexifiers = ['computers', 'readers', 'writers', 'processors', 'learners', 'readers', 'writers', 'programmers'] # --- # Calculated randomness as the current selector algorithm ... # --- def get_random_from_list(list): list_length = len(list) random_num = random.randint(0, list_length) - 1 # Because len() always starts at 1 random_item = list[random_num] return random_item # --- # Another algologic is possible ... # --- def draft1(): for i, subject in enumerate(subjects): if i + 1 < len(subjects): print('---------') print(conditionals[i % len(conditionals)], subject, '({})'.format(complexifiers[i % len(complexifiers)]), actions[i % len(actions)], '...') print('---------') # draft1() # --------- # while humans (computers) learn ... # --------- # if machines (readers) read ... # --------- # or machine learning scripts (writers) write ... # --------- # as languages (processors) learn ... # --------- # while writers (learners) read ... # --------- # if readers (readers) write ... # --------- # or learners (writers) learn ... # --------- def draft2(): for subject in subjects: print( get_random_from_list(conditionals), subject, '({})'.format(get_random_from_list(complexifiers)), get_random_from_list(actions), get_random_from_list(subjects), '...' ) draft2() # if humans (writers) write machine learning scripts # as machines (writers) write machines # as machine learning scripts (writers) read readers # or languages (readers) read machine learning scripts # if writers (programmers) write humans # or readers (computers) write machines # if learners (readers) write learners # as collaborators (writers) write writers # --- # Selection of words from the Data Worker pads # What words are used to describe the exhibition, the projects, the intentions, the story? # --- padadj = ['voice', 'model', 'human', 'visionary', 'algorithmic', 'programming', 'editing', 'assisting'] padsubjects = ['voices', 'models', 'humans', 'visionaries', 'algorithmic writers', 'programmers', 'editors', 'authors', 'assistants'] padverbs = ['understanding', 'extracting', 'using', 'manipulating', 'plotting', 'writing'] specifics = ['with intent'] def draft3(): for subject in padadj: print(subject) print(get_random_from_list(subjects)) print('---') # draft3() # voice # humans # --- # model # collaborators # --- # human # learners # --- # visionary # machines # --- # algorithmic # readers # --- # programming # machine learning scripts # --- # editing # collaborators # --- # assisting # machine learning scripts # --- def draft4(): for verb in padverbs: print(verb) print(get_random_from_list(subjects)) print('(as {})'.format(get_random_from_list(padsubjects))) print('---') # draft4() # understanding # collaborators # (as editors) # --- # extracting # machine learning scripts # (as models) # --- # using # machines # (as visionaries) # --- # manipulating # collaborators # (as voices) # --- # plotting # machine learning scripts # (as humans) # --- # writing # machines # (as models) # --- # Using frames (sentences) to play with the subject words. # Nice how the sentences are already dynamic in itself, # it makes the game of exchanging words more interesting. # # But as a visual language it's perhaps a bit too much, # too subtle for something like a poster. # # clarity <-------------------> interesting wordplays # generated <-------------------> written # # --- # From: Course in General Linguistics - Ferdinand de Saussure frame = 'First something called "grammar" was studied. This study, initiated by the Greeks and continued mainly by the French, was based on logic.' def draft5(): for i in range(5): frame = frame.replace('grammar', get_random_from_list(subjects)) frame = frame.replace('Greeks', get_random_from_list(subjects)) frame = frame.replace('French', get_random_from_list(subjects)) print(frame) print('---') # draft5() # First something called "languages" was studied. This study, initiated by the readers and continued mainly by the collaborators, was based on logic. # --- # First something called "writers" was studied. This study, initiated by the collaborators and continued mainly by the humans, was based on logic. # --- # First something called "machine learning scripts" was studied. This study, initiated by the collaborators and continued mainly by the humans, was based on logic. # --- # First something called "readers" was studied. This study, initiated by the machine learning scripts and continued mainly by the collaborators, was based on logic. # --- # First something called "collaborators" was studied. This study, initiated by the machine learning scripts and continued mainly by the learners, was based on logic. # --- def draft2html(): tmp = '' for subject in subjects: print( get_random_from_list(conditionals), subject, '({})'.format(get_random_from_list(complexifiers)), get_random_from_list(actions), get_random_from_list(subjects), '...' ) row = ''' {} {}({}) {} {} {} '''.format( get_random_from_list(conditionals), subject, get_random_from_list(complexifiers), get_random_from_list(actions), get_random_from_list(subjects), '...' ) tmp += row html = '''

Data Workers



{}
Algolit oracles

writers

cleaners

informants

readers

learners

The exhibition is open from the 28th of March untill the 28th of April, between 10:00h and 18:00h.
www.algolit.net www.mundaneum.org '''.format(tmp) functions.write_html(html, 'data-workers.html') draft2html()