“Big” Programming Opportunities
If you have time to contribute to larger coding projects, consider the list of opportunities below. If you only have time for bite-sized projects, this list might interest you too.
Filter the items below by selecting the required tags.
The lab needs a file-transfer widget to support app development. It should have the ability to:
Interface with Dropbox (i.e., transfer user-specified files to the server).
Interface with Google drive.
Interface with OneDrive.
Interface with Box.
Upload files directly from the hard drive, using this very nice bootstrap plugin.
Each of these systems should be accessible through the same function
This project focuses on extending 3DMol.js with functions that make the meshes it generates accessible to outside frameworks. 3DMol.js is a great web-based molecular visualizer. It’s very well suited for displaying molecules, but I’m also interested in better accessing the meshes it renders (e.g., it can quickly render surface representations in a browser!). The mesh data (vertices, vertex colors,
Whether or not a molecule binds to a protein pocket depends not only on the interactions, but on the empty space surrounding the molecule. We need an algorithm for mapping out the empty space in a protein pocket. Here’s an outline of the python script we need:
Load the coordinates of the protein and the coordinates of the ligand (Dr. Durrant will provide numpy arrays of these 3D coordinates).
In our lab, we often need to run independent python functions on multiple processors. By independent, I mean the functions don’t need to communicate with each other (embarrassingly parallel). Our current scripts divide the individual “tasks” evenly in the beginning and then run each “chunk” (i.e., subset of all tasks) on a separate processor. But occasionally one of these chunks will take much lon
Our lab often has to generate graphs for scientific publications. It can be very time consuming to get them looking just right. This project involves an automated graph-generating python script. It will accept a JSON file as input. That file includes the following: the data to plot, the type of graph, whether color or black and white should be used, the graph title, and the axes labels.