<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Ben Bucksch wrote on 24.03.2017 18:04:<br>
</div>
<blockquote type="cite"
cite="mid:56f75f14-d869-1ee4-9568-1abcd508a2a1@beonex.com">
<p>Summary:</p>
<ul>
<li>Our base goes away. Gecko will change dramatically in the
future, and dropping many features that Firefox does not need
anymore, but that Thunderbird relies on.</li>
<li>Our codebase is now roughly 20 years old. It heavily and
intrinsically relies on those very Gecko technologies that are
now being faded out, more or less aggressively.</li>
<li>JavaScript and HTML5 have evolved dramatically. Entire
applications in JS are now realistic, and have been done.
There are several existing JS libraries we might leverage.
JavaScript is an efficient language, which allows fast
development. A rewrite in JavaScript makes sense now.</li>
<li>We will learn from shortcomings of existing Thunderbird, and
solve them, for example a more flexible address book, and
cleanly supporting virtual folders without overhead.<br>
</li>
<li>The goal of the rewrite is to be close to the existing
Thunderbird, in UI and features, as a drop-in replacement for
end users, without baffling them. They should immediately
recognize the replacement as the Thunderbird they love. It
will install and run as normal desktop application, like
Thunderbird does today. It keeps user data local and private.<br>
</li>
<li>We can also make a new, fresh desktop UI, as alternative to
the traditional one, for new users. The technology also gives
us the option to run it as mobile app.<br>
</li>
<li>While we implement the new version of Thunderbird, the old
codebase based on Gecko will be maintained until the rewrite
is ready to replace the old one.</li>
<li>I expect this effort to take roughly 3 years: 1 year until
some dogfood (usable by some developers and enthusiasts). 2
years until a basic feature set is there. 3 years until we can
replace Thunderbird.<br>
</li>
</ul>
<p>I will describe each point in more detail below.</p>
</blockquote>
<p><br>
</p>
<p>Based on the discussion, I'd like to amend or correct my proposal
in the following points:</p>
<ul>
<li>Thunderbird based on Gecko would continue to be maintained on
the current level of effort. I did write that above, but many
apparently misunderstood me.<br>
</li>
<li>If some of the newly written components can be backported to
old Thunderbird, with a reasonable amount of effort, we can do
that. The address book would be a prime example for that.
However, that backporting is a separate effort and would not be
done by the same team that writes the new app, but other
developers, so that one team can concentrate on the new
Thunderbird-Next-Generation and another team on the old
Thunderbird.</li>
<li>There are some existing libraries that we might be able to use
for TB:NG, e.g. emailjs.org . There are also a lot of modules on
npm.</li>
</ul>
<p>Ben<br>
</p>
</body>
</html>