Dear student, Thank you for your interest in contributing to Gambit as part of GSoC 2014. This document gives you some general advice about how to go about getting involved in Gambit, and to improve your chances of being accepted. Importantly, at the bottom we give a template list of questions that we expect you will answer in your application. Please read all parts carefully! You can reach the group of potential mentors: * Via email at gsoc-gambit@nash.lse.ac.uk * Via twitter at @thegambitproj * Via our Facebook page at http://www.facebook.com/gambitproject (Please only try to contact us using one of these media, and be patient; it may take a day to get a response.) First, we note that Gambit is software for doing game theory, as used in economics, other social sciences, computing science, and biology. It is *not* a platform for programming or developing computer games. If your interests are in that direction, you should look for a different project. Broadly speaking, we have three types of projects we are suggesting, or recommend for students: * Projects involving graphical interface design (both in Java and in C++ using wxWidgets); * Projects involving infrastructural code (e.g. file serialisation, or creating/refactoring well-defined libraries of objects); * Projects involving the numerical computation of equilibrium in games. For any of these projects, it is useful to have a bit of a background in game theory. Please do note that claiming to have taken a MOOC or other online course in game theory is not going to impress us! Be assured that many applicants are clever enough to google "game theory course" and tell us they have taken the Yale course, etc. This is not a credible signal! For interface design and infrastructural code, a solid full-term undergraduate game theory course will usually be sufficient. This can come from either a computer science or social science course of study, although a social science background is usually more useful. For the numerical algorithms, it is comfortably to say that some experience at the master's level both in game theory and also in numerical computation is probably going to be necessary to be likely to make progress. Like most GSoC projects, we anticipate we will receive many more applicants than we can take on. Our first filter will be a demonstrated ability to contribute working code to Gambit or GTE. You should visit the issue trackers for Gambit at http://github.com/gambitproject/gambit/issues and/or for GTE at http://github.com/gambitproject/gte/issues for outstanding issues that are often good places to start working (especially if they are labeled 'easy'). Our projects are based on github and we use git for revision control; a demonstrated ability to make your contributions using github's mechanisms for pull requests and code review is also a big plus. We strongly encourage you to make sure your code compiles and runs test cases before sending a pull request. Nothing will turn off a potential mentor faster than code that does not even compile - or code which one can tell will not compile just from looking at it! We are attracted by students who are self-starters. We are always happy to help you get started, but we expect students with initiative. Asking a generic "please help me start" will not impress us; this document has told you that! When it comes time to make your application, below we list a number of questions we would like you to answer. Please answer with short, specific statements, in your own words. Don't just send a generic CV and self-praise. The guide at http://google-opensource.blogspot.co.uk/2011/03/dos-and-donts-of-google-summer-of-code.html gives lots of excellent advice on making a good first impression, and being successful in GSoC in general. We will do a shortlisting process soon after the application deadline, and we plan to interview promising candidates via Skype. The project =========== Which project from the ideas list are you interested in working on? Have you contacted one of the Gambit mentors to discuss your interest? We will give strong preference to students who can demonstrate some familiarity with the Gambit system by carrying out and submitting a patch implementing a simple programming task. Which task(s) have you taken on, and when/how did you submit your proposed implementation? Background ========== What school do you attend, what course/major are you taking, and what year are you in? What is your background in mathematics, game theory, and/or other areas which are related to the project you are interested in? What is your background in computer programming/software engineering? What is your background with version control tools, especially distributed tools like git and/or mercurial? Summer plans ============ Which city/country will you be spending this summer in? How much time do you expect to have for this project per week? What is your personal timeline for the summer? Do you have any planned vacations or other commitments during which you would not be available to be working on the project? Your motivation =============== How does the project you have chosen fit more broadly with your educational or career objectives? Personal/contact details ======================== Your name: Your email address: Skype name: Your times of availability during the week after applications are due (please use GMT):