community icon indicating copy to clipboard operation
community copied to clipboard

Target Use Cases for 2019

Open mikeal opened this issue 6 years ago • 7 comments

For reference, these are the current 2019 IPFS Priorities.

  • Support Package Managers
  • Transferring Large Files/Datasets
  • Building the Decentralized Web
  • Supporting partner growth
  • Building the foundation for future goals

We need to figure out what specific use cases the Community WG should be considering and focused on in 2019 based on these priorities. Once we have a solid list of use cases we can start to build quick starts, demos and articles and also make sure that the educational paths for learning how to do these is available in projects like ProtoSchool.

mikeal avatar Nov 28 '18 20:11 mikeal

Twilio has very good boilerplate code and demos, perhaps we can look to their quickstarts for inspiration on how we'll go about building these IPFS demos in 2019.

pkafei avatar Dec 17 '18 11:12 pkafei

@mikeal Is this something we need to determine this week as part of our planning cycle, or are you just flagging this as something we need to address in Q1?

I'd like to see Offline First use cases in the mix here, and I think the Locol Working Group will be trying to identify some of these in Q1. (cc @momack2 )

terichadbourne avatar Dec 17 '18 15:12 terichadbourne

If I'm not mistaken the use cases are something that we will explore in Q2 or Q3.

pkafei avatar Dec 17 '18 15:12 pkafei

From the perspective of the blog, I'd like to start with use cases that already have solutions built using our protocols, where we can get contributors to tell their stories about the problems they've already solved. (This can contribute to "supporting partner growth.") I don't have enough knowledge yet about the capabilities of IPFS to fully understand which of the priorities identified above will have some of those solutions built already and which require more engineering of the underlying protocol in order to support them.

terichadbourne avatar Dec 17 '18 15:12 terichadbourne

I'd like to start with use cases that already have solutions built using our protocols, where we can get contributors to tell their stories about the problems they've already solved.

We definitely want to highlight contributions that the outside community made, and that will be highlighted in the newsletter and the blog too. The purpose of this particular project is to provide interested parties with boiler plate code that will make it easier for them to build and interact with the IPFS code base. We are thinking of building something similar to Truffle Boxes.

The developer we're targeting are folks who know how IPFS works, but want to take the next step and actually build something on top of IPFS, but aren't sure where to begin.

pkafei avatar Dec 17 '18 15:12 pkafei

@ipfs/working-group-captains would love to get thoughts from the working groups on this.

mikeal avatar Dec 19 '18 19:12 mikeal

@ipfs/working-group-captains got renamed to @ipfs/wg-captains

Somewhere between "Building the Decentralized Web" and "use cases that already have solutions built using our protocols" there is a story about showing how to self-host websites with IPFS.

Current state:

  • HTTP is easy: set up DNSLink and point a domain at go-ipfs – done
  • HTTPS is where most beginners throw in the towel
    • gateway at ipfs.io does not give free certificates so people can't use it if they want to have https
    • the only solution that works without own server and supports HTTPS is Cloudflare (see "Make It All Secure" in related docs), but a lot of dweb enthusiasts do not feel comfortable with the service, as Cloudflare adds own cookies to all responses

Due to this, the least we could do in 2019 is show people how to set up IPFS hosting manually using their own domain+dnslink+go-ipfs+nginx+letsencrypt. We already have concept doc about DNSLink, but we are missing a polished, standalone guide that tackles entire setup end-to-end (and refers to concept pages where needed).

Something more involved could be a service that does not require owning a HTTP server: automatic letsencrypt certificate orchestration at our gateway for every domain that has DNSLink and points DNS record at our gateway + automatic pin service for websites smaller than some arbitrary size, but that requires involvement from infra and may be a discussion for a different time/issue.

lidel avatar Jan 08 '19 23:01 lidel