195
« on: October 12, 2011, 05:51:32 am »
Just some thoughts to share with respect to golgoj4's post...
What is LinuxMCE now, and what is it meant to become? What doesn't it do that it should, what does it do that it shouldn't, and what will it never do? That's where Vision comes into play... Vision provides scope and direction, which are really important when developers (and developer's time) are limited. It also affects decisions about architecture and infrastructure, frameworks and integration points...
For example, the requests forum is a real smorgasbord of people's wants and desires for LinuxMCE. What makes it in, and what doesn't? The usual answer is, those that write the code can put it in; but does it always make sense to put some something in, just because you can? Many of the requests are for portal and app server functionality, like the stuff Amahi does. Is that a space LinuxMCE wants to or should be playing in? If so, what framework(s) get used/re-used to provide that functionality to maximize on the features delivered vs time invested by developers. Another example would be Dianemo using MythTV and saying that it provides everything that VDR could do. Does that mean VDR support is a duplication of effort? Should it be deprecated/removed for 10.04? (Note: I'm not saying that, but with a common vision and direction, these kinds of things have to be examined and decided upon). Vision provides scope and direction, which influence quality, time and effort.
I bring this up only because one of my roles in my day job is to encourage the DBA's and app admins I support to consider the full life-cycle of the services they support, both for the here and now and for the end state, because they do effect one another. The end state (the vision) effects the here and now, and the attitudes towards the here and now (scope and direction, and consequently time, effort, and quality) effects the end state. I do this as someone who inherits the "lost turds"; the services that were rushed out to meet the immediate needs of the here and now, with no consideration for the long-term life-cycle needs of that vital service. Specifically, how to keep it alive and well, and evolve it as needed.
LinuxMCE is different from most projects or applications, and not just because of it's complexity. When fully integrated into a home environment, it becomes a daily use tool, one that people can literally grow up with; in some cases, children may become teenagers or adults, not remembering a time before LinuxMCE was a part of their lives. That's why Vision is so important... As a collection of OpenSource components, LinuxMCE's foundations have a life of their own, which will drive the evolution of LinuxMCE to a large extent. As the LinuxMCE project itself grows and evolves, more people will come about to try to help out in some way. With a shared collective vision and direction, it becomes easier to rally the troops and make strategic choices; without, it may be like herding cats...
I'm going to duck back out now and continue to examine the plumbing in 10.04... still got a lot to figure out before I can hope to make a contribution, but I hope to make a dent in posde's points 1 & 2 eventually...
/Mike