Cardano Smart Contract Education Sucks! It Just Sucks! Give Us Some Help For God's Sake!

Education is not for the educated for Christ sake! It’s for the uneducated. I have been through the Plutus Pioneers 3 times and I still can’t do anything. I can tell already that it’s going to be the same with Marlowe. And I am not that stupid. I am only a little bit stupid and I can program in every other language I have ever tried.

When I wanted to understand JavaScript I learned from this guy how to write from scratch using no libraries or package dependencies a RESTful API NodeJs backend database, a JavaScript GUI, and a CLI to manage the whole thing. Then I wrote this which is an application generator written in pure vanilla JS using functional style that produces custom applications from a data dictionary that the application itself can modify. I am not too smart but the guy is a very good teacher so I was able to learn.

The only teacher I learned anything from in the Plutus Pioneer program is this guy. And you can see from clicking here that he thinks the Pioneer experience sucked too. In fact, if you click here you will see that he now teaches Solana because his Pioneer experience was so miserable. Great talent is going to Solana because Pioneer courseware sucks, because Pioneer documentation sucks, and because Pioneer teachers are boring.

This is a good teacher.
This is a good teacher.
This is a good teacher.
This is a good teacher.

Pioneer teachers are boring!
Your learning tools are hard to install and they don’t work.
Your documentation is out of date or the links are broken.
Worse, your documentation makes no sense to uneducated people of average intelligence.
You are only able to educate smart people who are already educated and who don’t need your course to write smart contracts on the Cardano blockchain.

You say you are teaching kids in Mongolia and Africa to write Plutus.
I don’t believe you.
I think those kids are using their new free computers you gave them to write Solidity because there are great teachers for that.
Not because Haskell is hard to learn, not because Plutus is hard to learn, not because Marlowe is hard to learn - but because you guys don’t know how to teach regular people.

You say that Cardano is for everybody but you don’t teach for everybody - you only teach for your smart friends in collages and universities.
You are alienating your base.

Regular people want to write in Haskell, Plutus, and Marlowe just like we learned to write Solidity.
Regular people want engaging, funny, teachers.
Regular people want entertaining course material and documentation.
And regular people want a Master Class like this one that will show us how to do everything from installing on various computers to building the front end, the middleware, and the smart contracts.

30 Likes

Your frustration is palpable and echoed my own and many other voices!

The popular notion that it’s all very complex and you need a doctorate in computer science to be able to understand any of it surfaces now and again. Only fools would brag about something being so hard to explain or use that it will be abandoned by the entire world. Thus I never understood banging the “peer reviewed scientific research” drum and other arguments mostly appealing to arrogance.

Jokes and casual observations aside it is a very different paradigm from more popular ecosystems and languages out there. Things I expected to take days actually took months. Some things were simply not possible at all like RNG. On a few refreshing occasions something difficult I expected to take months actually took days. Overall my experience has been bordering on depressing but I am remaining positive as giving up is not something I need to learn any better :smiley:

To that end the top resources I used (from about 100 bookmarks):

I have been working on how to educate “regular people” in an entertaining way for well over a year now and honestly I have nothing I deem worth launching yet. I was targeting the 4th of July 2022 as I am a stupid American but like Cardano I am now anticipating delays and setbacks. My course content takes you through introductory concepts like funding a wallet in a video game format but my high aspirations of having practical guides for Plutus in the advanced courses have all but been abandoned after a dozen failed drafts.

I might be the fool for sticking around as it seems that many have moved on to pastures where SDKs, documentation, and third party developer support are undeniably better. I take solace in the fact that this is the place where the learn to earn idea works best because damn, this community needs it more than any other …

14 Likes

I can totally agree with this perspective, being someone who has limited programming experience but what I hope and assume to be somewhat above average intelligence and ability to learn, I found it extremely difficult to engage and educate myself through a scattered number of resources offering such tiny pieces to the puzzle it became more daunting to access the information and collect it all than actually learning.

Cardano has failed miserably in its ability to educate the community to empower them to be able to build and grow the Cardano ecosystem with their projects, and that is ultimately why many retail investors have left en masse. Education leads to adoption, and Cardano has failed entirely on that front.

Providing simple guides that will help experienced blockchain programmers does not really help the community in any way, in fact it just isolates the community to the know-how and the don’t-know-hows. Is learning Haskell your ticket to join the elitist group of programmers on Cardano? I do not know, but it sure seems that way.

Let the community get involved, let it become decentralized and empowering to the people you require the support of. Education is a right, not a privilege.

11 Likes

Yes, the whole Plutus smart contract thing is in a very sorry state.

Maybe, just maybe, not everyone should write smart contracts. Given that they are usually quite simple pieces of code, there have been surprisingly many exploits (not necessarily on Cardano, but on other platforms).

But: It should be easy and accessible how to do it, even if not everybody writes contracts for production in the end!

The contracts that are already used should be open for inspection by anyone. If I do a smart contract transaction, I want to be able to see in Cardanoscan or similar tools, what exactly the contract stated, why that made sense, why that faithfully ensured that I did the swap that I wanted to do.

That would also help in assessing, how naked the emperor still is, how not decentralised our “D”EXes still are.

I have a feeling that the design decision to have off-chain and on-chain code intertwined in Plutus was not so good after all. If I have a smart contract on the Cardano chain, I want to be able to interact with it with a variety of clients/wallet apps written in different languages, I want to know the interface how to do valid transactions with this contract. With this intertwining design, I need the dApp website that knows the off-chain part. That’s not very decentralised at all. (Yes, we could reverse engineer what they are doing, but that’s not how it should be.)

5 Likes

Oh my God! What you are building is exactly what regular people need.
Thank you DinoDude!
Is anyone in the IOG Education Elite paying attention to what you are trying to accomplish?
Of course not! The super smart elites don’t need dinosaurs to learn Plutus.
But the regular people that are just smart enough to see the value of Haskell, Plutus, and Marlow need dinosaurs to help us grab the ideas that are just out of our reach.
Pay attention to DinoDude you IOG Education Elites.

Wow! these are great links but there are hundreds of them.
I have hundreds of Haskell, Plutus, and Marlowe links of my own
and I intend to follow as many as I can but this is drinking from the firehose.
The IOG Education Elites should be curating this for us.

Even better - much much better:
Pay attention you IOG Education Elites -
Look at the playlists linked below.
Do that for Haskell Plutus and Marlow.

If this playlist and this playlist got together and had a baby in Cardanoland then that playlist would grow up to be a great teacher and perhaps the greatest evangelist for Cardano bringing the millions of disenfranchised hardworking but average people into the community. Not just to be developers but so that we can write smart contracts and applications for our businesses and families all over the world.

Give us a playlist that shows us how to build a simple json database managed by a Haskell backend with a RESTful API (using No Libraries) which talks to a JavaScript browser app that you show us how to build from scratch in plain vanilla java script (with No Libraries) that talks to the cardano-cli (with No other libraries) that talks to a local testnet that you teach us to spin up on our own machines (Mac, Linux, WSL) that does something useful and entertaining.

Look at the playlists linked above you IOG Education Elites. LOOK AT THEM
Make that and people will stop laughing at Plutus and start running to join our community.

Stop squandering this precious moment you IOG Education Elites.
Stop squandering this precious gift which is Plutus.

9 Likes

This is really cool Dinodude!! Will try out for sure ! @DinoDude

3 Likes

I feel obligated to serve some humble pie.

As much as I love these words of encouragement this is definitely a hobby project that I am pursuing in my free time (read that as 4-8 hours per week). The reason no one cares or probably has not heard about it is because my marketing budget is zilch and will never increase.

It’s literally me, my girlfriend, some former co-workers, and anyone I could afford out of pocket. If someone with deep pockets wants to run with the learn to earn idea incentivizing adoption for mainstream users then I am still going to pursue my own little experiment anyway because I am a hands-on kind of person.

e.g. We made a twitter account but we don’t have a “bot” and neither of us actually use twitter for anything as we are um “dinosaurs” so probably would have been better to not even bother. We might look dumb for trying to even be part of that but we don’t care as this project is ultimately for people like us who are curious but clueless.

10 Likes

I really love this type of interactive learning. We really need more of this. Thanks for your efforts.

3 Likes

Have you considered applying for funds through Project Catalyst? Fund 9 is starting up soon. Sounds like you already have some supporters here.

3 Likes

You are my hero DinoDude.
The scale of what you are trying to do is enormous!
That it is almost impossible to succeed at building something so vital for mass adoption makes your effort even more meaningful and more generous.
My God! You are trying to build something to educate children about Cardano smart contracts when the tools and information required to educate yourself don’t even exist in anyway that is accessible to a regular members of the Cardano community.
Only the super intelligent who are also highly connected to the Cardano Academic Elites could get this done. For me, the greatest value of what you are doing is showing the disparity between the super intelligent academic elites and the rest of the Cardano community that they profess to be working for.
You are representing the educational needs of the largest part of the Cardano community.
You are representing all kids and you are also representing uneducated adults of average intelligence.
I am a member of this second group and I want thank you on behalf of all of us for trying to help.
More over, I want to thank you for showing the IOG Education Elites a template of the kinds of tools the rest of us need to get up to speed and start building useful tools for Cardano.

Another hero of mine is Sal from Khan Academy. He build a website that takes children all the way from 1st grade to college level mathematics. This is what the Cardano community needs for Smart Contracts. I want to tell you that when if forget how do some kind of math that I need for my work, I go directly to Khan Academy for a refresher and then I am ready to do my job. I hold you in the same high regard as Sal from Khan Academy. The only difference is the information is already out there for Sal to teach whereas the information you need is still inaccessible.

Thank you DinoDude,
Your contribution is the Vision of Cardano smart contracts for everybody - starting with kids.

2 Likes

Repectfully @Zaytion, I hope DidoDude gets support from Catalyst and goes on build DinoDapp.
But this is not a money problem and to suggest that it is takes the heat off the IOG Education Elites.

It is the responsibility of the Elites to fix the problem of not enough information for regular people to build on Cardano. They are the ones who invented Plutus, the most useful smart contract language on the planet. They are the ones who made a financial and governance protocol that makes possible the inclusion of every human being. Thank you Thank you Cardano Academic Elites! Nobody else could have built this. But only you know how it works because you built it. Now teach us what it is and how to use it.

We all know what w3schools is for web developers.
Build that for your community. We can’t participate without it.

Here is a master class for building a NodeJS web application that takes you from beginner to expert. All the code is written from scratch and every line is thoroughly explained as we write it together. And at the end you have some useful that was fun to build. After you go through a course like that you can go on to build useful tools of your own.

Look at what this amazing man did for the Ethereum Community.
Give us that and then regular people will build useful things for Cardano.

This is not a money problem.
This is an education problem.
Teach us regular people how to build Cardano smart contracts in a way that we can understand.

1 Like

He proposed a money problem, I proposed a solution.

I came to build something great, not wait around pointing fingers. If you want centralization there are plenty of other cryptos out there.

1 Like

You are right @Zaytion .
He did propose a money problem.
You did propose a solution for his problem.
I was not listening to him.
I am sorry.

I have a problem too.
I have been through the Pioneers Program 3 times.
I did not understand enough of it to do anything useful.
I am in the Marlowe Pioneers program now and I am doing my best to understand.
I have some hope of learning enough do something useful this time because (if I understand correctly) I can build something in Blockly using the Marlowe playground then and see what it looks like in Marlow, Plutus, Haskell and even JavaScript. I hope that will help.
So yes I am pointing fingers but I am not standing around.
And I am pointing my finger at what regular people need in order to enter the Cardano smart contract space so that we can contribute too.
Yes I am upset, but I am asking for help.

This teacher and fellow Pioneer has the same problem I had and he is a lot smarter than I am. This is no regular person and he had so much trouble that he stopped teaching Plutus and started teaching Solana development.
So this amazing man has left our community.
Is this really what you want? Of course not.
You are just a little bit upset with me.
That is understandable - I wasn’t listening to you.

Please listen to his video.
The following are his concerns:

  1. The documentation is incomplete, sometimes incorrect, sometimes out of date, hard to find, and the links are often broken.
  2. We need Haskell instruction before we can even start to understand Plutus.
  3. No tools even exist yet for debugging the on-chain part of the smart contract.
  4. It is very difficult and confusing with much conflicting documentation on how to setup a windows machine with the Windows Subsystem For Linux and then setup the environment for creating and deploying Plutus smart contracts. I was able to do only because of his videos on the subject.

I will be doing my best to work through the Marlowe Pioneers program. Then I will go back and try to complete the work in the Plutus Pioneers program. But I need help and I am not the only one. People much smarter than I am are not able to complete the Plutus Pioneer program and then go on to do anything useful.

When my son was only two, my wife wanted to go back to work. I wanted her to stay home to care for our son but she was determined and quickly found a daycare for him. After his first day I could see immediately in his eyes that something was very wrong. The sparkle was gone. His eyes were dull. So the next day I went with my son to the daycare to see how they were doing things. At first they told me that parents may not observe the daycare. So I told them that I would not be leaving my son with them. They considered this and allowed me to observe. What I saw was a horror. One child was crying as he was riding a tricycle. The trike had loose handle bars so it was impossible to steer. The child knew how trikes were supposed to behave but this one would not. He thought it was his fault that trike would not go where he wanted. I saw another child crying as she was trying to fit wooden puzzle pieces together. The puzzle pieces were from different puzzles so of course they wouldn’t fit together, but the girl didn’t know that. Just like the boy on the trike, she thought it was her fault. Other kids had just given up and sat there with blank looks on their faces. Of course my son and I left right away and I found a nurturing daycare for him.

I am tell you this because I now feel like I am in my son’s place in that daycare. At first I thought it was my fault that I wasn’t learning in the Pioneers program. But after a time I realized that the toys are broken at Plutus school and the teachers don’t seem to notice. Clearly, there are other people who feel the same way. We want help and we want changes. Plutus works. It is obviously the best smart contract language ever created. I just want to know how to use it.

To the IOG Education Elite
We all know what w3schools is for web developers.
Build that for your community. We can’t participate without it.

Here is a master class for building a NodeJS web application that takes you from beginner to expert. All the code is written from scratch and every line is thoroughly explained as we write it together. And at the end you have some useful that was fun to build. After you go through a course like that you can go on to build useful tools of your own.

Look at what this amazing man did for the Ethereum Community.
Give us that and then regular people will build useful things for Cardano.

I want to learn Haskell, Plutus and Marlowe and then go on to build useful things for the Cardano community.

2 Likes

Hi and good evening ive noticed that you are depressed from being able not understanding Plutus pioneer programmed and I’m with you me to ive noticed that these couple of days from boring teachers or pioneers they need to know that theirs some people passionate a out this field but they need that push to encourage them to love learning and diving deeper. so I hope if Charles gonna see our message here learning needs to be fun not boring.

2 Likes

Thanks for the encouragement @Super_Nova,

The second week of the Marlowe Pioneers was very interesting and I did understand the instructor.
The Marlowe playground is amazing. You can flip between Blockly and Marlowe as you write as smart contracts and you can see the examples in Haskell and JavaScript as well.
This is going to help a lot.

Still I was not able to install Nix on my machine which is required to install Marlowe-Run.
It seems from the discord that a lot of Pioneers have had the same problem.
I think perhaps we lose a lot of pioneers because we don’t know how to set up our machines.
So I would think an official video of how to install everything required for the Plutus and Marlowe programs on Mac, Linux and WSL would be a giant benefit.

That means a video for installing Haskell, Cabal, Nix, the Cardano-cli, the Marlow-cli and absolutely anything else we would need to clone from GitHub or that we would need to do to our machine to produce smart contracts. I am sure these videos would be expensive to produce but how much does it cost the community every time a developer walks away because he can’t set up his development environment? That’s one angry developer who is telling all his friends that he can’t work with Plutus when really he hasn’t even tried Plutus because he never even managed to setup his machine.

Honestly, I don’t think Charles is going to be very sympathetic. While Charles is passionate about sharing financial and political power, he as made it clear that he does not want to work with uneducated hackers that live in their moms basement who need cartoon characters to keep their attention. I don’t blame him - Charles has built the most advanced blockchain on the planet by choosing to work with only the best and the very brightest people. He is not going to worry too much about the uneducated hackers on the lower end of IQ spectrum who can’t set up their development environments. These are most likely the kinds of people that write flawed smart contracts which get hacked. I am aware that no Plutus smart contract has ever been hacked so I understand that position. But I still want to program Plutus smart contracts. And isn’t that what Marlowe is all about? Giving everyday people the ability to write secure smart contracts that do exactly what they are intended to do? Maybe Marlowe is my foot in the door if I can only set up my machine. I sure would like to have an official video about that.

Same experiences here Johnshearing, and I fully agree with you. Want to help the community with programming but it´s all made to difficult

Have you shared these complaints on discord ?

Maybe it´s up to us to figure it all out and educate the rest of the world…

I came to the point that I first want to buy my personal laptop without any admin requirements, clean sheet over the whole line. (Was working with company laptop)

And then I need tto find a lot of time and energy :slight_smile: for the 5th round …

Best regards

1 Like

I do agree Cardano needs a better way to teach Plutus. One of the barriers to entry is of course Haskell but there is really enough information out there to learn Haskell and if anyone is interested I would recommend the textbook Programming in Haskell by Graham Hutton.

But the Plutus Pioneer course, setting Haskell aside, is not taught constructively I feel having taken the Plutus Pioneer course myself. I don’t even understand when the online code kicks in vs the offline code for example. I also feel there should be real project homeworks that should be submitted, checked and corrected (which really can be done peer to peer).

I also find discussions a bit disjointed jumping between Discord and StackExchange. Why not have a dedicated site wherein people can have proper discussion each week for specific questions like they do in other mooc sites? Have a proper listing of all the questions in a page so it avoids redundant questions where all reply to the questions are all bundled in together rather than disjointed as in Discord. (An excellent example of this is the Archlinux forum).

Then comes the documentation. I do agree it is in a stage of evolution but why do I need to run build-and-serve-docs to see the documentation properly? Shouldn’t this be readily available?

I am very much hoping the Plutus team can come up with a better system and foundation to teach Plutus. The truth is there are already systems of teaching that works very well as mentioned above and I’ve taken mooc courses in the past that have excellent setups and I just wonder if the Plutus education team can have a look at those to see how to improve the system.

1 Like

I actually think IOG are doing the best they can. I think they are up to their eyeballs in building the core infrastructure and trying to help very experienced Haskell developers.

Two years ago, I bought 3 books on Haskell including Graham Hutton’s book and read parts of each. Over the past 6 months, I have been going through Graham Hutton’s lecture series diligently: https://www.youtube.com/playlist?list=PLF1Z-APd9zK7usPMx3LGMZEHrECUGodd3

I have treated his lectures as a university student including doing all the assignments and exercises. It has been taking me 1-2 weeks per lecture and sometimes more. The series linked above is actually two separate subjects each of which is designed to be a semester of work across 2 years of university study. There are 34 lectures. It is a lot of work and I still have to work a day job. I expect this will take me several more months to complete.

Then I will read through the other 2 books I have. Then I plan to re-implement in Haskell some programs I have previously written in other languages. After I have mastered all of that, and actually feel like I can write something decent on my own, I will think about gingerly looking at the Plutus Pioneer program.

As the name suggests, I think the program is designed for the “pioneers”. These are people who are already experts in Haskell and understand all details of the language. I don’t think this program is targeted at mere mortals like me. I have even heard Lars mention that aspects of the Plutus language have changed during the lectures. I haven’t been game to look at them yet myself.

I think it is going to be hard. Really really hard.

Things will improve though. Apparently a book is being written about mastering Cardano and other content is being produced.

You have my respect for trying and not giving in. I like that you are expressing your frustration because you are obviously determined. I can only cheer you on and say: keep going.

As to IOG and their elite programmers: Maybe we still need to cut them some slack.

2 Likes

Thanks @Pieter_Van_Bogaert

On the discord and stackexchange I have been keeping it technical. So no I have not been complaining there. Even here while I am complaining, I am asking for very specific things. I want official videos about how to set up my development environment and I want a video playlist that shows step by step and explained line by line how to build everything required to build, deploy, interact with, and manage a smart contract project. So that means videos explaining how to spin up a test net, how to interact with the Plutus and Marlowe CLIs, how to build a webserver/database in Haskell, how to build the JavaScript UI for the smart contract, and how to write and deploy the smart contracts. Kind of like if you could mash this and this together. I know that this is a lot to ask while IOG is in the middle of creating technology that humans have never seen before.

If I can get an official video on how to set up the development environment for everything Haskell, Plutus, and Marlowe on Windows Subsystem for Linux then I will uninstall the Ubuntu distribution and then reinstall it new for a fresh start.

1 Like

Thanks, I will get the book. I think the thing that would help me the most with Haskell is a video about how to use the documentation out there on the Internet to get specific things done. Like how we all go to w3schools to grab example code to paste into the apps we are building. Where is that and how do we us it to build real apps in Haskell?

Great idea!

Yes, It must be super hard to update and organize documentation on projects that are in a constant state of up update and improvement.

I think our educators are used to teaching very smart people that already have a strong foundation and who have already proven themselves by getting degrees and published papers. Now we are asking them to teach people that have only average intelligence and very little education. This is a huge extra burden but it must be done in order to achieve mass adoption and to attract developers.

3 Likes