[Rejected] AEproject Improvements Proposal

Thank you @hristiyanAE.chain for applying. Your application has been well received.
Thank you @dimitar.chain for your tech opinion.
All the technical questions, and answers are welcome here.

+1 @dimitar.chain

also interesting to know what @nikitafuchs.chain thinks about this and whether he is integrating state channels into the “fire editor”?

@vishwas_hypermine your opinion on this topic would also be appreciated. thank you!

4 Likes

Can you please specify in hours and per task your estimated work. How many windows users complained about the aeproject and what are the issues? What is included in your community support?

These are the following opinions:

  1. First we need to help the normal devs to quickly adopt the payment channel and state channel concepts. There should be tool on which they can come and simply understand what state channel and payment channel is (and not mixing these two concepts in the beginning) and how to play with it. without having them to install anything

That is what my attempt was by building this lab - A simple to use tool for early devs to learn the concepts. I am close to finish the payment channel part on it. and here is what it could look like - you show them every (or atleast minimal) thing which is going behind the scene.

  1. Now that they know what it is, we should give them two separate use cases (one for payment channel and the other for state channel) and a concrete one (I do not consider coffee shop as a concrete). This is also I tried attempting with this demo I did but yes I could not get chance to work with state channel demos… because of my engagement with startfleet works.

  2. Now that you know what it is and how can implement use cases, time to work on some scalability. May be give write a paper or something so that people can know how to use the concept of channels in highly scalable projects.

I have also some insights on this one :slight_smile:

The point is, no matter how much cool tech we build, in the end, it has to reach mass. and that we can do with simple tools so that they can play and learn :slight_smile:

6 Likes

@YaniUnchained I am with @dimitar.chain on this - and yes absolutely, there will be state channels in the Editor-Currently-Known-as-Fire Editor. The Plan is: First we finish the SC demo and implement all the learnings we as a team currently make during this into the SDK, Node Client and Channel Service (and we learn a ton every day at the moment, which is very fortunate). After we have this solid foundation, it can be taken and used as a boilerplate for everything - which doesn’t mean people will actually know how to do it, but the SC team and I will show with the help of the editor, plus there will be explainer videos and more, but step by step.

In the current state regarding our state channels, I highly doubt there are ways for people outside the SC demo team to catch up with the current state of affairs (I’m even struggling after being gone for 2 days), as things evolve very, very rapidly right now, but after we’re done and the documentations are updated, everybody is of course invited to build upon this solid foundation.

3 Likes

Hey @lydia

Below you could find our respond to the items in question:

  • Can you please specify in hours and per task your estimated work.

    • The more the core team and the JS-SDK develop, the more obsolete the AEProject becomes, on the same wave - the less users would prefer to used it. In that manner we need to adopt the latest changes of the SDK & the node and compiler. We have to investigate what the breaking changes are, where they really break us, and test if everything work as expected eventually. - 4.5 - 5 days
    • Release new version of Aeproject and testing whether everything works smoothly - 1 day
    • Currently there is an open issue here which requires an attention - 0.5 days
    • Another thing outstanding is we have to add a permissive License to the aeproject repo? E.g. ISC or MIT? Could you or some other aeproject developer do that?
    • The rest of the days were intended for the state channels work. (From what I am seeing in the moods above, this does not need to have detailed estimation)
      • After Lima HF we had pretty hard time doing so in one of the biggest cloud providers, so we need to do everything from scratch on another cloud platform, so we need to setup and sync our node from scratch.
      • Bring the Coffee-Shop Aepp back to life.
  • How many windows users complained about the aeproject and what are the issues?

    • it’s been a long since the last topic about windows issue has been posted. I am not sure if this is still outstanding. In the last few months, however, our impressions were, that there were more fixes required on the windows platform.
    • We have to check with all customer throughout the forum if they still have their issues unresolved, and if so to provide them with a solution.
  • What is included in your community support?

    • we strive to deliver the best experience to our users. We plan to have a better respond time, so in this manner we would need a person who spend time on a daily basis in the forum. In case there is a fix required, or support within an existing user project - we are happy to help out!
    • JS-SDK & Node & Compiler regular updates will also be required in order to be with the most up to date tweaks.

Kind regards,
Hris

Hi Chris,

thanks for answering, but more I read I can not find out what is the the total time in hours to
fix the bug and update the AEProject with the new release?
Please give us time estimate for that without the Coffee-Shop Aepp update. Please tell us pro team member the required time in hours by updating your proposal. Sorry but I can not help you with the licence.

@All Dear All, does somebody runs Aeprojekt on Windows and needs an Aeprojekt update? Please give us a feedback!

Software Updates are often required to keep a system running and should be with the new maintenance requirement provided at least for one year. I think that it is the developer responsibility to keep his software running (bug fixing and new releases) and to answer the users.

Best
Lydia

1 Like

This is not about running aeternity on Windows, but aeproject on Windows. I don’t think you will get much input though. From my perspective there must be a clear understanding of which developer demographic is being approached by aeproject. E.g. Windows might not be widely used by developers in the US, but certainly is used heavily in Asia.

This is unrealistic for tools like aeproject. Keeping up with changes of the supported OSs, and integrated tools (nodejs, SDKs, docker, etc) is non-trivial and a lot of work. A one year maintenance window works for large commercial software projects, but not for a OSS project like aeproject. The maintenance would be easily more work than the actual work proposed here.

Generally I don’t see a vision where aeproject is meant to go and which problems it shall solve. Note, this is not meant as negative feedback towards @hristiyanAE.chain specifically. If aeproject is meant to be (or become) the de-facto development toolkit for AE, it should receive much more resources, also more marketing, translations etc. If it is not meant to be that toolkit, then it should be deprecated since its outdated and would be in the future. Then the question is, what should developers use to get started?

5 Likes

@botanical.chain Thank you very much for correcting my typing error and your valuable post.
I think we need to keep a running system and have a vision how to make the things better. Therefore the maintenance time should be included in the time estimate for any grant application and not only for commercial ones. Otherwise we run in bug fixing problems and deprecated aepps.

1 Like

Oh then I might have misunderstood you. So you are asking to get an updated proposal budget which includes 1 year maintenance effort? That would make sense, but I would also advise to reconsider the vision of aeproject.

2 Likes

Good day everyone,

Thank you very much for your considerations and concerns on Aeproject. Indeed the proposal how it is now is pretty much nothing special than maintenance and support of the Node, Compiler and the SDK which as @botanicalcarebot.chain could easily grow over time.

I could understand your predicaments into not seeing any vision in the current state of the proposal, so I would introduce you with a little backlog of what we initially had as idea.

The Aeproject was the de-facto development toolkit for developers for Aeternity blockchain until the end of the last year when there were a lot of organisational changes, which led to more resources oriented to the end users aepplication, rather than the developers, so in that order Aeproject did not receive resources for what we had applied for, hence the proposal above.

I am really happy to see now that we could talk more about the vision we had previously in mind, so it can reach out the community and share your thoughts over it.

We came up with several major updates to do for a period of 6 months which will include:

  • provide the best user experience to our users the team decided that we will spent significant portion of the time on core improvements, community & protocol support. Aeproject already has a lot of functionalities used by almost all users in aeternity ecosystem. Some of these updates include adopting changes from SDK’s team, nodes, and compiler. We will track the forum and GitHub for issues and feature requests from our users. Updates or work done will be regularly announced in the forum, so we provide transparency of what we did, and what we’ve been through :slightly_smiling_face:

  • There will be guides and examples for all major core functionality of aeproject not only as learning material but to ensure that aeproject works with current and future versions of the protocol. This includes updates in the Sophia Smart Contract Language, deploy scripts, updates within the compiler or new upcoming node version.

  • DAO Shape - can be really helpful for the organizations and teams building applications on the blockchain

  • We will provide a descriptional and more presentative webpage for aeproject. In that way, the product can be easily promoted over different channels. The webpage will include links to documentation, more examples, and tutorials, community links, etc. Contribution page will also be added to the website, providing a way for the community to share and give ideas for the project. All interesting materials regarding AEproject can be posted there.

These are just a portion of the ideas we plan to develop when we have a green light. Please let me know if you want me to present the whole grant application so we could trigger the grant application process from the very beginning.

Hris

3 Likes

Thank you @hristiyanAE.chain and those who shared their opinions here. If anyone else still would like to participant in this discussion, you are more than welcome. And please note that in one week, the decision would be made to support or reject this proposal.
Thank you all!

before working on things like DAO shape etc. I would like to see different shapes for 1 specific use case implemented in different frameworks (react, vue, angular, …) which includes wallet connection by e.g. providing AEX-2 support

we should keep things simple and focus on whats needed to get people started using their framework of choice. of course those shapes and aeproject itself should always be updated if necessary (new node or compiler version, new major release of a certain framework)

we should have a closer look at the ethereum community and what the truffle team provides and develops. we have a solid basis but we should learn from others and provide the best and easiest way possible for new developers to jump in. therefore the shapes with wallet support targeting different frameworks are key IMO.

I wouldn’t waste much time regarding windows rather wait for new people jumping in and complaining about it. as far as I know when using docker for windows it used to work. there were problems when using docker toolbox which can somehow be interpreted as deprecated anyway

2 Likes

In general I think it would be better, considering limited dev resources, to not focus much on “shapes” at all.

Aeproject at its core idea can be way better as contract development tool, focus should be there. For what is “shapes” community projects are fine I guess. E.g. the vue boilerplate GitHub - kenodressel/aepp-boilerplate: A vue.js boilerplate to build aepps in the aeternity eco system. or maybe other community members that have integrated SDK/Wallet in other frameworks can publish theirs.

2 Likes

it would definitely make much more sense to provide this in different frameworks, keeping it up to date and include AEX-2 than making some kind of special shape for DAOs which probably gets deprecated again after 2 months. not everyone is familiar with vue and for people not knowing about the aepp-boilerplate you mentioned they probably wouldn’t find it.

what specific points do you think need to be improved / are missing in aeproject? I am not actively using it and in the past it used to work good and as expected. ok state channel support is missing. but that’s a huge topic anyway and probably requires much work

edit:

  • do we have support for includes ? that should be supported e.g.!
3 Likes
  • frequent updates to latest sdk/node/compiler otherwise devs test with older versions than “production”
  • upgrade support, meaning help upgrading your contract/sdk integratrion for an upcomming sdk/node/compiler
  • use default sdk in tests instead of wrapped one
  • help setup local enviroment better, with more explaination/configuration, also better defaults
  • some more that have been discussed with the aeproject team ~6months ago in detail

@hristiyanAE.chain Your Application in this form is not soundable. Could you please specify and give us a new estimate reflecting the above posts. Please note that one year maintenance is required! Thanks!

Hey @lydia, all,

Thank all of your for you involvement in the discussion here! Indeed what we had above is not quite soundable as you suggested. This was only a quick look in to what we have had in our proposal roughly 6 months ago. Anyways I am happy to see the activity we have on this thread. Therefore I will provide you with our concrete proposal once we have received all you suggestions as we would like to include them into it, before providing estimates and proceeding further.

@marco.chain,
thanks for your suggestions!

  • In regards to the different shapes - This has already been implemented. We have boilerplate ToDo aepp for the three most used frameworks - namely React, Angular & Vue, where we have integrated ToDo smart contract over aeternity which connect to your AE account via identity provider. You might want to look over the documentation.
  • we already have implemented a support for the include a while ago. The aeproject compile command allows you to include other .aes files to your contract by using the reserved word include and specifying the path to the file. You can add contracts, as well as namespaces. More information on how this could be achieved could be found here.
  • Could you elaborate more on the AEX-2 support. As far as I can see in the forum this has been marked as withdrawn due to the adversity to agree on the standard as per @noandrea in this thread

@philipp.chain
Hey Piwo,
Most of the bullets you suggested are envisaged to be in the upcoming proposal, yet some might have slight discrepancies (aeproject used as primary deployment tool in the tests).

  • Could you elaborate in more details this point so we can further look into details and estimate the work eventually:
    • help setup local enviroment better, with more explaination/configuration, also better defaults*

@lydia
I just would like to clarify better with you on how do you see this 1 year maintenance will going on - Is it going to be just a basic support, like update to the latest version of the JS-SDK, Node & Compiler, or rather is going to be more like community support, potential bug fixes on top of the updates to the latest version of the SDK, Node and the Compiler?
There is difference in the estimated work depending on the commitment we are on.

I am looking forward to hearing from you soon, so we can prepare the new proposal accordingly!
Thank you once again!

Hris

I can’t find Angular. for React and Vue at least the documentation still states forgAE instead of aeproject. not to mention that it is outdated which is always bad for an “official” repository. regarding identity provider, AEX-2 or whatever => for me personally this is the most confusing topic ever. I haven’t practically played around with it yet. but I already have enough asking questions about that. there should be an official, updated example shape for whatever framework which uses the proposed way (whatever it is being agreed on) and this should be promoted and known by æmbassadors.

not blaming you about that. but I just can’t believe that there still isn’t a simple to use official boilerplate that showcases this for the official wallets like base æpp & wællet. I think it is well documented in the sdk. but I haven’t looked into it for quite a while and I personally am not a javascript developer so I personally prefer a simple showcase to see how it’s done.

:+1:

puh I really don’t know. seems like nobody knows xD

2 Likes

@hristiyanAE.chain
I just would like to clarify better with you on how do you see this 1 year maintenance will going on - Is it going to be just a basic support, like update to the latest version of the JS-SDK, Node & Compiler, or rather is going to be more like community support, potential bug fixes on top of the updates to the latest version of the SDK, Node and the Compiler?

The maintenance means bug fixing, update, test and some refactoring if necessary. The goal is to keep aeproject always updated and running and to make it attractive for the developers to use. The aeproject documentation should be kept up to date.

The aeproject application in the present form is rejected.