[mythtv] BrowserBased setup
perlun at gmail.com
Wed Nov 24 08:14:22 UTC 2010
Thanks for your replies. I'll try to reply to them all in one email:
1) Regarding the "Silverlight is dead" issue, this is a rumor that
started spreading a couple of weeks ago. Simply said, it is untrue;
it's just a rumor really. What *is* true is that Microsoft is shifting
focus slightly; instead of pushing Silverlight for "streaming media"
applications, HTML5 can be used instead (which includes the famous new
<video> tag). However, for LOB (line of business) applications,
Silverlight is still an interesting alternative.
2) Regarding the "it doesn't work on Linux/BSD" - yes, this is indeed
a problem. I haven't tried running Silverlight applications on these
platforms, but if you say that Moonlight works poorly, I have no
reason to question this statement. Then again, if you think about the
(potential) user base for MythTV in general, do you _really_ think
that a majority of the people would run a "Linux/BSD only"
environment, even on their workstations, laptops, everyday computer? I
think scenarios like myself are quite common: running Windows on the
desktop, but having a Linux server hidden away somewhere. :-) For such
people, having a Silverlight-only plugin will not be a huge problem.
If the target audience of MythTV is "true" Unix geeks only, well... we
have a bigger problem. :-)
3) Regarding the "who has a Silverlight development environment?", it
is true - yes, it's a bit more work than starting to type some PHP
code in a text editor. Then again, Visual Studio Express + the
Silverlight 4 SDK is freely available (but then again, only on
Windows, which is a problem if the potential developers/contributors
favor Unix systems).
Having said all that, I would like to state that I definitely respect
anyone favoring an "HTML"-based approach, for the cross-platform
support. Yes, HTML works everywhere, it's definitely true. Then again,
the obvious *dis*-advantage of HTML is that it isn't designed for
writing applications in. You have to keep track of state (sessions).
You have to handle cases where people are pressing the "back" button,
or just navigating right into the middle of your application flow
because they are copy & pasting a URL into their web browser. You have
to have people wait while the browser is "loading" and loading and
loading page after page...
Yes, you can do pretty nice web applications with it, but HTML +
than e.g. Silverlight and C#. That's really my conviction, after
having worked with both of these technologies. (but I have worked much
more with WPF than with Silverlight)
My conclusion is this: if you go with the decided approach (built-in
web server, which I think is a good idea, with the setup program
written in C++ and HTML), _please_ consider using a two-tier
architecture (well, three-tier if you include the database). That is,
separate the presentation from the service architecture. REST could be
one alternative here. Design proper (REST) services for adding DVB
cards, scanning for channels, etc. This way, it will still be possible
for some maniac (like me? :-) to write a Silverlight version of the
setup if they like. It also simplifies for people who perhaps wish to
keep the Qt-based setup program; they "just" have to rewrite it to
speak with the REST services instead of (my presumption that it is)
calling MythTV library methods to do the work.
This is my 0.02€. Thanks.
More information about the mythtv-dev