Discussion Details
PyCardano
jerry
Description
PyCardano is a lightweight Python library that enables developers to interact seamlessly with the Cardano blockchain. It facilitates the creation and signing of transactions without reliance on external serialization tools, thereby simplifying the development process and broadening accessibility for Python developers. Given the dynamic nature of blockchain technology, particularly with Cardano's ongoing protocol upgrades and hard forks, it is imperative to maintain and update PyCardano to ensure continuous compatibility and functionality.
This proposal aims to:
Ensure Compatibility: Regularly update PyCardano to align with the latest Cardano ledger rules and protocol changes, including upcoming hard forks in 2025.
Enhance Reliability: Promptly identify and resolve bugs within PyCardano to maintain a robust and dependable library for developers for 12 months since the proposal is funded.
Foster Community Engagement: Collaborate with the Cardano developer community to gather feedback, address issues, and implement improvements effectively.
Problem Statement
The Cardano ecosystem primarily offers development tools and libraries in Haskell and JavaScript, creating a significant barrier for Python developers who wish to engage with the platform. This limitation hinders the growth and diversification of the developer community within the Cardano ecosystem. Furthermore, existing tools often depend on external serialization libraries, complicating the development process and potentially introducing additional points of failure. The absence of a native Python library that seamlessly integrates with Cardano's infrastructure restricts the ability of developers to build and deploy applications efficiently.
Proposal Benefit
PyCardano is a Python library designed to facilitate interaction with the Cardano blockchain by enabling users to create and sign transactions without relying on third-party serialization tools. This independence makes PyCardano lightweight and easy to set up across various environments.
Developing PyCardano addresses the challenges mentioned above by providing a native Python library tailored for the Cardano blockchain. This initiative aims to lower the entry barrier for Python developers, fostering a more inclusive and diverse developer community. By eliminating the need for third-party serialization tools, PyCardano simplifies the development workflow, enhancing both efficiency and reliability. This project not only broadens the accessibility of Cardano to a wider range of developers but also encourages innovation and the creation of new applications within the ecosystem.
Key Proposal Deliverables
By implementing this proposal, we anticipate the following outcomes:
Sustained Compatibility: PyCardano will remain compatible with the latest Cardano protocol versions, enabling developers to build and maintain applications without disruption. Although there isn't a clearly specified roadmap or hardfork for Cardano in the next 12 months, we know it is likely that there will be Leios and Midnight integration. These integration and changes will more or less require corresponding updates in PyCardano.
https://iohk.io/en/research/library/papers/ouroboros-leios-design-goals-and-concepts/
https://midnight.network/
Improved Stability: Ongoing maintenance and prompt bug fixes will enhance the library's stability and reliability.
Enhanced Developer Experience: Up-to-date documentation and community support will provide a more accessible and user-friendly experience for developers.
Community Growth: Active engagement with the developer community will foster collaboration, innovation, and the broader adoption of PyCardano.
Cost Breakdown
To ensure the ongoing maintenance and timely updates of PyCardano, we propose the engagement of a senior software engineer. The cost estimation is as follows:
Hourly Rate: $100 Weekly Commitment: 40 hours Annual Duration: 50 weeks
This results in an estimated annual cost of $200,000. Equivalent in ADA: 302,000 ADA in an exchange rate of $0.662/ADA.
Resourcing & Duration
Team size: 1 full time engineer
Experience
Jerry, the creator of PyCardano, will lead this project. His deep understanding of both the library and Cardano's ecosystem makes him uniquely qualified to oversee this upgrade. Jerry's experience as a blockchain developer ensures that the technical challenges of aligning with the Chang hardfork can be effectively addressed.
Track Record: The success of PyCardano, with over 170 dependent projects on GitHub and 7,000+ monthly downloads, demonstrates our team's ability to create and maintain critical infrastructure for the Cardano ecosystem. The active Discord community (100+ members) shows our ongoing engagement with users and our ability to address their needs.
Technical Expertise:
Our team's familiarity with Cardano's protocol, combined with expertise in Python development, positions us to efficiently implement the necessary upgrades. We have a history of successfully adapting PyCardano to previous Cardano updates, showcasing our ability to respond to network changes.
Maintenance & Support
The initial development of PyCardano has been completed. This proposal of of regular maintenance and support.
Supplementary Endorsement
PyCardano has garnered notable recognition and endorsement within the Cardano community, underscoring its value and utility as a Python library for blockchain interactions.
The library is featured in the "A list of community-built developer tools on Cardano," highlighting its role in enabling users to create and sign transactions without relying on third-party serialization tools. https://www.essentialcardano.io/article/a-list-of-community-built-developer-tools-on-cardano
PyCardano's integration with other projects further demonstrates its community support. For instance, the opshin programming language, used for developing smart contracts on Cardano, interacts closely with PyCardano, leveraging its data types for seamless on-chain and off-chain code integration. https://developers.cardano.org/docs/smart-contracts/opshin
Educational initiatives have adopted PyCardano to facilitate learning and development. The PyCardano Starter Kit offers tutorials on using the library with Ogmios for tasks like generating addresses and submitting transactions, reflecting its practical applicability and community-driven support. https://demeter.run/starter-kits/pycardano-tutorial
SteelSwap, a decentralized exchange aggregator, has built its platform on PyCardano, demonstrating the library's robustness and reliability in real-world applications. The project's announcement highlights PyCardano's contribution to SteelSwap's development. https://x.com/SteelSwap/status/1866299242962133236
Over 170 GitHub repositories list PyCardano as a dependency, reflecting its extensive adoption and the trust placed in it by the developer community for building diverse applications within the Cardano ecosystem. These instances collectively demonstrate the broad community support and validation of PyCardano as an essential tool for Python developers working with Cardano. https://github.com/Python-Cardano/pycardano/network/dependents
Roadmap Alignment
Does your proposal align with any of the Intersect Committees?
Open Source Committee
Does this proposal align to the Product Roadmap and Roadmap Goals?
Developer / User Experience
Administration and Auditing
Would you like Intersect to be your named Administrator, including acting as the auditor, as per the Cardano Constitution?
Yes
Ownership Information
Submitted On Behalf Of
IndividualSocial Handles
X: @PyCardano email: jerrycgh@gmail.comKey Dependencies
None
Comments (10)
While this project might be important, Catalyst might be a better fit because of the size of the budget.
How many users is using PyCardano?
I recognize the value PyCardano brings to the Cardano ecosystem and am inclined to support the proposal. However, I have one concern:
Given the single-developer model, are there plans to implement milestone-based reviews (e.g., bi-annual checkpoints) or onboarding of additional contributors to mitigate the risks of one-person dependency and ensure long-term sustainability?
This would provide more confidence in the robustness and continuity of the project.
This proposal can be evaluated as an appropriate investment in foundational technology that supports the diversification and healthy development of the Cardano ecosystem. However, the proposal would be strengthened if the proposer could more clearly outline the specific details of protocol changes planned for 2025 and provide concrete plans for addressing these changes.
Genuine questions, your answers would help me:
- Why does this proposal cost more ADA than the Fund13 proposal PyCardano Evolution: Embracing the Chang Hardfork worth ADA200,000 that was funded through Catalyst?
https://projectcatalyst.io/funds/13/cardano-open-developers/pycardano-evolution-embracing-the-chang-hardfork
- This proposal also aims to Regularly update PyCardano to align with the latest Cardano ledger rules and protocol changes, including upcoming hard forks in 2025. Are there any Cardano ledger rules, protocol changes and upcoming hard forks planned for 2025? If yes, please include a link if possible, it would be useful for your proposal.
Costing is inaccurate - if ADA to USD rate is 0.662, then requested ADA should be 339,879
Are You Ready to Participate?
Building Together to Drive Cardano Forward.