Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

quilt poems #22

Open
lee2sman opened this issue Nov 23, 2024 · 13 comments
Open

quilt poems #22

lee2sman opened this issue Nov 23, 2024 · 13 comments

Comments

@lee2sman
Copy link

lee2sman commented Nov 23, 2024

update: see project repo

I have a bit of an idea in my head for a book of computational quilt poems but don't know all the "pieces" yet ( lil quilt joke there for ya).

I'm just gonna talk it out loud here in text as I write.

I'll probably code in Lua since that's been my fave language to mess around in for a while.

I think I'll have recipes for different patchwork quilt styles, like log cabin, lazy gal bars, housetop, blocks and strips,

A lot of my visual quilt influence comes from the Gee's bend quilters, but I'm not sure.

At first I was thinking about using numbers to make a quilt:

"crazy":

84889247
35564599
67261328
24219258
63655937
57493489
19512694
11513998

a Housetop variation:

77777777
76666660
76555510
76544410
76542310
76543310
76111110
70000000

Then, considering Puzzlescript, I could turn these into color blocks for example and build out a whole quilt, where each number is one square in one color.

Here's a past example of a puzzlescript sound toy thing I made that kind of looks like that kind of approach:

babylon-quilt

I think that's worth pursuing again at some point, but maybe not for this project where I'm trying to produce a "novel" of 50k words.

So instead, what if each number in the pattern for a quilt is a word.

So what would an example from that housetop variant look like?

Maybe I need to pick a title, and then select words for that quilt poem based on that title?

I'm not sure what corpora to use and I'm not much of a fan of LLMs so I'll just try one out using some of Darius' Corpora as a first test:

I went into the "colors" category, which is ironic since I was talking about not using color, but I guess it counts if it's words. I used only single-word color names from crayola for this first test:

Mahogany Housetop

Almond Almond Almond Almond Almond Almond Almond Almond Almond
Almond Carnation Carnation Carnation Carnation Carnation Carnation Copper
Almond Carnation Mahogany Mahogany Mahogany Mahogany Radical Copper
Almond Carnation Mahogany Red Red Red Radical Copper
Almond Carnation Mahogany Red White Yellow White Copper
Almond Carnation Mahogany Red Yellow Yellow White Radical
Almond Carnation Radical Radical Radical Radical Radical Almond
Almond Copper Copper Copper Copper Copper Copper Copper Copper

Hmmmm. What do I think about this?

Let's try non-color words:

This time I tried words from the list of fireworks. Same pattern as above quilt-poem:

bengal fire bengal fire bengal fire bengal fire bengal fire bengal fire bengal fire bengal fire
bengal fire falling leaf falling leaf falling leaf falling leaf falling leaf falling leaf falling leaf fish
bengal fire falling leaf ground bloom flower ground bloom flower ground bloom flower ground bloom flower spider fish
bengal fire falling leaf ground bloom flower horsetail horsetail horsetail horsetail spider fish
bengal fire falling leaf ground bloom flower horsetail waterfall maroon spider fish
bengal fire falling leaf ground bloom flower horsetail maroon maroon spider fish
bengal fire falling leaf spider spider spider spider spider fish
bengal fire fish fish fish fish fish fish fish

Hmmm. I might need different word lists, with more meaningful connections between the words. Need to think more on it.

@lee2sman
Copy link
Author

lee2sman commented Nov 23, 2024

Oh wait, it needs to be space-corrected to look visually like a quilt!

This will depend on whether you're looking at this in a monospace font!

Almond Almond	 Almond    Almond    Almond    Almond    Almond    Almond 
Almond Carnation Carnation Carnation Carnation Carnation Carnation Copper
Almond Carnation Mahogany  Mahogany  Mahogany  Mahogany  Radical   Copper
Almond Carnation Mahogany  Red       Red       Red       Radical   Copper
Almond Carnation Mahogany  Red       White     Yellow    Radical   Copper
Almond Carnation Mahogany  Red       Yellow    Yellow    Radical   Copper
Almond Carnation Radical   Radical   Radical   Radical   Radical   Copper
Almond Copper    Copper    Copper    Copper    Copper    Copper    Copper 

Here's a screenshot since you're probably not viewing this in monospace:

almond-quilt-poem-test

and in dark mode:

almond-quilt-words

Could still put color back into this!

@lee2sman
Copy link
Author

I'm back

❯ lua drug-quilt.lua
Pieces:
1: Anabolic
2: Promethazine
3: Opana
4: Corgard
5: Calcium
6: InnoPran
7: Mesalamine
8: Edrophonium
Block width: 12
Mesalamine   Mesalamine   Mesalamine   Mesalamine   Mesalamine   Mesalamine   Mesalamine   Mesalamine   
Mesalamine   InnoPran     InnoPran     InnoPran     InnoPran     InnoPran     InnoPran     Edrophonium  
Mesalamine   InnoPran     Calcium      Calcium      Calcium      Calcium      Anabolic     Edrophonium  
Mesalamine   InnoPran     Calcium      Corgard      Corgard      Corgard      Anabolic     Edrophonium  
Mesalamine   InnoPran     Calcium      Corgard      Promethazine Opana        Anabolic     Edrophonium  
Mesalamine   InnoPran     Calcium      Corgard      Opana        Opana        Anabolic     Edrophonium  
Mesalamine   InnoPran     Anabolic     Anabolic     Anabolic     Anabolic     Anabolic     Edrophonium  
Mesalamine   Edrophonium  Edrophonium  Edrophonium  Edrophonium  Edrophonium  Edrophonium  Edrophonium  

@lee2sman
Copy link
Author

lol, now i'm getting somewhere

drug-colors

@lee2sman
Copy link
Author

Ok, lots more progress. I have many input data files (sanitized) from the corpora site. Now the program randomly picks a data source, picks pieces and then constructs the housetop quilt. Next step is to add more quilt patterns to select from instead of just housetop.

I'm also wondering if I should have some lines of text incorporated in some way from the book I found on Project Gutenberg called Quilts: Their Story and How to Make Them by Marie D. Webster from 1916. Maybe

Nothing Gouge quilt, housetop variation

fiends   fiends   fiends   fiends   fiends   fiends   fiends   fiends
fiends   blitzed  blitzed  blitzed  blitzed  blitzed  blitzed  gouge
fiends   blitzed  cleansed cleansed cleansed cleansed nothing  gouge
fiends   blitzed  cleansed yoicks   yoicks   yoicks   nothing  gouge
fiends   blitzed  cleansed yoicks   gouge    depth    nothing  gouge
fiends   blitzed  cleansed yoicks   depth    depth    nothing  gouge
fiends   blitzed  nothing  nothing  nothing  nothing  nothing  gouge
fiends   gouge    gouge    gouge    gouge    gouge    gouge    gouge

vs

nothing-gouge txt

@lee2sman
Copy link
Author

Project has a repo now.

Rather than this colorized command line output or no-color output I think I'll likely go in and output html/css files so I can make a nice printable booklet. I think?

Or maybe the goal should be to print a nice black and white zine? Patterns? Just words? Hmmmm.

@lee2sman
Copy link
Author

Some more BW no-color tests in the command line with many more quilt variations now:

Possible Hate quilt

school   fair     fair     school   should   school   should   charge   
fair     should   school   fair     hate     sound    charge   possible 
school   fair     charge   should   charge   school   hate     school   
hate     school   hate     should   happy    school   happy    possible 
should   happy    should   school   hate     happy    happy    hate     
charge   school   school   should   charge   should   happy    charge   
should   happy    charge   hate     possible should   school   should   
charge   happy    school   charge   possible hate     hate     happy    


Rely Tap quilt

trick   spot    spot    trick   spark   trick   spark   prevent 
spot    spark   trick   spot    tap     kiss    prevent rely    
trick   spot    prevent spark   prevent trick   tap     trick   
tap     trick   tap     spark   list    trick   list    rely    
spark   list    spark   trick   tap     list    list    tap     
prevent trick   trick   spark   prevent spark   list    prevent 
spark   list    prevent tap     rely    spark   trick   spark   
prevent list    trick   prevent rely    tap     tap     list 

Responded Addressed quilt

responded    responded    responded    responded    responded    responded    responded    responded    
addressed    addressed    addressed    addressed    addressed    addressed    addressed    addressed    
wrote        wrote        wrote        wrote        wrote        wrote        wrote        wrote        
instructed   instructed   instructed   instructed   instructed   instructed   instructed   instructed   
photographed photographed photographed photographed photographed photographed photographed photographed 
hypothesized hypothesized hypothesized hypothesized hypothesized hypothesized hypothesized hypothesized 
invented     invented     invented     invented     invented     invented     invented     invented     
calculated   calculated   calculated   calculated   calculated   calculated   calculated   calculated   


Absentmindedly Deceivingly quilt

absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly 
absentmindedly deceivingly    deceivingly    unnaturally    unnaturally    rudely         yawningly      absentmindedly 
absentmindedly deceivingly    deceivingly    unnaturally    unnaturally    rudely         yawningly      absentmindedly 
absentmindedly deceivingly    deceivingly    unnaturally    unnaturally    rudely         yawningly      absentmindedly 
absentmindedly deceivingly    deceivingly    unnaturally    unnaturally    rudely         yawningly      absentmindedly 
absentmindedly deceivingly    deceivingly    unnaturally    unnaturally    rudely         yawningly      absentmindedly 
absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly 
absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly absentmindedly 

Wow, some of these are great.

I think I want to center the word within their block next.

I was thinking I should print out the type of quilt after the name as well, so I'll have to add a lookup table or edit the big quilt pattern table, but i don't think i want to mess with its structure right now, for fear i'll have to modify the code elsewhere so lookup table it is.

@lee2sman
Copy link
Author

lookup table added. debugger and colors can be turned on and off.

Uneducated Academe cross bars quilt

uneducated     uneducated     uneducated     academe        academe        uneducated     uneducated     uneducated     
uneducated     uneducated     uneducated     academe        academe        uneducated     uneducated     uneducated     
uneducated     uneducated     uneducated     academe        academe        uneducated     uneducated     uneducated     
academe        academe        academe        academe        academe        academe        academe        academe        
academe        academe        academe        academe        academe        academe        academe        academe        
uneducated     uneducated     uneducated     academe        academe        uneducated     uneducated     uneducated     
uneducated     uneducated     uneducated     academe        academe        uneducated     uneducated     uneducated     
uneducated     uneducated     uneducated     academe        academe        uneducated     uneducated     uneducated 

Sitting room Sunroom amish bars variation quilt

sitting room sitting room sitting room sitting room sitting room sitting room sitting room sitting room 
sitting room sunroom      sunroom      staff room   staff room   sauna        closet       sitting room 
sitting room sunroom      sunroom      staff room   staff room   sauna        closet       sitting room 
sitting room sunroom      sunroom      staff room   staff room   sauna        closet       sitting room 
sitting room sunroom      sunroom      staff room   staff room   sauna        closet       sitting room 
sitting room sunroom      sunroom      staff room   staff room   sauna        closet       sitting room 
sitting room sitting room sitting room sitting room sitting room sitting room sitting room sitting room 
sitting room sitting room sitting room sitting room sitting room sitting room sitting room sitting room 

Pour Whisper housetop quilt

touch   touch   touch   touch   touch   touch   touch   touch   
touch   object  object  object  object  object  object  grab    
touch   object  support support support support pour    grab    
touch   object  support sigh    sigh    sigh    pour    grab    
touch   object  support sigh    whisper scrape  pour    grab    
touch   object  support sigh    scrape  scrape  pour    grab    
touch   object  pour    pour    pour    pour    pour    grab    
touch   grab    grab    grab    grab    grab    grab    grab   

Now to generate 50k words?

I have a function (in the sense of art opening, party), so let me come back to things tomorrow and see how I feel.

@lee2sman
Copy link
Author

added some more variations. okay, now i'm off the for the night.

Woefully Tomorrow log cabin quilt

woefully    tomorrow    weakly      diligently  woefully    tomorrow    weakly      diligently  
woefully    tomorrow    tomorrow    diligently  woefully    tomorrow    tomorrow    diligently  
woefully    woefully    woefully    diligently  woefully    woefully    woefully    diligently  
diligently  diligently  diligently  diligently  diligently  diligently  diligently  diligently  
woefully    tomorrow    weakly      diligently  woefully    tomorrow    weakly      diligently  
woefully    tomorrow    tomorrow    diligently  woefully    tomorrow    tomorrow    diligently  
woefully    woefully    woefully    diligently  woefully    woefully    woefully    diligently  
diligently  diligently  diligently  diligently  diligently  diligently  diligently  diligently  

@lee2sman
Copy link
Author

Came back from the party and thought i'd run another few off before bed. Still in love with this program:

Sleepily Seriously amish bars quilt

sleepily     sleepily     sleepily     sleepily     sleepily     sleepily     sleepily     sleepily     
sleepily     seriously    partially    seriously    partially    seriously    partially    sleepily     
sleepily     seriously    partially    seriously    partially    seriously    partially    sleepily     
sleepily     seriously    partially    seriously    partially    seriously    partially    sleepily     
sleepily     seriously    partially    seriously    partially    seriously    partially    sleepily     
sleepily     seriously    partially    seriously    partially    seriously    partially    sleepily     
sleepily     seriously    partially    seriously    partially    seriously    partially    sleepily     
sleepily     sleepily     sleepily     sleepily     sleepily     sleepily     sleepily     sleepily     

@lee2sman
Copy link
Author

one more before bed.

Blood Condition amish bars quilt

blood     blood     blood     blood     blood     blood     blood     blood     
blood     condition stay      condition stay      condition stay      blood     
blood     condition stay      condition stay      condition stay      blood     
blood     condition stay      condition stay      condition stay      blood     
blood     condition stay      condition stay      condition stay      blood     
blood     condition stay      condition stay      condition stay      blood     
blood     condition stay      condition stay      condition stay      blood     
blood     blood     blood     blood     blood     blood     blood     blood 

@lee2sman
Copy link
Author

lee2sman commented Nov 24, 2024

Okay, that wasn't too bad. I took a first pass at evenly distributing spaces before and after a word to get to the total maximum word length. I'm doing it per quilt rather than per column. I'm also making it so that if the number of spaces is odd then there is one less space in the "before spaces."

Here's an example of how it looks now:


Improve Trouble bullseye quilt

  stir  improve improve trouble trouble improve improve  punch  
improve   stir  improve trouble trouble improve  punch  improve 
improve improve   stir  trouble trouble  punch  improve improve 
 smoke   smoke   smoke    stir   punch   smoke   smoke   smoke  
 smoke   smoke   smoke   punch    stir   smoke   smoke   smoke  
improve improve  punch  trouble trouble   stir  improve improve 
improve  punch  improve trouble trouble improve   stir  improve 
 punch  improve improve trouble trouble improve improve   stir  

And another one:


Since Eye checkerboard quilt

 since    eye    since    eye    since    eye    since    eye   
  eye    since    eye    since    eye    since    eye    since  
 since    eye    since    eye    since    eye    since    eye   
  eye    since    eye    since    eye    since    eye    since  
 since    eye    since    eye    since    eye    since    eye   
  eye    since    eye    since    eye    since    eye    since  
 since    eye    since    eye    since    eye    since    eye   
  eye    since    eye    since    eye    since    eye    since  

and one more:

Badly Questionably crazy variation quilt

    badly      viciously  questionably   quirkily   questionably   viciously    viciously  questionably 
    badly    questionably   silently     silently     viciously    quirkily   questionably   silently   
  silently   questionably   quirkily     viciously  questionably   mortally     viciously    quirkily   
questionably   silently     silently     quirkily     quirkily   questionably questionably   silently   
  viciously    quirkily     mortally     viciously      badly      quirkily     silently     mortally   
  silently     viciously     slowly      quirkily   questionably   viciously    viciously  questionably 
  quirkily     mortally   questionably   mortally     silently   questionably    slowly    questionably 
    badly      viciously    quirkily     silently     viciously    quirkily     fiercely   questionably 

I assumed centering text was better but I think I need to hear some feedback from folks whether that is correct. I'm not sure! Maybe solid columns starting at same char location per column is better? Dunno. Will need to try some more.

@lee2sman
Copy link
Author

Coil Undress bars quilt

  coil  undress   fade   sprout  cause   hurry    sin    shave  
  coil  undress   fade   sprout  cause   hurry    sin    shave  
  coil  undress   fade   sprout  cause   hurry    sin    shave  
  coil  undress   fade   sprout  cause   hurry    sin    shave  
  coil  undress   fade   sprout  cause   hurry    sin    shave  
  coil  undress   fade   sprout  cause   hurry    sin    shave  
  coil  undress   fade   sprout  cause   hurry    sin    shave  
  coil  undress   fade   sprout  cause   hurry    sin    shave  

@hugovk hugovk added the preview label Nov 24, 2024
@lee2sman
Copy link
Author

Ok, I think I'm done for now.

I made some final edits and then monkeyed around with some ways to render to pdf with pandoc and latex but struggled with finding a proper fontsize to render (I tried pdflatex, weasyprint...). If the font is too big, the lines break. If the font is too small, unreadable. I ended up opening one of the outputs in libreoffice and manually editing a cover and info page. I think that's okay. I also looked for a good quilt image to put on the cover but ultimately went with a photo of my studio with a quilt hanging in it that I sewed, and my industrial Juki sewing machine that I've now sold. It's an old photo.

An example Quilt Poems book text output

PDF of a finished book (with manually added cover pages)

At some point I'll print a subset of quilt poems and turn into physical booklets I think.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants