Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XCM - Feedback and local tweaks from UCB run-of-show incoperated #792

Open
1 task
Tracked by #708
nuke-web3 opened this issue Jul 27, 2023 · 1 comment
Open
1 task
Tracked by #708

XCM - Feedback and local tweaks from UCB run-of-show incoperated #792

nuke-web3 opened this issue Jul 27, 2023 · 1 comment
Assignees

Comments

@nuke-web3
Copy link

nuke-web3 commented Jul 27, 2023

Please take notes as you have them here from students and from your perspective 🙏

What was good, bad, ugly? Any lessons learned?

Also - [ ] items of things that need a FIXME for next time to close this issue out we know of.

TODO before we close out the UCB cohort & tag the content repo

  • Add a few things here...
@shawntabrizi
Copy link
Contributor

shawntabrizi commented Aug 8, 2023

tbh xcm content is feeling pretty dry. i wonder if all of these things he is teaching could instead be taught starting with real world examples, and breaking down how you would achieve that and modity it and such
for example, at this moment, he is just walking down every example for some property
lets start with an end to end scenario, and cover how you would configure xcm for that scenario
and then what changing that config might do or change about that e2e scenario
Keith
yeah, this is almost the same thing as the last one where i went through all XCM instructions and described each of them
was not a good lecture for the students, and i didn't like giving it either
shawntabrizi
i think XCM could be broken down to like:

primitives
instructions
config
first you explain that high level architecture, and high level ideas for each
then immediately, lets jump into scenarios
and what details you will need to nkow from those 3 areas to support that end to end scenario
hopefully, a good set of scenarios would cover most of the things needed
anything extra could be taught as "fringe case scenarios"
Keith
shawntabrizi
lets start with an end to end scenario, and cover how you would configure xcm for that scenario
we have just 1 example of this, which is several slides later, but changing the entire lesson to be more centered around scenarios would make these concepts much easier to stick into student's minds
shawntabrizi
glad you agree. stuff i may be able to help with next time around
was yesterday similar? students yesterday actually seemed to like the lectures
so i assume it wasn't like this
or maybe they were just excited to see gav
Keith
lecture 1 was really about the core concepts and philosophy, some parts of it are kinda dry, but we are thinking of reorganizing it
because lecture 2 immediately after isn't a big lecture
so clearly we have an oversized lecture 1
the parts where i think were dry is when we iterate through the many different kinds of things that you can express with XCM
Nuke 🌄
shawntabrizi
glad you agree. stuff i may be able to help with next time around
why not change plans a bit to get
Gabe
to talk on this? His work IIUC is centered on this and perhaps could use his slides we have already to discuss at least one practical example e2e - https://github.com/Polkadot-Blockchain-Academy/pba-content/tree/main/syllabus/8-XCM/7-Beyond_Asset_Transfers
shawntabrizi
if i had to summarize what students would probably want to take away from XCM lectures:

how can i build a runtime which safely trades assets (ft and nft) between other parachains
how can i start to build more complex execution scenarios harnessing features of other chains
3 replies
Nuke 🌄
oops, updated link to open issue
Chris-OAK Network
The walk-through of barriers is helpful to me, but we have invested a year‘s of our time in XCM. I don’t know how much the students could grasp the power of them at the moment. I think the parachains are utilizing only half of the barriers for now.
Keith
the barriers are also helpful to create attack scenarios to make it interesting
Keith
as in, if you don't use barriers, such and such XCM programs can fuck up your chain etc.
1 reply
Chris-OAK Network
exactly, maybe starting from a few attack scenarios will help explain the necessity of barriers.
shawntabrizi
yeah, i think a cool way to teach barriers would be to start with a config with no barriers, and then start talking about attacks one by one
as students understand the attack, then they also understand why the barrier was created
and when it should be used
Keith
for the XCM pallet lecture (i.e. the lecture right before this one), i am not sure if we can make it less dry
we are trying to describe the connection between FRAME and XCM, and the XCM pallet is the central point of it
shawntabrizi
perhaps something more hands on. students are familiar with Pallets at that point. Maybe they can explore the pallet through its code, its configuration in the runtime, a default implementation in cumulus node template, and then in polkaodt / kusama
the lecture would instead be more about why it exists and how it is used at a high level
Keith
that's what i had in mind as well, we don't have to go through each and everything -- they can discover them on their own during activity/exercise time

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants