The decision to start exploring the computer science direction came after I took a bioinformatics class at the University. It was an unusual class in the sense that we wouldn’t just learn the material from a textbook, but read and discuss research articles and talk about algorithms and approaches we learned from the home readings. The class combined grad students and undergrads from computer science and biology. It was super enjoyable, yet there was so much information from the papers to digest and also understand the general ideas behind algorithms. It was overwhelming, and I soon realized that I wanted to broaden my understanding so that I could navigate in this type of information more freely.

image1

I felt that having a solid understanding of the mathematical and computational aspects behind modern biological tools can be very helpful in my future career. I started taking more courses in programming. At first, I thought maybe having a minor in computer science would be an excellent addition to the degree, so I started taking all the required classes for that. There were quite a few introductory classes that felt like a waste of time, they were effortless, and I didn’t learn much, but they were necessary as they raised my GPA quite a bit and with the increased GPA came more scholarships.

In retrospect, I still can’t wrap my head around the fact that I ended up not only not paying for the second major, which at first was my minor, in computer science, but was also given extra money from the University to finish it for having a good GPA and working in laboratories.

The classes that broadened my perspective on biology were just a few, namely “algorithms” and “data mining,” the rest of the classes helped me understand computers well. My favorite classes were “computer systems + operating systems” and “principles of the programming languages.”

As I was taking the computer science courses, I also worked in a laboratory researching the peculiar nature of Mycobacterium vaccae. My supervisor was studying the interaction of this bacterium and the human immune system, the interaction that resulted in some fantastic health benefits, including the treatment of PTSD and other psychological pathologies, as well as a plethora of benefits for the G.I. tract. The work in the laboratory mainly consisted of querying bioinformatics tools web APIs. One tool we used was BLAST (Basic Local Alignment Search Tool used to find similarities between two or more DNA or protein sequences). Another tool was RAST (a tool for gene annotations). We were trying to find the subset of genes disjointed from the rest of mycobacteria — potential candidates for the unique benefits of the species. I wrote everything in Python and learned a great deal about how useful Python and its libraries are when it comes to data processing and analysis.

However, looking back, I think that if we had all the syntactic sugar from the es6 back in 2013, I would have better-used JavaScript to query web APIs, but Python rocks when it comes to data manipulations.

This lab experience was the first time in my life, where I used my programming skills to solve a real-world problem. It was also my first real exposure to the web, but it wasn’t yet web development.

I got exposed to HTML, CSS, and JavaScript during a project for the international synthetic biology conference. It was an international competition of the university teams that had to use a standardized laboratory toolkit provided by the organization to experiment with E. coli bacteria. For example, our project revolved around creating a cure to tuberculosis by using bacteriophages. My part consisted of creating a wiki page for our team (http://2014.igem.org/Team:CU-Boulder). It was a pain in the neck. We had to create a more or less unique site while editing a wiki page, and there was no real guide on how to do it. It took a lot of work to bypass all the limitations of the MediaWiki, but, in the end, I did it, and it officially became my first web development project.