# Forum on project ideas

This page collects project ideas coming from either the Scikit-HEP team or more broadly from anyone from the Scikit-HEP community. Do get in touch if you would like to add an idea to this forum. It will be the best way to raise awareness about your idea and attract contributors!

## Google Summer of Code 2017

Scikit-HEP is participating in the Google Summer of Code 2017 program with CERN as an organization, and under the umbrella of the HEP Software Foundation, see the direct link.

We have put forward 2 successful proposals! The direct links to the project proposals are the following:

- Python bindings for the Hydra C++ library for analysis on massively multi-threaded platforms.
  Student: Deepanshu Thakur.
- Visualization tools for Scikit-HEP.
  Student: Chetan Malhotra.

## Data aggregation

- Data aggregation largely means histogramming. An interesting idea would be to exploit the

Histogrammar package implementation in Python as a powerful way of dealing with data aggregation in Scikit-HEP.

## Datasets

- Datasets are central in HEP and Scikit-HEP too. This important package needs further development and lack parts of the implementation.

Get in touch with Jim and Eduardo ifthe topic is of interest to you.

## Math modules

- The 3D and Lorentz vector classes need to be improved to exploit NumPy arrays.

There is also functionality to be implemented. Contact Eduardo if such a development is of interest to you.

- Now that 3D and Lorentz vector classes are available, though in development, it would be handy to build on them.

Needed are a 3D point class and then a set of mathematical functions implementing handy geometry-related calculations commonly used in HEP. Contact Vanya and Eduardo if such a development is of interest to you.

## Modeling

Means “data models and fitting utilities” at large. Ideas?

## Simulation

- Creation of a decay generator base class. A concrete class using ROOT’s `TGenPhaseSpace` should be an immediate example. Contact Eduardo if you want to get involved.

## ROOT-Pandas

- Include the root_pandas project into scikit-hep and see how it fits together with the rest of the framework. It is an excellent candidate for an affiliated package.
- Define which parts are still missing and find developers for this part of the project.
- See if users of this project may want to use scikit-hep as their starting point instead of installing root_pandas, to increase the awareness of this project.

## Analysis Development

- Give users as early as possible an idea on how the project may contribute to and/or help with their analysis, e.g. by giving a small example analysis using the project toolchain.
- Think about including “framework” tools for an analysis, e.g. workflow managers (for example luigi).