[mythtv] MythWeb
Michael T. Dean
mtdean at thirdcontact.com
Wed Jan 29 17:33:19 UTC 2014
On 01/29/2014 11:59 AM, Steve Campbell wrote:
>> The general idea is that the MythTV web interface will no longer be a separate web application that runs using PHP on Apache/nginx/lighttpd,
>> but will be an integral part of the backend. It will use the same code as the rest of MythTV (mythbackend and mythfrontend and ...) and will be
>> available immediately upon starting mythbackend. This has many benefits including
>> a) eliminates the need to re-code MythTV logic (libraries and application logic) in a completely different programming language and application
>> b) no need to keep redundant logic up to date with changes to MythTV (and no worries about the web interface being outdated compared to other applications), and
>> c) *much* easier setup for users (no need to install and configure Apache/nginx/lighttpd and install and configure PHP (and set various memory sizes for PHP and ...).
>
> Hmm. Lets look at those points
> a) You should always use the best programming language for the job.
> PHP is much easier to maintain/develop in than C++ (at least for PHP
> devs!), and any good webapp will be making as much use of Javascript
> as possible.
I'd argue that the best language for the job is the language in which
the code is already written and will continue to be written... In other
words, for any other language, we have to write the code twice, once in
C++ with Qt framework for MythTV applications and once in "the best web
language" for MythWeb.
> b) The integral web interface and frontend seem way outdated compared to Mythweb
Um, how can brand new be outdated compared to "hasn't been touched,
other than minor bug fixes, in a couple years"?
> c) Is handled by the distribution package creators. There are good
> arguments for keeping things modular.
>
> I really don't want to knock Stuart who is doing a great job, but
> please don't kill off Mythweb just yet.
Given that one accepts your argument that c) is irrelevant because of
packages, users won't even notice a difference. Or, more precisely,
users of packaged distributions won't even notice a difference (other
than seeing a much newer user interface) while self-compiling users will
see a huge difference in ease of installation/configuration.
Besides, MythTV users keep telling me that it's a waste to run a Window
Manager that takes 300kB of RAM, so imagine the hails of glory when they
find they don't have to run httpd and waste 7.2MB of RAM! Besides, I'm
also told that best practices say that you need to compile all software
on your GNU/Linux system so that it doesn't include any capabilities you
don't absolutely need (even if that means disabling functionality you
may want or eventually need) because installing software/libraries on
GNU/Linux--even if you don't execute the software or use the
libraries--creates security problems. (Okay, this whole paragraph is a
farcical argument because I completely disagree with the assertions made
in those arguments--that really do occur on the -users list.)
The point, though, is that nothing will change from a user's
perspective--save for seeing a new interface that includes significantly
more functionality (most everything available to
mythfrontend/mythbackend will be available for inclusion in the
WebFrontend) as well as much more safety (much of the code in MythWeb is
incorrect, because things have changed in MythTV and were never updated
in MythWeb, and in some cases using parts of the MythWeb implementation,
today, can actually cause data issues that may break functionality in
MythTV).
I don't know why so many people say, "Please don't kill of MythWeb."
This change should affect people as much as if Facebook were to
announce, "Hey, everyone, we've started porting our Facebook server-side
code from PHP (that sends HTML/JavaScript/CSS to the client) to Java
(that will send HTML/JavaScript/CSS to the client)." No one should
care, as it's really only something that affects developers.
Mike
More information about the mythtv-dev
mailing list