Closed bdemchak closed 5 years ago
@bdemchak I am interested in working on the project. What work would I need to do for getting an understanding of the project?
Hi, Saurav –
Thanks for your interest. I apologize for the late reply … I have been on vacation until yesterday.
Are you still interested?
Here is some background material on Cytoscape Automation: https://github.com/cytoscape/cytoscape-automation/wiki
It’s a great project and means a lot to Cytoscape, which itself is a great project.
What do you think??
Can you tell us more about your experience and interests??
From: Sourav Singh [mailto:notifications@github.com] Sent: Thursday, January 18, 2018 7:36 PM To: nrnb/GoogleSummerOfCode GoogleSummerOfCode@noreply.github.com Cc: Barry Demchak idekerlab.bdemchak@gmail.com; Mention mention@noreply.github.com Subject: Re: [nrnb/GoogleSummerOfCode] Create Cytoscape Automation services based on existing code libraries (#116)
@bdemchak https://github.com/bdemchak I am interested in working on the project. What work would I need to do for getting an understanding of the project?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nrnb/GoogleSummerOfCode/issues/116#issuecomment-358857658 , or mute the thread https://github.com/notifications/unsubscribe-auth/ADhl3o9zog7SX0o_Bv52CQLcTdxwZ22Aks5tMA29gaJpZM4RGPtg . https://github.com/notifications/beacon/ADhl3l-J4gjp3-KRIhaSKK0BEXJ5mrMUks5tMA29gaJpZM4RGPtg.gif
Hello, @bdemchak Thanks for the reply!
I am interested in working on the project. I wil take a look at the resource given and try to do a few experiments with the service.
I am currently a final year undergraduate student and a Software carpentry instructor and I am interested in the field of Phylogenetics, Proteomics, High-Throughput sequencing and Machine Learning.
Good ... sounds like a plausible fit. Please let me know if you have questions or observations.
On Tue, Jan 30, 2018 at 12:17 AM, Sourav Singh notifications@github.com wrote:
Hello, @bdemchak https://github.com/bdemchak Thanks for the reply!
I am interested in working on the project. I wil take a look at the resource given and try to do a few experiments with the service.
I am currently a final year undergraduate student and a Software carpentry instructor and I am interested in the field of Phylogenetics, Proteomics, High-Throughput sequencing and Machine Learning.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nrnb/GoogleSummerOfCode/issues/116#issuecomment-361509847, or mute the thread https://github.com/notifications/unsubscribe-auth/ADhl3h2BdxO4WX7RyvfBgfcWet6ckxncks5tPtAXgaJpZM4RGPtg .
-- vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv : Barry Demchak, PhD : National Resource for Network Biology (NRNB) : UC San Diego : Department of Medicine : Biomedical Research Facility II, Room 3A15 : http://orcid.org/0000-0001-7065-7786 : Land line: (858) 822-4756, Mobile: (858) 452-8700 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Hi @bdemchak ,
My name is Joe Liao, I'm interested in exploring possibilities on this particular project. I have experience building Java JAX-RS (w/ Jersey) servers, and have experience using python (Flask server, data science, elementary unit testing). I also have experience using tools like Git, AWS, GCP, and CircleCI. Is there a chance that you could point me to the source code of Cytoscape and examples of possible areas for improvement?
A little background on myself: Currently enrolled in M.S. in Information Systems (Health Tech) at Cornell Tech, Cornell University. Used to study chemistry and have done research projects at school's biochem lab.
Hi, @bdemchak,
My bad, I just saw the github repo, and the wonderfully documented "Cytoscape Automation FAQ". Could you perhaps point me to an example of a possible area of improvement, and briefly talk about your expectations for the project?
Thanks!
Hi, Joe --
Glad to meet you.
An example of app-needing-automation would be Merge (http://apps.cytoscape.org/apps/networkmerge). Its code is here: https://github.com/cytoscape/network-merge
Most apps are created by community members and contributed to the app store. The apps we're concerned with are created by the Cytoscape core developers and are in the Cytoscape github repository. Merge is an example. There are others.
So, the trick would be to determine which core apps (and maybe a few closely related apps) are currently in the set, define their REST interface, and then upgrade and test. A set of re-executable test suites would also benefit us by allowing us to test apps that haven't had any test coverage in the past.
Does this help you understand more??
Understood.
I will dig deeper into the links above and the repo in general, thanks!
Completed.
Background
Cytoscape is a highly popular open source bioinformatics software platform for visualizing, analyzing, and publishing graphs or networks representing molecular interactions, gene expression, other biological data. As a desktop application, all Cytoscape operations are performed manually using a mouse and keyboard. The new Cytoscape Automation feature set enables Python or R programmers to call Cytoscape to chain together a number of previously manual steps.
To date, protocols describing important biological analyses have been published in terms of mouse clicks and keyboard strikes. Cytoscape Automation has the potential of greatly improving the productivity of network biologists by automating these laborious, hard-to-repeat workflows and showing the way for network biologists to write novel, reliably repeatable workflows.
To bootstrap this revolution, we must upgrade a number of Cytoscape internal and external code bundles (called Apps) to present functional interfaces capable of supporting Cytoscape Automation calls. This involves surveying and understanding each Apps' functionality, and then formulating efficient and effective APIs for use by workflows. It also involves writing Python or R code to test the APIs.
For example, Cytoscape's Network Merge app (http://apps.cytoscape.org/apps/networkmerge) enables users to merge two networks in a number of different ways. Adding Cytoscape Automation features to this app would empower workflows written in Python or R to accomplish the same thing.
It's likely that in the process of creating Cytoscape Automation APIs, we will discover novel functionality that can be added at the same time, thereby increasing the value of Cytoscape to both manual and automated users.
Skills acquired during this project will be useful for a future in computer science, network biology or bioinformatics.
Goal
Upgrade a number of existing Cytoscape internal and external apps to support Cytoscape Automation services, and create Python- or R-based tests that demonstrate their functionality.
Technologies
Upgrading Cytoscape apps will require basic competence in Java. Writing tests and upgrading calling libraries will involve basic Python and/or R skills.
Difficulty level: 2
Demonstrated experience Java and Python and/or R coding is required. Familiarity with biology concepts, networks and graphs is a plus.
Potential mentors
Barry Demchak and Keiichiro Ono
Contact
Barry Demchak (idekerlab.bdemchak@gmail.com)