ipfs / roadmap

IPFS Project && Working Group Roadmaps Repo
MIT License
298 stars 26 forks source link

[2020 Theme Proposal] Examples and Tutorials on Practical applications for IPFS Stack #50

Closed vasa-develop closed 11 months ago

vasa-develop commented 4 years ago

Note, this is part of the 2020 Theme Proposals Process - feel free to create additional/alternate proposals, or discuss this one in the comments!

Theme description

As the adoption of IPFS and the related projects begins to increase, there is a need to show practical use cases that can be built on IPFS Stack(projects including IPFS, Libp2p, IPLD, Multiformats, IPFS Cluster & Filecoin).

Now there are 2 main sub-themes:

Increasing awareness about What IPFS Actually is?

As discussed in #47, there is a common misconception in the masses that IPFS provides a distributed, redundant, permanent storage of arbitrary data among (presumably) peer nodes, out of the box. Most recently there was a hackernoon post floating around that criticized IPFS's usability by a case study of AXEL mobile app. The points made in the post were partially right, but contained a ton of misinformation, as pointed out in the reddit thread. So, there is need to deal with awareness about what IPFS actually is, which has been worked on in Q4 2019, but there is still a lot to cover, especially when it comes to average Joe(avg. internet user).

Building Tutorials/Examples for IPFS Stack

There is a lack of reference examples and tutorials for IPFS, Libp2p & IPLD(IPFS Cluster is doing good, but there is always room for improvement). A lot of people seem to be stuck in libp2p and IPFS discussion forums with queries for examples/tutorials for specific transports, or some Libp2p & IPLD in specific setup/environments. We don't aim to cover all the use-cases but we can cover at least the obvious use-cases.

Core needs & gaps

Creating content for practical use-cases of IPFS, Libp2p, IPLD. This can be done under protoschool, or can be added to repos that are concerned with the use-case.

Why focus this year

Milestones & rough roadmap

Desired / expected impact

Measuring Success

Future benefits

momack2 commented 4 years ago

Love it!! I bet @johnnymatthews and @jessicaschilling will also give this focus area a big πŸ‘

Curious for @mikeal and @mgoelzer to comment on how this sort of focus area would fit into IPLD/libp2p prios...

vasa-develop commented 4 years ago

I have been talking with @jessicaschilling, @raulk & @yusefnapora about these issues. They are happy to take this forward.

jessicaschilling commented 4 years ago

Also @terichadbourne if she hasn’t seen yet.

ghost commented 4 years ago

Yeah, @yusefnapora and I have been talking about this for ages. What I think would be awesome would be a real-world application built on top of libp2p that shows how to how to plug in different modules, like transports, QUIC, the DHT, pubsub, etc. Unlike our existing examples, which intentionally focus on demonstrating a single concept or very simple program, this tutorial would focus on building something up over a series of sequential lessons. I've seen tons of these in different programming documentation over the years and they're great at showing the reader how to put a bunch of pieces together to achieve something approaching what a real world dev would want to build.

0zAND1z commented 4 years ago

Nicely articulated! @vasa-develop and I have made baby steps in this direction.

You can find some of the proposed RFCs here: https://github.com/simpleaswater/rfcs/issues Request everyone to upvote what you'd like to see first on SimpleAsWater.com! We need more volunteers too πŸ˜€

Meanwhile, I am working on one real use-case at a time. Currently, I am focused on building a personal blogging tool that minimize the technical exposure to IPFS and rather let the user focus on blogging. Here is the document containing all the user stories: https://hackmd.io/gvctUAPERiq1Atugd06z5g?view . Your valuable inputs can help me a lot.

The plan it to build the tool open-source, get feedbacks and make a tutorial about it on SimpleAsWater.

PS: The blog tutorial idea is hugely inspired by the tutorial we have on Proto.School 😁

vasa-develop commented 4 years ago

As discussed with @jessicaschilling, I'm happy to move the content on SimpleAsWater to relevant IPFS repos, so that we keep the things upstream, hence achieving the goal of this theme.

@jessicaschilling Also, Let me know how can we use "Understanding IPFS in Depth" series in the new IPFS docs. :smile:

0zAND1z commented 4 years ago

Good idea @vasa-develop . Content is just sitting there. I think that it should be re-used into relevant IPFS channels/repos/sites, if everyone agrees.

jessicaschilling commented 4 years ago

@vasa-develop Sorry for the delay -- I was in transit for a few days! You can see our v2 docs repo, including a new navigational structure, here: https://github.com/ipfs/ipfs-docs-v2 We'd be interested in your thoughts on how you might envision your excellent content intersecting with this nav structure, since it's a little different from the existing legacy site. (Feel free to open an issue to start that discussion!) Thanks again. 😊

vasa-develop commented 4 years ago

@jessicaschilling Sorry for the delay tooπŸ˜‚πŸ˜‚...was busy with my exams.

I will check out the nav structure and try to see how we can fit the current content there. Will continue our convo in the ipfs-docs-v2 repo issues.

terichadbourne commented 4 years ago

@vasa-develop I love the idea of adding more real-world use case examples to our educational resources. Just wanted to call out that we have new guidance posted on designing effective ProtoSchool tutorials, which includes some details on what the technical limitations are there (code challenges must be be run using js-ipfs in the browser, etc.), in case you're curious about what might fit there.

vasa-develop commented 4 years ago

@terichadbourne thanks for the heads up!

I actually used the Protoschool code editor logic to build the code editor for SimpleAsWater articles. So, I think we are on the same page on what we can do with the Protoschool theme.

github-actions[bot] commented 11 months ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.