Hi Tirifto, > 1. Integration. Cross-platform software with a single unique > interface > tends to look and feel quite out-of-place on some systems, making it > uncomfortable to use. But if handled well, this shouldn't be major.
That's right. By adopting a unique look-and-feel there's a great chance that you'll not respect design guidelines if those are in conflict between 2 systems. I'm not a design guy so I don't know how to handle that but I suppose it is about making compromises. The advantage of using Electron is that the HTML/CSS/JS stack is easier to learn and is good at making UI. Moreover, I tend to think that people involved in design are more HTML/CSS-aware than C/C++ but I may be incorrect. If I'm right on that, it is also a way to make Ring more accessible to contributors potentialy more knowledgeable about design and ergonomics which is nice. > 2. Performance. I've read often enough that programs using Electron > tend to be slow and resource-heavy, also owing to that the program is > running in a dedicated “web browser” for itself. I find web-based > programs slower in general, so I imagine this could present a huge > issue. I see at least one point on which the performance concern could be challenging. It is how to pass video frames efficiently between the daemon and Electron. I don't know about Electron very well but we currently decode video frames and then pass those raw frames (by buffer pointers for efficiency) to UI frameworks. I don't know if we can do that easily with the Electron/WebKit renderer. Another way could be to rely on decoding facilities from the web engine itself but it's a major change in the whole media pipeline which, if even doable, will certainly break compatibility with other clients (if we don't want to support 2 different pipelines). > Ring should really strive to be light-weight. IIRC an Electron “Hello World” is like 20-30 MB so that may be not very light-weight. > 3. Freedom. Again, I trust that Ring will remain entirely free, but > I've read some doubts about the freedom of Chromium and Electron. > They've even been removed from the Parabola repositories. In that > case, > it sure wouldn't be used for the official client; I just hope the > developers are well informed on the matter and have better plans > ready. Again IIRC, even compiling Chromium, which is supposed to be the free-ish brother of Chrome, requires downloading blobs in the process. I don't know how much of Chromium is used in Electron but if it also has this requirement that's definitely a problem. Anyway, somebody with more knowledge about that should probably answer those concerns and/or correct me if I'm wrong. I know very little about this new project. Anthony L.
signature.asc
Description: This is a digitally signed message part
