Hi friend of Thunderbird,
Back in 2010 there was a discussion about how to restructure preferences
and AM, the thread started here[1].
Then in 2014 some dedicated volunteers started developing "AM in pref
tab" in [2] since the options were moved into a tab like in Firefox for
TB 38. Options in a tab were always hidden behind a pref and never
enabled until de-XBL forced us to move the options out of their
stand-alone window and into a tab.
I personally thought that moving the "AM into (some sort) of tab" was a
good idea and wanted that feature in TB 68. Strings were already
approved by the TB module owner and landed for TB 38. As soon as "AM in
pref tab" landed, everyone started to scream: The TB module owner who
surely must have had a look at the WIP back when he approved the
strings, BenB, one of the major stake holders in account creation, and
finally Alex, our new UX lead who is the only one who can't be blamed
since he came very late to the party.
Having a feature that no one wants on trunk 69 shortly after the branch
to 68 is an absolute maintenance nightmare since patches can only be
backported with manual and error-prone intervention. Therefore I backed
the entire lot out.
This is a fine example of how UX is done, or not done, in TB and how it
shouldn't be done unless one wants to waste large amounts of developer
time. Any development, and particularly UX development, should be done
in the way I learned when I was working in the software industry:
Jörg.
[1] https://mail.mozilla.org/pipermail/tb-planning/2010-December/000632.html
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=1096006
Hi Jörg,
Thank you so much for dealing with this issue and apologies for the
extra noise I added to the already crowded conversation.
I totally agree with you regarding the approach and the proper steps to
follow while changing/implementing something heavily tied to UX and UI.
This can only be a great learning experience for all of us, and
especially myself since I'm still probably the noob of the team :D
I think one good example of process is the new Account Creation
implementation, which started with low level UI prototypes, thorough
discussions, multiple iterations, and an in-depth review process where
many developers participated.
It also involves, I think, the developer himself not pushing for the
patch to land. The Account Creation still hasn't been merged, but I'm
not trying to force it in anyway because I realized that this is a big
change and it affects pretty much every single user. We need to be
careful and sometimes force ourselves to go slower than we want to.
Thank you again everyone for the great work and passionate involvement
in this issue, and all the other aspects of Thunderbird.
Let's keep building the best email client on the planet.
On 2019-06-24 2:00 p.m., Jörg Knobloch wrote:
Hi friend of Thunderbird,
Back in 2010 there was a discussion about how to restructure
preferences and AM, the thread started here[1].
Then in 2014 some dedicated volunteers started developing "AM in pref
tab" in [2] since the options were moved into a tab like in Firefox
for TB 38. Options in a tab were always hidden behind a pref and never
enabled until de-XBL forced us to move the options out of their
stand-alone window and into a tab.
I personally thought that moving the "AM into (some sort) of tab" was
a good idea and wanted that feature in TB 68. Strings were already
approved by the TB module owner and landed for TB 38. As soon as "AM
in pref tab" landed, everyone started to scream: The TB module owner
who surely must have had a look at the WIP back when he approved the
strings, BenB, one of the major stake holders in account creation, and
finally Alex, our new UX lead who is the only one who can't be blamed
since he came very late to the party.
Having a feature that no one wants on trunk 69 shortly after the
branch to 68 is an absolute maintenance nightmare since patches can
only be backported with manual and error-prone intervention. Therefore
I backed the entire lot out.
This is a fine example of how UX is done, or not done, in TB and how
it shouldn't be done unless one wants to waste large amounts of
developer time. Any development, and particularly UX development,
should be done in the way I learned when I was working in the software
industry:
Jörg.
[1]
https://mail.mozilla.org/pipermail/tb-planning/2010-December/000632.html
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=1096006
Maildev mailing list
Maildev@lists.thunderbird.net
http://lists.thunderbird.net/mailman/listinfo/maildev_lists.thunderbird.net
--
Alessandro Castellani
Lead UX Architect
Thunderbird
On 24/06/2019 23:12, Alessandro Castellani wrote:
It also involves, I think, the developer himself not pushing for the
patch to land. The Account Creation still hasn't been merged, but I'm
not trying to force it in anyway because I realized that this is a big
change and it affects pretty much every single user. We need to be
careful and sometimes force ourselves to go slower than we want to.
Well, you could integrate it into the new "AM in its own tab", like
suggested here:
https://bug1468167.bmoattachments.org/attachment.cgi?id=8985554
While we're at it, we can de-XUL the whole thing.
Jörg.
Hey Jörg,
thanks for bringing this up.
Code:
Jörg Knobloch wrote on 24.06.19 23:00:
Having a feature that no one wants on trunk 69 shortly after the branch to 68 is an absolute maintenance nightmare since patches can only be backported with manual and error-prone intervention. Therefore I backed the entire lot out.
Ah, that explains why you backed it out. That makes sense. Thanks for explaining it.
FWIW, I think the work of aceman was a step in the right direction. I always found the split between TB global prefs and per-account prefs arbitrary, implementation specific (where you find a pref just depends on whether we allowed to change it per-account or not, and the decision is semi-random for each pref) and confusing.
We should put them at least in the same dialog and in the exactly same UI structure, so if somebody doesn't find the pref in the per-account prefs, he can look in the global prefs easily, and vise versa, without bending his brain and adapting to a different UI, and without opening a completely different dialog.
I think the code from aceman was a very good start. I was surprised how easy it was to re-structure it and put the accounts list on the left. This speaks to the good work of the original patch of aceman. I think later work could build on aceman's patch in Bug 1560344.
Method:
UX development, should be done in the way I learned when I was working in the software industry:
- You analyse the problem and come up with a bunch of requirement the new thing needs to fulfil.
- You design the new thing and write a detailed spec.
- You get agreement on what is to be implemented.
- You implement against that spec.
- You unit test against that spec.
- There is sign-off against the requirements you collected.
Yes, agree.
Our bad methods came from the fact that we did not have a proper professional UX designer, so each developer was just doing what he felt was right. Now that we have Aleca, we can go back to a proper method of Design first, Implement later.
However, we have to pay attention not to design by committee. We developers have to agree that Aleca has the final word. We can give arguments, and Aleca would be well-advised to at least consider them, because developers often add a certain point of view. But most developers are horrible UX designers, and we should respect the role of Aleca to make the decision.
Account manager UX:
So, to add my 2 cents to the discussion, here is what I see as requirements for the UI:
In other words, for an end user:
Jörg Knobloch wrote on 24.06.19 23:58:
While we're at it, we can de-XUL the whole thing.
If you can avoid to do this at the same time, avoid it. The more you put
in a single patch, the more bugs you get, the longer the development
takes, and higher the risk of regressions that are hard to isolate
(because it's all in the same patch).
https://en.wikipedia.org/wiki/Scope_creep
See also my post about "Atomic commits".
On 25/06/2019 14:13, Ben Bucksch wrote:
We should put them at least in the same dialog and in the exactly same
UI structure, so if somebody doesn't find the pref in the per-account
prefs, he can look in the global prefs easily, and vise versa, without
bending his brain and adapting to a different UI, and without opening
a completely different dialog.
I think the code from aceman was a very good start. ...
Well, both Magnus and Alex opted for "AM in its own tab", not
integrated with the other prefs.
While Aceman, Richard and others worked very hard on making "AM in tab"
work, the solution which was landed didn't have backing from neither
Magnus nor Alex and it was unclear how long it would ride the trains
into TB 69 beta or TB 70 beta just to be ripped out later again.
In the future, we need to carefully plan UI/UX changes and get broad
agreement before implementing or landing anything. Even "a very good
start" has not place in the product unless there is agreement and a
plan (and timeline) how to develop it further. In absence of all of
this, the logical step was to revert the changes.
Jörg.
Jörg Knobloch wrote on 25.06.19 16:06:
it was unclear how long it would ride the trains
You explained why you backed out, and I understand. Given that it's not ripe for TB 68 and a large change, I think that was technically a good decision to back out until TB 68 ships, to make backports easier. It's not a reflection on the merits of the patch itself.
we need to carefully plan UI/UX changes and get broad agreement before implementing or landing anything.
Plan yes. That UX plan has to be make by Aleca. With input from others, but he makes the plan. That's his role.
You cannot design UI by committee. Our communication forums (bugzilla, mailing lists) are developer- and power user-heavy, and they tend to be nerdy and geeky and consequently very bad UX designers. We need to avoid that power reflex. Attention: That applies to reviewers and module owners, too: A good supervisor knows to listen to others. If we listen to developers in UX questions, we'll end up with a UI that only power users understand. So: hands off!
So, the final decision needs to be made by Aleca. Sure, with input from others like aceman and Richard and you and me, but eventually, Aleca makes the call and should not be pressured by any developers to any particular solution.
Ben
On 24/06/2019 23:00, Jörg Knobloch wrote:
Then in 2014 some dedicated volunteers started developing "AM in pref
tab" in [2] since the options were moved into a tab like in Firefox
for TB 38.
Just for a laugh:
https://support.postbox-inc.com/hc/article_attachments/360010625114/delete-account_2x.png
Accounts in the options, like we had it. Also check the images attached
to https://bugzilla.mozilla.org/show_bug.cgi?id=286664.
On Tue, Jun 25, 2019 at 11:35 PM Jörg Knobloch jorgk@jorgk.com wrote:
On 24/06/2019 23:00, Jörg Knobloch wrote:
Then in 2014 some dedicated volunteers started developing "AM in pref
tab" in [2] since the options were moved into a tab like in Firefox
for TB 38.
Just for a laugh:
https://support.postbox-inc.com/hc/article_attachments/360010625114/delete-account_2x.png
Accounts in the options, like we had it. Also check the images attached
to https://bugzilla.mozilla.org/show_bug.cgi?id=286664.
Well, at least Postbox got the position of the selector better. After
General would be a good place, if you want to make the Account
Settings more prominent. At least it's not after Advanced, which
should always be the last, catch all, selector, in my opinion.
The screenshots also point to a few extra challenges that need to be
considered. What to do with Identities and what to do with Outgoing
server (SMTP) settings. Identities can be added to an account by the
user and are always directly coupled to that account, but there can be
multiple identities. Outgoing servers are created when you create an
account, but you can switch those between accounts and add/remove them
separately…
Onno
Regarding the SMTP servers: I understand that we have the separate
section for it to reduce redundant information but I think it is worth
considering removing that and defining incoming and outgoing servers per
account. It simplifies the UI a lot. I always found that strange. For
example after deleting an account, the SMTP servers remained and piled
up over the years.
And I actually like how Postbox did the options window. I wish we would
go the same path.
John
Am 26.06.2019 um 08:30 schrieb Onno Ekker:
On Tue, Jun 25, 2019 at 11:35 PM Jörg Knobloch jorgk@jorgk.com wrote:
On 24/06/2019 23:00, Jörg Knobloch wrote:
Then in 2014 some dedicated volunteers started developing "AM in pref
tab" in [2] since the options were moved into a tab like in Firefox
for TB 38.
Just for a laugh:
https://support.postbox-inc.com/hc/article_attachments/360010625114/delete-account_2x.png
Accounts in the options, like we had it. Also check the images attached
to https://bugzilla.mozilla.org/show_bug.cgi?id=286664.
Well, at least Postbox got the position of the selector better. After
General would be a good place, if you want to make the Account
Settings more prominent. At least it's not after Advanced, which
should always be the last, catch all, selector, in my opinion.
The screenshots also point to a few extra challenges that need to be
considered. What to do with Identities and what to do with Outgoing
server (SMTP) settings. Identities can be added to an account by the
user and are always directly coupled to that account, but there can be
multiple identities. Outgoing servers are created when you create an
account, but you can switch those between accounts and add/remove them
separately…
Onno
Maildev mailing list
Maildev@lists.thunderbird.net
http://lists.thunderbird.net/mailman/listinfo/maildev_lists.thunderbird.net