ANNA M YANG
人算不如天算

I was asked to make a blog for the NYU IMA Low Res graduate program. (I started with no tangible experience in interaction design.) Math is nature’s poetry, and these are just diary entries.

Email
Instagram
Alter-Instagram

Reel
02 SINE LANGUAGE 2.0
IMALR-GT-202-02


WHEN: 1215/2024
WHAT: IMALR-GT-202
(A)utistic (I)ntelligence Live Demo
(A)utistic (I)ntelligence Code

(A)utistic (I)ntelligence: AI

Anna (me, obviously): Can you pass me a couple M&Ms?
Jason (my brother): Sure.
[Jason grabs M&Ms and hands Anna two.]
[Anna looks at the two M&Ms.]
Anna: What the...
Jason: But you asked for a couple? I can do two, maybe three...


It took me 29 years to finally start understanding my brother (or maybe to finally start wanting to understand him). My relationship with Jason started in childhood anger. I always wanted an older brother who could shield me from the harsh winds of the world that my father failed to. When he couldn’t, I would lash out in resentment, then feel overwhelming guilt for doing so.

Now, I’m finally finding a place of connection.

I have a Note on my phone where I collect all his oddly wise musings. The most “noteworthy” expression was, “I’m nostalgic for a time I can’t quite remember.” It was a strange thing for someone with an IQ of 172 to say. I mean- Isn’t IQ pattern-recognition and logic? Where is the rationality in that sentiment? 

-

00 Inspiration

There have been a lot of words thrown around to describe my brother. Some people suggested to me that I must say he “has” autism instead of “is” autistic... I’ve discussed this with Jason. It never sat well with him (or any of my other autistic friends for that matter) because he would never say he “has” Asian. He just is. 

This made me start thinking about the DSM and how it’s written from the perspective of people who identify as “neurotypical,” or maybe even “neurosuperior” in my opinion. inTune speaks to this further, providing commentary on autistic communication. 



During the summer session, the “gift” I brought was the Autism Quotient test. Though I am always hesitant to self-diagnose via questionnaires, I did find it to be an interesting perpsective towards this thing we call “Autism Spectrum Disorder.”

Matt Bowe first brought it to my attention that even our visual view of a “spectrum” could be inherently flawed. We’ve been taught to think of as “spectrum” as linear with two opposing sides, but what if it’s actually circular? If autism is a spectrum, then aren’t we all on it?

Another issue I have with “ASD” is the word “disorder” (sounds even worse in Chinese). So far, I have not heard a single autistic person refer to their autism as a disorder (though I’ve heard superpower a handful of times). 

All of this just got me thinking about the language and communication around autism. It seems so... flawed. It perpetuates the stereotype that autistic people are lesser than, or that they’re bad at social cues but oddly good at painting, or that they are incapable of empathetic, emotive thought (some of the warmest people I know are autistic).

Then, I stumbled across this fantastic Reddit video:



And so, (A)utistic (I)ntelligence: AI was born.

I wanted to make a translator between autistic and allistic interpretations of words, phrases, and questions- I know how difficult this is as so much of everything is nuanced. I knew my best bet was to leverage ChatGPT and to try to train my own model. 

-

01 Core Interaction - Backend

Using ChatGPT’s gpt-4, I created two core interactions. I knew I wanted the user to (1) be able to input prompts to receive translations; and (2) have the opportunity to identify as more autistic/allistic while submitting prompts/responses to help train the model. 

1. Chat with (A)utistic (I)ntelligence

On the server side, I created the backend for how gpt-4 would receive and and respond to prompts. I also gave it a personality that would act as a base. 


 
2. Help train (A)utistic (I)ntelligence

Continuing on the server side, I ensured that the training data could not be submitted without a valid prompt, answer, and identity response (autistic/allistic). I thought about whether or not I wanted to try making the training data “live,” but ultimately decided against it. I wanted the data to be stored via lowdb in a JSON file that would allow me to review the submissions (can’t have randos inaccurately training (A)utistic (I)ntelligence).




02 Core Interaction - Frontend

1. Chat with (A)utistic (I)ntelligence

On the client side, I included an event listener for the form submission. I also had it send the user's input (prompt) to an API endpoint (/api/gpt) using a POST request. It would then wait for the server to return a response and parse it as JSON. (I do wonder if there would’ve been a benefit to doing this on the server side?)



2. Help train (A)utistic (I)ntelligence

On the frontend, there were three main sections I wanted to address. The first was the autistic/allistic identity button selection. The second was training data submission, and the third was viewing the previous training data submissions.

It was quite similar to the logic from the previous section.







Many .js files later, I came to this horrifying UI (though beautiful that it works):




-

02 Wireframe & UI

I went in with a moodboard that I think ended up working better in theory. It honestly felt a little “cold” for what it was that I was ultimately trying to achieve.  



I ultimately landed somewhere here:



-

03 Challenges and Solutions

Honestly, I think life was my biggest challenge this time around. About a month ago, my account director’s mother suffered a brain aneurysm, and I picked up the work. I don’t know if I slept more than 3-4 hours/night those few weeks... And the toll that takes on a person’s mental and physical health is difficult to express. 

Following “life,” I had a few issues with:

(a) All the .js files

I’m not sure if I was doing something wrong, but the training data and the chat data required separate .js files (maybe because I had separate .html files?). This took me a few hours to figure out.

(b) API Key

Womp womp. My favorite thing, yet again. So I just realized that I cannot just use my own API key on the site (which looking back, seems so obvious). I actually have to give people a place to enter theirs? Though Glitch seems to give me a place to store the .env variable... Still a bit confused about how all of this works if I were to actually deploy the site. (Would love some direction here! )

-

04 Learnings

Once again, I don’t really know where to begin with this. Crazy. It’s insane to think that 12 weeks ago, I didn’t even know how to link a css file to an html one. My greatest takeaways this semester have been the general understanding of server vs. client side code. Understanding where things can and/or should go in terms of functionality has been a great gift. I feel like I understand the code logic (grammar?) a lot better now, and that is the foundation for learning any new language.

-

05 Final Musings

Grateful. I’m glad I got to do something that brought me even closer to my brother. It’s been a lifelong journey of mine.
THERE’S STILL ♡ IN THE WORLD