Twice a year the entire version control team meets in a big conference room, full of breakfast goodies, to talk about our current strategy, release execution and market challenges. The meeting lasts for around 1.5 hours and it gives us a chance to step back and see how our day to day activities and decisions are aligned with the bigger picture.
What I want to do today is tell you a bit about our mission and the high level principles which control a lot of what we do as a team. Lets first start with sharing our mission statement, not to be confused with our vision which can be a topic for a later blog post.
Mission: Transforming Version Control
Our mission is short and centered on the fact that version control tools and the SCM field are due for a significant shift. We say this because if you look at the last twelve or so years we have only seen incremental innovation on the market with no radical blue ocean changes. Looking into the future we believe that version control will transcend from predominantly versioning source code items to being a service on an integrated server which is able to version any type of asset and with enough smart to track and enable workflow's that provide rich and immersing experiences on the "right" consumer scenarios. If you read a lot about the SCM market you might say that we share a similar view with one of our competitors, as evidence by this published article: http://www.ddj.com/architect/188500238 . I would say partly yes and the part that separates our views is that for us is not only about versioning items and understanding their extension semantics, but really about versioning, recording and tracking the behavior/ interaction of these items with outside entities and integrating those worlds together.
Lets provide a simple example to make this a bit clearer: take a service that keeps track of the routes you have taken between two points (e.g. your house to a restaurant of a new friend's house). A normal version control system will version the routes from the different origination points and allow the user to retrieve that information with a request. For us that information is not not enough, so we would want our system to understand why you took that route and then attach that behavioral metadata automatically. Was it because there was an accident and you had to take a detour? Was it because it was raining and you felt the highway was faster? etc. We want to bring these outside entities into the picture so we really get the full picture of what we are versioning. This will take some time but we believe that is attainable and will be an integral part of the SCM shift that will take place over the next seven years.
With our mission statement briefly explained lets quickly go thorough our High Level Principles which are responsible for steering us in the right direction:
There you have it, a short detailed look at our mission and principles. You will see our team executing on them on different levels throughout the course of the next release and hopefully at the end we can look back and see how much closer we are from fulfilling the mission.