Skip to content

Sample Project Proposal

Shubhendra Singh Chauhan edited this page Dec 3, 2019 · 1 revision

We understand that the template has a lot of questions but this is a very important step in the process. It will not only help us know more about you and find a good fit but will force you to think to think about the project idea in great detail. By working on this proposal, you will already be taking your first steps towards a successful winter. We recommend that you start early and iterate on the application by getting feedback from the mentor. Please make sure your application follows the template.


Basic Details

  • Full Name
  • Location & Time Zone
  • Education
  • Email & Github Username
  • WWW / Blog
  • Resume

Statement of Motivation

  • What is your motivation for participating in Winter of Code?
  • Why this project idea
  • What are your expectations from us during and after successful completion of the program
  • What are you hoping to learn

Experiences

  • Have you taken any course?
  • What kind of projects have you worked in the past? What technologies did you use?

Open Source Contributions

If you have contributed to open source projects, please provide the link of the pull requests with one-line description of the feature you added or bug removed.

Project Details

A very detailed description of the project idea.

  • Use flowcharts, diagrams and mocks as much as possible

  • Think about various tests that you will have to write

  • If your project involves writing APIs, what will those APIs look like

  • Discuss your assumptions

  • Mention your deliverables

  • Break down the bigger picture into smaller tasks and explain in detail each component of the pipeline. In planning your project, it is good to note where along the way you could formulate a pull request. These would be points where you can have a self-contained and well documented and tested piece of functionality. Doing this at several points during the program helps to keep branch merges reasonable and code reviews manageable. A big code dump at the end of the program will likely be hard to review and merge before the project deadline.

  • If you have found existing work that we can build on top of - mention those.

  • If you plan to use a specific algorithm/layer/model/library/framework, mention them here.

  • Include technologies you are planning to use and your familiarity with them.

  • We can't stress enough that we want specific details! We love details! Think of this section as a specifications document that you would give to a team of software engineers and designers to build the feature.

Project Schedule

  • Include a weekly timeline for your project from when the coding period begins to the end of the program. What do you expect to have ready until each of the two evaluations? One of the keys to a successful project is very good planning. Try to set realistic goals for each sprint, leave the buffer for delays. If you are planning to go on a vacation or will be off-the-grid for a few days, then mention those in the timeline.
  • Also, include what you hope to achieve in the community bonding period. We will be organizing an orientation program for selected students to help them ramp up on the codebase and any other pre-requisites. If you feel that there is something that you will have to learn before the coding period starts, mention them here. This will help us cater to the orientation program towards your specific needs.
  • Also, discuss your plans after program ends. Do you plan to continue working on the project after program ends? What steps will you take to ensure that knowledge transfer to new contributors is easy?

While we understand this is preliminary and will get refined over the course of the winter with help from the mentor, it will help you plan the project much better. Think of this section as what you would give to the executives of a company who cares only about when will it get done. Not how will it get done, but when will it get done