Archives for the month of: September, 2012

For tech crafts, I created a simple touch switch on paper.  When you press on the bobber, you complete a circuit and three surface mount LEDs light up!  The “fishing line” connected to the bobber is actually conductive thread.  Unfortunately, there was lots of extra glue on my bobber, so when you press it sticks for too long.  I’ll post a video once I add a bit more paper to fix this problem.

Advertisements

I recently switched into a biohacking class (full title “Understanding Genomes: An Intro to Biohacking”).  Biology (especially at a smaller scale) was a big passion of mine in high school and middle school.  I got my first toy microscope when I was pretty young and was upset when my mom threw out my first specimens, a baby food jar of sea monkeys.  In high school, I went to biotechnology camp, read books about virology for fun, and wrote to the American Society of Microbiology for free posters.  Coming into college, I was 99% certain I would major in biochemistry.  The summer after my first year, I applied for an internship at a large medical research facility.  At the time, I was also taking my first computer science class.  I couldn’t help but babble about the parallels between genetics and computer science during my interview.  I didn’t end up getting the internship, but I eventually found a job at the lab anyway.  Surprisingly, it was a dull summer.  I spent much of my time alone, running assays.  I declared a major in computer science a few months later.

A baby nerd:

Now I’m ready to take a fresh look at biology from a hacker, computer scientist perspective.  This week, our class has been going through the process of DNA replication and learning a bit about protein synthesis too.  For our first assignment, we were supposed to choose part of this process and look at it through a new lens (hopefully increasing our understanding in the process).

I decided to explore the process of protein synthesis.  Proteins are made when strands of mRNA exit a cell.  The mRNA contains a sequence of the nucleic acids Adenine, Guanine, Uracil, and Cytosine.  In groups of three (known as “codons”), these nucleic acids stand for different amino acids in addition to a few special codons signaling the start and stop of an amino acid sequence.  As these codons are translated, amino acids are strung together to form a protein.

There are 20 amino acids encoded by RNA.  Each of these amino acids can be referred to by a letter.  You can use these letters to search for different sequences of amino acids using a pBLAST search, or the Basic Local Alignment Tool (for proteins!).  The pBLAST tool lets you search for different strings of amino acids in a very large protein database.  I thought it might be fun to search for the names of classmates within proteins to find their “protein personality”.

My process required a bit of exploration.  I experimented with performing pBLAST searches by hand, but this was inefficient.  Finally, I found the Biopython project, which is basically a nice Python library for doing stuff like BLAST searches!  I wrote a short script to run a pBLAST search for any piece of text and print out a few results.  I also have a couple of methods to convert text to amino acids or DNA codons.  Here’s the code:


from Bio import SeqIO
from Bio.Blast import NCBIXML
from Bio.Blast import NCBIWWW
import random
import string

# protein classmates

aminos = {'A': 'ALANINE', 'B': 'ASPARAGINE', 'C': 'CYSTEINE', 'D':'ASPARTIC ACID',
'E': 'GLUTAMIC ACID', 'F':'PHENYLALINE', 'G':'GLYCINE', 'H':'HISTIDINE',
'I':'ISOLEUCINE','J':'LEUCINE', 'K':'LYSINE', 'L':'LEUCINE', 'M':'METHIONINE', 'N':'ASPARAGINE',
'O':'PYRROLYSINE', 'P':'PROLINE', 'Q':'GLUTAMINE', 'R':'ARGININE', 'S': 'SERINE',
'T':'THREONINE', 'U':'SELENOCYSTEINE', 'V':'VALINE', 'W':'TRYPTOPHAN', 'Y':'TYROSINE',
'Z':'GLUTAMIC ACID'}

codons = {'ALANINE':'GCT', 'ARGININE':'AGA', 'ASPARAGINE': 'AAT', 'ASPARTIC ACID':'GAT', 'CYSTEINE':'TGT',
'GLUTAMIC ACID':'GAG', 'GLUTAMINE':'CAG', 'GLYCINE':'GGG', 'HISTIDINE':'CAT', 'ISOLEUCINE':'ATT',
'LEUCINE':'CTT', 'LYSINE':'AAA', 'METHIONINE':'ATG', 'PHENYLALINE':'TTT', 'PROLINE':'CCT', 'SERINE':'AGT',
'THREONINE':'ACT', 'TRYPTOPHAN':'TGG', 'TYROSINE':'TAT', 'VALINE':'GTT', 'SELENOCYSTEINE':'TAG',
'PYRROLYSINE':'TAG'}

def print_codons(name):
name = name.upper()
for letter in name:
if letter == 'X': #X codes for any amino acid, choose a random non-X char
codon = codons[aminos[random.choice(string.ascii_uppercase.replace('X',''))]]
else:
codon = codons[aminos[letter]]
print codon

def print_aminos(name):
name = name.upper()
for letter in name:
if letter == 'X':
amino = aminos[random.choice(string.ascii_uppercase.replace('X',''))]
else:
amino = aminos[letter]
print amino

def run_blast(name):
name.upper()
E_VALUE_THRESH = 1

blast_search = NCBIWWW.qblast('blastp', 'nr', name, word_size=2,threshold=11, hitlist_size = 50,
expect=200000, db_genetic_code = 1)
blast_record = NCBIXML.read(blast_search)

for alignment in blast_record.alignments:
print alignment
for hsp in alignment.hsps:
print hsp
if hsp.expect < E_VALUE_THRESH:
print 'sequence:', alignment.title
print 'length:', alignment.length
print 'e value:', hsp.expect
print hsp.query[0:75] + '...'
print hsp.match[0:75] + '...'
print hsp.sbjct[0:75] + '...'

Hopefully I can experiment with Biopython more in the future!

Saturday, Luis and I went to the High Line for our Sensitive Building observations assignment.  It was a beautiful Saturday afternoon and my first time at the High Line!  We spent about an hour and a half recording the behaviors of the people we saw.  Below is a summary of our impressions.

Highline, Saturday around 4:30 p.m.

What was learned, what was counter to your original expectations or filled out your mental model in an interesting way?

Alex:  I had never been to the Highline before, so I wasn’t sure what I expected.  I guess I pictured something that was very uniform throughout, more like a boardwalk or a walking path lined by plants.  Parts of the highline had open areas for performances, while others had a lot more vegetation.  I figured that it would be full of tourists trying to see New York from a different vantage point.  Both Luis and I were surprised by the number of couples.  It seemed like a place where couples might visit before going out to dinner.
Luis:  The few times I’ve been to the highline it hasn’t been so busy. I went during the night when most of the tourist were gone. I had never seen the highline so busy, but I pretty much expected normal tourist behavior: gazing, taking pictures, talking and moving along at a leisurely pace. I was surprised at the number of couples we saw at the Highline. We counted group sizes and couples were by far the largest group, followed by people walking on their own, groups of three, and finally groups of 4 or more.

What seems like a ripe opportunity?
People at the Highline are there to take in an environment and a certain ambience.  They are escaping to a quieter, more peaceful part of the city.  It’s interesting that the Highline also serves as a vantage point to see some of the buildings, etc.
When people are visiting the Highline, they are also creating memories.  It’s a place to go with your significant other or friends and family (when on a vacation).
The park is lacking in wayfinding features (maps, signs, points of interest, and other geographic info), and there is a lot of opportunity to do something with telling people where they are/where they are going/what’s around. We found a lot of people looking at their maps.
What are some projects that should be relevant to this space, or to some of the behaviors?

Unlike an open park, people at the highline are usually there to walk in one of two directions to observe the skyline and the features of the park, so in a way it’s like walking through an exhibition. Any project created could take advantage of the linear movement of people, perhaps a project where participation is continuous as people walk through the park.

Potential projects include:

-A project that visualizes the general momentum of people at the park (could be a nighttime projection.  People see themselves going either against the flow or with it).
-It would also be interesting to add historical context to the park. Perhaps the park could have a visualization of how many people were travelling by train at that particular moment of the day 60 years ago and compare that to how many people walk along the park.
What data is still missing and what further research would you recommend?
The actual number of people entering and leaving the park at any time (over time?). It would be interesting to see where people are coming from and where they are going after they leave the park. Perhaps a lot of the couples go take a walk on the Highline before getting dinner.

Our first weekly assignment for “Puppets and Performing Objects” was to create a glove puppet, a puppet that you can wear on your hand like a glove and manipulate by moving your fingers.  Our puppet was also supposed to be “extreme”, whether extremely cute, extremely ugly, or extremely wrinkly.  Its features should be exaggerated rather than understated.

For my puppet, I took some inspiration from Twiggy, who already looks a bit like a doll.  I wanted my puppet to have very large eyes, a tiny nose, and a sour expression.

Here’s the first step of my process.  I used paper clay and foil to make this head on a paper towel tube.  Looks pretty scary!

From the side:

I used some acrylic paint to make it look a bit less ghostly.

With some eyelids, eyeballs, and makeup!

Started experimenting with dress styles made of felt:

With some yarn hair and fake lashes…!  The (almost finished) character is named “Jane”.  She’s from London, likes to smoke, be bossy, and is very impatient.