Bri's Reflections

I was so excited when Kai wanted to work with me on this project, but I was very concerned I wouldn't be bringing enough to the so-called table with my skill set. I am happy to report that I proved myself wrong.

It was my idea to splice together these three stories for the group audiobook project, "The Yellow-Wallpapered Box-Social Story of an Hour," that inspired this one. So I was very intrigued with thinking about these stories as a compliation of paragraphs and seeing whether I could write code to replicate and riff off of the version I manually sliced together for the audiobook. As such, I created the pages (and code behind them) for both the paragraph reversal and thematic tagging sections.

I started by creating JSON files that treated each pagraph as its own string, with an associated array of thematic tags. For the paragraph reversals, I wrote a JavaScript function that would iterate over each paragraph and add them to the html. I copied that code and altered it to make my function iterate over the paragraphs in reverse order, and then I assigned each function to a click event on the respective buttons.

I wrote the paragraph reversal code before I created the tagging schema, and I actually found it to be very useful to check my tags on each paragraph by reading them in reverse order, so I could see how well I was thinking about each paragraph on its own, rather than only thinking about what I was bringing to each paragraph based on what was in the previous one. I kept tweaking the definitions of each of my tags and adding new tags each time I reread each story, which meant I had to keep checking my tag usage in the other two stories. The tags are of course much more subjective than objective, but I'm confident they present a useful and interesting way to filter each story. And I included the tag descriptions in the final presentation to be open with users in how I was using them.

Ultimately I hope to use these tags to write code that will replicate my splicing exercise, but it took me much longer to write the code just to filter each paragraph by tag than I thought it would. I learned many valuable lessons as I was trying to write this code, chief among which is that you can't assume the computer is reading your data the way you are reading your data and the console.log() is a great debugging tool. My original JSON format was overly complicated, so for these pages I moved my data into to a regular JavaScript file. I also learned the value of nesting code. I needed a function with a for loop within a for loop, so that it would iterate by paragraph and then iterate through each array of tags before pulling into the html the paragraphs associated with each tag. I had hoped to create some functionality that would allow you to view just one tag at a time, but I have yet to crack that code, and I've grown fond of the current display, which kind of overwhelms you by repeating the overlapping fragments of the story over and over and over again. I think this in itself is a deformance, somewhat akin to the feeling of reading a word so many times it starts to look strange and unfamiliar.

The CSS styling of the pages was a joint effort between Kai and me. But I have to give him all the credit for pulling all our pages together and creating the nav and making this a real website. Also a huge thank you to him for being patient with me as he helped me learn to use Git and GitHub, especially when I managed to lose almost all of my files on one commit attempt and had to rewrite them from memory. Thank you also to Jeff Allred for encouraging this project in all of its versions.