Details
-
Type: Improvement
-
Status: Open (View Workflow)
-
Priority: Major
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: 2.4.5
-
Component/s: Module installer
-
Labels:None
Description
This is based upon helping a novice user to install modules in Eloquent 2.4.3 and upon the shortcomings of Bible Desktop's installer (which does it entirely differently).
Improvements:
1) Better buttons - In using the installer, I found the buttons to be a bit confusing. The typical UI orders buttons based upon importance to user. I had expected to use the buttons from left-to-right.
Elsewhere, I've seen adaptive buttons, that have a triangle on them indicating sub-options. I think that would be useful here.
The first 5 buttons deal with managing one or more install sources.
Sync Install Sources - This goes and gets all the other know repositories. Upon clicking this I was surprised to find a bunch of install sources. I had expected it to get the list of modules. Instead, I got a bunch of install sources that are mostly of dubious value to anyone but a developer. bible.org and xiphos are the exceptions and av11n should be. Having seen the list, I was surprised that there were no modules in any of them.
Add Install Source - Allows a user to add an install source. Of no value without instruction.
Delete Install Source - Allows a user to delete an highlighted source. I found myself deleting all the install sources that didn't mean anything to me.
Edit Install Source - Allows a user to change an install source. Might be useful to rename, but dangerous if the user changes anything else without knowledge.
I don't have a problem with any of these 4 capabilities, but I think they should be buried.
Refresh Install Source - This should have been first. When I clicked it, I got an error message, indicating that I hadn't selected an install source. I only had one install source. The installer should have known that and refreshed it. Upon selecting an install source and clicking the button, the list was downloaded as expected, but I lost the selection. I had expected the entry to remain selected and the modules to be listed.
My thought regarding these: Combine them into a labelled combo button. The label would be "Install Source:" and the button would have a default label of Refresh.
The other button labels would be Edit, Delete, Add, More. Clicking on the triangle on the right of the button would reveal the other choices.
The Preview Task button can be replace with a filter on the list. Checking the box will only show the modules that have a pending action.
The Process Task button would remain as is.
Alternatively, put +, -, and gear at the bottom of the list. That'd match how most Mac programs are listed.
2) Better filtering/sorting
a) The language codes in the Language Filter should be replaced or augmented with their expansion. I like how Xiphos uses the national language equivalent of the code. So rather than German, one would see Deutsch. I have a list that we will be using for BibleDesktop, if you'd like it.
Also, change "All" to "All Languages", and drop the "Language Filter" label altogether. Let the user discover what it does by trying it. Put the dropdown above a column with the language. Make that column sortable, but consider putting the user's locale at the top (or bottom) depending on sort direction.
b) Remove the label: "Search Filter:" No where else on a Mac is it labelled.
Have the search filter do a deep dive into the content of the conf. Pull back a fragment of the conf and put it in the last column, highlighting the match.
c) Allow Task to be sortable. This would bring all the installed modules together. Consider sorting None to the bottom.
d) Rather than having each Install Source be a tree listing different types of modules and selecting one be a filter on the list, have a filter above the column.
If you go with this, then a further simplification is possible. Change the list to a Title if there is only one install source and a drop down otherwise. Put the drop down in the toolbar. Or add a filterable "Repository" column to the list.
e) Allow Locked to be sortable and Filterable by checkbox. Default to unlocked. I think most people will not want to see locked.
f) Add sorting and filtering to R and L Version but not in the obvious way. Sort on whether the module can be updated or not. I don't think most people care what the revision number is, but rather care whether there is a module that they can update. Consider having the ability to update all, perhaps with a checkbox in the task title. I think there are three groupings: Those that are not installed (L is null), installed and up-to-date (L=R), installed and out-of-date (L!=R). Also, I don't know what L and R mean. I'm guessing Left and Right or Remote and Local.
Consider combining L and R into the Status column, eliminating L and R. The status choices: Not Installed, Installed, Update Available. Maybe a tooltip when hovering over the column would give the version, e.g. "1.0.1" for the first two and "1.0.1 -> 1.1.2" for the last.
Possibility to simplify further. The task is highly dependent upon the current status. Typically, there is only one choice for each module:
Not Installed => Install
Installed => Delete
Update Available => Update or Delete
Maybe Task and Status can be merged. The popup would have the current state as the selected value, but the list would adaptively have the other one or two choices.
g) Secondary sorting appears to be fixed. Since the user can reorder columns, perhaps, the column order should dictate secondary ordering.
h) Allow the description to be sortable. It should ignore noise words (e.g. The) in doing the sorting.
3) Fit and finish
a) The description column is way to narrow.
b) I think the description is far more important to be last.
c) The description column does not resize when the window is made to be wider. The blank last column gets wider and none of the other columns resize. Consider getting rid of the blank last column. Perhaps resizing should proportionally affect those columns that have truncated data and not those that show full content.
d) I think it'd be good to add a column for Install Size. Some users have a slow connection and this might help them.
e) The title of the dialog is Progress. I find that odd. Perhaps Module Installer would be better.
4) Refresh
I think refresh should be automated in some fashion. Certainly when the user first opens the installer and confirms that they want to access the internet. Maybe on schedule, with a popup when updated modules are found or when another install source has been defined (or modified or deleted). Maybe when the window has been brought up and a refresh has not been done recently.
5) Display conf info, perhaps by double clicking and bringing up a dialog with the info.