Blog | LF Decentralized Trust

Apply Now for the Annual Hyperledger Mentorship Program!

Written by Hyperledger Foundation | Apr 15, 2024 4:00:00 PM

Are you passionate about blockchain and eager to impact the field? Ready for a structured, hands-on opportunity to learn the ropes of open source development? Looking for a pathway to develop source code, documentations, and research skills while helping to advance open source projects and communities? Then you should apply for the annual Hyperledger Mentorship Program.

Now in its 8th year, the Hyperledger Mentorship Program matches aspiring contributors to the community, at any stage in their career, with experienced mentors to work on real-world projects in the Hyperledger ecosystem. The mentors design their projects to match their expertise and help meet critical development milestones. Mentees are not only introduced to open source development infrastructure, tooling, and culture, and best practices, but they walk away from the project with tangible work product and valuable contacts. 

Mentees can tackle their projects from anywhere in the world and will receive a stipend. Mentors are active members of the very global Hyperledger community and, likewise, will work on these projects from locations around the world. 

Over the years, this program has helped fast track careers for mentees and mentors but also pushed ahead existing and new Hyperledger projects and programs. It’s been a great on-ramp for new contributors and community leaders. 

A number of former mentees are serving as mentors for this year’s project. Below, a few share their perspective on the experience and ongoing engagement with the Hyperledger community and Mentorship Program:

"The Hyperledger Mentorships offer a unique opportunity to learn and grow, connecting individuals worldwide with invaluable guidance and support from experienced mentors. As a former mentee, I can attest to the quality of the projects and the support given by all mentors. Now, as a mentor, I'm thrilled to pay it forward and empower the next cohort of mentees on their journey toward innovation in blockchain technology.” - Andre Augusto, previous mentee and a co-mentor for this year's Enabling Enterprise Organizational Blockchain Interoperability project

"Sharing is caring, and the mentorship program taught me that. It's our job to pass on what we've learned, helping others navigate their journey with the insights we've gained." - Koosha E. Khorasani, previous mentee and a co-mentor for this year's Integrating Substrate Framework with Hyperledger Fabric for Enhanced Interoperability project

"Being a mentee taught me the value of following guidance while also engaging in independent research for optimal results, enabling me to further discuss the pros and cons of each approach taken with my mentor. Now, as a mentor, I'm thrilled to pay it forward by fostering the same transformative experiences for new mentees, and contributing to the vibrant Hyperledger community." - Piash Tanjin, previous mentee and a co-mentor for this year's Learning Tokens for Hyperledger Community Building project

For more from the mentors and past mentees about the application process as well as what to expect and how to make the most of the program, watch this meetup panel:

 

This year, there will be 19 projects. Here are overviews of just a few:

Hyperledger Labs AI-FAQ: GUI implementation and prototype deployment

Project Title: Hyperledger Labs AI-FAQ LLM ChatBot GUI implementation and prototype deployment

Primary Focus: Coding, Documentation, Research

The Hyperledger Labs AIFAQ is an LLM ChatBot testable as a proof-of-concept. It replies to questions about Hyperledger standard documentation. The current version is a Google Colab Notebook which uses Gradio as GUI. This project proposes an implementation of a standard ChatBot GUI and the deployment of a prototype. Our end goal is to have a more usable system installed on a Cloud Server.

Learning Objectives

  • Learn LLM background technology
  • Learn Javascript language and framework
  • Learn basics of Front-end development
  • Learn Cloud architecture and deployment
  • Learn how to create high quality documentation

Expected Outcome and Deliverables

  • A front-end component prototype
  • A simple container architecture
  • A good quality documentation

Hyperledger Fabric CC-Tools Support for Fabric Private Chaincode

Project Title: Hyperledger Fabric CC-Tools Support for Fabric Private Chaincode

Primary Focus: Coding, Documentation, Research

Fabric Private Chaincode (FPC) leverages modern Confidential Computing technology, such as Intel SGX, to enhance the protection of chaincode and their data while executed at the endorsing peers. Client applications interact with their private chaincode via the FPC Client SDK, which is responsible to encrypt and authenticate the invocation arguments before being sent to the endorsing peers. Currently chaincodes can be developed in C++ or Golang.

The Hyperledger Labs CC-Tools library offers several features that facilitate the journey of learning, development and deployment of chaincode for Hyperledger Fabric in Golang.

The goal of this mentorship project is the design and the integration of FPC as a destination for the code developed using CC-Tools. This also includes the creation of appropriate samples and documentation. The project requires a solid understanding of theory and practice of software development using Golang, distributed systems, and security. During the project you will get hands-on experience with the development of Hyperledger chaincode, the deployment of Fabric networks, the transaction lifecycle, and Confidential Computing technology.

Learning Objectives

  • Deep dive into Hyperledger Fabric, in particular, Fabric Private Chaincode using Confidential Computing, and the Hyperledger Lab CC-Tools
  • Experience an active open source community
  • Mastering open-source workflow
  • Enhance your designing and implementing skills, testing, documentation, and project management.

Expected Outcome and Deliverables

  • Actively collaborate with the FPC community and contribute to the FPC/CC-Tools github repository
  • Design and implementation of integration of FPC into the CC-Tools 
    • Investigate the capabilities of FPC and CC-Tools
    • Design a CC-Tools integration that is compatible with the FPC API
    • Implement the new integration
    • Test the new approach using unit-tests and integration-tests
  • Sample applications demonstrating the use of the new CC-Tool integration
  • Documentation and tutorials for the new CC-Tool integration
  • Bonus: a technical blog post
  • Having fun

Hyperledger Web3j: Enhancing Android Support with Updated web3j-android Integration

Project Title: Hyperledger Web3j: Enhancing Android Support with Updated web3j-android Integration

Primary Focus: Coding, Documentation

The Hyperledger Web3j-android library is pivotal for developers integrating Android applications with Ethereum blockchain, leveraging the robust capabilities of Hyperledger web3j in a mobile context. Despite its critical role, the current state of web3j-android, last updated to version 4.8.8, faces challenges in coherence, functionality, and modern Android development practices. This project proposes a comprehensive update and restructuring of the web3j-android library to align with the latest Android development standards and Ethereum blockchain technologies.

Learning Objectives

  • To establish a unified and coherent versioning and release strategy for web3j-android that aligns with web3j core releases, ensuring seamless functionality across platforms.
  • To enhance compatibility by updating the library to support the latest Android SDK versions, ensuring it meets modern app development requirements.
  • To refactor existing codebase for improving support and compatibility in Android context
  • To introduce comprehensive testing and documentation, providing a solid foundation for developers to contribute and leverage the library effectively.

Expected Outcome and Deliverables

  • Evaluation and Planning: Conduct a review of the current web3j-android architecture, dependencies, and Android development guidelines to draft a detailed plan.
  • Versioning Strategy Revision: Analyze the current state of versioning and branch management to propose and implement a streamlined process.
  • Android Compatibility: Adjust the minSDKVersion and targetSDKVersion to widen the library's applicability, focusing on compatibility with recent Android versions without sacrificing support for older devices.
  • Java Compatibility: Address issues arising from sourceCompatibility and targetCompatibility with Java versions supported by Android, ensuring the library utilizes Android-compatible Java APIs.
  • Dependency Management: Review and update gradle.properties to ensure all dependencies are compatible with Android development standards, reducing conflicts and build issues.
  • Testing and Documentation: Develop a robust suite of tests and comprehensive documentation to facilitate easy adoption and contribution by the community.

The successful completion of this project will result in a revitalized web3j-android library that is well-documented, easy to use, and fully supports modern Android development practices. It will serve as a crucial tool for developers building decentralized applications on Android devices, fostering innovation and growth in the blockchain ecosystem.

Hyperledger Cacti: Core Operators Modules for DLTs

Project Title: Extensible Library and API for Core Interoperability-Enabling Ledger Functions

Primary Focus: Coding, Documentation, Research

Hyperledger Cacti provides modules, toolkits, and protocols to enable networks built on distributed ledgers to interoperate and carry out transactions spanning their boundaries, such as asset transfers, asset swapping, and ledger data communication. The protocols enabling such transactions as well as more complex use cases require certain basic capabilities or building blocks that every distributed ledger or blockchain technology (e.g., Ethereum, Corda, Hyperledger technologies like Fabric, Sawtooth, Iroha, and Besu) can support, though using specific and distinct implementations. These capabilities, or core operators, include the ability to lock or freeze assets for a given time period, claim or unfreeze assets by a deadline, generate and verify proofs of ledger state authenticity, and access control. They also include, at a basic level, the ability to write or query a ledger and its transaction log, using the native modes supported by a given DLT, (e.g., UTXO spending, smart contract interfaces).

For ease of building DLT-agnostic protocols in Cacti, we need to build modules corresponding to various DLTs supported by Cacti that implement these core operators and expose them using a standard API. These modules, which will be engineered as smart contracts or distributed applications according to the native development style for a given DLT, will be deployed on the networks that seek to interoperate with others, and can be invoked on demand by the connector plugins and business logic at higher layers in Cacti.

The goals of this project are as follows:

  1. Design and build DLT-specific core operator modules for Cacti by leveraging existing Cactus or Weaver packages. This involves identifying building blocks of unique features in either, and integrating legacy Cactus and Weaver packages wherever they offer a common feature.
  2. Design and implement a common DLT-agnostic API, following the OpenAPI standard, using which any DLT-specific core operator module can be invoked by application-specific business logic on-demand.
  3. Add suitable API support within the common Cacti client API for ease of application development
  4. Do a research survey of existing blockchain/DLT literature to identify a potentially exhaustive set of core operators any DLT network must possess (or harness) to interoperate with other networks.

Mentorship is a core value across the Linux Foundation as it introduces the newest generation of talent to the important work of open source development and drives innovation across projects and communities. Importantly, it can also open doors for those might not otherwise have a way into this development community and career path. The application process is being managed through LFX Mentorship, a platform created by the Linux Foundations to train future open source leaders. 

The application deadline for the annual Hyperledger Mentorship Program is May 10, 2024. Check out the full list of mentorship projects and start your application today. We encourage applications from diverse communities. All are welcome!