Per a conversation on this document - Sorting the Find a Rubric dialog - it would be great if there was a Canvancement that would sort the find a question bank dialogue box. Right now when you go to add a question from a question bank the search box brings up all of the question banks from all of your courses. The question banks are in alphabetical order, but I would really like it if the questions were initially organized so the questions at the top were from the course you were working in. My user case is that yesterday I was adding questions from a question bank that was at the very end of the question bank list. Every time I went to add a question I had to scroll back and forth through all of my question banks from every course trying to find the right one.Yes, I eventually found it, but it was annoying and time consuming.
Is there anyone else that would find this useful? What sorting options would people like or find useful?
I wonder about the bookmarked banks. I still think I prefer for the course bank to be listed before other random banks that I've bookmarked.
I also wonder what happens with blueprint and associated courses when it comes to banks.
This is one of my pet peeves. Ideally, I would like see only the question banks from the current course I am working in with sorting options to view other courses question banks. Sorting options should include the ability to sort question banks by the courses then by active or concluded or by term.
Can't say how much I ❤️ panda this post!
At our institution, the nicknaming of course is locked down and there has been a few times where I've ended up with duplicated banks because I accidentally pulled in a bank from the same course, but a concluded term. I agree with snugent's suggestions.
Thanks for starting the thread. As promised, I have some questions (see below) and I will have others as the time progresses, but I'm hoping to knock this out quickly before I get sucked into other projects and never get the chance to finish it.
The image I had with the original comment didn't get transferred over, so here it is. We're talking about changing
Bookmarked Banks: I've had a chance to look at the data pulled in and it appears that there is no way to tell which Question Banks are bookmarked -- other than to load the list twice, once with the include_bookmarked=1 parameter and once without it and then make comparisons. But since Canvas is only pulling it in once, then I'm assuming that they are not doing anything with it either. In other words, I'm just going to ignore bookmark and not try to sort by them.
Terms: It sounds like pulling in the term names would be beneficial, similar to what was done with the Find a Rubric script. The question is where to stick that information? Adding the term to the list of information may take an extra line. Are people okay with losing one of the question banks (I currently have 5 showing) from the list on the left in order to have the term showing? Would you like it mixed in with the existing data (short name and # of questions) or on its own line?
Sorting vs Filtering: When I made the second image above, I filtered (style="display:none;") the courses that weren't in the current term. Kona said to sort them but leave them there because she occasionally needs something from another course. That is a simple interface without the need to add controls to the dialog. How often does your sorting or filtering changes need? In other words, if you configure it once for your personal preference, is it going to be usable when you need something else or do you need (won't use the script without it) the ability to perform sorting and filtering on the fly.
I'm questioning whether filtering is better, but leaning towards not, but I don't have a lot of question banks (only 43) in my list. I can easily forget the name of something and then I would have to change through every semester looking for the one.
By the way -- sorting is a lot easier to do than adding controls for filtering and it can be done faster (I don't have a lot of time to spend on this right now so it may be the difference between anything or nothing). However, if it's not going to be useful, then there's no point in writing it at all.
Location: Are the only places where this dialog box appears on the quiz / edit page? Does it appear under outcomes or in other locations?
Pagination: Canvas did not make any attempt to paginate or make additional calls, but I only have 43 quiz banks. Handling pagination is a much more involved process. Is there someone with a lot (more than 100) quiz banks that can edit a quiz except for clicking on the "Find a question" button, then go into the Developer Tools (normally F12), switch to the network tab, then click on the "Find a question" button and look at the AJAX call that is made. It will be to courses/123/question_banks?include_bookmarked=1&inherited=1 or something like that. I need to know if there is just one call like that or if there are several and I have to worry about pagination.
If it were an API call, there would definitely be pagination involved, but it's not, it's an internal, undocumented call.
Quizzes.Next: Anyone know how this would work with Quizzes.Next? Is the interface for finding a question the same? I'm not involved in testing for that and if they have improved it there, then there's not much point in fixing it now -- or maybe no point in spending a lot of time and energy to fix it now.
Magic happens in this community for sure! Here's my take on the topics:
I had first started bookmarking banks thinking they'd be someplace special for me when I went to the live courses based off a master shell. Newp. no such luck, I see all the banks I've created not just the bookmarked ones. So Bookmarking is not so useful for me now.
I don't mind losing a bank if it means I can know precisely which iteration of the course the bank comes from. I also work with teachers who are very active in their courses and change things from the master shell every term; these courses are constantly evolving and rotating teachers too. So it is a good thing to see which term the bank is from in order to retrieve a question teacher B remembers from 2 years ago being in the course.
I prefer sorting over filtering not just because it's faster/easier on the code but because I mostly work with master courses and it'd still like to see all the courses. As I start to create more of these question banks myself, I just want the course I'm in listed first. And then alphabetical, maybe.
I thought about it and by filtering do you mean a little magnifier-icon for search where I can type in partial name of the course? and then just those courses that match show up in the list? This question is for someone who has lots of banks to answer. I'm still 6 months from having even 50 banks.
The only place I've seen this dialog box appear is when I've clicked Find Questions.
I only have about 23 question banks. I've been stingy about creating banks prior to 3 months ago. heh
Great question about that new interface. I saw a test/preview months ago with sliders in question types or something. But it was a pre-made quiz so nothing where we could build out something ourselves. Since then, I've had to switch to other tasks and dropped my involvement.
I want to keep this on our list of things to consider. We haven't had blueprint courses activated in our subaccount (yet), but I'm curious what happens in the case of someone adding a question to an unlocked bank in an associated course. Hopefully nothing unusual happens, and the new question just stays in the current associated course. And I think here is why seeing which term the course/bank is from is handy in the situation where I've created the master course bank, the associated course bank, and last year's bank and everything starts to have similar names.
But truly, if you just do something simple that gives us the current course first as in the 2nd image you show, many of us will be eternally grateful! That time saving is also sanity saving when we have to pull in one last question that got forgotten in the quiz itself.
Cheers - Shar
One of my courses has a (publisher-supplied, badly-formatted) enormous pile of question banks (1243 of them). It only made one call to question_banks?include_bookmarked=1&inherited=1 . That call took forever by internet standards, and probably explains why that page is always so slow to load for me.
Here's a screenshot of all of the calls it made:
Thank you for checking this. @thompsli . So now we know pagination is not an issue.
The other question out there is whether or not people actually use bookmarks. Do those 1243 question banks show up in other courses or just the one where they were imported? If it's in all of your courses, then I am going to go out on the proverbial limb and guess that you did not go through and manually bookmark all 1243 of those and that part of the process somewhere is doing it for you.
Is the better solution to remove the bookmarks we don't want -- which would reduce the load time for you as well, or do we sort them to put the current ones first? By the way, the information that you need to know whether the question bank is from the current context or not is not already on the page, so I have to download it. That means that in your case, there would a 7.77 s load time for Canvas plus another one for my script. Mine might be a little faster, but Canvas doesn't do caching on most things, so maybe not. That means that it would take 7 seconds before anything would appear and then another 7 seconds later, it would sort them and move them. That's really bad accessibility / usability design. Removing the bookmarks could fix it for other courses, but if the 1243 question banks are in the current course then there may be nothing we can do.
And if you're working in the course with 1243 question banks then sorry -- I don't think even think sorting could help.
As far as I can tell, I do not have any bookmarks at all. When I go to a sandbox/test course with no course-level question banks, I see no question banks at all. I didn't even realize that bookmarking question banks was a thing until now because I've been avoiding anything involving the laggy question bank pages as much as possible.
All 1243 question banks are, indeed, from that one course. I have 6 courses from this publisher, and they have
Many of these question banks have names like "random block 559fbbb0a", which does not help matters, although there is also one named after each and every lesson in each year-long course.
Mostly, I just don't try to do anything involving creating or editing my own Canvas quizzes rather than using the provided ones in those 6 courses, because it is really difficult to deal with the question bank process. Most of the lessons come with quizzes already, so I only poke at that whole thing when I absolutely have to because it's really slow and hard to find the things you're looking for.
One of the things I'd like to eventually do is re-organize that mess into something more user-friendly (and go through and standards-align everything to Outcomes while I'm at it), but that would take a lot of my time and I'd have to do it again each time the publisher updated their quiz banks or otherwise changed their courses around. (Also, I was stalling until the new quiz engine rolled out since I definitely wouldn't want to have to re-do all of that due to a foreseeable Canvas change.)
I don't think I'll be using this script if it doubles my already-painful load times, but I am happy to keep providing data about the behavior of absurdly large question banks as needed.
This helps identify that it's not just the loading of the question banks that are causing them to get bookmarked; so thank you for doing the analysis.
You are not a person who would benefit from this script as it's currently shaping up. The good news -- if you want to call it that -- is that it wouldn't do anything to the actual order since all of the question banks are from the course and none are from the bookmarks. It would just waste 7 seconds of computer time without really doing anything else.
It's always important to clearly define the problem to make sure that your solution is answering the right question and your input is helping do that. Thanks again.