Hi Gonzalo,
My answers are below
El 27/01/15 a las 17:10, Gonzalo Peña-Castellanos escribió:
Hi again users and devs :)
Now looks is not everything and I wanted to also talk a bit a bit about
what defaults should we have on Spyder when starting fresh, some
widgets and also plugins
*The template*
The template is what every noob will see the first time they start
Spyder,
why not make the best we can to have the best but minimal template?
* Include a def main ():
* Include the boilerplate (if __name__ == "__main__": main())
* Include the basic scientific imports with their standard aliases
o (numpy as np, scipy as sp, matplotlib.pyplot as plt...
o shebang (# /usr/bin/env python)
I don't agree with most of these changes:
1. There is no need to define a main function to run a file, at least
not inside Spyder.
2. if __name__ == "__main__" is a Python idiom that would surely confuse
beginners. Besides, I've used it very few times in my years using Python :-)
3. We can't include scientific import's by default because Spyder is
used to do several other things. Besides, if you're developing you own
library or something like that, you wouldn't like all your new files to
be filled with a lot of unnecessary imports :-)
4. We could add a shebang in Posix systems, I'm fine with that one :-)
*PEP8 *
I think we should enforce the use of pep8 right from the start. Some
people
first experience with Python is through Spyder, why not enforce pep8 right
from the beginning when people are more easily persuaded?
Pep8 reports a lot of "trivial" things (like spaces between +) that
(again) can confuse beginners. I mean, I taught a Python class using
Spyder a couple of years ago, and my students always noticed and tried
to fix *all* reported errors.
So being annoyed by missing spaces, number of spaces between functions
and classes, etc, etc, seems like too much for people that are just
starting with the language (and probably won't touch it again :-)
Also on this line, why not make 'remove trailing spaces' also a default
We could think about this one. But then we would need to improve how we
handle automatic indentation.
*Object inspector*
The automatic connections seem like a great idea why not make at least
the editor
a default?
It was the default before 2.3 but I decided to make it optional because
it's very annoying to constantly see "dancing things" next to the Editor
when you are focused trying to solve a problem.
Ideally, users don't want to see documentation for *all* objects they
are using, just for the ones they need to. That's why I think it's
better to just offer Ctrl+I, and the option to activate the automatic
connection if people want it.
*
*
*Online Help*
I hate this plugin, it looks horrible, I would argue that it needs to
go to the trash!
Yes, I'll remove it for 2.4 :-)
*Plugins*
The idea of plugins needs to be tackled ASAP. Of course the backbone
for this is already there
but we need to give the next step.
* Autodiscovery of plugins
* Make developing plugins inside Spyder simple providing templates
in the file explorer
* Provide through projects something similar (create a new Project
would give the option to make a spyder plugin)
* I think in the view menu we need to have Panes (Standard in
Spyder), and Plugins (3rd party plugins)
* I think plugins should be *pip* installable or/and, *conda*
installable (with the conda plugin)
* Once plugins are installable, profiler, pylint and conda packages
should go to their own repos
I agree with all these changes. I'll work on most of them for 2.4.
*Anaconda*
This might be a touchy subject for some, but I will go ahead anyway.
Before conda and the anaconda distribution the chances of getting
people in my institute to switch
to a Python based stack were pretty low. After anaconda, that has
dramatically changed and I expect a full
conversion (from matlab and delphi... yuck!) by the end of 2015 :)
I know there is winpython and python xy, and etc etc, but perhaps we
should enforce the use of anaconda
with a bit more enthusiasm.
The advantages are clear to me:
* Stable installation cross platform
* The use of conda environments allows for a compact and stable use
and reuse (sharing) of science :)
* A broad array of ready to use scientific packages
* The ability to use the conda package manager plugin inside Spyder
to install ALL of Spyder plugins
* The ability to have dedicated Spyder and Binstar
(https://binstar.org/dashboard) channels
o Provide dedicated experiences for different disciplines
o Have a metapackage to install all the basic optional
dependencies on spyder on one click
o Have a metapackage to install all the basic optional plugins
on spyder on one click
What are your thoughts on these issues I raise?
It's true that Anaconda is the future for Scientific Python. I agree
with having a Binstar channel and to improve the Spyder/Anaconda
integration when Spyder is ran from Anaconda.
But my feeling is that we should remain vendor neutral as much as we
can. We must respect how people wants to install and use Spyder. There
are a lot of ways to do that and all of them are valid and possible.
Cheers,
Carlos
Please comment and remember to follow/subscribe/like/request
membership to the new
Spyder communication channels
*Be Social*
* Twitter <https://twitter.com/spyder_ide>, Facebook
<https://www.facebook.com/SpyderIDE>, Google+ Page
<https://plus.google.com/u/0/b/107193318474220481102/107193318474220481102>
* Google+ Community
<https://plus.google.com/u/0/b/107193318474220481102/communities/112932801653352854842>
* Youtube channel
<https://www.youtube.com/channel/UCK0uCG7DVzKUAhaw8veitkw>
--
You received this message because you are subscribed to the Google
Groups "spyder" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
To post to this group, send email to [email protected]
<mailto:[email protected]>.
Visit this group at http://groups.google.com/group/spyderlib.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups
"spyder" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/spyderlib.
For more options, visit https://groups.google.com/d/optout.