We’ve heard a number of complaints about the experience new developers have when they come to the Interledger project and want to try it out. What should the experience be for trying out Interledger?
I’m assuming that we have 2 minutes or less to show Interledger working and doing something cool before the person loses interest.
Should our experience involve installing moneyd and sending SPSP payments to yourself? Is there a way to have a fully online experience (an example I liked was https://try.redis.io/, which is a hands-on tutorial that explains both what Redis can do and how to interact with it).
What do you think?
I have a relatively fresh perspective in this space. One thing that could really help new developers would be to bring some coherence to the multitude of available repositories, blog posts etc. It’s sometimes hard to know what’s relevant, deprecated, actively developed etc.
Maybe a curated list of all things ILP (e.g. https://github.com/sindresorhus/awesome).
Broken tutorials are a bit of a problem. This was the first tutorial I came to and it never worked: https://medium.com/interledger-blog/spsp-simple-payment-setup-protocol-2028292e6925
I think a good practice to encourage live documents that are editable by anyone is by having a separation of documentation. Specifically there should be developer documentation that talks about RPC interfaces, API endpoints, deployment and building a simple app that uses STREAM or SPSP, etc. But then the RFCs should solely be focused on protocol improvements and system design. That way Medium posts are not the de facto method for gathering information in terms of developer guides, even though that’s the trend. At least if the docs are up to date, Google’s search indexes will likely place it above the other deprecated links.
@michaeljfazio brings up a good point. Part of the issue is that there are a lot of repos on the Interledger JS GitHub, and maybe it would be a good idea to consolidate many of the repos/archive old ones to ensure that people aren’t distracted by the wrong things. There’s also a lot of experiments on there that might be better left in a research playground monorepo or personal GitHubs. The curated list would be interesting, wouldn’t be a bad idea to start it.
I like the Redis demo, but it’s a bit out of the way and the UI isn’t very encouraging to me… the Interledger landing page could have a CLI with restricted VM where you can send payments over a testnet with BTC to ETH. Is there a traceroute like functionality for ILP? If so you could let users view a multihop payment trajectory that way and the time it takes for a payment to happen. If that’s made obvious, I think people will see that Interledger is a genuine effort toward making payments better.
Agreed. We should probably move the tutorials off of Medium and have them as pages on the Interledger website so we can more easily keep them up to date. @akash would you have any interest in putting a revamped SPSP tutorial on the website?
We have archived a lot of them under interledger-deprecated, though there might still be more that need to be moved over.
This awesome-interledger list was started at some point but not maintained so I would definitely support it if someone wanted kickstart that list. That could be under someone’s own github account or under the Interledger org (let me know if you want me to create a new repo for it).
The proliferation of many repos might not be so bad if it were clear from the pinned repositories and other docs what the main ones are that you should use (for example, babel has 49 repos but babel/babel is the main bundle of functionality you want. We kind of tried to have a similar bundle with interledgerjs/ilp but we had a lot of disagreements about what functionality should be in there (someone with a fresh perspective might want to take a stab at it and ignore comments from me and @adrianhopebailie ).
Something like that could be neat, though one thing to think about is how you’d show that the payments are “really” going over BTC and ETH. Off-chain transactions are faster and more practical, but it’ll go through immediately and the viewer would probably wonder whether anything had actually been transferred.
There isn’t an official protocol but you could implement it by sending packets that you know particular hops will reject (there was a tiny discussion about it here).
One reason that the current Medium tutorials aren’t working is that the testnet connector amundsen isn’t being maintained. I don’t have access to restore it because it’s on Ripple’s infrastructure, so it might make sense to move all my ilp-test.com stuff over to a different testnet connector.
I just pointed ilp-test.com at Strata’s current testnet connector isntead of the outdated Amundsen testnet connector. I tried the tutorial to confirm that it works now. If you find any other tutorials that don’t work any more, let me know!
Is there a way to upvote the problem with tutorials? There needs to be an updated tutorial on the interledger site so someone can connect and learn, not go down one rabbit hole after another in an attempt to connect.
Would be happy to when I get another free weekend - looks like @sharafian fixed the issue, but it’s definitely worth updating the Interledger.org front page with something too.