Closed szhu closed 8 years ago
Hi again,
this is a big improvement, thanks a lot. I know modals are annoying, but I don't expect this dialog to popup all that often, since at least the system Python should always be available on machines where the user decided to install SublimePythonIDE. If it is, in fact, not found, then something is seriously wrong, and a modal is ok I think. Still, adding an option to suppress the dialog is a good compromise.
Thanks again Julian
at least the system Python should always be available on machines where the user decided to install SublimePythonIDE… then something is seriously wrong
From my experience*, you're making too many assumptions about the user. This is okay when you're making a focused product as this one. But since there is not really a cost of making this modal less annoying, and there is a 0.5~1% chance that this modal will seriously annoy someone, I think it's a very good idea to include this option.
Note that my argument is that you should consider adding this option even without knowing in which kind of cases you'll need it, because you don't know all your users.
However, here is an example in case you are wondering: The user might use Sublime for multiple projects on their computer, with some being available through SublimePythonIDE and some not.
* I'm a computer science student who has worked with many other new students at my university with setting up their programming environment, etc (both officially and unofficially), and I can safely say that many students have environments that that set up "seriously wrong" by your standards. These are also students that would greatly benefit from a plugin like this.
Thanks for your merges + code review + this plugin btw!
I don't expect this dialog to popup all that often
Another thing: Sure, this is true for 99+% of users, but it's still probably a good idea to quickly show them how they can fix the problem as soon as possible, even if it's once per user.
Wow, I see you put a lot of thought into the software you work with. This means future contributions from your side are definitively welcome :-)
About the modal: I'm not a big fan either, and I'm open for changes. But I'm also not happy about just printing to the console, because the user will have to know to look there for error messages. I tried to automatically open the console when printing the error message, but that switches the typing focus to the console, which I also didn't like if it happens repeatedly. Finally, with this "console-only" version, there was no way to quickly hit a "stop bothering me" button, the console would just pop up every X seconds.
So, if you have any suggestions, I'm all ears :-)
P.s.: Maybe auto-opening the console exactly once per project (or view) might be another compromise (of course, including the option for permanent suppression you introduced). See: https://github.com/JulianEberius/SublimePythonIDE/tree/error_messages
But I'm also not happy about just printing to the console, because the user will have to know to look there for error messages.
This is why I didn't add an button to disable things permanently. Instead, the user has to go and manually change edit the setting. These kind of users are also the users who know to check the console.
Why I don't like the console popping up once per launch: In my experience, "exactly once" things seem like a good compromise until you see a user using it over and over again (or you become one of these user), you'll notice that they develop a reflex just for getting around the compromise.
Why I don't like the console popping up at all: 90+% of users I know don't know what the console is, and if it popped up, it would be confusing, hard to read (because there are other messages in here), and a lot of users don't know that those panels can be dismissed by pressing escape. Also they won't know how to make the console pop up again in the future.
Ok. So we leave the dialogue as shown in this pull request, i.e., just as it currently is in master, and I can send out a minor update to Package Control (1.0.3) in the new year.
Thanks for looking into this! Happy new year :fireworks:
Improve "Python not found dialog"
Rationale and changes: