Barney, terrific! Thanks for this other great example with mailpile.js.
Quite likely, between RoundCube, mailpile.js, and various other systems
around, there could be various overlaps and synergies that could benefit
the whole web mail (and more) ecosystem. Still, it's in the nature of
writing complex software applications that differing assumptions get
made that may make it hard to integrate components from one into the
other. It generally takes 3X to 10X the effort to make a reusable
component than to make a locally-usable one. And often you just can't
see the essentially generality to design a reusable component well until
you have three examples from substantially different contexts.
On the underlying GUI choice issue, I've been round and round that many
times in my own thinking. It's one of the reasons I stuck with Java and
Swing for so long (especially with Swing being very a11y accessible
overall). It's good to have such choices, even as they can cause
confusion and some dillution of effort.
Still, especially in a Mozilla context, and when wanting to support a
diversity of users including mobile with the least effort, DOM is a
reasonable choice (even as I agree with what you are saying about legacy
issues). As I suggest in that Thunderbird Server proposal, if Mozilla
would get strongly support such a complex webapp, we might see further
innovation in Firefox to address performance issue or other problem
areas in order to make a server-based version of Thunderbird work well.
That would help everyone, including by Mozilla then pushing to make such
features into standards across the web.
Certainly in such a case we probably would see a lot of innovation and
increased support for Mithril. :-)
--Paul Fernhout
http://www.pdfernhout.net/
====
The biggest challenge of the 21st century is the irony of technologies
of abundance in the hands of those still thinking in terms of scarcity.
On 12/11/15 4:01 AM, Barney Carroll wrote:
> This is a really interesting proposal and I'm sure there would be a lot
> of fun to be had in implementing it, but as Kyle suggests I think it may
> not prove to be the most pragmatic approach to delivering a modern
> replacement for Thunderbird.
>
> Have you heard of
mailpile.is <
http://mailpile.is>? Their goal was to
> provide an open source and user-controlled mail server and interface
> that accounts for the usability patterns championed by Gmail.
>
> On a tangent, it bears noting that — as wonderful as Mithril's view
> language is — native apps are not bound to the DOM, and the maxim that
> "universal Javascript is the future" doesn't necessarily entail that the
> DOM is the best option for expressing user interfaces once we divest
> ourselves of the requirement for running our applications in a web browser.
>
> Of course, the advantage of the DOM is that pretty much any personal
> computer OS has a browser, so DOM is a good candidate for a
> standardised, well documented and universal UI language. On the other
> hand, it suffers from its original purpose as a language for reflecting
> HTTP-aware documents and a mandate to retain backwards compatibility
> (and all the bloat — design mistakes, API cruft, and the preformance
> overhead that entails). Gnome (and KDE) on the other hand aren't
> shackled by these outside context requirements and legacies and have
> evolved over the last 20 years exclusively to provide decent APIs for
> application GUI.
>
> This post on writing native apps with Javascript + GTK might be of
> interest:
>
https://www.webreflection.co.uk/blog/2015/12/08/writing-native-apps-with-javascript
>
> On Friday, 11 December 2015, Paul D. Fernhout
> <
pdfer...@kurtz-fernhout.com <mailto:
pdfer...@kurtz-fernhout.com>>
>
barney....@gmail.com <mailto:
barney....@gmail.com>
>
+44 7429 177278
>
>
barneycarroll.com <
http://barneycarroll.com>