Code

Code

Monday, December 15, 2014

Be Right Back

I'm usually not a huge fan of television, but recently it has been convenient to watch an episode of something or other with my wife after dinner. I reason that it gives me a bit of time to digest and unwind before I start in on homework or whatever project I'm working on. Usually Laura chooses what we watch, since it doesn't matter to me. But after reading this review of Black Mirror, I suggested we watch it.

Black Mirror is a British series that actually began airing in 2011. But as uncultured as I am, I hadn't heard about it until it began streaming on Netflix. Each episode is completely independent of the others, though they're very similar in theme and tone. Each episode covers some field of technology (ranging from currently available to fairly futuristic) crashing with the realistic intricacies of humanity. Most episodes focus on computer-centric scenarios, but Be Right Back covers a rather troublesome possibility of computational biology. I'm using the term broadly in this context, but it's fitting.

I don't want to give away any details, so I'll end by echoing The Verge article: these shows are creepy, and definitely intended for a mature audiance. But they're well worth the watch and deserve the award they won for Best TV Mini-Series.

Thursday, December 4, 2014

Some Ethical Issues of Genomic Data

Yesterday I spent several hours attending an ethics class as well as a ethics/policy seminary. Both were great, and while I haven't had a large amount of time to process the information myself, I thought it might be useful to reflect on it here and share what I learned. The sessions were on some of the issues and implications of high throughput sequencing and genomic data. While the lecture was interesting, it's the class discussion I've been thinking about most .

In class we talked about the trade off between privacy and information when dealing with personal genomic data. A few different subjects were covered. The difference in opt-in verses opt-out consent forms and what it means to given "informed" consent was brought up. People in the class thought that it's difficult for a layman to give truly informed consent, simply because the subject matter and background material are too deep to allow an understanding of the implications of genetic data in a few paragraphs. It's analogous to the Terms and Conditions we all blindly accept for using our favorite software and websites. People were also attempting to find the optimum phrasing to ensure that maximum utility of the genomic information could be realized without the phrasing of the consent form becoming vague and open enough that it worried potential subjects. Several people were concerned about data later being abused by researchers as it was in Arizona.

Also discussed was de-identifying verses anonymizing data. De-identified data has had the identifications are removed and cryptographically secured, but can be later re-identified by the holder of the encryption keys if necessary. Anonymous data, theoretically, has had the connection between the genome and the person has been completely removed. Most of the time was spent answering questions like, "Is it ethical to re-identify data without explicitly informing the subjects?" or "Who should be given the encryption keys?"

Overall, I felt like the discussion contained a diversity of opinions and was rather thought provoking. There was one topic, however, that seemed overlooked to me...

Personally, I'll admit that the issue of privacy has never been a huge concern of mine, but as we have seen recently, ANY digital data is vulnerable to intrusion. It doesn't matter if it's credit card, personal photo, classified, or genomic data. If it's out there, there is the possibility of it being leaked and/or abused. It doesn't even have to be illegal. What are the laws surrounding what the government is able to do with genomic data, and to what extent do organizations like the NSA feel they have to obey those laws? Is the government allowed to re-identify genomic data as evidence against a potential criminal? Say that DNA was found at a crime scene, and it doesn't match to any public database. The police have a suspect in mind, but not enough evidence for an arrest (after the arrest, they can require DNA swabs). Can they use re-identified data as cause for arrest? Other potential scenarios in which this question matters are distinctly dystopian. And while they may seem sci-fi, programs like PRISM make these topics worth discussing.

At the end of class my professor asked us if we would/will have our genome sequenced. We unanimously said yes. Because the benefits outweigh the risks, right? But then again, the poll was obviously both biased and homogeneous.

Would you read your blueprints, even if it meant that others potentially could as well?

Monday, November 24, 2014

My First Rotation

     I'm giving my first poster talk of my graduate school career tomorrow, along with approximately half of my cohort (the other half had their posters today). We are supposed to present what we accomplished over the past 10 weeks, during our first rotation. Though I understand that the real purpose of this poster session is to practice our communication skills and have the to opportunity to see what our peers have been doing, it's still mildly frustrating to feel like you don't have enough material to work with. Let's be honest, it's basically impossible to do enough novel research, in a field you're new to, in 10 weeks, to adequately fill an entire poster.

     I wanted to upload the entire poster here, but there are probably some issues with that. On going research and all... But, I've gotten a couple of compliments on my poster design, so I'm thinking that I may use it as a template in the future. I've removed most of the text and details from the poster, so you can give me feedback on the visual aspects. A couple of things to take into consideration: there's a difference between an empty and filled poster, and some of the specifics of the current layout are a bit "bloated" to make up for the fact that there wasn't a ton of content (a bit more could be squeezed in, I'm sure).

Also, check out that QR code. It can take attendees straight to some of my microscopy videos, to help them visualize what I'm talking about. It wasn't my idea, but it's still pretty exciting. Here's the link it takes you to :

https://www.youtube.com/user/jessime100

You can watch one of the videos here too, if you prefer.




But back to the actual poster, I'd gladly take any comments or suggestion about layout, style, design, etc.


Wednesday, November 12, 2014

What is Genomics?

I just began my second of three rotations this week, so it's been a busy transition time. But I thought I would share this short genomics video. It's really basic, which may or may not be appealing to you.

This video came from the "Education" tab from the website of my new lab. Feel free to check it out (or the rest of the site, for that matter) to get a better idea of what I'm working on at the moment.

http://www.med.unc.edu/pharm/calabreselab/education

Thursday, November 6, 2014

The Desktop

With my Birthday, Black Friday, and Christmas all right around the corner, I haven't been able to keep myself from thinking about the possibility of purchasing my first desktop upgrade. It's not that my computer needs work per se, I just built it in July, but I did stay under budget with the idea of upgrading in mind.

The relevancy of my desktop is complicated by two matters.

Generally, in the computational biology world, desktops can be a bit of an awkward middleman. For most everyday computing (reading papers, browsing the web, note taking, PowerPoint creation, light scripting, etc.), I am going to be on my laptop. I have to be in lab and class, so portability is necessary. On the other hand, if any real analysis is going to be needed, the lab should have workstations built for their pipeline or access to a cluster. I suppose that between those two things, it's easy to think that a home desktop isn't worth it.

Specifically, because I'm still rotating, I don't know what my long term computing needs are going to be. The bottlenecks are obviously going to be dependent on the nature of the analysis. Or the data may absolutely require that it be run on a cluster, so as long as I have a functioning terminal, everything is fine.

In this past rotation, however, having a desktop has been fantastic. I've been generating about 6 GB of image data per experiment-- and already filled 142 GB of my storage drive. Analyzing videos in ImageJ on a laptop with 4 GB of RAM isn't pleasant, and the lab didn't have an open workstation for me at the moment. One particular analysis quickly maxes out the 16 GB I currently have on my desktop. Homework also gets finished a lot faster with the extra screen space. I like the ability to have RStudio, Chrome, and the problem set all open side by side.

I don't have a particular point I'm trying to make here, I'm just considering the pros and cons of sinking money into what I primarily use as a work machine. Of course, I have made a bit of a hobby out of computer building and component researching, so there's a large amount of enjoyment simply from the process. And I would be lying to myself if I didn't admit a bit of pride in having a (fairly) fancy desktop I built sitting in the living room.

Anyway, now that the background and situation have been established, I'll leave brief updates as I continue to add and refresh components in the coming months and years. Having a complete history might be quite interesting by graduation if Moore's law keeps up. Here's a link to my current build:

http://pcpartpicker.com/user/jessime/saved/kg9nTW

I'd love to see what everyone else is working with (or dreaming about), so share your build below. Or, if you have suggestions for my first upgrade, post that.

Tuesday, October 28, 2014

What Did You Accomplish This Week?

A few weeks ago I was jokingly asked by a friend (who has never set foot in a lab) if I had made any great discoveries that week. I had just finished confirming a genetic transformation, so I laughed and replied, "Well, I did make a new type of yeast." You may or may not consider that a bit of a stretch, but I thought it was a clever answer to an unexpected question. Apparently my exaggeration was enough to impress my friend, since I found out later that he went on to tell others about my "accomplishment." This brief interaction made me think about a couple things...

My first thoughts were about how annoying difficult it can seem to have enough things go right in a given week to really feel accomplished. You know those terrible Fridays when you look back on your week and think, "Where did it go, and why haven't I done anything?" Sure you do, we've all had them. But the question I was asking myself at that moment was "Is it unreasonable to consistently expect significant progress on a thesis project each week"? The answer obviously depends on the connotation of 'significant'. You probably won't add a line to your CV every week, and it's easy to default to a, "Well, science is hard and things go wrong," sort of attitude. The best answer I've found is a middle-of-the-road viewpoint is appropriate; I think it would be beneficial to note at least one achievement at the end of the week. This deed isn't to brag about, but to be self motivational.

I realized later that my friend was actually correct to be impressed with my statement. Not because I had done anything noteworthy, per se, but because the technique and the science behind it IS impressive. After a certain amount of time in the lab it becomes easy to lose sight of how awesome what we get to do is. You get into all of the little gritty details of thinking about the struggle of perfecting your sterile technique and ensuring that your epitubes are all properly labeled in your neatest tiny handwriting. You don't stop to consider that what you're doing. Taking traits from one organism and bestowing them on another could only be called magic a few generations ago. And there are people alive today who were born before this "mundane" task was ever done:

http://www.ncbi.nlm.nih.gov/pubmed/8150273.

For a slightly more humorous perspective, watch this Jimmy Kimmel clip:
https://www.youtube.com/watch?v=EzEr23XJwFY.

The point is, even the little things scientists do on a daily basis are awesome. My advice for this week, to myself as much as anyone, is to appreciate the opportunity you have to work in the field you do, and be sure to make the most out it.

Leave a comment below showcasing the most impressive thing you have accomplished in a week. Exaggerate at your own discretion.

Cheers  

Wednesday, October 22, 2014

Topic Results

For anyone who's curious how the survey is going, below is the current average with error bars showing one standard deviation.


I didn't bother with any t-tests, but I'm pretty sure that these aren't significantly different...

The survey was still a success, however. I received a large amount of advice that I should write whatever I want and focus on what interests me. So, that's exactly what I'm going to do. A big thanks to everyone who took the time to take the survey.

Be sure to stay tuned!

Sunday, October 19, 2014

A Prelude (Part II)

This second "housekeeping" post is the last I have planned for establishing the essence of this blog, I promise. In the coming weeks I'll get into some deeper topics and actually have something for you guys to look into and think about. But I do think that it's important to take some time to determine what I want this blog to be and what my goals are for it. I hope to at least keep this active through the entirety of graduate school, and I believe spelling out both the motivations and the purposes of the blog will contribute to ensuring that I make enough time for it each week. The first Prelude post covered the motivations, so now I want to not only tell you my ideas, but also get feedback from all of you on what you feel would be useful and interesting to read.

The suggested topics I have listed below are from what I would consider least to most technical:

(1) Personal journey through graduate school and related career advice.
     I'd like to chronicle my journey through graduate school and the interactions I have with others in the scientific community. Even though I'm just starting out, in a sense, I still have a story to tell and maybe even some advice to give about how to succeed in school and science... or at least fail gracefully. For those of you who want to keep up with me personally, this option might be the most interesting.

(2) Philosophical, cultural, and ethical issues in biological sciences.
     The social/cultural/ethical issues in biological sciences are something that every good scientist has a responsibility to consider. The earlier we recognize a problem the sooner we can begin to address it. For all of the wonders of science, it does seem to have a way of creating ever more difficulties. The spread of antibiotic bacteria, politics of health data privacy, and the potentials of genetic therapies are just a few of the issues that come to mind that need to continue to be discussed. These aren't theoretical hurdles for scientists to talk about over a late night beer, they are problems that society is going to have to solve whether they want to or not.

(3) Current and future applications of bioinformatics.
      I LOVE thinking about current and future bioinformatics based technologies. Their potential for enhancing people's lives are part of what "gets me out of bed in the morning" and pushes me to deal with all of the failures and difficulties that characterize research. Personalized healthcare, regenerative medicine, synthetic biology, and biologically inspired nanotechnology are mostly science fiction buzzwords for now. But science fiction seems to have a way of being closer than it seems. I'd enjoy sharing my take on where these applications are heading.

(4) Bioinformatics techniques and tutorials.
     As a computer-centric community, there are a large number of bioinformatics blogs focused on tutorials and techniques for others in the field to learn from. It's great, and I'd love to contribute my tiny drop of knowledge. Obviously this would be the most technical type post. While I greatly value the open source nature of the field, I don't want overwhelming technicalities or jargon to be a deterrent to others outside of the field.

Note that I WILL talk about all of these to some degree or another. So it's really a matter of how much emphasis I'll put on any give subject that's being considered here. Thank you very much for taking the time to read through this and vote.


Wednesday, October 15, 2014

Logistic Map


video

Been playing around with some of the math functions in Python. I think it's really cool how such a simple formula can create something so complicated. If you're interested, I've documented the code I used to make the video (apologies for the lack of syntax highlighting at the moment):


import numpy as np
from matplotlib import pyplot as plt
from matplotlib import animation

# Set up the figure, the axis, and the plot element
fig = plt.figure()
ax = plt.axes(xlim=(0, 60), ylim=(0, 1))
line, = ax.plot([], [], lw=1)

# initialization function: plot the background of each frame
def init():
    line.set_data([], [])
    return line,

# animation function. This is called sequentially
def animate(r):
    n = np.arange(0,60,1)
    x_n = .5 #initial value for x
    x_list = [] #initiate list

    for i in n:
        if i == 0:
            x_list.append(x_n) #initial value for x
        else:
            x_n1 = r*x_n*(1-x_n) #logisitic equation (the magic)
            x_list.append(x_n1) #add to x
            x_n = x_n1 #new x becomes old x
    x = np.array(x_list) #turn list into numpy array
    line.set_data(n, x)
    return line,

# specify array of parameter values
r = np.arange(2,4.5,.01)

# animate, save, show plot
anim = animation.FuncAnimation(fig, animate, init_func=init,
                               frames=r, interval=60, blit=True)
#anim.save('log_map2.mp4') #use default ffmpeg
plt.show()

Sunday, October 12, 2014

A Prelude (Part I)

Since there are multiple motivations for this blog, there are likely going to be several themes going on at once and different paths that the blog might take in the long term. So I think it might be helpful for everyone, myself included, if as an introductory post (or two) I spell out why I am doing a blog and what I think it's going to be about. 

The simplest reason I want to do this is because it seems enjoyable and a non-stressful outlet for some creativity and expression. I like to believe that I spend a decent amount of time thinking about things and being reflective; sometimes it's helpful to write your thoughts down, right? That's more or less the point of a blog. My other motivations are a bit more complicated...


22 is a really strange age in the American school/work system. If you have followed a "standard" education path, you have just graduated with a Bachelor's and you're supposed to go into the real world. After graduation, you're suddenly dumped into the "working adult" category where you're considered the same as everyone from age 22 to 65-ish. In college, a large majority of the people you associate with are other university students, following similar study schedules, living on or near campus, and likely between the ages of 18 and 22. I've escaped or postponed this transition to "working adult" to some degree by entering graduate school, but I haven't successfully avoided the "So what do you do?" question commonly associated with getting to know people. In college, when someone asks your major, you tell them, they nod, and you have a conversation whose length is directly proportional to the similarity of their major. The official title of my Ph.D. program is Bioinformatics and Computational Biology (BCB). So I generally tell people that, "I'm getting my Ph.D. in Bioinformatics." And as often as not they respond, "Um... What is Bioinformatics?"


This is a rather interesting phenomenon, which I hadn't considered before entering the field. If I had stayed in Chemistry, for example, people can think back to their high school chemistry class and recall that I do something with atoms. In one sense, you still haven't given them any actual information about what you do, but at least they know the word chemistry, and can nod in acknowledgement. Even with Biochemistry, people grasp that it is the combination of Biology and Chemistry, and move on. Bioinformatics leaves them at a loss though. 


I'm not implying that these people are stupid or ignorant. In fact, as a whole I'm referring to intelligent and well educated individuals. I'm just in a new, oddly-named field. Here are the advanced degrees offered by UNC:


http://gradschool.unc.edu/academics/degreeprograms/


The only major I don't have some idea about simply based on the name is Periodontology... (If anyone reading this is studying periodontology, I feel you.) At least for the other ~100 degrees, you don't have to start from the groundwork every time you want to tell people what you do. I understand that you go to graduate school to become particularly specialized in a field. But I don't think that implies that the field itself should be so specialized that it's unknown.


More importantly, the reason that I chose to study BCB is because I firmly believe the field is primed and ready to dictate the course of society in the coming century. Think about how computers have integrated themselves into all aspects of our daily lives over the last 50 years. Biology is going to do the same, because of the degree of control over biology provided to us by bioinformatics. I may be wrong, but I would assume that in 1950, virtually nobody knew the term Computer Science. It wasn't their fault. They were used to "computers" being humans who did calculations.


The point, then, is that I am writing this blog because I believe that Bioinformatics is a field that is important enough that it should be at least known to everyone. Furthermore, it is up to the scientist and students of the field to ensure that the public have a decent and accurate knowledge of what we do and how it effects them. I don't think scientists as a group have a great history of communication, but communication and conversation are going to become ever more important as technology becomes more pervasive.


Lastly, just graduating means that your friends for the last four years have dispersed across the country (or even the entire world). So you get to try to keep up with them, while making new friends, and finding time to call home once a week. For any of you who what to check in on what I'm up to recently, hopefully this can be a place you can visit. Graduate school is already living up to its promise of keeping me extremely busy, so my current plan is to post once a week on the weekends. Next week I'll share some of the ideas for the blog and what I want to talk about.


Cheers.