Video Xblock

Based on current video xmodule we are moving to have video xblock which can bring improvements in overall video workflow process.

Roll out plan

Nimisha Asthagiri (Deactivated) I'm bringing this as part of document instead of comment area, this is useful information that i'm thinking to keep it here. 

Talking to Scott Dunn about this, here's a thought on 2 alternative rollout plans for you to consider. Curious to see which one pans out (or another plan altogether).

  1. Plan A. Duplicate and Prune in iterative releases

    Create a shell video xBlock, but then duplicate all the existing code into the new xBlock.  Initial release includes all existing code.  Then iterate on the new xBlock by incrementally removing all the extra fluff that's no longer needed. Refactor at each iteration with clean-code practices in mind.

    Minus: Would need to make sure the team follows through on all the tech debt items before completing the project.  Also need to make sure we are aggressive about refactoring.
    Plus: May be a faster path; aiming for practical improvement, not perfection

  2. Plan B. Start from scratch

    Re-implement the video xBlock altogether, including all functionality (and possibly tests as well).  Would still use the existing code as reference to rebuild the new one.
    Minus: May be hard to estimate/scope this out.
    Plus: May result in cleaner code but it really depends on whether the team is rethinking from first principles or will end up copying and pasting anyway.