The Julia Language

A fresh approach to Technical Computing

Technologies
julia
Topics
machine learning, data science, scientific computing, numerical computing, technical computing
A fresh approach to Technical Computing

Julia is a programming language for ease of use and performance, which is rapidly gaining momentum in all kinds of technical and scientific computing. Our community of users (including many past GSoC students!) have built state of the art packages for differential equations, machine learning, differentiable programming, mathematical optimization, physical modelling and probabilistic programming. A Summer of Code project in Julia is an opportunity to work at the bleeding edge of any of these exciting fields.

Work on the core language is welcome, but we are also acting as an umbrella organisation for several packages in the Julia ecosystem. The major ones are:

Flux, for machine learning; CuArrays.jl and the GPU programming stack; DifferentialEquations.jl, for solving differential equations; Turing.jl for probabilistic programming.

As well contributions to packages, we welcome self-contained projects that use these tools to do something interesting. For example, previous students have written speech recognition and reinforcement learning (e.g. AlphaGo) models for Flux’s model zoo, or been involved in our Neural ODEs work.

2019 Program

Successful Projects

Contributor
Morten Piibeleht
Mentor
Sebastian Pfitzner
Organization
The Julia Language
Rejuvenating Documenter
Documentation, essential for any software project, needs to be as easy as possible to write and publish. For Julia packages, you can use the...
Contributor
Arda Akdemir
Mentor
Ben J. Ward
Organization
The Julia Language
De-Bruijn Graph Constructor Package for De-novo Genome Assembly
De-novo sequence assembly is the process of constructing a contiguous long sequence out of shorter sub-sequences produced by sequencing platforms,...
Contributor
Manjunath Bhat
Mentor
Elliot Saba, Deepak Suresh, Dhairya Gandhi
Organization
The Julia Language
Enriching Model Zoo with Deep Learning Models
The aim of this project is to enrich Flux Model Zoo with unsupervised deep learning models, in particular variants of Generative Adversarial...
Contributor
Abhinav Mehndiratta
Mentor
James Fairbanks, Simon Schoelly, Mathieu Besançon, Soham Tamba
Organization
The Julia Language
GraphBLAS Implementation
This project aims to get the GraphBLAS API working from Julia by connecting it to the SuiteSparse GraphBLAS implementation and creating a graph type...
Contributor
Brandon Taylor
Mentor
David Anthoff
Organization
The Julia Language
Query.jl to SQL translation
I want to write code to translate the syntax supported by Query.jl into SQL. Then, the queries can be sent to a variety of database softwares. I can...
Contributor
Deepesh Thakur
Mentor
Chris Rackauckas, Yingbo Ma, Samuel Isaacson
Organization
The Julia Language
Native Julia ODE, SDE, DAE, DDE, and (S)PDE Solvers
The DifferentialEquations.jl ecosystem has an extensive set of state-of-the-art methods for solving differential equations. By mixing native methods...
Contributor
Johnny Chen
Mentor
Zygmunt Szpak
Organization
The Julia Language
Towards Better Images.jl Ecosystem
This project aims to achieve a better ecosystem for Images.jl, an image-processing toolbox in Julia. Main contributions consist of user-friendly...
Contributor
SHREYAS KOWSHIK
Mentor
Elliot Saba, Deepak Suresh, Dhairya Gandhi
Organization
The Julia Language
Addition Of Baseline Models To Model Zoo
Model zoo is a great compilation of deep learning and reinforcement learning algorithms. Currently state of the art baselines in terms of...
Contributor
Avik Pal
Mentor
Mike Innes, Dhairya Gandhi
Organization
The Julia Language
Differentiable Ray Tracer in Julia
Differentiable Programming is a programming paradigm in which we can differentiate through the program itself. It allows us to exploit the knowledge...
Contributor
Ayushk4
Mentor
oxinabox, Avik Sengupta
Organization
The Julia Language
Named Entity Recognition and Part-of-Speech APIs and models
JuliaText is the JuliaLang organization that provides with packages to work with text. It currently lacks support for basic problems like Named...
Contributor
Kanav Gupta
Mentor
Vijay Ivaturi, deXtoRious, Chris Rackauckas, Yingbo Ma
Organization
The Julia Language
Performance Enhancements and General Fixes
DifferentialEquations.jl is the state of the art differential equations solver that exists right now. Being written purely in Julia and having a huge...
Contributor
Andreas Peter
Mentor
JinGuo Liu
Organization
The Julia Language
Differentiable Tensor Networks
This project aims to improve the tooling for tensor network algorithms in julia and demonstrate advantages of julia - composability, performance,...
Contributor
Tejan Karmali
Mentor
Mike Innes, Dhairya Gandhi
Organization
The Julia Language
Differentiable Duckietown
Julia language offers support for differentiable programming with the help of its AD. This projects leverages this to test differentiable programming...