OSS Final Presentation

Project Title

Diasporadical Radio is an open-source and user-generated geographic map of independent global artists (artists not backed by Sony, Universal or Colombia), which focuses on people of the global south, indigenous and Black people. The map is open-source and works from user-generated data in order to present artists that slip through algorithms and do not show up on our corporate-curated playlists. By allowing users to contribute, the map creates a community of people with hopefully different tastes, but similar creative and political values.

Deliverables / Work Product

Final Repository 

Define the problem you addressed and greater landscape

Last year, writer, Liz Pelly, published a deep-dive into Spotify which originated from her year-long research of the tech company. Aside from issues of privacy and monopolization, the article was groundbreaking in the articulation of a greater socioeconomic shift that takes place when we rely on corporate-curated playlists and the imminent dangers of treating artists as brand ambassadors in a consolidating industry. This case study shows not only the commodification of art, but a transformation in the culture in which we begin to reward artists that make music from an understanding of algorithms which timeand time again have shown are coated in racist and hegemonic ideologies.

While Spotify and other music streaming platforms are just one cog in the AI factory which wants to quantify our tastes, music is a basic part of human ritual, and spirit. We negate human desire when we allow machines to dictate how we create and consume art.

Diasporadical Radio works in opposition to this structure, as a platform curated by humans and only featuring music from artists who are not represented by one of the three big corporate music labels. We also pose a question rarely asked on mainstream platforms: How do we reward people who don’t take alcohol / military money? We will encourage digitally-dependent  people who live in urban areas and are most affected by algorithms to break out of a regular routine to contribute. By adding artists and music, the user is contributing to the ritual of humans sharing music with other humans based on their individual taste. By streaming on the platform, users decentralize an algorithmic-dependent system.

Implementation

  1. Community / code of ethics
  2. What is open source anyway? User-generated data?
  3. Digital / internet accessibility (why Youtube)
  4. Practical accessibility (Audio) 

Longer-Term Goals

Keep developing!! 

Process NODE Express + MongoDB

SETUP

  1. Install Node
  2. Make sure it is installed by typing in “node” into terminal
  3. Install heroku
  4. Make heroku acct 

NODE

  1. cd path/to/this/code/directory
  2. npm install in terminal

HEROKU

  1. Heroku create in terminal
  2. heroku rename diasporadical-radio
  3. Heroku open

MONGODB

  1. heroku addons:create mongolab
  2. heroku config –shell | grep MONGODB_URI >> .env

 

START APP

  1. npm start (doesn’t work!!)
  2. Npm install -g nodemon

Radio Map Progress

WEEK 1

made Github…. first commit ☺️

Interactive map accessibility

It looks like there isn’t an easy way to incorporate accessibility in digital maps. These are some resources I found: 

Suggestions from Dan: 

  • Send email to Claire / Mithru
  • Moses center 
  • It’s not ideal to create two different systems, but maybe do an “accessibility page” — maybe document this issue a bit 

WEEK 2

This week was a lot of work on how to get my Node running through Mongo DB. After I finally got it running, Dan suggested I try an easier way using a boilerplate he made through his class. I migrated everything over to this format. Now I have a folder which has two public views (form and map), a js sketch, a folder of node modules, and a server.js sheet. 

WEEK 3

 The goal is to get the audio working on my map. The first thing I did was install pip (Package manager for python). Then I added another location to the path so that I can access youtube-dl, which is a command-line program to download videos.

Running youtube-dl

Now that I have everything running, in my program I am going to call youtube-dl through my sketch and 

 

Questions for mentor:

  • advice regarding making this map accessible 
  • advice on format output idea 
  • advice on how i could make it look 

 

 

Final Project Proposal

Diasporadical Radio

Diasporadical Radio is an open-source and user-generated geographic map of independent global artists (artists not backed by Sony, Universal or Colombia), which focuses on people of the global south, indigenous and Black people. The map is open-source and works from user-generated data in order to present artists that slip through algorithms and do not show up on our corporate-curated playlists. By allowing users to contribute, the map creates a community of people with hopefully different tastes, but similar creative and political values.

Diasporadical Radio is based off the idea that sound is incubated collectively, so community is a vital aspect of the process of music distribution. In a world where we rely on machines to tell us what to listen to (and more increasingly, what to make), it is important that us subjects take control of our listening process.

My final project will be focused on finishing this project in a way that centers some of the accessibility guidelines put forward by the WCAG, and presents the project in a finished way on a GitHub repository. The repository will go beyond just providing a place to store code, and will include administrative documents and suggestions for contributing so that users can feel encouraged to share music.

Team Members

Luna Olavarría Gallegos — https://github.com/lunaog

Define the problem.

Last year, writer, Liz Pelly, published a deep-dive into Spotify which originated from her year-long research of the tech company. Aside from issues of privacy and monopolization, the article was groundbreaking in the articulation of a greater socioeconomic shift that takes place when we rely on corporate-curated playlists and the imminent dangers of treating artists as brand ambassadors in a consolidating industry. This case study shows not only the commodification of art, but a transformation in the culture in which we begin to reward artists that make music from an understanding of algorithms which time and time again have shown are coated in racist and hegemonic ideologies.

While Spotify and other music streaming platforms are just one cog in the AI factory which wants to quantify our tastes, music is a basic part of human ritual, and spirit. We negate human desire when we allow machines to dictate how we create and consume art.

Diasporadical Radio works in opposition to this structure, as a platform curated by humans and only featuring music from artists who are not represented by one of the three big corporate music labels. We also pose a question rarely asked on mainstream platforms: How do we reward people who don’t take alcohol / military money? We will encourage digitally-dependent  people who live in urban areas and are most affected by algorithms to break out of a regular routine to contribute. By adding artists and music, the user is contributing to the ritual of humans sharing music with other humans based on their individual taste. By streaming on the platform, users decentralize an algorithmic-dependent system.

Address Greater Landscape

There are many similar projects that seek to break us out of algorithm land and offer sonic alternatives that we are not necessarily familiar with living in a english-speaking commercialized digital bubble. Projects like RadioGarden, Radiooooo and Pudding’s Music Map use already existing data to create visual maps that show popular music from around the globe and projects like the Seven Seas Music map attempt to highlight the more independent artists of certain geo-locations for the purpose of bringing opportunities to those artists.

This map will build off these projects that more explicitly highlight artists not based purely on identity, but rather on politics. In doing so I hope people can think more about a phenomena of artists as brand ambassadors and the growing commodification of all aspects of being human.

Deliverables

By the end of this process, I hope to have a working map that incorporates guideline 1-3 in the Web Content Accessibility Requirements 2.0. This map will be available on GitHub with a clear list of administrative documents — a ReadMe.md, How To Contribute and Code of Ethics.

Implementation

The basic map will be created using MapBox and layers on top that act as markers for where an artist is. There will be two main layers— one that I create with the music I have chosen, and another layer that is created from user-generated input. The final map can toggle between the two layers.

Users who would like to contribute will be lead to a form that they can easily fill out and will push their data using NodeJS to a map which I have access to remove if they do not fit into the guidelines.   

Timeline

Week 1

  • Set up GitHub repository
  • Write Code of Ethics in order to frame project
  • Set up Nodejs for my project
  • Incorporate the 1st guideline of accessibility into my code

Week 2

  • Incorporate the 2nd guideline of accessibility into my code
  • Create toggle layer aspect

Week 3

  • Incorporate the 3rd guideline of accessibility into my code

Week 4

  • User testing
  • Finalize design of map

Week 5

  • Write ReadMe and ContributingGuidelines documents

Documentation

I will keep my documentation process on my ITP blog. I will also track as much as I can on GitHub as issues which will be a huge part of my GitHub learning process.

Accessibility

One of my goals of this project is to be able to re-code the map with accessibility in mind. I would like to address and focus on 1-3 in the WCAG 2.0 requirements which are: Perceivable (providing text alternatives and alternatives for media, creating content that can be presented in different ways and making it easier for users to see content); Operable (making all functionality available from a keyboard and providing users enough time to read and use content); and Understandable. I think making all content Operable will be the largest challenge for me but I would like to see how I can do so.

Mentoring

Someone who was incredibly helpful to me last year through this process was Mimi Onuoha who encouraged me throughout my technical difficulties. I think my hardest barrier will be some of the programming around making my map more accessible, for which I think the WCAG will be helpful to me. I am also taking conceptual guidance from two colleagues Boima Tucker and Natalia Linares who are assisting with the curation decisions.

More About You

Born and raised in Albuquerque, New Mexico in a bicultural Puerto Rican/ New Mexican household Luna Olavarría Gallegos I am a writer, curator and filmmaker and my work typically surrounds themes of internet, diaspora, and culture. As a curator, I have organized panels, showcases, film festivals, playlists that highlight the work of Black and Latin American artists and have always done so intentionally. In 2016 I launched the archival multimedia project and album developed in Havana, Cuba, AfroRazones, which confronts issues of digital accessibility and Black archives. My written pieces on music, race and technology have been published in outlets including The Guardian, StopBeingFamous, The FADER and REMEZCLA among other outlets.  

Circle Ci

Hi

I don’t know why this has become the most daunting assignment of the whole semester but for some reason every time I sit down to continue working on this I seem to get stuck. Yesterday I set aside three hours to finish and I got farther than usual which made me really happy 🙂 then I got stuck. Process photos below: 

Re-installed Node, re-went through the first video and the second… so far going ok: 

Package json file: 

 

Test failed!

 

Test passed!

 

Pushed to GitHub! Yay!

 

Added Checkout but it still is failing??

 

I think it has something to do with the fact everytime I try to commit it gives me all these files from my desktop that aren’t even in the test folder at all? I don’t know why this is happening. 

 

Update! Met with Shiffman to figure out what was up and it seems like a lot of the files on my computer were pushed up to Github when they weren’t supposed to because I did “git init” without being in the right directory… which also explains why in my terminal it perpetually said git(master):

To fix this we deleted the git folder that was on my computer when i ran the code “open .” through terminal and then deleted the old test on Github. Then, we re-committed and re-pushed the testingtesttest folder to git also with correct spelling of “circle” oops.

Once it was on Github correct, I went to CircleCI and it seemed like the test was still not passing so we made an insignificante change to the GitHub file to re-boot Circle CI and it started showing “success”.

Here is the GitHub repository. 

What Is Open Source Anyway Patent Response

I thought about medium as message so much this week with the readings! I think that that is the main thing I get from the readings; people use licenses as a way to make a statement (medium), the “tech left” is against the whole medium of corporate centralized platforms, and patents are controlling our mediums. 

After reading Jen’s Medium piece, I very fittingly started thinking more about how perhaps our current system of copyright and patents are a large part of the growing commodification of creativity and corporate control. I think that if we did not patent intelectual labor through a corporate system of unequal resources, we wouldn’t have theoretical issues of what “open” really means. Open would mean open. Right?

Speaking of left, I also loved the Black Lives Matter as hashtag social media viral phenomena observation / critique. I wonder if there’s a way to bridge the social justice identity world better with the tech left world tangibly. It all comes down to critique of infrastructure rooted in wealth and patriarchal power, I think.

Accessibility Assignment

Going through the resources again and especially through the Teach Access tool made me realize first and foremost that if you do take these steps as you go it’s 10,000 times easier than if you retroactively correct. I also think a lot of these guideline suggestions have to do with just using the language to it’s fullest extent. For example for the table using <table> instead of <div class=table>, or <h3> as opposed to <div class=heading>. If it exists it’s for a reason, right?

This also reminded me of a reading I did a really long time ago (I don’t remember the author) but it was going into the importance of XML in that it serves as a language to contextualize other languages, and so the encoded bias is more critical to understand. I think in a lot of these websites teaching people to code, the meta-language, the background communication through which lessons given, are just as important important than the lessons. (medium as message). So by intentionally making these sites accessible they are also rendering programming accessible, or at the very least there is more of an invitation for everyone to program. Another thought experiment I had was how we could create different types of accessibility guidelines. Like what would it look like to make sure all websites were translated in at least 5 different languages? What would it look like to make sure websites were accessible for low-broadband based geographic locations.

For my audit I used two different tools, the Colour Contrast Analyzer and the Chrome WAVE plugin. Using the CCA I found that the color combination on shiffman.net was flagged for “normal” text as well as for the normal coding demonstration green over gray:

Using WAVE was more overwhelming. It seems like “Alerts” are sometimes errors that the program is suspicious of. I audited the Processing website, which came up with tons of errors and alerts! A lot of them were about mis-labeled photos. This reminded me of how in 2013-2016 on Tumblr most posts had comments that read, “picture of a Black woman sitting on her bed with glasses on and her laptop open”. I think they changed the way comments are able to be read by screenreaders, because I don’t see them anymore. Anyway here was my audit:

On the ML5 website, however, there were much less errors.     

 

Code Of Conduct Reading Response

I really appreciated Taeyoon’s talk and his realess around a lot of these issues that were addressed in the reading as well as responding to some of the false ideas that ITP and other NYC tech spaces are utopic and diverse — they’re not. I think one of the most important aspects of all of these spaces whether IRL or digital is to find solidarity within them, and it makes it easier when there are people of authority who have experience working naming interactions and being unapologetic about it. It makes a place actually “safe” for me.

I appreciate some of the initiatives put forth, especially #ethicalCS. I looked through some of the lessons for New York city students and am wondering where there could be overlap with the growing movement to teach more ethnic studies readings and authors for younger people.  In one of the Medium articles put forth by Mozilla this sentence specifically stood out to me: “it’s not enough to celebrate increased diversity on stage at technical conferences — when audience remains homogeneous, and abuse goes unchallenged”

The last sentence of the New York Times article pretty much sums up my feelings about issues with enforcing diversity and ethical initiatives, which is that they can never be truly maintained in a culture or environment of white people, or in one in which people are claiming to be neutral. I admired the article’s decision to juxtapose Linux with Python to show the different cultures and prop up an encouraging example, however I am wary of the way privilege still prevents people from seeing what to me is a greater issue of tech for individual profit gain instead of tech for good. Passive tech instead of critical tech. Tech for innovation instead of tech for creativity. 

Github Corpora Excercise

I’m really proud of how far I got trying this! This would have made absolutely no sense last September… even last December. Okay so the first thing I did was install Zshell and get iTerm. I played around with that a bit.

I need to remember that once you’re inside a file and you want to see what there is I gotta press “tab” and then continue pressing to navigate inside that file. I started a new project and opened with Visual Studio Code. 

Once I was done with this and I had branched Corpora in my own github, I opened it from my desktop (where I cloned it). I added in a json file that I had created last year about the Puerto Rican debt in relation to one wealthy person’s net worth. 

This is I think where things got messed up. I saved this file within the “data” file of the project, then I committed like this:

I’m not really sure what’s going on, and if I did it wrong, but I can’t find the changes in my repository and when I “compare changes” it says theres nothing to compare! 

   

Myth of Neutrality in Tech

Wow I really appreciated the readings this week! They were some of the most comprehensive and actually honest texts regarding diversity, ethics and tech that I’ve read at ITP, particularly Fred Turner’s interview that went into the hypocrisies of corporate cultural initiatives and the issues with identity politics. The main ideas I got from the first reading were to be cognizant of the fact that technology creates a barrier and to make sure to be extra empathetic online, which I think opens up an important conversation about something that came coming up throughout all the texts. This idea of productivity > human empathy and interaction as being such a central part of not only the tech world but also U.S. culture.

The reason I enjoyed Turner’s interview so much was his frequent historical references and his ability to trace our current collective psychology to deep-seeded issues of “American” identity and spirituality that has manifested into a desire to produce. I actually think Taeyoon Choi’s meditation on the labor behind software made me also think about how given the history of our technology, this labor that is embedded in what we use is why we have feminized so much software (Siri, Alexa, etc).

Beyond this gender dynamic, there is obviously there is a greater underlying trauma that manifests as a large structural issue within all overlapping fields of technology. I think it was best put in the interview when discussing how engineers see themselves as inherently benevolent: “The next thing you know, you’re deep in an Orwellian swamp. Engineers barely think about that swamp, because building architectures for benevolent influence is what they do.” I have never been able to quite find the language to describe the discomfort of self-gratifying tech culture but I think he hits the nail on the head when he says, “I’ve always found it very hard to think about any system, any planned, top-down system as, by definition, benevolent.”

I was particularly moved by the example of Dolores Huerta. To think about how deep these structural issues go back and to understand the theft of bodies, labor and land that went into creating the world that we I cannot help to think that in a search for spirituality we act like God; we appropriate narratives and images for a new manifestation of Puritan lifestyle, “leaving behind the known world of everyday life, bodies, and all the messiness that we have with bodies of race and politic…” I also can’t help to think about the people that Dolores Huerta defends— people who work at the bottom of the economic system in this country, with conditions that destroy the body, little wage, exposed to harsh chemicals and often times without legal representation. To think about the acceptance and eagerness to read minds and body patterns is parallel to the tolerance of the conditions that exist for migrant farm workers; the body as a vessel to be regulated. So all this makes me wonder about how our society really views the body? How we experience the body? How will we experience it when A.I. steeps deeper into our world?

I agree with the various authors’ push towards free software and accessibility for all, but I think it goes beyond this. I think that people living in first-world comfort, specifically “Americans” need to stop thinking of themselves as individuals. We are all part of a long history that has shaped the material realities and our bodies and we all relate to one another through a complex network. More unions, more collectives, more using the internet to be creatively together instead of further apart.