Internships Summer 2020: Closing thoughts and final presentations recording

Last week was the end of the Outreachy May 2020 Internship Round, where we held a final presentations call for our interns, mentors and community. Due to the wide range of time zones, from New York to Singapore, no one time was optimal for everyone, so we extend our sincere gratitude that all the students were willing to attend the call!

We are thankful to a Wellcome Trust Diversity and Inclusion Grant for funding three of our interns, Outreachy for matching this by funding two interns, and our main Wellcome grant for making it possible to fund two more. This brings us up to a count of seven interns, the highest number that we’ve had the pleasure of working with yet at one time! This wouldn’t have been possible without help from our external mentors — Akshat Bhargava, Aman Dwivedi, Ankur Kumar, Asher Pasha and Nikhil Vats — whom will all be receiving a small prize as a token of our gratitude.

During the internship period, we had to say goodbye to our valued InterMine team member for 5 years, Yo Yehudi, who drove our internship scheme to its current state and has left to become the Technical Lead for Open Source at the Wellcome Trust. Thanks to the efforts of our mentors for their support of our interns, and to Rachel for running the final presentation call, we were able to provide a closing to the internship period we can all be proud of.

A recording of the final presentation call is available on our YouTube channel and embedded below.

Additional information on our interns

Many of our interns have been writing blog posts throughout their internship, which you may find an enjoyable read:

The GitHub accounts of all our interns are listed below, if you wish to check out their contributions:

In closing

It’s been a joy to work with so many talented people, and this includes all the contributions during the Outreachy contribution period prior to intern selection. Many valuable contributions to InterMine projects were made during this period, and we regret we weren’t able to offer everyone an internship.

We hope the next year of internships will be as successful as this one, and look forward to coming up with more exciting internship projects, as well as working with more fantastic interns and mentors. Until then, let’s enjoy the fruits of this labour!

BlueGenes 0.10.0 release

This release was made to coincide with the InterMine 4.2.0 release, which included many updates to webservices important to BlueGenes. While BlueGenes aims to retain backward compatibility with InterMine instances all the way back to API version 27, (appropriate messages are displayed if your instance doesn’t support a feature) many new features are dependent on being up-to-date with InterMine releases.

We are still working towards the production release of BlueGenes, at which point we can recommend it for future deployments over the legacy user interface. This recent year has brought with it a plethora of necessary technical improvements and bug fixes, along with new additions to bring the user interface towards feature parity with the current webapp. The following details the most visible changes to BlueGenes in the last release, which you can explore by updating your local instance or using the public BlueGenes instance.

Visualization tools

  • New version of Tool API to allow list and query results page tools that use IDs from multiple classes
  • Tools on list and query results page should work properly for all classes now
  • Tools on list and query results page now update when editing im-table
  • Initialisation of tools has been made more performant
  • CovidMine visualization for Cases

im-tables

  • Better selection of constraint operation when creating filter
  • Filter manager for adding and modifying constraints and logic
  • Overly wide table contents are now hidden behind a scrollbar
  • Helpful messages and options when something goes wrong
  • Histogram in numeric column summary has been fixed and more features added
  • Calendar for Date type constraints
  • Searchable dropdown for single and multiple value constraints

Query builder page

  • Build queries with outer join and sorting
  • Save queries to your account
  • Load recently run queries from your current session
  • Data browser for selecting the root class
  • Import query from XML

Profile page (new)

  • Change your password or preferences
  • Delete your account
  • Register a new account for a mine

Lists

  • Folder hierarchy for your lists in My Data
  • Add and edit list descriptions

Interactive tool store

  • Currently placed in the developer page, but we intend to move it to an admin page in the future
  • Manage the installation, updating and removal of BlueGenes visualization tools using a web interface
  • Rich information on each tool, where they’ll be visible, and any compatibility issues with the currently active mine
  • All Tool API compliant npm packages with the bluegenes-intermine-tool tag are shown (only tools under the @intermine scope are installed by default)
  • Only superusers are allowed to make changes

Report page

  • Show FASTA information on report page when available (we intend to make drastic changes to the current report page in the near future)

Technical

  • Much improved handling of mines that are unresponsive or have erroneous web services
  • Java 11 support and a docker container

Previous minor releases

There have been some notable changes in prior minor releases. As they haven’t been mentioned in a blog post, we will include them here.

  • Dynamic page titles (the text displayed in the tab or window title) based on the current page and its contents
  • Improvements to the keyword search page
    • Filters should work as expected when applied
    • Multiple filter support
    • Endlessly display more results by scrolling down
    • Restoration of scroll position when returning to search page
  • Reworked routing
    • New and improved URL paths
    • Deep linking to pages of specific mines
  • Stability improvements to mine switching and initialising
  • HTTPS support

Outreachy Interview: Sakshi Srivastava on JavaScript data visualisations for BlueGenes

This is our blog series interviewing our 2020 Outreachy interns, who are working remotely for InterMine for 3 months on a variety of projects. We’ve interviewed Sakshi Srivastava, who will be working on data visualisations for BlueGenes.

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

Corona Namaste everybody! Delighted to be a part of the InterMine team. I’m an undergraduate pursuing Bachelor of Technology in computer science from Guru Gobind Singh Indraprastha University, Delhi, India. I’ve been working with JavaScript and the web ecosystem for the last 2 years. I like to take part in tech meet-ups and hackathons (also, have won a few of them). I like to solve puzzles that involve logical and mathematical questions. I’m also doing competitive programming to increase my problem-solving ability. I love to draw and paint, although I haven’t done it from the past few months, as it’s my best to escape from the real world and take a break from everything going on in life. I like to listen to soft relaxing music and play guitar sometimes. When I’m not on my laptop, you will mainly see me sleeping (mostly :P), delved into some interesting chat with friends, or day-dreaming. I’m in the phase of inspecting different kinds of technology sectors to discover the one which flatters me the most. One of my magnificent project in the field of data visualisation is IPLDataVizProject which was given in an interview as a task.

What interested you about Outreachy with InterMine?

Biologists study life on scales from single molecules to whole organisms to entire ecosystems. I’ve never explored the bioinformatics world much but getting acquainted with the science behind life always interests me. InterMine fits like a glove to me. Also, javascript is exactly where my interest revolves. I wanted to strengthen my skills and increase my capability to bring more and more conversions. Consequently, this perfect opportunity will give me a chance to get familiar with the underlying scientific notions by applying my computer science skills. But this is not the only reason that makes me choose InterMine. The primary reason was the optimistic environment at InterMine which never made me even go explore any other organisation during the application process. The mentors are highly admirable who always entertain the ideas, doubts, requests elegantly and motivate others to be awesome. The time spent with them discussing the details of the project was intriguing. They are one the most indispensable parts of the InterMine community.

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

The complexity of biological problems requires understanding and then analysis of networks and interactions. But when the data is huge it becomes difficult to get better insights easily. The aim of my project is to create different visualisation tools to propel the cluttered and chaotic data into an understandable form. This will help biologists to understand the networks and interactions between different entities in an easier way and consequently draw relevant conclusions with single sight to the graph.

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

As we know InterMine has tons of biological data worldwide. The procurement and comprehension of data are essential in order to mold it into meaningful visualisations and get better insights. I will try to get familiar with the biological entities prior to beginning each viz by studying the InterMine’s data models and with the help of mentors. This will help me to write better documentation or maybe it could light me with new viz ideas in my mind.

I also came up with an interesting idea to use storybook.js to showcase all our visualisation tools in one place for demo purposes without actually needing anybody to run the tools locally. I’ve started exploring monorepo techniques and how we can actually integrate it with our visualisation tools. This is going to be a new and engaging challenge for me as I’ve never worked with monorepos before. This is going to be fun.

Share a meme or gif that represents your project

Outreachy Interview: Pooja on the CLI tool for managing InterMine instances

This is our blog series interviewing our 2020 Outreachy interns, who are working remotely for InterMine for 3 months on a variety of projects. We’ve interviewed Pooja Gaur, who will be working on the InterMine Boot CLI tool project.

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

Hello!! Excited to join the Intermine team. I am from Ajmer Rajasthan, India. I am pursuing MS by research from IIIT Hyderabad, India. I have completed My btech Honours from Govt. Women Engineering College Ajmer, Rajasthan. After that I worked for two years in a startup, where I worked on automating common queries by pattern matching. Right now, I am a Research Student in the Data Science and Analytics lab at IIIT Hyderabad. My current research work deals with increasing revenue and user satisfaction for retail stores. My interest varies from research in data organization, data mining and analytics to web development. I developed interest in open source after participating in Hacktoberfest 2019. I came to know about Outreachy from one of my friends in college. I like dancing and visiting new places. I used to take part in regional dance competitions before joining college. 

What interested you about Outreachy with InterMine?

I was browsing the past projects on the outreachy site. From a coarse look, I shortlisted around 7 to 8 projects. The intermine’s documentation was clear for contribution, So I started digging deeper and developed more interest over time in this organization. I liked the idea of providing tech power to biologists to improve their work flow and ease their work.

When the projects list was out, I saw the making CLI tool project. I had manually set up the intermine which is a laborious process and I realised that this project would be very helpful for end users. Also my current knowledge is aligned to this project, and it would be helpful in extending my knowledge.

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

My project is Create a CLI tool for managing InterMine instances. Building an intermine is a laborious process and requires a lot of system knowledge. But every user may not have deep knowledge of the system. Intermine Boot is part of the Intermine Cloud project. Intermine boot is a convenience tool which provides a single command setup to easily create and manage the intermine instances locally. Along with local instance creation the project supports building instances inside the docker container for e.g to use in Continuous Integration.

My aim is to extend the intermine boot to implement the Continuous Integration use case. Here, a CI pipeline will be written (using travis) and a docker image will be created which can be loaded during CI pipeline to run tests. Along with it, I will integrate wizard and configurator with intermine boot to ease the configuration and setup of local instances of Intermine.

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

Although I am comfortable with python scripting and development, my experience with docker and continuous integration is minimal which could create a steeper learning curve.

To overcome these issues, I have already started digging a little deeper into project requirements and pick up required knowledge for docker and continuous integration.

Share a meme or gif that represents your project!