This document is for review purpose only, It is Work in Progress and yet to discussed and agreed on dev@
Link to dev list discussion
Once you have the design proposal written, please send a email to dev@mxnet.apache.org and provide a link below for reference, you can find the "Permalink" from https://lists.apache.org/list.html?dev@mxnet.apache.org. For an example see the link below
Problem
Describe the problem your design proposal aims to solve. For an example see the link below
MXNet Scala API Usability Improvement#Problem
Goals/Usecases
Describe what goals your design proposal attempts to achieve or what use-cases it solves. For an example see the link below
MXNet Java Inference API#Goals
Open Questions
Are there any open questions that you want the community to provide feedback on?
These could be questions such as you have 2 different ways to solve a problem and you want the community to provide their opinion to chose one or the other.
Any other questions that you might have for implementing the design.
Proposed Approach
Describe the design details of your proposed/preferred approach.
Consider adding sequence diagrams, class diagrams as necessary and as time permits.
You could use the drawing templates provided by Confluence or even if you write it on a piece of paper and paste the picture that will help a lot in better understanding. For an example see the links below
MXNet Java Inference API#ProposedApproach
MXNet Java Inference API#ClassDiagram
MXNet Java Inference API#SequenceDiagram
Alternative Approaches
Alternate design approaches considered,
We encourage you to think through different ways to solve the stated problem so the community can provide more input your proposal. For an example see the link below
MXNet Scala API Usability Improvement#AlternativeApproachconsidered
Technical Challenges
Are there any technical challenges in implementing your solution. For an example see the link below
MXNet Scala API Usability Improvement#TechnicalChallenges
Milestones
It is recommended to break down your implementation(based on your proposed approach) into components and milestones so it becomes easier to provide feedback on PRs and easily merge into the code base.
References
Links to References