[IMPACT] Please describe your proposed solution.
This open-source instructional book uses a theoretical and practical approach and requires no prerequisites. Mathematical foundations will be introduced first, followed by an introduction to programming with an emphasis on functional programming in order to proceed to Haskell and its type system. This puts the reader in the position to be able to learn Blockchain and the technologies that revolve around the Cardano ecosystem (Plutus, Plutarch, etc.).
The content of the book aims to unify the fundamentals for the reader so that they are able to successfully enter the Cardano ecosystem, and without much confusion. On the other hand, this book will be open source (MIT license), so that anyone in the community may modify it. This is an instructional book written specifically for the Cardano community.
[IMPACT] Please describe how your proposed solution will address the Challenge that you have submitted it in.
This book will serve as a resource for working in the Cardano blockchain. It will create comprehensive online instruction, accessible to all. This will increase developer productivity (knowledge base & documentation) as well as raise the technical competency of the community (without the need for prerequisites), fulfilling the goals of the fund.
Why is it important?
Creating an awesome experience that incentives developers, will lead to increased developer adoption, productivity, and creativity.
¿Does it have a prerequisite?
No, it is assumed that the reader has no experience in programming or in the world of Blockchain. That is to say, it is a self-contained book that progresses as each chapter progresses.
General outline:
Subject Index:
- (Mathematical foundations) Fundamentos matemáticos
- (Propositional logic and first-order logic) Lógica proposicional y de primer orden
- (Functions) Funciones
- (Boolean algebra) Álgebra de Boole
- (Set theory) Teoría de conjunto
- (proof) Demostración en matemática
- (Introduction to programming) Introducción a la programación
- (Turing machine) Máquina de Turing
- (Basic operations) Operaciones básicas
- (State machines) Máquina de estados
- (Lambda calculus) Cálculo Lambda0
- (Operations and variables) Operaciones y variables 0
- (Abstraction) Abstracción
- (Application) Aplicación
- (Reduction) Reducción
- Alfa
- Beta
- Eta
- (Examples) Ejemplos
- (Arithmetic) Aritmética
- (Conditional) Condicionales
- (Tuples and lists) Tuplas y listas
- (Introduction to Typed Lambda calculus) Introducción al cálculo lambda tipado
- (Introduction to functional programming and Haskell) Introducción a la programación funcional y a Haskell
- (Functional programming) Programación funcional
- (Basic concepts) Conceptos elementales
- (Pure functions) Funciones puras
- Higher-order functions
- Pattern matching
- Lazy evaluation
- (Referential transparency) Transparencia referencial
- (Immutability) Inmutabilidad
- Haskell
- (Prerequisites) Requisitos previos
- (Install) Instalación
- (Development environment, editor, IDE) Entorno de desarrollo
- (Lists) Listas
- (Type and Type Class) Tipos y tipos de clases
- Pattern matching
- (Recursivity) Recursividad
- Higher-order functions
- (Modules and composition) Módulos y composición
- (Functors and monoids) Funtores y Monoides
- (Monads) Monadas
- (Introduction to Blockchain) Introducción a Blockchain
- (Cryptographic fundamentals) Fundamentos criptográficos
- (Numbering system) Sistema de numeración
- (hash) Funciones de resumen
- (Electronic signatures) Firmas electrónicas
- (Protocols) Protocolos
- (Hash pointer and Merkle tree) Punteros hash y árboles de Merkle
- (Introduction to Bitcoin) Introducción a Bitcoin
- (History - Whitepaper) Orígenes
- (ECDSA protocol) Protocolo ECDSA
- (Transactions) Transacciones
- (Distributed consensus protocol) Protocolo de consenso distribuido
- (Limitations) Limitaciones
- (Security problems) Problemas de seguridad
- (Scalability) Escalabilidad
- (Governance) Gobernanza
- (Smart contracts) Contratos inteligentes
- (DeX) Intercambio descentralizado
- (DeFi) Finanzas descentralizadas
- (Use cases and limitations) Casos de uso y limitaciones
- (Privacity) Privacidad
- (Scalability) Escalabilidad
- (Performance) Rendimiento
- (Key management) Gestión de claves
- (Introduction to Plutus) Introducción a Plutus
- (Introduction to Cardano) Introducción a Cardano
- (System architecture) Arquitectura del sistema
- (Why Plutus?) ¿Por qué Plutus?
- (Smart contract: the model (E)UTxO) Contrato inteligente: el modelo (E)UTxO
- (How does it differ from the UTxO model?) ¿En qué se diferencia con el modelo UTxO?
- Playground
- (Using Plutus Tx) Usando Plutus Tx
- (How can you build your first smart contract?) ¿Cómo construir tu primer contrato inteligente?
- (Validators) Validadores
- (Type) Tipado
- (Free type) Libre de tipos
- (Exercises) Ejercicios
- (Scripts validation) Validación de scripts
- (Context) Contexto
- (vesting contracts) Contratos de adquisición de derechos
- (time sensitive contracts) Contratos con límite de tiempo
- (parameterized contracts) Contratos parametrizados
- Cardano CLI
- (Monads) Monadas
- EmulatorTrace
- (Monad contract) Mónada de Contrato
- (Policy) Políticas
- (Value) Valores
- (minting policy) Política de acuñación
- NFT
- (Deployment of contracts) Despliegue de contratos
- (mint tokens) Tokens de acuñación
- CLI
- (Scenarios) Escenarios
- (Plutus Application Backend) PAB
- (State machines) Máquinas de estados
- Staking & Testnet
- (Vulnerabilities) Vulnerabilidades
- (Common problems) Problemas comunes
- (Plutus. Domain Specific Languages) Más allá de Plutus: lenguajes de dominio específico
- (Why use a language other than Plutus?) ¿Por qué usar otro lenguaje distinto de Plutus?
- Plutarch
- (Introduction) Introducción
- (How to write on-chain scripts?) ¿Cómo escribir un on-chain scripts?
- (Examples) Ejemplos
- Marlowe
- (Introduction) Introducción a Marlowe Playground
- (How to write a smart contract?) ¿Cómo escribir un smart contracts?
- (Examples) Ejemplos
- (Integration with other languages) Integración con otros lenguajes
- (Glossary) Glosario de términos
- (References) Referencias
- (Index)· Índice alfabético
[IMPACT] What are the main risks that could prevent you from delivering the project successfully and please explain how you will mitigate each risk?
Risks:
The project may be a risk in the sense that there is no official, complete, updated documentation of each of the Cardano ecosystem tools. Rather the information is dispersed throughout different places and formats. Therefore, the risk is the research, and being able to separate the wheat from the chaff.
Opportunities:
Some potential opportunities:
- The book introduces the necessary foundations for any Blockchain in its first chapters and therefore will take longer to become outdated, despite ever-changing technology. Publishing a later update of the book is more feasible for this reason, as it would not be necessary to rewrite the first chapters’ content.
- Another opportunity lies in the potential to create audiovisual courses (on a website) or other types of courses based on the book's content. In this case, the book would be the reference for the course.
- The book will be open source under the MIT license. https://choosealicense.com/licenses/mit/
Some possible objections:
- ¿Why in Spanish?
- Currently, there are limited written and audiovisual resources that offer a comprehensive technical introduction to the Cardano ecosystem and there is no such educational resource currently available in Spanish. Creating this resource will help to expand the platform's technical community of developers and, in particular, advance opportunities for Spanish-speaking and novice developers.
- ¿Why a Book?
- A book allows for greater depth, breadth and detail of the topics to be covered, which, in another format, might not go sufficiently in-depth.
- This is not a book solely on Plutus, in fact the content is created for readers with no background in mathematics or programming; that is what makes this a noteworthy book. Even the current courses available in English assume a previous knowledge of either mathematics, logic or of Haskell.
Preliminary references to be used in the book:
- Mathematical foundations and introduction to programming:
- Chacón Sartori, Camilo. Principios de Programación, Marcombo.
- Functional programming and Haskell:
- Chacón Sartori, Camilo, Computación y programación funcional, Marcombo, 2021.
- http://learnyouahaskell.com
- https://haskell.mooc.fi/part1
- https://typeclasses.com/beginner-crash-course
- Cryptography, Bitcoin and Blockchain:
- Paar, Christof, 1963-. Understanding Cryptography : a Textbook for Students and Practitioners. Berlin ; London :Springer, 2009.
- Tanwar, Sudeep. n.d. Blockchain Technology. Springer Nature Singapore. Accessed June 5, 2022.
- Svensson, Conor. The Blockchain Innovator's Handbook: A leader’s guide to understanding, adopting and succeeding with this disruptive technology, 2021.
- Arroyo Guardeño, David; Diaz Vico, Jesús; Hernández Encinas, Luis. ¿Qué sabemos de? Blockchain, 2019.
- Bitcoin and Cryptocurrency Technologies, 2017. http://bitcoinbook.cs.princeton.edu
- Casino, Fran & Dasaklis, Thomas & Patsakis, Constantinos. (2018). A systematic literature review of blockchain-based applications: Current status, classification and open issues. Telematics and Informatics. 36. 10.1016/j.tele.2018.11.006.
- Cardano and Plutus:
- Research papers: https://iohk.io/en/research/library/
- Brünjes, Lars; Vinogradova, Polina. Plutus: Writing reliable smart contracts, 2019.
- https://github.com/input-output-hk/plutus-pioneer-program
- Beyond Plutus. DSL (Domain Specific Languages):
- Plutarch. https://github.com/Plutonomicon/plutarch/blob/master/docs/README.md
- Marlowe. https://docs.cardano.org/marlowe/learn-about-marlowe
[FEASIBILITY] Please provide a detailed plan, including timeline and key milestones for delivering your proposal.
Planning:
Chapters completed /Duration in months
1-2 / 1
3 / 2
4-6 / 5
Total / 8 months
Writing methodology:
Markdown will be used, using pandoc to convert into different formats. In addition, the book will have many graphic elements to aid in content comprehension.
- Each completed chapter will be uploaded to a public repository on GitHub where progress of the book can be tracked.
- It will be in HTML (GitBook) and PDF format.
- In addition, in the same repository, associated with each chapter, you can find examples of codes, exercises and figures.
- This also allows you to get feedback through the issues, as someone might suggest changes to a particular chapter or ask about some of the content they don't understand.
At the end of the eighth month, all the chapters can be compiled to form the final document.
Translation methodology:
Using different types of translations technique's such as direct translation, adaptation and reduction as an example to satisfy the challenges of transmitting this important documentation to most people around that are interested on learning.
[FEASIBILITY] Please provide a detailed budget breakdown.
Research, Writing & Editing of the Book 28000 usd
This item covers the expenses related to the research such as courses or credentials
also it´s use to cover Camilo's expenses during the 8 months that he will be working on the creation of the book
Translation & review of the Book in Eng 4800 usd
This item covers the cost of the translation of the book and also the revition
of it by a third party ensuring that the content be deliver in English for the whole English community to use this book too.
Peer review of the Book 5000 usd
This item covers the cost of reviewing the book by two peers also to ensure the quality of the content, this will be done by an academic peer and a graduated from the Plutus pioneer program
Project management 15000 usd
This item covers the cost of management the project from the beginning until the end, getting sure that all the milestones are successfully accomplish such as the research, translation, getting the peers for the review and contacting ICT colleges to introduce them to cardano with this book.
Contingency 4000 usd
In case we experience some problem with volatility and we become unable to manage the risk this item could be very helpful to the execution of the project on adverse situation
Donation of the book to 50 ICT colleges 3050 usd
in Eng & Spa
Donating this book to 50 ICT colleges around the world we intend to impact them by giving them this resource, showing them a learning path to Cardano, Blockchain and the e-Utxo model so their teachers and students can embrace the ecosystem in a comfortable way
Printed book $36 usd and delivery $25 usd by Amazon services
Our team is located in Spain, USA and Chile so we are taking in consideration the wages of their different location to make feasible the use of their time on the project due to the cost of life.
[FEASIBILITY] Please provide details of the people who will work on the project.
Camilo Chacón Sartori is currently a Ph.D. student in artificial intelligence at the Artificial Intelligence Research Institute (IIIA), in Barcelona, Spain. He works in the area of hybrid algorithm design: combining heuristic and Machine Learning techniques, resolving combinatorial optimization problems.
He loves teaching and has participated in various Meetups giving face-to-face or online talks on technical topics, either in Chile or Spain. He also shares his knowledge on various social networks, for example, QuoraES and Twitter.
Some achievements:
- He is the author of the first book in Spanish that touches on the theoretical (lambda calculus) and applied aspects of functional programming; using three programming languages: Racket, Haskell and Python. Book: Computación y programación funcional, editorial Marcombo, 2021.
- He is the author of the first book released in Spanish that details the lives of 12 great computer scientists from history. All of whom were winners of the ACM Turing Award. Book: Mentes geniales. La vida y obra de 12 grandes informáticos, Editorial Marcombo, 2021.
- He was chosen as Quora's "Featured Writer in Spanish" for four years in a row (2018-2021) for his more than 800 answers on computer science.
- Author of the podcast: Había una vez un algoritmo…, which deals with technical, scientific and philosophical issues of computing. The podcast has more than 85 episodes, and over 10 interviews with different academics and professionals from the field.
- He is also the administrator of the space “Había una vez un algoritmo…” on Quora in Spanish, which, to date, has more than 23 thousand followers.
- He obtained his bachelor's and master's degrees in computer engineering, receiving the highest distinction in both degrees.
More information: http://camilochacon.com/
Rodrigo Oyarzún Acuña is currently an SPO for the Cardano blockchain since the beginning of Shelley (July 2020). Currently working on the Cardano Spanish speaking community trough different social media platforms like Twitter, YouTube, Facebook, Discord, etc. creating content and doing networking between different services that work on the Cardano Blockchain.
He engages with people in different types of meet up activities on the internet and in Santiago of Chile, were the community shares knowledge and business opportunities between them.
some achievements:
- Worked at an American corporation developing business managers for the Latin American region in countries like Peru, Colombia & Chile. Creating a sales team that sold in 2 years over one billion dollars on the Chemicals for the mining industry
- Created NPO to onboard The Challenge of education in Chile, researching on reason of the failure and presenting solutions to Finance students loans
- Currently Volunteering as president of an sports club that works with Women, Children and Adults creating a multicultural environment that develop trough the practice of Japanese Fencing, Kendo
Linkedin
Alice Gushue is Bachelors Arts degree from Guilford College, Worked with immigrants and Minorities, ESLT experience working abroad in Latin America. Currently working for an American Company that's creates and translates and content and do SEO for other businesses around the world
She loves learning and Studying Spanish for over 15 years, living in Spain, Ecuador and Chile. She Loves to play the upper bass.
some achievements:
- Worked with immigration department trough a company that brings help to immigrants with language barriers in USA
- Worked reviewing content of writers for poems and tales for kids in Washington DC
- Worked with over 100 different companies writing them content related to them services like blogs, services description and helping them to improve their SEO
Linkedin
Latam Cardano Community
The community supports and and promotes the development of this book and value helping us with the peer review
Latam Cardano Community
And we are collaborating with Ramp up plutus devs for Cardano offering this book to them as official material and references for their courses trough Alkemy's platform, you can read more about their proposal on the link above.
[FEASIBILITY] If you are funded, will you return to Catalyst in a later round for further funding? Please explain why / why not.
After we deliver this book we would love to digitalize this documentation in an online platform that allows students to trace their progress and do classes to assist developers in weekly base. We want to serve the Catalyst community by helping devs to understand in a complete way the benefits and opportunities that e-utxo model offers
[FEASIBILITY] Are you or any member of your team working on any other proposals in this Fund9?
Yes
[FEASIBILITY] Are you or your team working on any other proposals from previous Funds?
No
[AUDITABILITY] Please describe what you will measure to track your project's progress, and how will you measure these?
At the end of the first month the first & second chapter will be online on Github
At the end of the third month the third chapter will be online on Github
At the end of the fifth month the four chapter will be online on Github
At the end of the eighth month the fifth and sixth chapter will be online on Github
Each completed chapter will be uploaded to a public repository on GitHub where progress of the book can be tracked. It will be in HTML (GitBook) and PDF format. In addition, in the same repository, associated with each chapter, you can find examples of codes, exercises and figures. This also allows you to get feedback through the issues, as someone might suggest changes to a particular chapter or ask about some of the content they don't understand.
Moreover, Github commits will be a key indicator of writing progress.
Reached 30 stars in the GitHub repository in the first 3 months.
[AUDITABILITY] What does success for this project look like?
Cardano attracts high-caliber Developers and developers have ample resources to work on platforms that suit their interests.
The key success criteria for An open source book on Cardano is that no book covers all the prerequisites for learning Plutus (for example, mathematics, basic programming concepts, functional programming, Haskell, etc.).
This book will allow us to fill a gap in learning. It targets people who have never coded before or who do not know functional programming. There is no existing book with this outline. That is, start from scratch to develop smart contracts using Plutus.
[AUDITABILITY] Please provide information on whether this proposal is a continuation of a previously funded project in Catalyst or an entirely new one.
This is an entirely new proposal to the Catalyst Ecosystem.