Spyder has code cell support for evaluating a delimited block of code at a time:
```python #%% cell 1 print(1) # In[0]: (cell 2) print(2) ``` - Ctrl-Return -- Run cell - Shift-Return -- Run cell and advance $ conda install -y spyder You can export Jupyter notebooks to .py files with the second form of cell delimiters with: $ jupyter convert --to python ... https://github.com/quobit/awesome-python-in-education/blob/master/README.md#ides lists a bunch of IDEs, but not with such a useful table of structured criteria. (I'm partial to vim & python-mode; which aren't at all beginner friendly) On Tuesday, July 3, 2018, kirby urner <kirby.ur...@gmail.com> wrote: > > > On Tue, Jul 3, 2018 at 12:45 PM, Andre Roberge <andre.robe...@gmail.com> > wrote: > >> >> >> On Tue, Jul 3, 2018 at 3:59 PM kirby urner <kirby.ur...@gmail.com> wrote: >> >>> >>> I use Spyder in my adult beginner Python classes. I like the integrated >>> REPL (not just a window to Terminal) and the I-Python console. >>> >> >> >> Looking at some old emails, about 3 years ago I had concluded that >> Spyder would have been my first choice too, because of what you mentioned. >> I also liked the integrated help. However, I would not describe it as an >> editor (or IDE) whose primary purpose was for teaching, but rather designed >> with data scientists in mind. I think it might be a good choice for CS 101 >> students (to use the terminology I used previously) or for a motivated >> teacher who can be physically present to help students with it. >> >> > > Yes I agree that Spyder is not primarily for teaching. In making the job > of coding easier, I good IDE inevitably serves a teaching function. > > I teach Python in two ways: BYOD (students have their own computers) and > spin up a desktop in the cloud somewhere. > > The Anaconda distro suggests itself for BYOD because of its support of > grabbing additional packages as well as integrating lots of tools. > > In the spin up a desktop courses, I've used Eclipse (O'Reilly School) and > more recently Wing (ONLC). > > What I tell all my students is choice of IDE can be personal, a matter of > taste, and they my want to jump around. I mention a bunch of them and > demonstrate at least a couple near the start of my course, but then settle > into using one most of all. That's been Spyder for the last few years. > > I'm enjoying Atom these days. I'm planning on sharing it tonight in fact > (a 7th meetup of 10 for SAISOFT). > > What I like about Spyder is it's no cost and continues to improve. I like > being able to clear the REPL at any time, also to %reset (wipe memory). In > terms of students watching my screen in real time, I've become most > comfortable with Spyder, but who knows if this will change. > > I have the programming window and REPL side-by-side vertically. I've got > some Youtubes about it. E.g.: > > https://youtu.be/yK0LrfQFdQY > > (10 minute video about going from Codesters to Spyder, doesn't get to > Spyder until around 3:52). > > I do not think my content, style, choice of tools, is in any sense "best" > as circumstances and client needs vary, not to mention instructor > capabilities. > > > >> >>> Also, I'm a fan of the Anaconda distro of Python which makes it easy to >>> jump into Jupyter Notebooks, an introductory topic in my courses. >>> >> >> I also like Jupyter Notebooks, but I see them more as a tool for >> producing teaching (or research) material, than for a platform for students >> to learn Python. I consider the ability to save a program as a .py file >> something essential in an editor for students. >> > > Yes, many ways to slice through the material. I just finished a summer > camp in a computer lab where my primary objective was to walk them through > cloning a git repo on a mac (git already installed) and then experimenting > with Markdown in the Jupyter Notebooks they found therein. Add some > pictures from Flickr. Add a few links. > > I did draw their attention to the Python code cells and encouraged them to > experiment by making changes to existing code. One of the campers tried to > get a Wolfram Alpha API working through his Notebook however that required > dependencies we didn't have permission to install apparently. These > desktops were provided by the college hosting the summer camp (Reed in > Portland). I talked them into putting Anaconda on. > > FYI, the repo in question: > https://github.com/4dsolutions/MartianMath > > These were middle schoolers, about 15. I had an assistant instructor but > he was mostly involved with C6XTY projects (unplugged). > > >> >> The last time I wanted to do a major update to my Anaconda distro on >> Windows, I was shocked to learn that the recommended way was not going to >> work (I believe it was due to the way that Anaconda was stuffing too much >> stuff on the PATH environment variable which made it not possible to do an >> upgrade to include a newer Python version). I may have got the details >> wrong, but I do remember being severely disappointed by the way it worked - >> as I had gotten really fond of its super-battery included philosophy which >> made it so much easier to install some packages on Windows... >> >> > Anaconda is a moving target and the experience on Windows / Mac / Linux > varies some. Still, it's a viable alternative to the canonical Python.org > distro. > > Jupyter Notebooks represents a kind of "literate programming" (Knuth) > where what you're showing with code may indeed not so much be about > teaching the language itself. We're more surveying the contemporary > workplace, looking at tools that might already be used, or might be soon > introduced. > > In this summer school use case, we were looking at spatial geometry as a > primary topic, and were learning a cross-section of skills that would not > really characterize a contemporary computer science or computer programming > class, even through Anaconda was on every desktop. > > Most my Python teaching is more conventional in terms of content, not so > alien. With kids I've been using Codesters, which compiles Python to > Javascript in the browser (doesn't fit the bill regarding IDEs we've > mentioned). However must my work is with adults (I focus on andragogy more > than pedagogy). > > What I find useful as a teacher is to keep tackling related challenges at > which I'm definitely a beginner. For instance, I've been studying the > language Rust quite a bit (recent Pycons have mentioned it, plus I'm about > to go to OSCON). > > Kirby > > >> = = = >> >> Looking back at my old notes, I see that Ninja IDE (http://ninja-ide.org/) >> was also recommended by some people. >> >> I have much to think about ... >> >> André >> >> >> > >
_______________________________________________ Edu-sig mailing list Edu-sig@python.org https://mail.python.org/mailman/listinfo/edu-sig