-
Notifications
You must be signed in to change notification settings - Fork 305
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modal dialog for ipykernel installs & better messages #5798
Comments
I still think it should reference the kernel though. And if it's too long, nobody will read it. |
Going to keep it very simple "IPykernel REQUIRED for this action" |
Yeah but that doesn't tell me where it's going, so I don't know if I want to answer that or not. If it's too simple then I'm more afraid. |
Isn't the assumption that users know what |
Does this matter, i would have thought they'd need to know that its tied to their current operation (running cell in notebook/interaciev window). I doubt if anyone looks at the kernel information (though thats very useful for diagnostic purposes) - because we fail to install in the right one. |
At least the kernel name is something they can see elsewhere. And ipykernel can be looked up on google to find out what it is. If we just say 'We need to install something - Yes or No' Who is going to say Yes? My first question is what are you installing and second, where? |
Agreed, tha'ts why my suggestion |
I do not think most users will know or really care too much what it is. The important message that needs to be given to users is "you are blocked if you do not install this". We can keep the name so if users are curious they can do research to see what it is. I do not think this is the location where we need to explain to users in depth what is happening and why, it will be too long and they will not read it. To @rchiodo 's point what we could do is have a learn more link lead to a doc in our github if people are so inclined to get details of what is being installed where. I believe most users would just click install when understanding this is required to continue. |
@claudiaregio what's the message then, is it what you mentioned earlier with |
@DonJayamanne do you have a screenshot of what it would look like with all caps (basically how easy is it for me to see a mockup real quick :D) |
That seems awfully loud to me. I was just clicking a button and you're yelling at me? |
how fancy can we get with these messages, can we underline? |
Personally I think this needs to be behind an experiment. You're making an assumption that people don't click the current install button because they miss it or they don't understand it. To truly suss that out we should probably have 4 different ways:
|
ideally we run one version against the one we have today which most people appear to "ignore", but if we have to a/b/n it we can do that too. I think I can narrow this down to one version to test |
Not sure we need an experiment for the modal dialog? I feel modal is mandatory, the question is whether the mesasge is meaningful enough and having an experiment seems wasteful to validate the text in a message. |
Yeah running against one may not be worth it... ok. Let's just use a message of: "IPykernel required for Python execution" @rchiodo no screaming ;) Options: |
You're assuming they're ignoring it because it's not visible. That's why we're switching to Modal. You're also assuming they're ignoring it because they don't understand it. And that a simpler message wouldn't be ignored. I'm countering saying both are unknown. My hypothesis is that people are ignoring the error because they don't want to actually run anything or they didn't realize that kernel was selected and they don't want to actually run with that kernel. This new message would make that worse as they still wouldn't know what kernel is selected but the message wouldn't tell them either. The experiment is to ensure we aren't making things worse. |
I don't think we need an experiment, yet. We are trying to find out whether users are simply not seeing the notification or whether they are just ignoring (by accident or on purpose). Putting the same message in a modal dialog box can certainly help answer the question as to whether they ignoring the message. To do so, we would just leave the message and operations the same, just make it modal. However, if you try and "get into the heads" of some of our pure Jupyter customers it seems highly likely that many, if not most, of them will have zero familiarity with ipykernel itself. If so, that definitely would affect how they respond to any such notification regardless of whether it's modal or not. "I'm trying to use a Jupyter notebook. What does this ipykernel thing have to do with that?" I don't think we need an experiment to check this hypothesis either. I don't think it hurts to make this message modal since the user is clearly trying to run a cell and simply will not be able to. Putting up a message to clearly indicate that they are blocked from what they are attempting to do seems completely reasonable. With all that said, I would propose that we go ahead with a modal solution but change the message to say:
"Learn More..." is a link or some "additional info" affordance to a page describing this problem. I assume we can have 4 buttons. "Choose different kernel" isn't technically necessary and I'm not even sure if it's appropriate based on our current kernel finding algorithm. But I think it could help new users find an appropriate kernel without relying on them to find how to change it themselves, thus improving first-time success. It can also provide telemetry to help us understand whether users HAVE appropriate kernels available, but aren't getting selected correctly. Note that if the user presses "Choose different kernel" then the kernel should be chosen and the run operation should be attempted automatically. If the new kernel still isn't good, then the same modal dialog would appear. |
I like this message, to me this is absolutely required |
For !M1 + other users: For M1 + others users: |
No learn more button? I'm not just going to install 'stuff' on my machine. |
For !M1 + other users: For M1 + others users: Adding details on what is being installed so users can look up what they are about to add to their machine without having to add a learn more button |
Validated |
When running a notebook without ipykernel the user will be presented with the same message today, but modal diaglog as follows:

Should probably change the message, doesn't seem to be descriptive enought. Feels way too technical.
Someone starting jupyter notebooks or not aware of ipykernel will just ignore this.
It should ideally be along the lines:
In order to run notebooks IPykernel needs to be installed, do you want to install ipykernel?
The text was updated successfully, but these errors were encountered: