GMOD / Apollo

Genome annotation editor with a Java Server backend and a Javascript client that runs in a web browser as a JBrowse plugin.
http://genomearchitect.readthedocs.io/
Other
128 stars 85 forks source link

UX issues from course using Apollo - Part A #866

Open hexylena opened 8 years ago

hexylena commented 8 years ago

Edit by @monicacecilia: @erasche created this issue on 2016-02-11. I split the issue to address separately. Additional issues are #868, #869, #871

Howdy y'all! We're running a course on apollo and so far it's going AWESOME. All 20 of our students are handling Apollo with ease (the PIs noticeably less so, but that's due to prior conditioning on Artemis.)

We've only hit a few, pretty minor UX/UI/other issues I'd like to record for the future.

UI/UX

monicacecilia commented 8 years ago

Dear @erasche Thanks for the feedback. I have split your report into separate GitHub issues - and edited the header to reflect the changes.

A quick question for context: Are all 20 students conducting searches and annotation edits at the same time in the same instance?


Regarding your comment on 'try [to] delete the CDS child of a feature': I don't understand what you are describing specifically. Could you please add a 'How to' detail, or a screenshot? The working concept is - as you of course already know: the CDS is the DNA sequence that is translated into amino acids from the Start codon to the codon immediately before the Stop signal. Do you mean to say you have been asking your students to delete only one exon from the transcript they are annotating and Apollo is not deleting it? If so... I know this is painful: please try a hard re-fresh before giving up. Otherwise: please send me the screenshots and 'how to' bits. Thank you.


Regarding your comment that 'Long organism lists are awful.'. Mine look pretty. :bowtie: list-organisms Alright, all jokes aside. How can we help? What are you having trouble with? The display of the characters?


This appears later on the page, but I think it is also related to 'try [to] delete the CDS child of a feature': I'll write up a PR for something like a reallyDeleteThis=True flag you could pass to the organism delete API to automate the deletion of child features, if it doesn't exist already. Would allow replacing the following message with a confirm/cancel checkbox:

I am most definitely opposed to making it 'easy' for an annotator to delete an organism with all the annotated gene models. So, if I am understanding correctly, I do not think we will agree to making this an options. But I am listening. The logic behind it is that no one other than the administrator should be allowed to remove an organism as well as potentially delete the work of the entire community :wink: Thus, this operation can be conducted in bulk when following info from our Web Services API pages. Do you have a case scenario where you actually want your users to have the possibility to remove an entire organism and all their annotations at once?


Regarding 'There was some confusion between the "Annotator View" and "Full screen view" but that may be a docs problem on our end. A tooltip might help':

May I kindly ask what was the confusion? Again, an example may help. Thank you!

hexylena commented 8 years ago

A quick question for context: Are all 20 students conducting searches and annotation edits at the same time in the same instance?

Same instance, different organisms. It's quite an adventure.

Regarding your comment on 'try [to] delete the CDS child of a feature': I don't understand what you are describing specifically. Could you please add a 'How to' detail, or a screenshot? The working concept is - as you of course already know: the CDS is the DNA sequence that is translated into amino acids from the Start codon to the codon immediately before the Stop signal. Do you mean to say you have been asking your students to delete only one exon from the transcript they are annotating and Apollo is not deleting it? If so... I know this is painful: please try a hard re-fresh before giving up. Otherwise: please send me the screenshots and 'how to' bits. Thank you.

(Again forgive my poor prokayotic ignorance of the rest of the world)

We're including Shine_Dalgarno_sequence type features as part of our gene model, there didn't seem to be consensus on how to handle those but it seems to work OK for us. Students tend to click on the gigantic blue boxes, and miss the underlying gene during deletion.

Doesn't allow deletion (via clicking on the dark blue, and it's 95% of the click target, especially at higher zoom levels)

selection_626

Does allow feature deletion (via clicking on the light blue)

selection_627

Regarding your comment that 'Long organism lists are awful.'. Mine look pretty. :bowtie:

I'd show you mine, but ... :laughing:

selection_628

We have 50 organisms in there now. Once I get my PI's pet issues solved, that number will jump to around 500 for us. I expect this to get more and more unweildy over time.

I am most definitely opposed to making it 'easy' for an annotator to delete an organism with all the annotated gene models. So, if I am understanding correctly, I do not think we will agree to making this an options. But I am listening. The logic behind it is that no one other than the administrator should be allowed to remove an organism as well as potentially delete the work of the entire community :wink: Thus, this operation can be conducted in bulk when following info from our Web Services API pages. Do you have a case scenario where you actually want your users to have the possibility to remove an entire organism and all their annotations at once?

Oh, no, definitely not the users, just for admins. I, as an admin, am sometimes bothered by having to remove all annotated features or use an API call to remove an organism. There's one especially tricky one where I accidentally annotated a pseudogene that isn't showing up in any API responses, and won't let me get rid of the stupid test organism.

Edit #865 looks like it's exactly what I need. My goodness @cmdcolin was prescient

Regarding 'There was some confusion between the "Annotator View" and "Full screen view" but that may be a docs problem on our end. A tooltip might help':

"Annotator View" contains the removable side panel we introduced in Apollo 2. "Full Screen View" sends the user to the 'old looking' JBrowse window. You know, curators grow attached to a certain way of looking at things and choose to resist change at times.

May I kindly ask what was the confusion? Again, an example may help. Thank you!

Oh sure, and I love that apollo supports both, it feels more like a new-user onboarding thing. My boss, in a desperate search to figure out how to show tracks (this was totally in my apollo intro docs, that someone didn't read) found their way onto that button and clicked it, thinking that's it might do something useful and was very confused by the result. You already have a tooltip on the button, I'm not really sure what else could be done. Just wanted to report that it was a (minor) source of confusion.

cmdcolin commented 8 years ago

This is partially due to how we're running the course (at the start, they each get an individualised chunk of DNA for gene calling practice, this leads to two dozen extraneous organisms in Apollo)

This is a problem we should handle with sandboxing (related to #228 and #229 for example)

If not can there be some way to click a feature and select the parent gene rather than a child element?

Double clicking will select entire gene model

Hit this repeatedly, no idea why: "Error reading from names store"

This can happen in two ways: 1) your apollo session expired (which is still an open bug to #493 and #714) 2) or, your actual name store is corrupted (in which case, jbrowse issue, and jbrowse config guide has some workarounds for it)

hexylena commented 8 years ago

This is a problem we should handle with sandboxing (related to #228 and #229 for example)

neat! We would really love to help with that. That's very much in line with how we want to run our phage genome resource.

Double clicking will select entire gene model

Oh, neato. That'll fix it, just a docs problem then.

or, your actual name store is corrupted (in which case, jbrowse issue, and jbrowse config guide has some workarounds for it)

pretty sure it's a jbrowse thing, I'll keep digging there.

cmdcolin commented 8 years ago

pretty sure it's a jbrowse thing, I'll keep digging there.

If it happens every time you open it that would be a good indicator that it's a jbrowse thing. It confuses me still what the real problem with jbrowse is, but sometimes adjusting the --hashBits argument for the generate-names.pl script fixes it (i.e. force --hashBits 16)

hexylena commented 8 years ago

generate-names.pl is being invoked automatiaclly, so very likely to be something there. I was tired of seeing console logs for missing root.json, then this happens instead. ah well haha.

cmdcolin commented 8 years ago

Cool, I would probably just set --hashBits 16 when it is automatically run then.

Also mentioned here http://gmod.org/wiki/JBrowse_Configuration_Guide#generate-names.pl

Again, unclear why problem happens, but if you get a sample dataset that triggers the error, then definitely also x-post to jbrowse issue list (don't have any good sample data for that issue currently)

hexylena commented 8 years ago

Oh, I have plenty! I'll see if I can track down the why as soon as the course is a little further along.

monicacecilia commented 8 years ago

ToDo: split this collection of suggestion into individual issues.