Responding about State Channels because I am really strongly opinionated about this.
I envision basically 2 different use cases: B2B and B2C. The first one can be built right now and would allow companies to call contracts off-chain at blazingly fast speed. This includes all IoT cases as well. For this one could easily use either the Elixir or the JS SDKs. I personally would pick the Elixir one as it is much more battle tested. This sadly had not been marketed in any way and since no B2B use cases on Aeternity blockchain I am aware of, no such aepps.
What people imagine regarding State Channels actually is the B2C scenario. This had been discussed quite intensively and my opinion is that there are way too many barriers right now. Namely:
- There is no generalized SC client. If a developer Don wants to build an SC application he has to implement all the client side and this is a big effort. Then if another developer Dave wants to implement a SC application - he must do it as well. This is not just a trivial boilerplate issue and could easily result in a ton of incoherent applications. It is described in greater detail here, as well with a suggested solution:
- No tutorials or examples. Even if someone is motivated enough and wants to learn how to implement the client themselves - they are on their own. There is a ton of the APIs and protocol documentation but this is just documentation and does not guide developers into writing aepps, let alone any gothcas or good practices.
Hopefully this all is to change soon Cc @YaniUnchained