Linux Foundation 2023 Program Timeline

Full-Time Terms:

    Spring Term: March 1st - May 31st

  • mentorships available on LFX Mentorship: Jan 15th, 2023
  • applications open: Jan 15th - Feb 12th (4 weeks)
  • application review/admission decisions/HR paperwork: Feb 15th - Feb 26th

    Summer Term: June 1st - August 31st

  • mentorships available on LFX Mentorship: April 15th, 2023
  • applications open: May 10th - May 23rd (2 weeks)
  • application review/admission decisions/HR paperwork: May 24th - May 29th

    Fall Term: September 1st - Nov 30th

  • mentorships available on LFX Mentorship: July 15th, 2023
  • applications open: August 12th (4 weeks)
  • application review/admission decisions/HR paperwork: August 12th - August 31st

Part-time terms will start on the same schedule and last six versus three months.

    About Layer5 and its projects

    The Layer5 community embraces developer-defined infrastructure. We empower developers to change how they write applications, support operators in rethinking how they run modern infrastructure, and enable product owners to regain full-control over their product portfolio. Our cloud native application and infrastructure management software enables organizations to expect more from their infrastructure. Our inclusive and diverse community stewards projects to provide learning environments, create and implement cloud native industry standards, deployment and operational best practices, benchmarks and abstractions, and more. Our pay-it-forward mentality with every contributor (mentee or not) is a shared commitment by all maintainers (and MeshMates - contributor onboarding buddies) to the open source spirit that pushes Layer5 projects like Meshery forward. New members are always welcome.

    Additional information

    Previous experience with technical writers or documentation Our mentors have managed teams of technical writers working on documenting enterprise-grade software at large technology companies (Cisco, Seagate, SolarWinds). During the span of time, they have worked with technical writers in DITA and post-DITA environments (from Word to FrameMaker, structured writing, online help, various CMSes, git). Our mentors have worked with technical writers on documentation strategy, creating document sets, covering the full spectrum of reader personas. We interact daily over Slack, and have an open source project meeting everyday, which are posted to the community YouTube channel.

      LFX Mentorship 2023 Spring Projects

      Meshery

      Distributed workflow engine

      Description:

      Description: Integrate a new architectural component into Meshery: a workflow engine. This project involves shifting Meshery off of bitcask and off of sqlite over to postgres using gorm (golang). Interns will familiarize with concepts of orchestration engines, including chaining workflows, and content lifecycle management.
Recommended Skills:

Golang, Temporal, ReactJS

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/73202d21-d4ca-4435-9a73-f326c9b3e796

      Multi-user cloud native playground

      Description:

      Advance the cloud native playground in which any CNCF project can be explored. Meshery’s genesis is that of helping teach people about cloud native technology and enabling to operate various types of cloud native infrastructure confidently. The proposed project is aimed at furthering this mission by infusing multi-user collaboration as a pervasisve feature so that users can learn together in a running instance of Meshery.
Recommended Skills:

ReactJS, CSS, Golang (nice-to-have)

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/2ee7a912-e26e-4602-9dfc-4febe3842df3

      Distributed client-side policy evaluation in WASM and Rego

      Description:

      Meshery's highly dynamic infrastructure configuration capabilities require real-time evaluation of complex policies. Policies of various types and with a high number of parameters need to be evaluted client-side. With policies expressed in Rego, the goal of this project is to incorporate use of the https://github.com/open-policy-agent/golang-opa-wasm project into Meshery UI, so that a powerful, real-time user experience is possible.
Recommended Skills:

Golang, Open Policy Agent, WebAssembly

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/2ee7a912-e26e-4602-9dfc-4febe3842df3

      Multi-user cloud native playground

      Description:

      Advance the cloud native playground in which any CNCF project can be explored. Meshery’s genesis is that of helping teach people about cloud native technology and enabling to operate various types of cloud native infrastructure confidently. The proposed project is aimed at furthering this mission by infusing multi-user collaboration as a pervasisve feature so that users can learn together in a running instance of Meshery.
Recommended Skills:

ReactJS, CSS, Golang (nice-to-have)

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/2ee7a912-e26e-4602-9dfc-4febe3842df3

      Distributed client-side policy evaluation in WASM and Rego

      Description:

      Meshery's highly dynamic infrastructure configuration capabilities require real-time evaluation of complex policies. Policies of various types and with a high number of parameters need to be evaluted client-side. With policies expressed in Rego, the goal of this project is to incorporate use of the https://github.com/open-policy-agent/golang-opa-wasm project into Meshery UI, so that a powerful, real-time user experience is possible.
Recommended Skills:

Golang, Open Policy Agent, WebAssembly

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/7e3382be-5d82-443e-b0bc-4dcd2194705d

      Multi-user cloud native playground

      Description:

      Advance the cloud native playground in which any CNCF project can be explored. Meshery’s genesis is that of helping teach people about cloud native technology and enabling to operate various types of cloud native infrastructure confidently. The proposed project is aimed at furthering this mission by infusing multi-user collaboration as a pervasisve feature so that users can learn together in a running instance of Meshery.
Recommended Skills:

ReactJS, CSS, Golang (nice-to-have)

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/2ee7a912-e26e-4602-9dfc-4febe3842df3

      Service Mesh Performance

      Adaptive Load Controller II

      Description: The adaptive load controller is to execute optimization routines recursivley to determine the maximum load a system can sustain. The maximum load is usually defined by the maximum requests per second (rps) the system can handle. The metrics (CPU usage, latency etc) collected from the system under test are the constraints we provide to judge whether a system under test (SUT) is sustaining the load. A use-case that fits very well is be the ability to use it to run performance tests on a schedule and track the maximum load a system can handle over time. This could give insights to performance improvements or degradations.
Recommended Skills:

golang, grpc, docker, kubernetes

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/2597fc3d-eb2c-411f-b02d-940c8347328d

      CNCF TAG Network

      Representing Kubernetes ontology in MeshModel

      Description: Network topologies and graph databases go hand-in-hand. The OpenAPI specifications for Kubernetes provides taxonomy, but augmenting a graph data model with formalized ontologies enables any number of capabilities, one of the more straightforward is the inferencing requisite for natural language processing, and consequently, a human-centric query / response interaction becomes becomes possible. More importantly, more advanced systems can be built when a graph data model of connected systems is upgraded to be a knowledge semantic graph. Deliverables (among other items):
    • >MeshModel capabilities browser
    • Import/export of MeshModel models and components as OCI images
    • Augmentation of cuelang-based component generator
Recommended Skills:

cuelang, golang, OCI

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/96080e3d-83e2-46ed-928c-b6e7f3154bf3

      LFX Mentorship 2023 Summer Projects

      Meshery

      Meshery UI Permissions Framework

      Description: Meshery UI lacks a permissions framework. The existing internal implementation is simple, fragile and must be completely rewritten. The approach to implemention a permmissions framework includes using React.js and CASL.js. Meshery UI's approach needs to be extensible given that this framework will be an extension point for Remote Providers to supply their own permissions.

      Expected Outcome

      Definition of permissions and their enforcement in Meshery with an aim for deep granularity and extensibility with each user interface input component carrying a unique permission key id. Each key is then put into a group of keys in a keychain, keychains assigned to user roles, in turn, roles assigned to users. With users having the ability to create own custom roles, the framework will be dynamic based on the associated server-side permissions for the currently auth’ed user.
Recommended Skills:

React.js, CASL.js

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/f4a9804f-2e46-42a4-b2ae-ad3ea7b29734

      OPA policy evaluation in-browser using WebAssembly and Rego

      Description:

      Meshery's highly dynamic infrastructure configuration capabilities require real-time evaluation of complex policies. Policies of various types and with a high number of parameters need to be evaluted client-side. With policies expressed in Rego, the goal of this project is to incorporate use of the https://github.com/open-policy-agent/golang-opa-wasm project into Meshery UI.
Recommended Skills:

Golang, Open Policy Agent, WASM

Expected Outcome:

a powerful real-time multi-user collaboration experience.

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/005db8db-7efe-4433-9605-91d14174c72c

      CNCF TAG Network

      Description:

      Meshery MeshModels represent a schema-based description of cloud native infratructure. MeshModels need to be portable between Meshery deployments as well as easily versionable in external repositories

    Expected Outcome

  • 1. Meshery clients (mesheryctl and Meshery UI) should be able to import/export MeshModels as OCI images
  • 2. Meshery clients (mesheryctl and Meshery UI) should be able to push/pull from OCI-compatible registries
  • 3. Stretch Goal: OCI image signing; Verify the authenticity of MeshModels using cosign
  • 4. Target registries: Meshery Catalog (https://meshery.io/catalog), Artifact Hub.
Recommended Skills:

Reactjs, Golang, GraphQL

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/26377c30-9ffd-41e3-bfea-839bf126f8f6

      OCI compatible Kubernetes ontology

      Description:

      Network topologies and graph databases go hand-in-hand. The OpenAPI specifications for Kubernetes provides taxonomy, but augmenting a graph data model with formalized ontologies enables any number of capabilities, one of the more straightforward is the inferencing requisite for natural language processing, and consequently, a human-centric query / response interaction becomes becomes possible. More importantly, more advanced systems can be built when a graph data model of connected systems is upgraded to be a knowledge semantic graph. Deliverables (among other items):
    1. MeshModel capabilities browser
    2. Import/export of MeshModel models and components as OCI images
    3. Augmentation of cuelang-based component generator
Recommended Skills:

cuelang, golang, OCI

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/bb8ddf84-31d7-4a89-9e4b-e6aa9601c0db

      Service Mesh Performance

      Service Mesh Performance IDE Plugin

      Description:

      The objective of this project is to develop IDE plugins that can enhance the developer experience while working with Service Mesh Performance Performance Profiles. The proposed plugins will leverage technologies such as golang and cuelang to provide features such as syntax highlighting, auto-completion, validation, and rendering previews for Service Mesh Performance profile and model definitions.
Recommended Skills:

Cuelang

    Expected Outcome

  • Release VS Code Extension
  • Syntax Highlighting and Auto-completion: The plugin can fetch SMP Model definitions such as cloud-native components and their relationships. This information can be used to provide syntax highlighting and auto-completion for these definitions in the JSON files, making it easier for developers to write error-free code.
  • Stretch Goal: OCI image signing; Verify the authenticity of MeshModels using cosign
  • Validation and Reference: For Meshery MeshModel definitions such as cloud-native components and their relationships, the plugin can use the CUE language to provide validation for the CUE input and preview the rendering result. The plugin can also fetch the SMP Model schemas and display them in the IDE for reference.

Mentors:

LFX URL
https://mentorship.lfx.linuxfoundation.org/project/4735d0fa-229f-43e7-9415-dff9220bf687