Table of Contents

GSoC Links

Project application dates

The complete GSoC 2019 timeline is here: https://developers.google.com/open-source/gsoc/timeline

Roles

People who have committed to helping with the TF GSoC project application and mentoring in 2019.

NOTA BENE: As a first year project, if selected TF would be limited to 2 students.

Project Ideas

The Project List is very important for the GSoC application process. Please read the project ideas list tips as well as the advice for projects before adding to the list below.

We should have at least 4 projects on the list. The person who will mentor the project should be the one to suggest it.

There is a project template at the bottom of this page. Please copy it then use it to add your project suggestion to this list.

Quickstart Scripts for Tungsten fabric in Kubernetes

Extend Contrail Ansible Deployer to Support Software Upgrades

Allocate a block of IP addresses per instance

Support Segment Routing (SR-MPLS)


(add more projects here; use the template from below)

Template for Project for the List



Application

Boundary-free software defined networking that works on any cloud. Apply network and security policies to all your clouds, then monitor/analyze from a single interface.

## Many clouds

This is now a _multicloud_ world. Companies are developing applications designed to work in the cloud (_cloud native_), but are finding that there isn't a single cloud offering that meets all of their requirements. Combinations of private and public clouds (_hybrid multicloud_) are necessary to deliver the services required for their business needs.

Maintaining the communication between all of these clouds (the _network fabric_) can be complicated. Each one can have its own APIs and policies. Making sure everything stays up to date and secure is time consuming and error prone.

That's where we come in.

## One (Tungsten) Fabric

[Tungsten Fabric](https://tungsten.io) is a secure software defined networking project designed for the cloud native, multicloud environment. Placing it on top of any IP network allows you to have a single portal for defining, monitoring, and analyzing your entire multicloud network, its security, and its performance.

Using Tungsten Fabric, you can write and deploy network and security policies that are portable to any cloud environment. All of your clouds can have a consistent and easily maintainable configuration. Standardized policies will make your security team happy, too.

## Internet scale

Tungsten Fabric is designed from the ground up to be as fast, as secure, and as scaleable as you need. From small private networks to Tier 1 ISPs, Tungsten Fabric can handle it…and we have users and contributors from both and everything in between! Working with Tungsten Fabric will give you a lot of experience with and knowledge about our industry.

Join us!

Applying to intern with Tungsten Fabric is easy!

1. [Subscribe](https://lists.tungsten.io/g/dev/join) to our Dev mailing list. Subscription is required to email the list.
1. Check out our [list of project ideas](https://wiki.tungsten.io/display/TUN/GSoC+2019#GSoC2019-ProjectIdeas).
1. Send an email to the address for the Dev mailing list: `dev@lists.tungsten.io`.

Your email should include the following information:

* The name of the project you'd like to work on.
* A short paragraph (100 words, maximum) about what interests you about the project and/or about Tungsten Fabric.
* A short paragraph (100 words, maximum) about why you think you'd be a good fit for the project you picked. Please tell us whether you already have the skills that are required/preferred for that project and, if so, how much experience you have with them.
* A short paragraph (100 words, maximum) telling us more about you as a person. This can include information like where you go to school, what you're studying, whether you've done Google Summer of Code before, your favorite food, or any other interesting stuff you'd like to share.

After we receive your application, the mentor for the project you selected will contact you to set up a conversation and a coding exercise using the technologies relevant to the project you selected. Completion of both the conversation and the coding exercise are required to be considered to join the project.

For years we were a kinda-sorta-open source project (OpenContrail), mostly controlled by a single company. In 2018 we relaunched as a community-focused and -driven project under the Linux Foundation. So we have project maturity but not identity maturity yet, but we're making great progress on that through our community focus. Part of that focus is giving back to the greater open source world by helping to train new contributors. GSoC is one of several internship programs we hope to participate in this year so we can give back to the whole open source community.

An org admin will have bi-weekly meetings (at least) with each selected mentor to make sure they're fulfilling their end of the mentorship bargain.

An org admin will also hold bi-weekly meetings (at least) with each student to give them the chance to share their mentor and project experiences.

These meetings will be on alternate weeks, but any feedback will be shared immediately via email or private chat.

During each meeting, all parties will be encouraged to contact admins at any time and not to wait until meeting time.

The first step of each project will be for the mentor and the student to walk through the project to colloborate on writing the schedule. This will give students more context, ownership, and understanding.

We'll require that all students join a #gsoc channel on our chat. All mentors and admins will also be there. It'll be a safe space where students can ask questions without judgment and where the admins can make sure questions are being asked at all. No questions? That's a red flag.

Mentors will have weekly 1:1 meetings (either calls or via chat) with their students, to make sure everything stays moving and so they can address any questions that may need more of their attention.

Mentors also commit to reply to student questions (email or chat) within one day.

Students will join all relevant mailing lists and chat channels and introduce themselves. Before they do that, the community will be encouraged to welcome the students as they show up on the channels.

Students will be encouraged to participate in discussions both on chat and on email, and the community will be coached in advance to be kind to student questions.

Each student (as time zones and schedules allow) will get to participate in a Technical Steering Committee (TSC) call every month. This may be a short presentation, or it may be a chance for them to ask questions of the TSC.

We have no budget for travel (we're newly rebooted, after all), but if the student is in a region where Tungsten Fabric will be represented at a conference or event we'll work with them and the companies in our community to get them to the event, give them an event mentor, and help them get to know the community members there.

Because their work, knowledge, and experience are valuable, as work continues on their projects after they leave we'll tag them for reviews as subject matter experts.

We'll help them write proposals for conferences to talk about their projects and have them work with community members to prepare those presentations.

We'll encourage them to stay on the mailing lists and chat channels and actively include them in conversations, just as we would with any community member.

We'll introduce them to members of other related communities, since while our community is great we believe in sharing.

As mentioned above, Tungsten Fabric isn't new (2013) it's also not _not_ new (2018). The project truly is a reboot. Some of our infrastructure, code, and documentation still lives under our old corporate home, but that transition is nearly complete. In the meantime we've had a year on our own and have already grown our contributors since we gained independence. We've learned a lot in that year and look forward to sharing it with students.