GSoC ’18 with Intermine — First Evaluation

Aman Dwivedi
5 min readJun 23, 2018

--

It has been a long time since the commencement of the Coding Phase. The project Cross Intermine Search Tool has grown drastically in the previous few weeks. The performance of the application should be of at-most priority. We made a few design changes in order to deal with performance issues. We removed the tabs layout as it contributed a very heavy UI to the search tool.

Let’s have a look at some of the changes which were implemented in the previous few weeks. ;)

  1. Example Search — when you’re not sure what to search

For people who have no idea about what to search in the search tool, we have added a few most common search terms which fetches results from all the mines. So, if you want to explore the features and you are not sure about what search term to use and which InterMines to search, just hit our example search on the Home Page of the application (you will see some real magic happening after that).

2. Neighbourhoods — for mine selection

We know that there are some people who love to study about plants but hate to study about animals. We have a concept of neighbourhoods at InterMine. So, we added another option which would allow a user to search either only MODs or only Plants. Now, users need not select the separate mines in order to search for Plants/MODs manually; the application would do it for you based on your input.

3. Better Error Handling — alerts when something unusual happens

We are very much concerned about the User Experience. We don’t want users to panic when some error occurs or some InterMine server is down. So, we added alert messages in error handlers which pop up when some error occurs, or when no results are found. Also, we have some InterMines which run on HTTP, so the search tool works best when accessed via HTTP instead of HTTPS. Another message will pop up informing the user when the user tries to access the search tool via HTTPS.

4. Better colour coding

A colour coding always helps to explore results efficiently. We already have a standard colour coding for various categories which we use in our Bluegenes project. The same colour coding has been used in this project to differentiate various important categories from each other.

5. Removed the tabs layout for separate InterMines

We were having some performance issues in various web browsers. Having different tabs for separate mines wasn’t feasible for the performance of the application. So, we changed the design and removed the tabs. We also removed some of the material effects. This increased the performance of the search tool drastically. I really thank the people who got back to me with this performance issue feedback. Though the issue occurred only in some browsers, yet it was very important to resolve this.

6. Search query parameters — for linking the tool with the InterMine homepage

The search tool would be available on the InterMine homepage via a search box. For implementing this, it was necessary to receive the search arguments via URL query params, and trigger the search process automatically. Now, anyone can link the search tool with their web app and redirect the user to the following URL,

=> SEARCH_TOOL_HOST + “/?search=” + SEARCH_TERM

This URL will take the user to the search tool and the results for the SEARCH_TERM for all mines will appear automatically.

7. Pop up modal — for result items

Some of the result items might have a lot of information. Showing all the information in the result list is not possible. So, we came up with an idea to have a pop-up modal which would appear when you click on a particular result. The modal would have a detailed information about the result item. The OPEN PORTAL button can be used to open the result’s report page in a different tab.

8. Loading more results

The InterMine Quick Search API returns only a max of 100 results in one API hit. Hence, the search tool shows the top 100 results for one mine at a time. We added a Load more button which when clicked fetches more results from the Quick Search API.

So, that’s all for now. Please have a look at the application here. I would love to have more feedback from the community. Kindly send your feedback to dwivedi.aman96@gmail.com

Thanks for reading. Happy Coding! :)

--

--