nrnb / GoogleSummerOfCode

Main documentation site for NRNB GSoC project ideas and resources
115 stars 39 forks source link

High level abstraction components for pySBOL3 #184

Closed Gonza10V closed 1 year ago

Gonza10V commented 2 years ago

Background

pySBOL3 is one of the main libraries implementing the SBOL3 standard. But it has not been widely used due to the slow learning curve of SBOL. SBOL-utilities is a collection of scripts and functions for manipulating SBOL 3 data that can be run from the command line or as functions in Python. This set of functions provides a high level abstraction for manipulating SBOL files and can provide a more user friendly environment for developers that would want to use pySBOL3 to write SBOL documents.

A starting point for familiarization with this material is the SBOL tutorial material on the data model and Python library that was presented at IWBDA 2021

Goal

The result of this project would be to implement most or all the examples on the SBOL 3.0.1 specification that has not been implemented yet.

Difficulty Level: Easy

The examples are very well defined and can be implemented incrementally.

Size and Length of Project

Skills

Essential skills: Python Will be learned if not known: SBOL

Public Repository

https://github.com/SynBioDex/SBOL-utilities

Potential Mentors

jakebeal@ieee.org, tom.mitchell@raytheon.com, Bryan.A.Bartley@raytheon.com

RATED-R-SUNDRAM commented 2 years ago

Hi @jakebeal @Gonza10V , I am shivam sundram a 3rd year Undergraduate, I have 3 years of learning experience and one year of work experience in python, I am willing to contribute to this project for GSoC 2022, any guidance on where to begin and what all to learn would be really encouraging and helpful.

Gonza10V commented 2 years ago

Hi @khanspers I have a question here. I dont know if I should be considered a mentor on this project. I am a heavy user of pySBOL3 and SBOL-utilities. I looked for GSoC projects that add the functions that I feel useful to the package and I ended proposing the ones that I want to see implemented and I could contribute to. I have no problems if another participant wants to develop it, I can participate on other needed features but I'm a bit confused because I want to participate as developer on GSoC and not as mentor yet. Is this ok? what should I do?

jakebeal commented 2 years ago

@RATED-R-SUNDRAM Glad to hear of your interest - can you please link to something that you consider a good example of your work in Python?

@Gonza10V I believe that you are right able you fitting in well as a contributor and not a mentor at this time. I've got it from here.

RATED-R-SUNDRAM commented 2 years ago

@jakebeal I am liking to one of my projects here. Please guide me on ways and learning to get started for the project

jakebeal commented 2 years ago

@RATED-R-SUNDRAM That does not appear to be your own work, but rather the work of another student.

khanspers commented 2 years ago

Hi @Gonza10V, thanks for letting me know, it wasn't clear to me if you were a contributor or mentor, since you opened the issue I assumed mentor. I've removed you from the mentors list.

RATED-R-SUNDRAM commented 2 years ago

@jakebeal This was a collaboration of other people on other components, For me individually I've contributed in adding all the python functions and classes as well coded for the preprocessing and training of the data.

In any case, if you want a test of my abilities I am open to any of your test tasks on this or any other repositories

pengbingyin commented 2 years ago

Sounds amazing. Can I join as an apprentice?

jakebeal commented 2 years ago

@pengbingyin Glad to hear of your interest - can you please link to something that you consider a good example of your work in Python?

Akshat-Kumar-0610 commented 2 years ago

Hi, @jakebeal; I am Akshat Kumar looking forward to contributing to this project through GSOC 2022, any suggestions from where to begin and what to learn before contributing to it. Here is my Github Profile and one of my work in python which I would like to show

jakebeal commented 2 years ago

@Akshat-Kumar-0610 The link that you provided is giving a "page not found" error for me: is it one of your private repositories?

Akshat-Kumar-0610 commented 2 years ago

@jakebeal I am really sorry, I can't make it public. I have given you contributor access to check it out.

pengbingyin commented 2 years ago

@pengbingyin Glad to hear of your interest - can you please link to something that you consider a good example of your work in Python? @jakebeal

Sorry for late reply.

We would like to extract promoters and terminators from S. cerevisiae and Y. lipolytica genome sequence basing on genome annotation, RNA seq, and chromatin immunoprecipitation sequencing data. Also, we would like to test the promoters to verify their activities for a part library. I am wondering as well whether we can develop a mySQL database on AWS.

jakebeal commented 2 years ago

@Akshat-Kumar-0610 Thank you; I have had a chance to look at your work, and it seems you are in a reasonable starting point for this project in terms of your Python knowledge.

If you would like to familiarize yourself with the material for the project, I would suggest going through the SBOL tutorial material on the data model and Python library that was presented at IWBDA 2021. I will add this to the top issue as well.

jakebeal commented 2 years ago

@pengbingyin I'm afraid that I'm a bit confused by your comments. All of what you are saying can be done with SBOL, but is out of scope of this particular project. Are you trying to propose a new project?

pengbingyin commented 2 years ago

@pengbingyin I'm afraid that I'm a bit confused by your comments. All of what you are saying can be done with SBOL, but is out of scope of this particular project. Are you trying to propose a new project

@jakebeal (1) Frankly speaking, I know little to nothing about programming. I will try my best to understand first. I saw your recommendation of BioPython in other track. I will take a look as well. (2) I am trying to start a project in this area to simulate the genetic engineering methods. Yes. I am trying to propose a new project. Can we have a discussion in another chance? (3) I am quite interested in learning SBOL3 utilities, and commend line sounds appealing to me, but due to the limitation of knowledge, I have not yet identified the points I can contribute to. But I am keen to catch up.

jakebeal commented 2 years ago

@pengbingyin I understand; this issues isn't the place for brainstorming new projects, but please feel free to reach out to the SBOL community for help as you are getting started on your project.

Akshat-Kumar-0610 commented 2 years ago

@jakebeal I went through the tutorial you metioned and also going through SBOL-utilities library mentioned in issue itself. Can you please tell what needs to be done further.

jakebeal commented 2 years ago

@Akshat-Kumar-0610 In the SBOL utilities project, there are a number of issues marked with "good first issue". I would suggest picking one of these issues and starting to work on your first pull request.

ahmedtarek26 commented 2 years ago

Hi @cannin, @khanspers I am Ahmed Tarek and I am a medical informatics 3rd-year undergraduate student. I have good experience using python for two years. I take a Genetics course at college and did a project using some ML libraries, Biopython, Py3Dmol, and ngl-view which you can find here. I am interested in machine learning, and deep learning so I learned them during the last two years from DataCamp and joined Neuromatch Academy as an interactive student in which we used python so much. I am working as a research assistant on a research paper in NLP and we are about to publish our work soon.

I think I am good with python and I feel easy going through different python libraries to do specific tasks and am passionate to work on a new kinds of datasets to start working on this project for GSOC 22. Thanks for your time

khanspers commented 2 years ago

NRNB has officially been accepted as a mentoring organization for GSoC 2022! Here are some useful links:

tcmitchell commented 2 years ago

Here are some links from the GSoC Mentors mailing list that might be generally helpful to all who are interested in this project:

khanspers commented 2 years ago

A reminder that the application period opens on Monday April 4. Proposals to NRNB must be submitted on the official GSoC Site (https://summerofcode.withgoogle.com/) before April 19, 18:00 UTC to be considered, and contributors are encouraged to submit proposals in draft format early, so that mentors can give feedback directly at the GSoC site.

AlexanderPico commented 2 years ago

IMPORTANT REMINDER: GSoC 2022 is for new “beginners” to open source.

Applicants are expected to review eligibility requirements prior to applying. We can not accept applications from contributors with prior open source development experience. From the GSoC FAQ https://developers.google.com/open-source/gsoc/faq:

Can someone already participating in open source be a GSoC Contributor?

The goal of GSoC is to bring new contributors into open source organizations. GSoC can also help beginner contributors learn the ins and outs of open source while being mentored by experienced community members. GSoC is for new and beginner contributors to open source, it is not for experienced contributors to open source.

khanspers commented 1 year ago

Closing in preparation for GSoC 2023.