X-Original-To: alpine-devel@lists.alpinelinux.org Delivered-To: alpine-devel@mail.alpinelinux.org Received: from mail-in-14.arcor-online.net (mail-in-14.arcor-online.net [151.189.21.54]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mail.alpinelinux.org (Postfix) with ESMTPS id 84CBBDC00D4; Thu, 29 Nov 2012 16:36:09 +0000 (UTC) Received: from mail-in-18-z2.arcor-online.net (mail-in-18-z2.arcor-online.net [151.189.8.35]) by mx.arcor.de (Postfix) with ESMTP id 88B649C185; Thu, 29 Nov 2012 17:36:07 +0100 (CET) Received: from mail-in-15.arcor-online.net (mail-in-15.arcor-online.net [151.189.21.55]) by mail-in-18-z2.arcor-online.net (Postfix) with ESMTP id 8D9C833A9B7; Thu, 29 Nov 2012 17:36:07 +0100 (CET) Received: from [192.168.16.209] (85-127-157-253.dynamic.xdsl-line.inode.at [85.127.157.253]) (Authenticated sender: panthera.tigris@arcor.de) by mail-in-15.arcor-online.net (Postfix) with ESMTPA id 1FC271AB547; Thu, 29 Nov 2012 17:36:06 +0100 (CET) X-DKIM: Sendmail DKIM Filter v2.8.2 mail-in-15.arcor-online.net 1FC271AB547 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=arcor.de; s=mail-in; t=1354206967; bh=fSvVXTUVWp1JJCdUJKTWS1WAwjVBbLMRlGnFIsde7J4=; h=Message-ID:Date:From:MIME-Version:To:CC:Subject:References: In-Reply-To:Content-Type:Content-Transfer-Encoding; b=VtHZKTWJRRY3XtCri4bRx+8JsYknO/+1HqEhrjl+s+Qi3YZolGdq7ev58euaHVeUa LQ52NF7lPSCITNVuRXtwvPhZNr8SSy8D9b0VRpAHK31Y9UqOMxEtWOIdzKGJ/q0w14 4P6aOG3uCN7EQU46yFSTqaW1hWkieBc3AmqL2AeI= Message-ID: <50B78EF5.6040006@arcor.de> Date: Thu, 29 Nov 2012 17:36:05 +0100 From: Der Tiger User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Thunderbird/17.0 X-Mailinglist: alpine-devel Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: MIME-Version: 1.0 To: Natanael Copa CC: Alpine ACF , Alpine Developers Subject: Re: [alpine-devel] Ideas for a new config framework, ACF2 References: <20121129152317.69585a4f@ncopa-desktop.alpinelinux.org> In-Reply-To: <20121129152317.69585a4f@ncopa-desktop.alpinelinux.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Hi Natanael, Hi Kaarle, Thanks for the comprehensive project plan! I fully agree, the current ACF is good work, but needs overhauling, due to the problems stated in the proposal. At this stage, I am just not sure if using JavaScript and introducing client-side GUIs would be wise choices. - ACF is a configuration framework. IMHO, the configuration of most Alpine systems is usually done by a single admin or at least a small number of admins, who usually won't do administration work on a single machine, simultaneously. Therefore, there is no significant server performance benefit to be expected from outsourcing HTML page formatting to the client side. ACF is not a "common user" interface. - Using JavaScript would introduce another programming language required besides shell scripting and LUA to write ACF applications and modules. Not every programmer interested in Alpine Linux is capable or willing to handle an extensive number of programming languages in order to write packages for Alpine Linux. The higher the required number of languages, the fewer the number of people able and willing to contribute. - JavaScript is considered by all internet security majors to be a potential security risk. This is not only due to security bugs in various browsers (e.g. Chrome), but also due to the complexity of JavaScript interaction with servers. Most companies filter JavaScript in their local nets and allow it only on secure channels between clients and the internet in order to make some websites work, where there is no alternative method available than a client script (e.g. large volume data browsing). Using JavaScript for configuration of a local environment does compromise this security strategy. - JavaScript adds complexity to the HTML page transmitted and displayed. It is likely, there are devices like PDAs or mobile phones, that won't be able to handle certain JavaScript initiated reformatting of web pages correctly. Admins do frequently use PDAs to reconfigure their servers and routers or to look up some configuration on these devices. Also there is the issue of DHTML incompatibilities between browsers. - KISS [1], as you certainly know. The more components are required for the ACF to work, the higher the risk the next update will render the system inoperable. And there are already JSON, LUA, minihttpd and various other components involved. I, admittedly, do have strong reservations regarding both, Java and JavaScript. A co-worker once eloquently put it to: "Java and JavaScript in 99% of all cases are used by programmers to work around problems, they either don't understand or don't care to solve properly." I've largely experienced this to be true. Personally, I'd prefer a slim, slick and lean HTML-only configuration GUI with pages generated by the host rather than the client. But than again, I'm just an old f@rt, who has no appreciation for "modern", blinking, multi-layered and high colour pop-up interfaces, that are as slow as a snail and close to indistinguishable from any given first person shooter action game. Kind Regards, Tiger [1] KISS = Keep it simple, stupid! Am 2012-11-29 15:23, schrieb Natanael Copa: > Hi, > > Me and Kaarle have been playing with the idea "what if we started with > ACF from scratch today, how would it be?". > > We collected some ideas and have now come up with a fairly detailed > plan for an ACF2. > > Some of the goals: > * better security design > * remove unnecessary complexity from modules > * organize the libs better > * fix concurrency - no race conditions > * improve CLI interface > * modernize web GUI (write the gui in javascript) > > For web frontend we have been talking of using existing frameworks like > Backbone.js and RequireJS. For backend we have been talking about using > things like augeas and using Lua tables to create data models. > > Kaarle has written are more detailed plan: http://www.datakunkku.fi/acf/ > > This will require some massive work but I think we can do it. Hopefully > it will be simpler to write models once the basic framework is in place. > > What do you think? > > -nc > > > --- > Unsubscribe: alpine-devel+unsubscribe@lists.alpinelinux.org > Help: alpine-devel+help@lists.alpinelinux.org > --- > > --- Unsubscribe: alpine-devel+unsubscribe@lists.alpinelinux.org Help: alpine-devel+help@lists.alpinelinux.org ---