GSoC/GCI Archive
Google Summer of Code 2015


License: MIT license

Web Page:

Mailing List:

GitHub is the world's largest code repository and home to countless open source projects, including many that we actively participate in.


  • [Homebrew] Allowing Prioritization of Taps Currently Taps (similar to 'sources' in other package management systems) are symlinked to regular Formula directory and behave just like standard core formulas. We do not have ‘meta-data’ for taps so we cannot mange them efficiently. The outcome of this project will mainly be a more effective structure for taps.
  • Find and implement a better security model for Atom Atom needs a better security model! My project idea is to research if it's possible to implement this securit model through process separation and IPC communication. Another research direction is figuring how to do this with NaCl, and the backup plan is to to focus solely on the JavaScript layer and isolating pure JS packages in their own context.
  • Improve Linguist's accuracy by blending several strategies In this project, I'll work on improving current Linguist's detection performance. There are some problems need to tackle on in order to increase the accuracy. For example, we should be able to detect novel class (e.g. "unknown") in the prediction stage. Also, implementing some new classifiers and blending with current strategies should give a better accuracy. I hope this project can help GitHub and other linguist users to achieve a more accurate language detection.
  • Improve printing support of Atom Shell The aim of the project is to implement printing features of Atom Shell on Windows as well as add more options allowing user to custom printing settings. Currently, due to the complicated printing code of Chromium on Windows, the printing API(window.print()) only works well on Linux and OS X platforms. The project involves implementing printing features on Windows by porting the printing code of chromium and adding some options in printing feature.
  • Making homebrew more robust and truly freestanding I'd like to do two things: I would like to make Homebrew's installation system fully independent of XCode/Development Toolkit. I believe that this can be done by building a generic kit of key utilities and libraries and distributing it as a bottle. I would also like to accomplish compartmentalization with respect to how Homebrew handles bottle dependencies.