Skepticism about a new Electron-based product
R Kent James
kent at caspia.com
Fri May 12 18:09:35 UTC 2017
On 5/11/2017 11:50 PM, Henri Sivonen wrote:
> On the point of current Thunderbird being based on Mozilla technology
> saying the Mozilla Foundation has agreed to continue as Thunderbird's
> "cultural home", it seems really weird for Thunderbird to be
> transitioning to Electron.
With the legal home decision finally out in the open, I'm glad we can
start to talk about this issue.
I've followed Myk Melez <https://mykzilla.org/>'s attempts at variants
of Gecko that are not browsers, but as far as I can tell none have
gotten any traction (Positron, qbrt, Headless Firefox). It's not clear
to me that MoCo has interest in anything other than Firefox, and
attempts to "go faster" and "focus" seem to encourage people to actively
disengage from any effort that is not focused on a better Firefox. I
don't mean that as a criticism, after all Firefox has its own difficult
race to run, but we have to face reality.
But reality can change. Several of the key features that underlie the
success of the modern web were born in email technology (XMLHttpRequest
in Outlook Web Access, and GMail as the model of the potential of AJAX
to emulate a desktop app). In my dreams, Mozilla would embrace
Thunderbird as their own, and work to ensure that Gecko technology would
be effective on the entire stack of platforms expected of a modern
application. In the process a vision of Gecko that extends to desktop,
mobile, and web could emerge.
But just as Firefox has a difficult race to run, so does Thunderbird.
Electron is available today, with lots of tutorials and support, and a
rapidly growing ecosystem. In contrast, as Myk says, "qbrt is immature
and unstable!". It would be great if Mozilla would embrace qbrt or a
related project, and encourage Thunderbird to be the early demo of that.
Hopefully now we will at least be invited to those discussions. But
let's get back to today. My vision of a Thunderbird++ is an app that
runs on all currently viable platforms. When you look at new apps that
target a similar vision, what are they using? Increasingly I see
Electron for the desktop, and React/React Native for the UI and Mobile
support. (See Keybase for this week's example). Electron may have its
issues, but forking or branching Electron to solve issues is still
easier than trying to imagine bootstrapping a Gecko equivalent.
For the Caspia Contacts project, we are explicitly exploring how a
common code base would support multiple platforms. In the current
sprint, we'll do a barebones HTML contacts form that runs as a website
and as an Electron app. But the goal is not really to support Electron
per se, but rather to explore how to structure the code to be platform
agnostic. We would like to understand what advantages Electron gives us
over, say, using modern browser technologies for offline support
including Service Workers and IndexedDB.
So from the Thunderbird perspective, I would say that there is no
decision to use Electron as the base of Thunderbird++, and I would hope
that a decision on that would be delayed until considerably more
experience is gained with the alternatives. We would welcome more
engagement with the Mozilla platform team on how to effectively use
Gecko technologies instead.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the tb-planning