You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mitmproxy is participating under the umbrella of the Honeynet project in the Google Summer of Code 2024 (GSoC). We're looking for new contributors who join us for 12+ weeks, contribute code, and receive an attractive stipend for it! The program typically is a lot of fun for everyone involved, and many of our GSoC students stick around longer and become key members in the community.
This issue is targeted at potential participants to help them getting started and write a strong proposal. 😃
Getting Started
Decide to apply for GSoC.
Start writing a project proposal for your application.
mitmproxy is a large project with a huge number of interesting areas to explore, down from low-level protocol work up to UX improvements. You know best what you are interested in, so why not get in touch with us and map out a custom GSoC project? Here are some ideas for inspiration:
Web UI (TypeScript/React.js): If you like to hack on front-end code, we have a vast array of ideas for mitmweb, our HTML frontend for mitmproxy. Just some ideas:
Picking the right students for a Google Summer of Code is hard - we really want to encourage all students to get involved with open source, but how do we determine who's best suited for a particular project? Here comes your part: Show us that you're enthusiastic about the project, that you can work autonomously, and that you are capable of completing your project! 🎉
Demonstrate that you are capable of fulfilling the project!
While many of you probably have a good theoretical background from your university, you should show us that you can code as well:
Do you have a cool/interesting side project or university project? Show it to us! Even better if it's open source and we can read the code!
Have you contributed to an open source project before? Show us what you did!
As long as you have some code to show, please don't stress yourself about this part. We require a certain minimum level of technical proficiency so that GSoC is fun for everyone, but beyond that social components are way more important to us. 😃
Demonstrate that you want to contribute to mitmproxy specifically!
Google accepts a variety of mentoring organizations every year, each of them with multiple projects. Now, why do you want to work on mitmproxy specifically? We do not just want to hear a chorus of praise here ("mitmproxy is a great tool"). Instead, play around with it and tell us about your experiences:
Use mitmproxy to analyze a popular Android or iOS app or anything else. There are many hidden treasures/security issues to be found [2]! Show us what you analyzed (screenshots), what you found, where mitmproxy was good/not good etc! :-)
Write a nice script that does something cool with a webpage! For example, we have an example script that turns all webpages upside down (src). Try to come up with something creative :-)
Of course, if you can demonstrate a general interest in security (job, education, ...) make sure to include that.
Last but not least, a good way to show your interest in mitmproxy is to fix a bug, propose or implement a feature, add something that was unclear to you to the docs, etc.
Get in touch!
We hang out on Discord (see https://honeynet.org/). Feel free to just get in touch! 😃
Make sure to have a plan!
For your GSoC proposal (please use the template), you need to write down a roadmap/timeline for your project. Think about which features you need to develop to accomplish your goal, split your project into subtasks and make sure that you'll end up with a viable timeline. Having at least one dedicated task per week would be a good way to track the progress of your project as well. If you already identified potential issues/caveats for your endeavour, make sure to discuss them in the proposal as well!
Last but not least: GSoC is fun. Enjoy it! 😃 🍰 🚀
FAQ
1. There's a skilled and very motivated student already working hard on a proposal for the project I want to apply for. Should I even bother to apply?
Yes! First, if we get two convincing proposals for one project idea, we will try to just take both students¹. Second, if we cannot take you for some reason, we will actively introduce you to other projects at Honeynet that match your skills and interests after the application deadline². I can't stress this enough: Please do not worry about competition! If we see you cooperating with other contributors (students or not), this is a big plus.
¹) This requires that the project can be split (and extended) in a way that there are no critical interdependencies between the students. You will not get a project which depends on another student's work.
²) This is not just nice talk, we did this repeatedly with good outcomes. Some of those students are mentors now. 🙂
2. I want to implement $MAJOR_FEATURE_X to show that I'm a super capable student!
This is great, but please please do not send us a single giant pull request! Please try to show us that you can split major tasks into small, (mostly) isolated parts. A PR is never too small for first time contributors. ☺️
3. What is the team's preferred style of communication?
We prefer to communicate in the open on GitHub or Discord so that everyone can chime in. You are of course welcome to message us directly for feedback on your proposal, or if you feel umcomfortable discussing something in the open.
@Apurv428: Those are the three main areas of mitmproxy with some ideas for each area. Each area can have 0-N accepted projects, and of course proposals can also overlap between areas. Does that answer your question?
Mitmproxy is participating under the umbrella of the Honeynet project in the Google Summer of Code 2024 (GSoC). We're looking for new contributors who join us for 12+ weeks, contribute code, and receive an attractive stipend for it! The program typically is a lot of fun for everyone involved, and many of our GSoC students stick around longer and become key members in the community.
This issue is targeted at potential participants to help them getting started and write a strong proposal. 😃
Getting Started
Project Ideas
mitmproxy is a large project with a huge number of interesting areas to explore, down from low-level protocol work up to UX improvements. You know best what you are interested in, so why not get in touch with us and map out a custom GSoC project? Here are some ideas for inspiration:
dns_server
option. #6739Application Tips
Picking the right students for a Google Summer of Code is hard - we really want to encourage all students to get involved with open source, but how do we determine who's best suited for a particular project? Here comes your part: Show us that you're enthusiastic about the project, that you can work autonomously, and that you are capable of completing your project! 🎉
Demonstrate that you are capable of fulfilling the project!
While many of you probably have a good theoretical background from your university, you should show us that you can code as well:
As long as you have some code to show, please don't stress yourself about this part. We require a certain minimum level of technical proficiency so that GSoC is fun for everyone, but beyond that social components are way more important to us. 😃
Demonstrate that you want to contribute to mitmproxy specifically!
Google accepts a variety of mentoring organizations every year, each of them with multiple projects. Now, why do you want to work on mitmproxy specifically? We do not just want to hear a chorus of praise here ("mitmproxy is a great tool"). Instead, play around with it and tell us about your experiences:
Get in touch!
We hang out on Discord (see https://honeynet.org/). Feel free to just get in touch! 😃
Make sure to have a plan!
For your GSoC proposal (please use the template), you need to write down a roadmap/timeline for your project. Think about which features you need to develop to accomplish your goal, split your project into subtasks and make sure that you'll end up with a viable timeline. Having at least one dedicated task per week would be a good way to track the progress of your project as well. If you already identified potential issues/caveats for your endeavour, make sure to discuss them in the proposal as well!
Last but not least: GSoC is fun. Enjoy it! 😃 🍰 🚀
FAQ
1. There's a skilled and very motivated student already working hard on a proposal for the project I want to apply for. Should I even bother to apply?
Yes! First, if we get two convincing proposals for one project idea, we will try to just take both students¹. Second, if we cannot take you for some reason, we will actively introduce you to other projects at Honeynet that match your skills and interests after the application deadline². I can't stress this enough: Please do not worry about competition! If we see you cooperating with other contributors (students or not), this is a big plus.
¹) This requires that the project can be split (and extended) in a way that there are no critical interdependencies between the students. You will not get a project which depends on another student's work.
²) This is not just nice talk, we did this repeatedly with good outcomes. Some of those students are mentors now. 🙂
2. I want to implement $MAJOR_FEATURE_X to show that I'm a super capable student!
This is great, but please please do not send us a single giant pull request! Please try to show us that you can split major tasks into small, (mostly) isolated parts. A PR is never too small for first time contributors.☺️
3. What is the team's preferred style of communication?
We prefer to communicate in the open on GitHub or Discord so that everyone can chime in. You are of course welcome to message us directly for feedback on your proposal, or if you feel umcomfortable discussing something in the open.
4. GSoC aside, how can I contribute to mitmproxy?
Check out https://github.com/mitmproxy/mitmproxy/blob/main/CONTRIBUTING.md!
The text was updated successfully, but these errors were encountered: