Google Summer of Code 2017 Ideas
Contents
Eclipse ChemClipse
ChemClipse is a tool for chromatography/mass spectrometry. The combination of chromatography/mass spectrometry is often used in the area of forensics, for quality control as well as for life sciences. Chemical data is best suited to be used in combination with machine learning and statistics. Moreover, when it comes to machine learning, script languages like Python or R play a major role. Hence, we will have a look how to efficiently combine chemistry, machine learning and scripting as part of the GSoC initiative.
Here are some of our project ideas:
- Integrate a bridge from ChemClipse to R, see Bug 511955
- Improve statistics and the PCA functionality, see Bug 511956
- PCA on scans does not work, see Bug 499542
- PCA Editor 3d view, see Bug 486169
Eclipse Dash
NOTE that this is basically a placeholder to give mentors an idea of how they might format a section of their own. This may actually survive as an idea to present to students, but--by way of expectation management--expect that it will disappear.
Eclipse Dash is a place where the community itself can collaborate on tools for community awareness and collaboration in support of our ultimate objective of committer quality and cooperation. This is very much a research project as we are not entirely sure what these tools will be.
Here are some of our project ideas:
- Extend the Eclipse Dash Gently Dependency analysis tools to identify the use of third-party JavaScript libraries bug 509617
- Update the IP cartoons and move them to the handbook bug 498290
Capra
Capra is a traceability management tool that enables creation, maintenance and visualisation of traceability links between arbitrary development artifacts such as requirements, design models, code, task tickets and so on. Since Capra is a product of a research and academia project, there are lots of interesting features that students could implement. Please browse on the list of features here, but the following have a high priority and we encourage students to look at these:
- Analyse the traceability models and create visual representations of issues, traceability statistics and so on. See Bug 510492
- Add collaboration features to the tool. See Bug 506906
Eclipse RDF4J
Eclipse RDF4J is a framework for scalable processing of linked data in RDF. This includes parsing, writing, scalable database storage, reasoning and querying (using the SPARQL query language). RDF4J offers a set of Java libraries as well as a fully-fledged database server and several client UI tools to interact with RDF data. We're a small team who are open to fresh ideas and new contributions. People interested in doing a project with RDF4J are invited to browse through our issue tracker and look for anything marked "help wanted", or to submit their own proposal.
Here are some project ideas:
- Extend the SPARQL QueryRenderer utility to support more advanced SPARQL 1.1 features (subqueries, aggregates, etc.) #496
- Extend/replace the SPARQL QueryBuilder to a more user-friendly API and allowing more advanced SPARQL 1.1 features #71
- Add support for the SHACL (Shapes Constraint Language), a declarative language for specifying data validation constraints on RDF database #743
EASE
EASE allows to add scripting functionality to the Eclipse IDE. By providing script source locations we read script code and make it available in the UI. Such scripts may use special header keywords that trigger certain actions.
Dependency keyword
By introducing a new keyword for plugin dependencies, scripts could aid the user to install required components before run. A detailed description is given in Bug 511525.
Script location resolvers
We use parsers to fetch scripts from the file system or the workspace. A prototype for an http index file parser is available, too. It would be great to have parsers for source control systems like github, gerrit or svn to fetch scripts directly from such locations. See Bug 511528 Bug 511529 Bug 511530 for details.
EMF Forms goes AngularJS: A generic editor framework for the web
EMF Forms is an Eclipse framework to efficiently develop form-based UIs (see http://eclipse.org/ecp/emfforms/). It also provides a renderer for web applications called “JSON Forms”. JSON Forms transfers the concepts of EMF and EMF Forms to a JSON Schema and AngularJS based web stack. EMF Forms provides a generic editor component, which makes it very efficient to create editors a given data model. This is often used for the creation of developer tooling. However, it is bound to SWT and XML. The goal of this project is to provide this generic editor framework on the web stack of EMF Forms, too (JSON Forms). Instead of EMF and XML, it will consume a JSON Schema and a JSON file as input/output. This component would enable the efficient creations editors for the web based on a given JSON Schema and therefore support the development of tooling for platforms such as Eclipse Che or Orion.
- Possible mentor: Maximilian Koegel
- Interested student: Lucas Koehler