GSoC Student Interview spotlight: ElasticSearch / Solr Project + Arunan Sugunakumar

This is our blog series interviewing our 2018 Google Summer of Code students, who will be working remotely for InterMine for 3 months on a variety of projects. We’ve interviewed Arunan Sugunakumar, who will be working on upgrading InterMine’s search facilities.


Hi Arunan! We’re really excited to have you on board as part of the team this summer. Can you introduce yourself?

I am Arunan Sugunakumar, an undergraduate from Department of Computer Science and Engineering, University of Moratuwa. I am attracted to the concept of open source because I get to learn a lot by seeing contributions from other people all over the world and I learn by contributing myself. I did my internship in WSO2, a open source middleware company. I mostly contribute to Java, Python and JavaScript related projects. I am also interested in Internet of Things and Big Data stuff.

I like to read books in my spare time. It helps me to clear my mind. Also I like to play scrabble which is a popular word game.

What interested you about GSoC with InterMine?

I came to know about InterMine through a friend, and when I went through the project ideas and the community, I fixated in my mind that I should give a try to be part of this organization. Most of the project ideas were associated with core InterMine product rather than trial and error projects. So I know if I become a part of it, my contributions would be there in all InterMine instances. That gave me most of the excitement and the mentors were also very friendly and supportive.

Tell us about the project you’re planning to do for InterMine this summer.

Currently InterMine uses an outdated library to handle bio data search. My project aims to improve the search feature using modern search engines like Apache Solr / ElasticSearch. The existing architecture in InterMine has to be modified to handle the new approach and it should reduce the complexity to the user.

Are there any challenges you anticipate for your project? How do you plan to overcome them?

The main challenge for me is to understand the existing code base so that I can change it without breaking the workflow. I need to work closely with my mentor and need to update them with every change I make. Also I have to communicate my doubts to the community in a friendly manner so that I can get input from everyone.

Another challenge that I might face is choosing the appropriate search engine. There are many open source search engines out there and all of them are best in their own way. So I need to discuss with my mentor to select an appropriate search engine that would be suitable for the project.

Share a meme or gif that represents your project



GSoC Student Interview Spotlight: InterMine Data Browser + Adrián Rodríguez Bazaga

This is our blog series interviewing our 2018 Google Summer of Code students, who working remotely for InterMine for 3 months on on a variety of projects. We’ve interviewed Adrián Rodríguez Bazaga, who will be working on the InterMine Data Browser.

Hi Adrian! We’re really excited to have you on board as part of the team this summer. Can you introduce yourself?

adrian.pngHi, I am Adrián Rodríguez Bazaga, a student from UPC, Barcelona (Spain). I am a Computer Scientist who is currently pursuing a Master’s degree in Data Science and Machine Learning. One of the things that characterizes me, is my desire for science, and to solve problems using technology, and when it’s posible, do it in collaboration with other enthusiasts in the field, which is how the Open Source philosophy works!

Apart from this, I love animals, especially cats and Cavalier King Charles Spaniels, I could spend all day long cuddling them if I had the time. I also love to play chess and any kind of board games in my spare time!

What interested you about GSoC with InterMine?

As a student, I’m still learning about everything that interest me, and although my major is Computer Science (and Artificial Intelligence related topics), I’m very interested in the bioinformatics world, a landscape where InterMine lies around, and, consequently, gives me the perfect opportunity to learn the “bio-concepts” behind the project on which I am involved, by applying my Computer Science skills.


Tell us about the project you’re planning to do for InterMine this summer.

Currently, the InterMine services offer a query builder to search for biological data over the different mines. Although this is a very useful tool, the user needs to know how the data is structured (data model) on each mine, in order to create the desired queries. Since knowing the data model is mandatory to use this query builder, it can, indeed, become overwhelming for new users who want to search for some specific information in the data.

On top of this idea, my project is to implement a faceted search tool to display the data from InterMine database, allowing the users to search easily within the different mines available around InterMine, and we have already made some advancements on that, as you can check in the following picture:


Are there any challenges you anticipate for your project? How do you plan to overcome them?

The main challenge of my project lies on the fact that, the data browser is intended to be used by beginners, without the added difficulty of knowing deeply the data model, this means that I will need to deploy an application capable of working with all the functionality of searching on InterMine repositories but with an easy-to-use interface for users, which is by itself, a great challenge.

Share a meme or gif that represents your project



GSoC Student Interview spotlight: InterMine Python Client + Nupur Gunwant

This is our blog series interviewing our 2018 Google Summer of Code students, who working remotely for InterMine for 3 months on a variety of projects. We’ve interviewed Nupur Gunwant, who will be working on the InterMine Python Client.

Hi Nupur! We’re really excited to have you on board as part of the team this summer. Can you introduce yourself?

I am Nupur Gunwant, a student from IIT Kharagpur, India. I am pursuing an Integrated Masters degree in Mathematics and Computing. I am an open source enthusiast and a maths lover. I love to solve problems and talk about ideas. I firmly believe in the power of Python and admire its versatility.

Apart from that, I am a lover of art. I want to further pursue my studies in the intersection of my artistic and technical interests. And most importantly, I always carry a book wherever I am.

What interested you about GSoC with InterMine?

I was deeply intrigued by the work InterMine does and as a student, I wanted to work with an organization with such a huge impact on the society. Another thing that motivated me towards preparing hard to work with InterMine as a student developer was the fact that it’s such a healthy and friendly community, where ideas are appreciated and one is always motivated to work on them. I think that made InterMine the most desired place to work with.

Tell us about the project you’re planning to do for InterMine this summer.

I will be working on adding functionalities to Python Client, a very important part of InterMine at present. I will begin with creating a link between the InterMine Registry and Python Client, so that the user can make use of the Registry features on the terminal.

Further I will build a Query Manager that will be a key source to perform operations on user queries using the terminal and lastly, I will add visuality to the Python Client using matplotlib.

Are there any challenges you anticipate for your project? How do you plan to overcome them?

The biggest challenge to meet all the needs of the user for the Client in all the three subparts of my project. I am planning to make community interactions and their feedback the greatest source of review on my work, which because of the communities’ experience in user experience should help a great deal in overcoming this problem.

Share a meme or gif that represents your project (1)

GSoC 2018 Students Announced! 🌞☀️

After last year’s great success, we’re really excited to welcome six Google Summer of Code students to work with us again this year:

Aman Dwivedi will be working on a Cross-InterMine search tool. This will use the registry to allow users to search multiple InterMines at once, and should be a good way to figure out which mine has the data you’re looking for. Aman will be mentored by Nadia Yudina, herself a graduate of one of last year’s InterMine+GSoC program.

Adrián Rodríguez Bazaga will be working on something we’ve always wanted: an InterMine data browser – hopefully a tool that will allow users to learn a bit more about data inside an InterMine without having to know the data model. Yay for easier learning curves! Adrian’s mentor will be Yo Yehudi.

Arunan Sugunakumar is going to explore hooking InterMine up to a more modern search package, probably Solr or ElasticSearch. Our current version of Lucene is very old, and we know there are better options out there!  Daniela Butano will mentor this project.

Jake Macneal is going to work on a prototype to convert natural language questions into InterMine PathQuery – it would be exciting to have a user type “Show me all the genes associated with diabetes” into an InterMine, and get a sensible set of results back! Aaron Golden will mentor Jake.

Nupur Gunwant will be adding additional features to our python client, such as registry communication, a query manager, and visualisations. Julie Sullivan will be Nupur’s mentor for this project.

Ankit Kumar Lohani will be working on Buzzbang – a search engine to crawl multiple biological sources including, but not exclusively, InterMine instances. Justin Clark-Casey will be Ankit’s mentor.

We’re also planning to post a short interview series highlighting each student and their plans for the summer. We can’t wait to get started!!








Cambridge Science Festival 2018: A fruity crime of passion 🍏🍋🍊🍓

TL;DR: Science Festival was great & kids loved it. You can re-use our materials, here.

Longer version: Last weekend was InterMine’s very first year at Cambridge’s famous Science Festival, an event designed to enthuse younger people and adults alike with awe for science. We split our time across two locations,working at our home department, Genetics, on the Saturday, and at the Cambridge Guildhall on the Sunday.

Our theme was around open science, with an activity designed to reinforce the idea that shared data (and therefore more data from different sources) results in better science. For adults we had a couple of great posters about the importance of data sharing, designed by Julie and Rachel. The posters are available freely online for re-use under a CC0 licence.

The Story: A party is rudely interrupted

Meanwhile, for kids (and some adults too!) we had a crime-solving activity. In our scenario, a dastardly fruit villain had stolen the passionfruit in the midst of an otherwise enjoyable soirée. In their haste to flee, the culprit knocked over a tin of blue paint, leaving tracks behind, as well as injuring themselves and leaving DNA evidence behind as they jumped out the window. We had four fruity suspects:


Solving the crime

Step 1: footprints in the paint

In order to solve the crime using science, our young detectives were invited to examine the footprints left by the culprit:

Fruit tracks at the crime scene. Excuse the glare from the plastic!
Fruit tracks at the crime scene. Excuse the glare from the plastic!

It was usually pretty easy to rule out the apple, and after thinking a little more, the strawberry could be ruled out too, but the orange and the lemon both looked rather similar.

Step 2: Juice found at the scene

Since the devilish thief had hurt themselves, we had samples to analyse. Our criminal investigators took strips of litmus paper and carefully examined the evidence:


Once again, the evidence wasn’t quite conclusive (and was very sticky). Still, it was fun! Let’s move on to the next bit of evidence…

Step 3: the skin

With sample fruits to compare, our enterprising criminologists got a step closer to the solution. Could the skin be from a lemon? Hmmm.


Step 4: We have samples, so let’s sequence the DNA!

Okay, so you may have guessed that we didn’t sequence the DNA of the suspects ourselves – but thankfully the lab had four profiles for us to compare to and they managed to quickly provide a DNA fragment from the crime scene evidence, too. This fragment was far more conclusive than the others, pointing unequivocally to the shadiest character of the bunch – Lithium Lemon.

Step 5: Putting the puzzle pieces together, and sabotage!

As our sleuths solved each different activity, we gave them a puzzle piece. At this stage they had four pieces of the puzzle, but they were still missing a couple of critical bits: the two central pieces. It turns out there had been some CCTV footage – but it had been stolen! After looking around, our vigilant investigators discovered where the crime scene video had been hidden (under the table) and managed to put the entire story together. Once again, shown front and centre of the puzzle was our suspect, Lithium Lemon.



Wrap up

While the shady character wad hauled off in cuffs to the county jail, successful detectives were rewarded with candy, some awesome stickers,  and a handout that had a child-oriented activity sheet on one side, with a small copy of our open knowledge posters on the other side, for the slightly more grown-up folks.

What we learned

Our tables were generally very busy, and the kids seemed to have a great time examining the evidence and putting together the puzzle pieces one by one. I’m not sure how many of them quite perceived the data sharing theme, but some of the adults definitely did, and appreciated the posters as well.

I think one of the biggest surprises for use was how busy we all were! Genetics had a steady flow of people, but the Guildhall had even more. We haven’t heard numbers for this year yet, but in 2017 apparently there were around 3,000 people. What that meant in practical terms for us: Two tables with identical versions of the activity, two InterMine team members acting as detective wranglers at each table, and often two separate groups of people working through the activity simultaneously at each table. After several hours of this we were all ready for a nap! Next time, six staff might be better to allow people to have a breather.

We also learned to keep a good eye on our puzzles: Five puzzles left the office on Sunday morning but only four returned. Hopefully it’ll be cherished at someone’s house as memories of a great activity…. ?

Our materials are open!

Given that our activity was designed to advocate openly sharing your science, we’ve shared our materials online too, and you’re welcome to re-use them.

This includes:

  • The fruit images (lovingly created by Rachel’s daughter!)
  • Handouts
  • Posters
  • Guidance sheets and in-depth “sciencey details” about each activity.

If you do re-use them, we’d love to hear about it! You can email, tweet @intermineorg, or even open an issue on the GitHub repository.

Finally, I’d like to thank Rachel again for all the work she put into designing this scenario. It was creative, exciting, and overall seemed to be a hit!


Google Summer of Code: Let the enquiries commence!

Last month we applied for InterMine to join Google Summer of Code (GSoC) as a mentor organisation, and we’re pleased to report that we have officially been accepted!

Students: Interested in working with us for GSoC?

Our GSoC site has a project ideas list and the student application guidance, which hopefully will answer most of your questions.

Want to learn more?

  • You can also read our GSoC blog posts from last year to learn more about how things went.
  • If you still have questions:
    • If the question is project-specific: email both listed mentors of the given project.
    • If the question is about GSoC in general, see the student manual.
    • We’ll be running a GSoC question and answer video call session where students can learn more about the specific projects. Updates about the exact date and time will go out on this blog, our mailing lists, and twitter.

We’ll look forward to hearing from you!


Community Spotlight: Correlating fly gene expression with FlyCAGE – Interview with @codingbash

For today’s blog we’ve interviewed Basheer Becerra, an undergrad bioinformatics researcher at the Illinois State University, about the application he’s created, FlyCAGE – (Correlation Analysis on Gene Expression). (Live Demo, GitHub)

Hi Basheer! We love hearing about new and interesting uses of InterMine. Can you give us a brief non-technical intro to FlyCAGE? What inspired you to make it?

FlyCAGE is a web application that allow users to search for genes in Drosophila melanogaster that follow a specific mRNA expression pattern. The user can either enter a known gene name to find other genes with similar expression profiles, or the user can enter a custom expression pattern based on experimental data to find genes that follow the pattern. FlyCAGE would be useful in identifying candidate genes involved in a given process and discovering regulatory interactions in genetic networks.

Tell us a little about yourself.

My name is Basheer Becerra, and I am currently an undergraduate junior at Illinois State University double majoring in Computer Science & Statistics and minoring in Biological Sciences. Programming is something I love doing, specifically web development and data science. What makes me even more excited is using programming and mathematics to answer difficult questions in biology! When I’m not on the computer, you will usually see me reading, training for upcoming marathons, or spending time with friends and family.

You’ve been a friendly presence in our Twitter feed for a while now. How did you hear about InterMine originally?

InterMine was originally introduced to me by my advisor, Dr. Nathan Mortimer, as a tool to help scientists quickly review information about any gene. While InterMine is a helpful tool for scientists to browse gene information, I’ve also realized that InterMine is incredibly useful for developers and data scientists. When my advisor and I came up with the idea of FlyCAGE, InterMine was chosen to be the best solution for retrieving data due to its data integration features and ease of use.

Can you tell us a bit about the technical implementation of FlyCAGE?

The technologies used to implement FlyCAGE includes Spring Framework (Java) for the web back-end, Thymeleaf for template resolving, and HTML/CSS/Bootstrap and JS/jQuery for front-end development. After the expression information is extracted from the entered gene or pattern, Pearson’s correlation is performed on every gene stored in FlyBase for Drosophila melanogaster. Genes with the highest pearson’s correlation coefficient relative to the input expression is returned to the user. InterMine plays a significant role in the operation of FlyCAGE since FlyMine is the only resource used to retrieve the gene information and mRNA expression data. With FlyMine’s modern HTTP API, only a single query is needed to retrieve all the necessary data for FlyCAGE to operate. Without FlyMine’s data integration, FlyCAGE would have to manually integrate data from several different data-sources such as FlyBase, FlyAtlas, BDGP, etc., which would slow down development significantly.

What are your future plans for FlyCAGE? Are you going to expand to other organisms apart from flies?

As far as the program logic, the plan is to include more complex analysis of expression data such as including other data features to help determine “gene similarity”, predict regulatory interactions and unknown gene functions, and explain subtle differences in gene pairs with correlated expression patterns. There has also been a lot of interest to expand CAGE towards other organisms such as plant genomes. With InterMine’s standardized API interface across its several resources, I predict that scaling the functionality of CAGE towards other organisms should be a relatively feasible task.

FlyCAGE is currently in-alpha and can be accessed by this link. However, the link is likely to change as FlyCAGE gets close to releasing. If you would like to stay up-to-date with FlyCAGE or if you would like to help us with usability tests to improve FlyCAGE, please enter your email with this Google Form. If you’ve already looked at FlyCAGE and would like to send some feedback, send me a quick note at Any help is appreciated!