Google Summer of Code sun imageNumFOCUS is proud to introduce our Google Summer of Code (GSoC) 2018 students to the community. 

This year there are 47 students participating under the NumFOCUS umbrella! The projects they will be working on include:

  • Cantera
  • Conda Forge
  • Data Retriever
  • FEniCS
  • Gensim
  • Julia
  • MDAnalysis
  • PyMC3
  • Shogun
  • yt

We also have three other sponsored projects who are independently participating in GSoC:

  • Astropy
  • SunPy
  • SymPy

About GSoC

NumFOCUS has participated as an umbrella organization for Google Summer of Code since 2015. Google Summer of Code sponsors students to work full-time for 3 months on open source projects during the summer (in the northern hemisphere), supervised by a senior contributor from the mentoring organization.

This is the first in a series of blogs to introduce our GSoC students to the community.

In this first post, we’re pleased to introduce students working on the following projects:

Cantera, FEniCS, PyMC3, Shogun, yt

Yuanjie Jiang

Cantera

Implement a Plug Flow Reactor Model with Surface Chemistry

Link to Project Description

Link to Project Blog

College/University: University of California, San Diego

Major/Concentration: Mechanical and Aerospace Engineering

Degree Program: Graduate degree

Hometown: Anqing, Anhui, China

How many times have you participated in Google Summer of Code? This is my first time participating in GSoC

What motivated you to apply for GSoC with NumFOCUS?Cantera logo

My research mainly focuses on the experimental and computational study of laminar counterflow combustion. As we know, there are many commercial softwares for simulation uses, such as Chemkin, Flamemaster, OpenSmoke, etc. Cantera as a newly developed package with highly accurate simulation results is known and utilized by more and more people, therefore my advisor suggests me to learn Cantera to do some simulations. Actually it gives us good results and we can understand how we get these results better than the previous commercial softwares. I have been using cantera package around 1 year, and mastered the basic use of Cantera. I wish to learn Cantera better and also contribute to this open source. Since Cantera is under the NumFOCUS umbrella, I applied for GSoC with NumFOCUS.

Why did you choose your specific project topic?

This topic needs not only programing skills, but fluid mechanics and combustion knowledge. I have learned graduate level Fluid Mechanics series at UCSD with great grades, and taken Heat/Mass/Radiative Transfer and Combustion with A/A+ grade. Furthermore, I have learned C++ during my undergraduate study. Besides, currently I am doing a project which funded by Siemens. In the current stage, we are still investigating the reduced mechanism of NH3/H2/N2 combustion. But in the next stage, we will do some simulation for internal turbine simulation, this project will really help my further Ph.D. study.

How did you get involved in open source software?

There is a Cantera Group online for discussing the problem people encountered in their coding, I always post questions and answer questions via this group. This communication helps me to learn Cantera open source software better, and I can contribute to this software as well.

What are you expecting out of your GSoC experience?

My expectations are listed as follows:
1) Establish a good friendship with my mentors.
2) Arrange my time more efficiently.
3) Form a new habit — writing a blog every two weeks.

What are your career goals, and how do you see the GSoC program moving you towards them?

My career goal is to be a combustion/thermal engineer, mainly focuses on the combustion/thermal analysis for the internal engine combustion. GSoC program can help me understand more about the software functionalities, and help me to customize my own simulation code for further use.

Fabian Löschner

FEniCS

Maximizing performance on modern architectures with data-level parallelism

Link to Project Description

Link to Project Blog

College/University: RWTH Aachen University

Major/Concentration:Computational Engineering Science

Degree Program: Masters 

Hometown: Aachen, Germany

How many times have you participated in Google Summer of Code? This is my first time participating in GSoC

What motivated you to apply for GSoC with NumFOCUS?

Most people use open source software on a daily basis. You probably caught yourself taking their updates for granted or complaining about missing features (at least I did). For me however, the hurdle to get to know a project to start contributing always seemed to be too high. Therefore, I was quite excited to see that NumFOCUS regularly participates in GSoC. All NumFOCUS projects are used by large communities of students and scientist who can benefit from new features and improvements.

The FEniCS project in particular is based on knowledge from several fields that are covered by my study program. A basic understanding of the mathematical background (partial differential equations and finite element methods) as well as knowledge in computer science are essential for working on FEniCS. This makes the introduction to the project much easier for me, as software development for science and engineering applications is a central aspect of my study program. Additionally it gives me the possibility to gain more practical experience in these areas. I’m excited to be finally able to contribute to an open source project.

Why did you choose your specific project topic?

Even though computing resources tend to get cheaper, low level performance optimizations are still important for scientific computing where the runtime of a problem may span several days. In case of FEniCS, performance critical sections (computation of element level tensors and global assembly) currently do not take advantage SIMD (single instruction multiple data) vectorization capabilities of modern CPUs. Considering results from other finite element frameworks, a significant performance boost can be expected depending on the problem solved by the framework. As this could benefit all users of FEniCS I’m excited to implement these optimizations and to contribute my own ideas. Furthermore, I worked on performance optimization in several student research assistant jobs and university projects with commercial software (such as Intel Parallel Studio and Visual Studio) and I’m interested in learning how the open source community approaches these problems.

What are you expecting out of your GSoC experience?

First of all I’m keen to get involved with the NumFOCUS open source community. My goal is to be of great help in improving free software that is used for scientific research. At the same time I hope to learn a lot about the tools used in larger projects and the effort required to organize the development process. Especially because most of the development of FEniCS happens remotely, I expect to get insight on how to coordinate this efficiently. Furthermore, I plan to do a PhD after finishing my Master’s. I think that this project is going to help me narrowing down the specific area of research for the PhD. I’m looking forward to make new contacts that may help me find an opportunity for this.

Agustina Arroyuelo

PyMC3

Module for Approximate Bayesian Computation

Link to Project Description

Link to Project Blog

College/University: Universidad Nacional de San Luis

Major/Concentration: Bioinformatics

Degree Program: Graduate degree

Hometown: San Luis cap., San Luis, Argentina

How many times have you participated in Google Summer of Code? This is my first time participating in GSoC

What motivated you to apply for GSoC with NumFOCUS?

The chance to contribute code to an open source library that I use everyday in my research.

Why did you choose your specific project topic?

Because bayesian statistics and probabilistic programming is very close to my field of research.

How did you get involved in open source software?

Firstly, only as a user, and later fixing some beginner friendly issues.

What are you expecting out of your GSoC experience?

To learn all about participating in an open source project and make contributions that other users would find useful/helpful.

Sharan Yalburgi

PyMC3

Alternative computational engines for PyMC3

Link to Project Description

Link to Project Blog

College/University: BITS Pilani, Goa Campus

Major/Concentration: Mathematics and Computer Science

Degree Program: Bachelors

Hometown: Bangalore, India

How many times have you participated in Google Summer of Code? This is my first time participating in GSoC

What motivated you to apply for GSoC with NumFOCUS?

GSoC provides a unique opportunity to work on a project of your choice with experienced professionals in the field. This in my opinion is a really good environment to learn and grow.

Why did you choose your specific project topic?

This project felt challenging and was an opportunity to work intensively with the best frameworks. Working on this project will help me in understanding probabilistic machine learning from an implementation perspective.

How did you get involved in open source software?

I was first introduced to open source by seniors in my college who had done GSoC before. The culture of collaboration for common good inspired me to try it out.

What are you expecting out of your GSoC experience?

I aim to learn a lot and contribute to the community at the same time.

What are your career goals, and how do you see the GSoC program moving you towards them?

I intend to pursue a career in data science. It would be a great opportunity for me to learn from experienced professionals.

Wuwei Lin

Shogun

College/University: Shanghai Jiao Tong University 

Major/Concentration: Software Engineering 

Degree Program: Bachelors

Hometown: Nanping, Fujian, China

How many times have you participated in Google Summer of Code? This is my first time participating in GSoC

What motivated you to apply for GSoC with NumFOCUS?

NumFOCUS help improve the world of science by providing excellent tools and libraries. In my projects about AI and machine learning, I take great advantage of several softwares including NumPy, SciPy and Shogun. I am eager to learn more and apply my skills to real world by making meaningful contributions to these projects, at the meantime become part of the open source community.

Why did you choose your specific project topic?

I am interested in machine learning and I hope to learn more by dive into the code. As a user of Shogun, I have some basic knowledge of the project and I enjoy working with C++, so Shogun is a great place for me.

How did you get involved in open source software?

I am impressed by the spirit of open source and I tried to seek some open source participation opportunities. I found Shogun is good place for me as the community is really helpful and friendly for newcomers to get started. After making several trivial fixes, I became familiar with the project and able to make bigger contribution, which motivated me to step further.

What are you expecting out of your GSoC experience?

I hope to know more about implementation of machine learning algorithms in real world, learn from experienced core developers and become part of the community.

What are your career goals, and how do you see the GSoC program moving you towards them?

I hope to be an AI engineer, to impact the world with practical skills and knowledge. GSoC with Shogun is a good exposure to the big world where there are things to learn and problems to solve. So it will be a good start for my career.

Shubham Shukla

Shogun

College/University: Indian Institute of Information Technology and Management, Gwalior

Major/Concentration: Information Technology 

Degree Program: Bachelors

Hometown: Agra, Uttar Pradesh, India

How many times have you participated in Google Summer of Code? This is my first time participating in GSoC

What motivated you to apply for GSoC with NumFOCUS?

The opportunity to work with and learn from the best people all over the world is something that I enjoy a lot about open source. Shogun was an intuitive choice as it will beautifully achieve this. I like working on C++ and Machine Learning a lot. With shogun I get the opportunity to explore both in interesting scenarios.

Why did you choose your specific project topic?

I think the project would compliment my abilities and interests. It involves exploring Shogun’s codebase which will inspire a lot of my future work and contributions there. Hence, this is definitely relevant to both me and Shogun.

How did you get involved in open source software?

This is the first time I am contributing to open source. I first got involved with open source a few months back out of casual interest to see how the magic really happens. I am glad to now find myself at the heart of it.

What are you expecting out of your GSoC experience?

A good peer community is the dream of all open source developers and Shogun has the best people for it. I am hoping to continuously improve my development and coding skills by applying them in the real world. I look forward to such opportunities to improve my skills by applying them to real world and thus promoting innovative solutions with a better learning experience.

What are your career goals, and how do you see the GSoC program moving you towards them?

I hope to pursue a career in machine learning and this project provides me with an opportunity to explore a large Toolkit and see how all the cogs fit together. This is something I will find useful due to its direct relation and credibility.

Elfarouk Yasser Harb

Shogun

Refactor NN Module + Essential RL Module + Cool Cookbooks!

Link to Project Description

Link to Project Blog

College/University: Hong Kong University of Science and Technology

Major/Concentration: Mathematics and Computer Science  

Degree Program: Bachelors

Hometown: Cairo, Egypt

How many times have you participated in Google Summer of Code? This is my first time participating in GSoC

What motivated you to apply for GSoC with NumFOCUS?

Wanting to contribute to open source.

Why did you choose your specific project topic?

I started getting interested in ML and Shogun was like a perfect match.

How did you get involved in open source software?

First time, very excited about it.

What are you expecting out of your GSoC experience?

I just hope I can help in some way the project.

What are your career goals, and how do you see the GSoC program moving you towards them?

Not sure to be honest, I seem to change my opinion every year or so, but I am sure GSOC will give me ample opportunity in discovering what I’d enjoy doing in the future.

Ashley Kelly

yt

Accessing SPH data and interpolating onto grids

Link to Project Description

Link to Project Blog

College/University: Grey College, Durham University

Major/Concentration: Cosmology  

Degree Program: Masters

Hometown: Manchester, UK

How many times have you participated in Google Summer of Code? This is my first time participating in GSoC

What motivated you to apply for GSoC with NumFOCUS?

I was recommended by a friend.

Why did you choose your specific project topic?

I have interest in in SPH simulations, as such a demeshening project is very relevant to the future work I will be doing as a phd student.

How did you get involved in open source software?

This is my first dive into open source, and I’m very excited for this project and future ones.

What are you expecting out of your GSoC experience?

I am expecting to become a better program and to gain valuable experience and guidance from my mentors. I hope to make a large contribution to the demeshening project as completion of this would really improve the usage of yt by groups which primarily focus on sph simulations.

What are your career goals, and how do you see the GSoC program moving you towards them?

I hope to stay in physics academia working on cosmological simulations and computer simulations. yt would be a daily tool for analysing the results of these simulations. The experience that GSoC will give me will provide a really good footing for contributing to future open source programs and writing analysis tools for further work.

Abhishek Singh

yt

Improve Test Coverage and Test Performance

Link to Project Description

Link to Project Blog

College/University: University of Massachusetts, Amherst

Major/Concentration: Computer Science  

Degree Program: Masters

Hometown: Jaipur, Rajasthan, India

How many times have you participated in Google Summer of Code? This is my first time participating in GSoC

What motivated you to apply for GSoC with NumFOCUS?

My desire to contribute in open source software development and interesting project ideas offered by yt made me choose NumFOCUS.

Why did you choose your specific project topic?

Increasing code coverage at the same time reducing proportional test runtime makes this an interesting problem. This demands highly optimal test code and intelligent handcrafting of test cases. This makes it a challenging problem requiring extensive analysis and well-thought-out solution.
Furthermore, this project touches the entire codebase of yt. It would not only help me understand yt better but would also make me competent to keep contributing in future. I believe when one knows the end-to-end of a system, then one can think of innovative and polished solutions of the shortcomings in the system.

How did you get involved in open source software?

Through GSoC, I interacted with the community members of yt. I got excited about their development and this led me to formally apply to yt under GSoC. I am fortunate of being selected by yt and quite enthusiastic about helping in building a tool that has become a part and parcel of many researchers.

What are you expecting out of your GSoC experience?

GSoC experience will help me collaborate with open source community. Through GSoC, I will get the guidance from numerous developers which will help me become a better developer. Furthermore, it will give me a sense of working in distributed teams, taking complete ownership and help me learn the core aspects of software development. Above all, I will be happy that I have contributed in open source software development.

What are your career goals, and how do you see the GSoC program moving you towards them?

I want to be an active contributor in open source software community. GSoC has given me an opportunity to collaborate with big open source communities. With this experience it will be a bit easier for me to network and grow my connections with the open source community.

Stay tuned for the next post to meet more of our GSoC students!

Be the First to Know

Be the First to Know

New developments and features from our sponsored projects, straight to your inbox, once a month.

New developments and features from our sponsored projects, straight to your inbox, once a month.

Are NumFOCUS projects critical tools for your business or research?
Don’t miss the NumFOCUS Project Forum, Sept 24-25 in NYC.