by jesseliberty via Jesse Liberty - Silverlight Geek on 1/4/2010 9:02:00 PM
This post is part of the Silverlight HyperVideo Platform documentation
[Updated 1/5 10:50 GMT-5]
Everything Flows, Nothing Stands Still – Plato Nothing Endures, But Change - Diogenes
The past few days have seen quite a flurry of design activity, and I’m quite sure some folks who have been following closely have been confused. This note will clarify, and also discuss design decisions made to move the project forward, and why these decisions were made. I have created a new discussion on the CodePlex site and I would invite your comments and feedback there, if that is convenient for you.
Original Goals:
We decided to move the project to CodePlex (which took a few months to get licensed) and open the project up to community involvement. This is a wonderful thing, and has created unanticipated opportunities.
My perspective on this project, buttressed by management expectations, is to foster as much community contribution as possible, but to take personal responsibility for every line of code in the project, to set coding standards, and so forth.
The project is being built with MEF which makes it composible and extensible. I envision 6 classifications for code created by the community
Key to this is that the first two represent code that will be in a release from the project, and the fifth option is open to any organization, commercial or otherwise, so long as they follow the Ms-PL license.
As you may know, we have a commitment from WL (an e-learning startup) for 100 hours/week of developer time. They already have some code working that they are interested in adapting to this project and contributing to the core. Their stated intention is to contribute all this work into Ms-PL licensed code housed on CodePlex and also to try to build a product or products using the SLHVP as the engine. That, as I read the Ms-PL is more than appropriate.
Two concerns comes to mind, and this was surfaced by WL itself from day 1:
After working carefully with them and examining what they need and want, and what will be best for the project, I can unequivocally answer no to #1 and I can give a more nuanced answer to #2.
The short version is that they bring a more complex design, and with it they bring far greater flexibility and mission-appropriate features. Thus, yes, the project will end up more complex with their involvement, but it will not end up with unneeded or irrelevant complexity. To be specific, all the additional complexity will be in service to features that are appropriate for the project.
This would not work if I were to cling to an initial limited vision of the product, but it works great if we lift our vision a little higher.
I had a boss who said (paraphrasing): “If the railroad companies had realized they were not in the rail business but the transportation business, we’d all be flying Union Pacific Airways.”
One very important aspect of my role in Microsoft is to provide “educational material” such as videos and mini-tutorials, but an arguably more important job is to explore new ways of conveying this information that greatly enhance customer satisfaction and involvement. That can be done by responding to user-suggestions and concerns (which we try hard to do) and also by exploring relatively radical new ways of conveying this information.
Over the past couple weeks the project has been re-conceptualized in somewhat broader terms, as evidenced by the new summary statement:
The SLHVP is an extensible HyperVideo platform to orchestrate media, data, user-experiences, and social-interaction into compelling applications.
What this means is that the SLHVP now anticipates providing more than just video and web links, but also, over time, animation and possibly interactive elements. To accomplish this, we are working towards the following key aspects of the design; most of which should be in place by the January 20 release
We have identified the following modules for the first release
The current (not yet released) code has a single xml file for creating all of these modules, but even if that is what we release on Jan 20, by early February each module will have its own configuration file. The format for these files will be well-established, and we’ve nearly finalized that already. [updated 1/5 – please see this discussion]
As the first set of code comes from WL and our other contributors I will expand upon these descriptions and update our feature and task list accordingly.
Thank you all for your ongoing support and patience as we sort this out. I anticipate a great burst of productivity over the next six weeks or so. Please be sure to see the newly updated schedule.
Original Post: Extending the SLHVP Player to be a Platform
The content of the postings is owned by the respective author. Silverlight Feeds is not responsible for the contents of the postings. This site is automatically generated and cannot be reviewed for abusive content. If you find abusive content on Silverlight Feeds, please contact us. Designated trademarks and brands are the property of their respective owners. All rights reserved.