GSoC mentors and project ideas

892 views
Skip to first unread message

Viral Shah

unread,
Feb 12, 2014, 2:08:35 AM2/12/14
to juli...@googlegroups.com
Folks,

We are putting in a GSoC application, which is due in a couple of days. We need:

1. Volunteers among Julia base or package contributors who are willing to mentor students under GSoC.
2. Suggestions for projects for students. These will also live on our website.

Please reply back to this thread on the group, as Keno, Stefan, and I are jointly putting the proposal together.

-viral



Keno Fischer

unread,
Feb 12, 2014, 2:13:42 AM2/12/14
to juli...@googlegroups.com
Please note that there is a deadline at 19:00 UTC on Friday when the application needs to be submitted. We can still add you to the ideas list afterwards and students probably won't be looking at it until later this month, but if you're interested in mentoring, please let us know ASAP (and suggests some awesome projects), so we have a solid list for the people at Google reviewing.

Elliot Saba

unread,
Feb 12, 2014, 1:51:51 PM2/12/14
to Julia Dev
I'm willing to mentor students.

I think a really fun and rewarding project would be to tackle truly interactive data interactions in IJulia.  Whether we'd need to formally talk to the IPython people about that in a GSoC sense or not, this would be an incredible boon to data exploration overall, IMO.

I remember back before IJulia was even written, we were bouncing around lots of ideas like intelligent resampling on the server end, (so the client isn't plotting hundreds of thousands of points; this is important regardless of interactivity, as you can eliminate points that won't contribute to the visualization at all) and an actual communication channel (like websockets) from the backend to the frontend, allowing the user to zoom in to the data when it's been resampled like above, and the server is able to communicate newly resampled data to the user.

This would also allow for things like interactive widgets, long-running processes that communicate their progress to the user in ways other than clear_output(); replot();, etc...
-E 

Stefan Karpinski

unread,
Feb 12, 2014, 2:20:38 PM2/12/14
to Julia Dev
Great project idea.

Kevin Squire

unread,
Feb 12, 2014, 3:17:23 PM2/12/14
to juli...@googlegroups.com
I'm starting a new job soon, and I'm not sure what my time constraints will be this summer, but I'm definitely willing to co-mentor students.

A few project ideas:
  1. Projects related to DataStructures. 
    • I'm a fan of the Scala data structures hierarchy (immutable and mutable).  Creating the outline of and filling in a similar hierarchy for Julia would be cool
    • Similarly, parallel data structures would be a nice addition(cf scala again)
  2. Parallel sort implementation
  3. A map-reduce interface/framework
    • Although the Genome Analysis Tool Kit is for genomic analysis, it's map-reduce interface is generic and quite nice, and could provide good inspiration for a similar Julian interface
    • It would be nice to make the interface generic enough to work with Hadoop, as well as situations where hadoop isn't available (such as the cluster I typically work with)

The BioJulia group is also just getting off the ground (https://github.com/BioJulia).  At this point, most of its members (including myself) have been rather busy with their own work, but I'll prompt and see if anyone there has ideas for specific projects (and time to mentor).

Cheers,

   Kevin

Ismael VC

unread,
Feb 12, 2014, 4:33:12 PM2/12/14
to juli...@googlegroups.com
Kevin that link gives me the message: The link that you requested no longer exists.


El miércoles, 12 de febrero de 2014 14:17:23 UTC-6, Kevin Squire escribió:

I'm interested in participating in GSoC, are there any requirements to enroll in Julia? I have only studied Python to an intermediate level, and C, C++, Java at the university to a basic level, which brought me to Julia!

I'm studying Computer Systems Engineerings, and I'm about to get an intership next semester.

Thank's in advance!

Ismael VC


Steven G. Johnson

unread,
Feb 12, 2014, 4:55:59 PM2/12/14
to juli...@googlegroups.com
I'd be willing to mentor a student or two.   Projects I would be interested in include http://www.youtube.com/watch?v=Ss3mmkngYZI&feature=kp and also https://github.com/JuliaLang/julia/issues/2645

Steven G. Johnson

unread,
Feb 12, 2014, 4:57:26 PM2/12/14
to juli...@googlegroups.com
Whoops, I meant to post a link to https://groups.google.com/d/msg/julia-dev/Nc3BfsfBYWQ/p8WW-5T7hZMJ, not to a Muddy Waters video.  But if someone could teach me to play guitar like that, I'd be interested too.

Kevin Squire

unread,
Feb 12, 2014, 5:57:03 PM2/12/14
to juli...@googlegroups.com
Works for me, but I guess posting a link to my email isn't very useful to anyone but me. ;-)

Here's the actual link:

https://groups.google.com/d/topic/julia-dev/Nc3BfsfBYWQ/discussion

Cheers,
   Kevin

Avik Sengupta

unread,
Feb 12, 2014, 7:36:19 PM2/12/14
to juli...@googlegroups.com
I'm willing to mentor students. 

A few ideas: 

    * An Eclipse plugin for Julia

    * A comprehensive package testing eco system.. PackageEvaluator on steroids https://github.com/IainNZ/PackageEvaluator.jl/issues/22 

    * A distributed queue + job server. A lot of the pieces exist, but something robust and nicely packaged would be useful. Even better combined with the generic map/reduce framework as Kevin suggests. 

Isaiah Norton

unread,
Feb 12, 2014, 9:23:32 PM2/12/14
to juli...@googlegroups.com
I'm interested in participating in GSoC, are there any requirements to enroll in Julia?

My sense is that the single most important criteria in the GSoC review is having
made some contributions prior to the application - even if they are small, even if
they are not directly related to the application. They want to see that the basic
"mechanics" are working already, and that there is some chance of a longer-
term contribution (after the GSoC). Obviously the required background is
dependent on the subject of the application, but the community and the
mentors will help to fine-tune the proposal to the right level/scope.

Jake Bolewski

unread,
Feb 12, 2014, 9:46:57 PM2/12/14
to juli...@googlegroups.com
These are all really great ideas, but I'm concerned that most have too large a scope to make good GSOC projects.  In the haskell community, gwern puts out a retrospective for each year's GSOC
www.gwern.net/Haskell Summer of Code. The biggest takeaway: consistently the most successful projects have been focused on core libraries and tools, are extremely well defined, and small in scope.  
It might be helpful to skim through to see what types of projects have been successful in the past.  I think some of the Steven's suggestions are at the appropriate level. 2.5 months is really not that much time.

Best,
Jake

Stefan Karpinski

unread,
Feb 13, 2014, 12:55:14 AM2/13/14
to Julia Dev
I had a lot of success mining the up-for-grabs issues for hacker school projects. Some of the bigger issues on that list would make good GSoC projects.

Simon Byrne

unread,
Feb 13, 2014, 5:03:00 AM2/13/14
to juli...@googlegroups.com
There could be some opportunities in some of the stats libraries, particularly for someone numerically minded. One idea would be to finish the implementation of the rmath replacement functions, but having not participated before, I have no idea if that is an appropriate project.

Leah Hanson

unread,
Feb 13, 2014, 3:16:30 PM2/13/14
to juli...@googlegroups.com
I'd be interested in mentoring a GSoC student. I don't have any project ideas off the top of my head, and am too overwhelmed with Google orientation to think about it this week.

-- Leah

Stefan Karpinski

unread,
Feb 14, 2014, 1:29:50 AM2/14/14
to Julia Dev
Here's the GSoC project ideas page: http://julialang.org/gsoc/2014/. Please make pull requests to add project ideas with a brief description.

Jonathan Malmaud

unread,
Feb 14, 2014, 2:03:29 AM2/14/14
to juli...@googlegroups.com
I'm interning at Google right now. Let me know if there's anything I can do from 'inside' to help get the application approved.

Mike Innes

unread,
Feb 15, 2014, 6:28:37 AM2/15/14
to juli...@googlegroups.com
So in the other thread I posted a couple of ideas, mostly pretty blue-sky stuff which was probably out of scope, but one that I'd really like some feedback on is the Light Table integration. I think it would really benefit Julia to have a good IDE that both suits its interactivity and is also suitable for development of large programs, packages etc.

Obviously things like inline plotting and graphics are priorities. Another big goal of mine is to get the "truly interactive data visualisations" as suggested above. I'm hoping for something that's really generic and extensible, so that people can build both easy-to-use and well performing widgets on top of it, all without leaving Julia.

As for timescale, the basic IDE functionality with graphics output will easily fit within three months (LT plugins are tiny); the interactive stuff should be on a really solid foundation by the end of the period. Fortunately LT is ridiculously easy to extend and modify, so things won't be slowed down by coordination with another group (this appears to be the case with the IPython projects) - and things like full two-way communication are already baked in.

I've made a quick prototype for the plugin here:


It already works well for basic repl-style usage, although it's best if you have a little experience with Light Table to ease the set up. There's a limit to what I can do during term time but I'll try to continue work on it.

I'm also happy to write up some additions to the GSoC page.

(N.B.: Clojure had several tooling-related ideas as part of its successful 2013 application: http://dev.clojure.org/display/community/Mentoring+Organization+Application+2013)

Mike Innes

unread,
Feb 16, 2014, 5:50:02 AM2/16/14
to juli...@googlegroups.com
Ok, I've added many of the ideas that have been mentioned to the list. My impression is that the ideas list is a reasonably important part of the application, so it's worth continuing to expand it so that it has a good range and variety of projects.

Also, I think it may be worth asking package maintainers and even general users for ideas; the projects don't have to be closely tied to Base, so work on packages is fine. Projects on the lines of "A pure Julia library for X" could be particularly attractive, as long as they remain within a reasonable scope time-wise.

If there are no objections, I may give a shout to the julia-users list to source some more input.

Stefan Karpinski

unread,
Feb 16, 2014, 1:28:45 PM2/16/14
to Julia Dev
This is great stuff, Mike – thanks for doing that. The more I'm looking at this project ideas page, the more I'm thinking that we should just maintain such a page all the times and link to it prominently. People often want a project to start getting involved with the language and keeping a nicely curated list of such might be really helpful for boosting engagement.

Tim Holy

unread,
Feb 16, 2014, 2:03:04 PM2/16/14
to juli...@googlegroups.com
I suggest enhancing the interactivity of our graphics/plotting tools, but Mike
and/or Daniel should comment on whether they'd be interested in supporting a
student.

--Tim

Daniel Jones

unread,
Feb 16, 2014, 3:47:15 PM2/16/14
to juli...@googlegroups.com
I'd have time to mentor a student. I think a good project to improve interactivity would be to support the new custom messages API in ipython. That would open up the possibility of plots that call back to julia to recompute or redraw. E.g. one thing I'd love to see is drag-to-resize with the plot actually being redrawn, no just stretched. I'll add that to the projects page.

SREEVASTHAVAN K C

unread,
Mar 7, 2014, 6:57:23 AM3/7/14
to juli...@googlegroups.com
hi !
I am second year btech student at National Institute of Technology, Calicut ( India ). I liked your idea of an eclipse plugin for Julia. I would love to work on it. I basically have experience in c, c++, python, lisp (scheme), and a little bit of java. Its a little bit out of my comfort zone but this time I really want to participate in GSoC. But I have to admit i am in love with 'Julia'. Its blazing fast and the code size is also less compared to other languages. By this way I want to be a part of this awesome project.
thank you
- vasthav

Avik Sengupta

unread,
Mar 7, 2014, 2:36:35 PM3/7/14
to juli...@googlegroups.com
Hi Vashtav,

Thanks for your interest. As we say in our GSOC page, we are looking for students to become active and engaged contributors to the Julia ecosystem. So look around our up for grabs issues, and our packages,to see if anything interests you for a contribution. 

In particular, take a look at https://github.com/karbarcca/Sublime-IJulia for an example of how editor integration has been done for Sublime Text. That package depends on IJulia https://github.com/JuliaLang/IJulia.jl, which you should take a look at as well. An eclipse plugin does not necessarily need to be similar, but it should give you some ideas on the possibilities. 

Regards
-
Avik

manis...@iiitd.ac.in

unread,
Mar 9, 2014, 3:55:39 PM3/9/14
to juli...@googlegroups.com
Hi,
I'm Third year BTech Student from IIIT Delhi. I'm interested in applying for GSoC. I had a look at the projects in the GSoC Idea page but I want to propose some new Project idea.So whom should I approach and what are you looking for as a new project proposal? 
I'm proficient in programming in c/c++,Python,Java and Matlab and have used Julia for basic implementaion in courseworks.I would love to cntribute in the development in some way.

Regards
Manish Rana
IIIT Delhi

Jiahao Chen

unread,
Mar 10, 2014, 11:46:48 AM3/10/14
to juli...@googlegroups.com
Hi Manish,

You could always post your project idea here and get feedback from
other developers.

On Sun, Mar 9, 2014 at 3:55 PM, <manis...@iiitd.ac.in> wrote:
> Hi,
> I'm Third year BTech Student from IIIT Delhi. I'm interested in applying for
> GSoC. I had a look at the projects in the GSoC Idea page but I want to
> propose some new Project idea.So whom should I approach and what are you
> looking for as a new project proposal?
> I'm proficient in programming in c/c++,Python,Java and Matlab and have used
> Julia for basic implementaion in courseworks.I would love to cntribute in
> the development in some way.
>
> Regards
> Manish Rana
> IIIT Delhi



Thanks,

Jiahao Chen
Staff Research Scientist
MIT Computer Science and Artificial Intelligence Laboratory
Reply all
Reply to author
Forward
0 new messages