From carrieanne at raspberrypi.org Mon Sep 21 14:36:04 2015 From: carrieanne at raspberrypi.org (Carrie Anne Philbin) Date: Mon, 21 Sep 2015 13:36:04 +0100 Subject: [Pythonedu-wg] Welcome to the PSF Education Working Group Message-ID: Hello, Thank you for joining the mailing list for the PSF Education Working Group . Python in education is a topic close to many of our hearts and this working group has been formed to make things happen in a number of ways: - We're a meeting point for people who want to make practical contributions to Python in education. - We identify and coordinate projects that deliver specific and measurable results that support our aims. - We support and facilitate such projects so they have the best chance of meeting their goals. In particular we will be focusing on: - Education friendly editor (IDLE) - An educational Python bundle available across platforms - Lessons and resources - A way to communicate, coordinate, and facilitate the educational events that are happening around the world. I?ll be sending out emails to start discussion on the first two topics shortly. Please do ensure that you take a look at the working group charter here so that in the not too distant future, we can start a discussion around governance. We need to elect a chair and co-chair to provide reports to the PSF board. I?m happy to fill this role in the interim period. Finally a polite reminder that this is a group for making things happen. Long off-topic discussions will be bumped, in some cases to the education sig where they can continue. Many thanks, Carrie Anne Philbin -------------- next part -------------- An HTML attachment was scrubbed... URL: From carrieanne at raspberrypi.org Mon Sep 21 15:15:00 2015 From: carrieanne at raspberrypi.org (Carrie Anne Philbin) Date: Mon, 21 Sep 2015 14:15:00 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor Message-ID: Hi, I would like to initiate work on building an education friendly python editor to potentially replace IDLE and be part of an education bundle available across multiple platforms (including relatively low-specced systems such as the Raspberry Pi) through this work group. To kick off, here?s a list of possible requirements. Please feel free to comment and add to them: *Absolutely must have*: - Both windows open within one application (the shell window and text editor window). - Simple buttons to run code - A way to change font sizes easily - Syntax highlighting *Highly desired*: - Error reporting that highlights lines and gives a good level of feedback to the user. - REPL - Projects Since my talk around the development of a new text editor at Euro Python in July and Pycon Australia in August, community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), and others have begun work on an open source project called Puppy . Here is a video of Puppy but I believe that more has been added and/or removed since it was filmed. I think this project could be what we are looking for and we would welcome the thoughts of the wg. Thanks, Carrie Anne -------------- next part -------------- An HTML attachment was scrubbed... URL: From phil at riverbankcomputing.com Mon Sep 21 15:39:36 2015 From: phil at riverbankcomputing.com (Phil Thompson) Date: Mon, 21 Sep 2015 14:39:36 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: <71EC00B2-4DB2-4CF8-B2DB-B44CA187853B@riverbankcomputing.com> On 21 Sep 2015, at 2:15 pm, Carrie Anne Philbin wrote: > > Hi, > > I would like to initiate work on building an education friendly python editor to potentially replace IDLE and be part of an education bundle available across multiple platforms (including relatively low-specced systems such as the Raspberry Pi) through this work group. > > To kick off, here?s a list of possible requirements. Please feel free to comment and add to them: > > Absolutely must have: > - Both windows open within one application (the shell window and text editor window). > - Simple buttons to run code > - A way to change font sizes easily > - Syntax highlighting > > Highly desired: > - Error reporting that highlights lines and gives a good level of feedback to the user. > - REPL > - Projects > > Since my talk around the development of a new text editor at Euro Python in July and Pycon Australia in August, community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), and others have begun work on an open source project called Puppy. Here is a video of Puppy but I believe that more has been added and/or removed since it was filmed. I think this project could be what we are looking for and we would welcome the thoughts of the wg. An alternative approach to building up something new is to break down something that already exists, specifically eric6... http://eric-ide.python-projects.org ...which is a long standing, open source, Python IDE developed using the same technology as Puppy. Eric does far, far too much for what you need (it probably does far, far too much full stop). The development needed would be to hide the superfluous functionality - maybe implementing a set of profiles appropriate to different levels of programming expertise. Phil From asb at asbradbury.org Mon Sep 21 15:57:27 2015 From: asb at asbradbury.org (Alex Bradbury) Date: Mon, 21 Sep 2015 14:57:27 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: On 21 September 2015 at 14:15, Carrie Anne Philbin wrote: > - Error reporting that highlights lines and gives a good level of feedback > to the user. Just to expand on this one a little, I think there's a lot of potential for providing more user-friendly error messages. Khan Academy's online JS environment goes to at least some effort in this direction (https://www.khanacademy.org/computer-programming/new/pjs). e.g. it will look at the Levenshtein edit distance to suggest variable or method names you might have meant. There's also room for printing something more direct and easier to understand for simple cases like forgetting to close a string. This kind of thing is definitely a nice feature for this IDE, but a tool that takes in Python error messages and spits out beautiful easy to understand descriptions of what you might have done wrong could potentially be a separate project/library. Alex From bobirv at gmail.com Mon Sep 21 16:11:04 2015 From: bobirv at gmail.com (Bob Irving) Date: Mon, 21 Sep 2015 10:11:04 -0400 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: This is really exciting! I'm a teacher in the US, just starting this year with Python in different iterations (MinecraftPi, Pygame). I'm not a developer so making the editor is beyond me. But I definitely have some thoughts on what would and wouldn't work for the students I'm teaching (ages 13-15). Bob Irving Porter-Gaud School Charleston, SC USA On Mon, Sep 21, 2015 at 9:15 AM, Carrie Anne Philbin < carrieanne at raspberrypi.org> wrote: > Hi, > > > I would like to initiate work on building an education friendly python > editor to potentially replace IDLE and be part of an education bundle > available across multiple platforms (including relatively low-specced > systems such as the Raspberry Pi) through this work group. > > > To kick off, here?s a list of possible requirements. Please feel free to > comment and add to them: > > > *Absolutely must have*: > > - Both windows open within one application (the shell window and text > editor window). > > - Simple buttons to run code > > - A way to change font sizes easily > > - Syntax highlighting > > > *Highly desired*: > > - Error reporting that highlights lines and gives a good level of feedback > to the user. > > - REPL > > - Projects > > Since my talk around the development of a new text editor at Euro Python > in July and Pycon Australia in August, > community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), > and others have begun work on an open source project called Puppy > . Here is a video > of Puppy but I believe that > more has been added and/or removed since it was filmed. I think this > project could be what we are looking for and we would welcome the thoughts > of the wg. > > Thanks, > > Carrie Anne > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg > > -- Twitter: @birv2 www.bob-irving.com http://www.scoop.it/t/on-the-digital-frontier -------------- next part -------------- An HTML attachment was scrubbed... URL: From sfloyd at office.ldcsb.on.ca Mon Sep 21 16:50:03 2015 From: sfloyd at office.ldcsb.on.ca (Floyd, Steven) Date: Mon, 21 Sep 2015 14:50:03 +0000 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: , Message-ID: Puppy looks very cool. Simple, clean. One click startup would be good too, instead of opening of a shell then clicking New File...Both windows should load right away. Add the user-friendly error messages mentioned by Alex Bradbury and I think it would be fantastic and useful for young learn Potential problems: -who is the editor for, will it be all things for all people? Should we identify a target group (age 8-14, beginner programmers, perhaps?) Cool project. Glad to be on this list. Steve ________________________________ From: Pythonedu-wg on behalf of Bob Irving Sent: September 21, 2015 10:11 AM To: Carrie Anne Philbin Cc: pythonedu-wg at python.org Subject: Re: [Pythonedu-wg] A new, kid-friendly Python editor This is really exciting! I'm a teacher in the US, just starting this year with Python in different iterations (MinecraftPi, Pygame). I'm not a developer so making the editor is beyond me. But I definitely have some thoughts on what would and wouldn't work for the students I'm teaching (ages 13-15). Bob Irving Porter-Gaud School Charleston, SC USA On Mon, Sep 21, 2015 at 9:15 AM, Carrie Anne Philbin > wrote: Hi, I would like to initiate work on building an education friendly python editor to potentially replace IDLE and be part of an education bundle available across multiple platforms (including relatively low-specced systems such as the Raspberry Pi) through this work group. To kick off, here's a list of possible requirements. Please feel free to comment and add to them: Absolutely must have: - Both windows open within one application (the shell window and text editor window). - Simple buttons to run code - A way to change font sizes easily - Syntax highlighting Highly desired: - Error reporting that highlights lines and gives a good level of feedback to the user. - REPL - Projects Since my talk around the development of a new text editor at Euro Python in July and Pycon Australia in August, community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), and others have begun work on an open source project called Puppy. Here is a video of Puppy but I believe that more has been added and/or removed since it was filmed. I think this project could be what we are looking for and we would welcome the thoughts of the wg. Thanks, Carrie Anne _______________________________________________ Pythonedu-wg mailing list Pythonedu-wg at python.org https://mail.python.org/mailman/listinfo/pythonedu-wg -- Twitter: @birv2 www.bob-irving.com http://www.scoop.it/t/on-the-digital-frontier ? IMPORTANT NOTICE: This e-mail message is intended to be received only by persons entitled to receive the confidential information and any attachments it may contain. E-mail messages from LDCSB may contain information that is confidential and legally privileged. Any unauthorized review, use, disclosure or distribution is prohibited. Please do not read, copy, forward, or store this message unless you are an intended recipient of it. The sender does not accept any responsibility for any loss, disruption or damage to your data or computer, mobile, information systems that may occur while using data contained in, or transmitted with, this email. If you have received this message in error, please contact the sender by reply email and destroy all copies of the original message from your computers, any mobile devices, and information systems. -------------- next part -------------- An HTML attachment was scrubbed... URL: From carrieanne at raspberrypi.org Mon Sep 21 19:24:04 2015 From: carrieanne at raspberrypi.org (Carrie Anne Philbin) Date: Mon, 21 Sep 2015 18:24:04 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: I don't think we should assign age to this project. I think learners at whatever age have problems with accessing IDEs. CA. On Mon, Sep 21, 2015 at 3:50 PM, Floyd, Steven wrote: > Puppy looks very cool. > Simple, clean. > One click startup would be good too, instead of opening of a shell then > clicking New File...Both windows should load right away. > > Add the user-friendly error messages mentioned by Alex Bradbury and I > think it would be fantastic and useful for young learn > Potential problems: > -who is the editor for, will it be all things for all people? Should we > identify a target group (age 8-14, beginner programmers, perhaps?) > > Cool project. > Glad to be on this list. > > Steve > > > ------------------------------ > *From:* Pythonedu-wg office.ldcsb.on.ca at python.org> on behalf of Bob Irving > *Sent:* September 21, 2015 10:11 AM > *To:* Carrie Anne Philbin > *Cc:* pythonedu-wg at python.org > *Subject:* Re: [Pythonedu-wg] A new, kid-friendly Python editor > > This is really exciting! > > I'm a teacher in the US, just starting this year with Python in different > iterations (MinecraftPi, Pygame). I'm not a developer so making the editor > is beyond me. But I definitely have some thoughts on what would and > wouldn't work for the students I'm teaching (ages 13-15). > > Bob Irving > Porter-Gaud School > Charleston, SC > USA > > On Mon, Sep 21, 2015 at 9:15 AM, Carrie Anne Philbin < > carrieanne at raspberrypi.org> wrote: > >> Hi, >> >> >> I would like to initiate work on building an education friendly python >> editor to potentially replace IDLE and be part of an education bundle >> available across multiple platforms (including relatively low-specced >> systems such as the Raspberry Pi) through this work group. >> >> >> To kick off, here?s a list of possible requirements. Please feel free to >> comment and add to them: >> >> >> *Absolutely must have*: >> >> - Both windows open within one application (the shell window and text >> editor window). >> >> - Simple buttons to run code >> >> - A way to change font sizes easily >> >> - Syntax highlighting >> >> >> *Highly desired*: >> >> - Error reporting that highlights lines and gives a good level of >> feedback to the user. >> >> - REPL >> >> - Projects >> >> Since my talk around the development of a new text editor at Euro Python >> in July and Pycon Australia in August, >> community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), >> and others have begun work on an open source project called Puppy >> . Here is a video >> of Puppy but I believe >> that more has been added and/or removed since it was filmed. I think this >> project could be what we are looking for and we would welcome the thoughts >> of the wg. >> >> Thanks, >> >> Carrie Anne >> >> _______________________________________________ >> Pythonedu-wg mailing list >> Pythonedu-wg at python.org >> https://mail.python.org/mailman/listinfo/pythonedu-wg >> >> > > > -- > Twitter: @birv2 > www.bob-irving.com > http://www.scoop.it/t/on-the-digital-frontier > > ? > IMPORTANT NOTICE: This e-mail message is intended to be received only by > persons entitled to receive the confidential information and any > attachments it may contain. E-mail messages from LDCSB may contain > information that is confidential and legally privileged. Any unauthorized > review, use, disclosure or distribution is prohibited. Please do not read, > copy, forward, or store this message unless you are an intended recipient > of it. The sender does not accept any responsibility for any loss, > disruption or damage to your data or computer, mobile, information systems > that may occur while using data contained in, or transmitted with, this > email. If you have received this message in error, please contact the > sender by reply email and destroy all copies of the original message from > your computers, any mobile devices, and information systems. > -- Education Pioneer Raspberry Pi Foundation UK Charity No. 1129409 -------------- next part -------------- An HTML attachment was scrubbed... URL: From al at inventwithpython.com Mon Sep 21 19:40:57 2015 From: al at inventwithpython.com (Al Sweigart) Date: Mon, 21 Sep 2015 10:40:57 -0700 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: Mark Roseman (author of Modern Tkinter for Busy Python Developers) has been doing a lot of changes to the IDLE code base along the lines of the "IDLE Reimagined" project. His email to the idle-dev list this morning: As I?ve been working on IDLE improvements, I?ve been keeping a running snapshot of my current version here: https://github.com/roseman/idle As of now, this includes: - tabbed shell/editor windows - incorporate ttk into various places when available - new redesigned ttk-based, modeless preferences/options window - new redesigned, modeless about window - new modeless rich-text 'idle help' window - redesigned 'ask' modal dialogs (e.g. go to line, open module, etc.) - cosmetic tweaks to editor window, status bar, etc. - fix positioning of several yes/no/cancel etc. type of dialogs - fix windows not showing text found via dialogs until dialogs closed - fix calltips not working on mac - fix debugger and editor context menus not working on mac One note, in order to be able to run this code, I had to do a "git clone" and then rename the main "idle" folder to "idlelib" and then change directory in a terminal to the parent folder, then run "python -m idlelib". I temporarily changed the line in PyShell.py "shell_title = "Python " + python_version() + " Shell"" to something else just so I could be sure I was running Mark's code instead of the IDLE in the standard library. -Al On Mon, Sep 21, 2015 at 10:24 AM, Carrie Anne Philbin < carrieanne at raspberrypi.org> wrote: > I don't think we should assign age to this project. I think learners at > whatever age have problems with accessing IDEs. > > CA. > > On Mon, Sep 21, 2015 at 3:50 PM, Floyd, Steven > wrote: > >> Puppy looks very cool. >> Simple, clean. >> One click startup would be good too, instead of opening of a shell then >> clicking New File...Both windows should load right away. >> >> Add the user-friendly error messages mentioned by Alex Bradbury and I >> think it would be fantastic and useful for young learn >> Potential problems: >> -who is the editor for, will it be all things for all people? Should we >> identify a target group (age 8-14, beginner programmers, perhaps?) >> >> Cool project. >> Glad to be on this list. >> >> Steve >> >> >> ------------------------------ >> *From:* Pythonedu-wg > office.ldcsb.on.ca at python.org> on behalf of Bob Irving >> *Sent:* September 21, 2015 10:11 AM >> *To:* Carrie Anne Philbin >> *Cc:* pythonedu-wg at python.org >> *Subject:* Re: [Pythonedu-wg] A new, kid-friendly Python editor >> >> This is really exciting! >> >> I'm a teacher in the US, just starting this year with Python in different >> iterations (MinecraftPi, Pygame). I'm not a developer so making the editor >> is beyond me. But I definitely have some thoughts on what would and >> wouldn't work for the students I'm teaching (ages 13-15). >> >> Bob Irving >> Porter-Gaud School >> Charleston, SC >> USA >> >> On Mon, Sep 21, 2015 at 9:15 AM, Carrie Anne Philbin < >> carrieanne at raspberrypi.org> wrote: >> >>> Hi, >>> >>> >>> I would like to initiate work on building an education friendly python >>> editor to potentially replace IDLE and be part of an education bundle >>> available across multiple platforms (including relatively low-specced >>> systems such as the Raspberry Pi) through this work group. >>> >>> >>> To kick off, here?s a list of possible requirements. Please feel free to >>> comment and add to them: >>> >>> >>> *Absolutely must have*: >>> >>> - Both windows open within one application (the shell window and text >>> editor window). >>> >>> - Simple buttons to run code >>> >>> - A way to change font sizes easily >>> >>> - Syntax highlighting >>> >>> >>> *Highly desired*: >>> >>> - Error reporting that highlights lines and gives a good level of >>> feedback to the user. >>> >>> - REPL >>> >>> - Projects >>> >>> Since my talk around the development of a new text editor at Euro Python >>> in July and Pycon Australia in August, >>> community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), >>> and others have begun work on an open source project called Puppy >>> . Here is a video >>> of Puppy but I believe >>> that more has been added and/or removed since it was filmed. I think this >>> project could be what we are looking for and we would welcome the thoughts >>> of the wg. >>> >>> Thanks, >>> >>> Carrie Anne >>> >>> _______________________________________________ >>> Pythonedu-wg mailing list >>> Pythonedu-wg at python.org >>> https://mail.python.org/mailman/listinfo/pythonedu-wg >>> >>> >> >> >> -- >> Twitter: @birv2 >> www.bob-irving.com >> http://www.scoop.it/t/on-the-digital-frontier >> >> ? >> IMPORTANT NOTICE: This e-mail message is intended to be received only by >> persons entitled to receive the confidential information and any >> attachments it may contain. E-mail messages from LDCSB may contain >> information that is confidential and legally privileged. Any unauthorized >> review, use, disclosure or distribution is prohibited. Please do not read, >> copy, forward, or store this message unless you are an intended recipient >> of it. The sender does not accept any responsibility for any loss, >> disruption or damage to your data or computer, mobile, information systems >> that may occur while using data contained in, or transmitted with, this >> email. If you have received this message in error, please contact the >> sender by reply email and destroy all copies of the original message from >> your computers, any mobile devices, and information systems. >> > > > > -- > Education Pioneer > Raspberry Pi Foundation > > UK Charity No. 1129409 > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From asb at asbradbury.org Mon Sep 21 20:11:56 2015 From: asb at asbradbury.org (Alex Bradbury) Date: Mon, 21 Sep 2015 19:11:56 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: On 21 September 2015 at 18:40, Al Sweigart wrote: > Mark Roseman (author of Modern Tkinter for Busy Python Developers) has been > doing a lot of changes to the IDLE code base along the lines of the "IDLE > Reimagined" project. His email to the idle-dev list this morning: Idlex is another interesting codebase that contains a whole bunch of IDLE improvements (mostly usability) http://idlex.sourceforge.net/features.html Alex From ntoll at ntoll.org Mon Sep 21 20:55:47 2015 From: ntoll at ntoll.org (Nicholas H.Tollervey) Date: Mon, 21 Sep 2015 19:55:47 +0100 Subject: [Pythonedu-wg] Welcome to the PSF Education Working Group In-Reply-To: References: Message-ID: <560052B3.1090000@ntoll.org> Hi Carrie Anne, ;-) I'm very excited by all of this - please see my comments in-line below. On 21/09/15 13:36, Carrie Anne Philbin wrote: > Hello, > > Thank you for joining the mailing list for the PSF Education Working > Group . > > > Python in education is a topic close to many of our hearts and this > working group has been formed to make things happen in a number of ways: > > * > > We're a meeting point for people who want to make practical > contributions to Python in education. > I like the emphasis on *practical* rather than discussion (I guess that's the realm of the EduSIG). Can you confirm the implication that this space if for the organisation of tangible projects, efforts and events that relate to Python in education..? > * > > We identify and coordinate projects that deliver specific and > measurable results that support our aims. > How is this identification going to work? When you say measurable, what precisely do you mean? (I'm guessing that the projects themselves have some stated outcomes that are expressed in such a way that they can be shown to have been met.) > * > > We support and facilitate such projects so they have the best chance > of meeting their goals. > +100000000000000000000000000000000000 > > In particular we will be focusing on: > > > * > > Education friendly editor (IDLE) > See Dan Pope's "Puppy" editor. ;-) > * > > An educational Python bundle available across platforms > > * > > Lessons and resources > > * > > A way to communicate, coordinate, and facilitate the educational > events that are happening around the world. > All good stuff! > > I?ll be sending out emails to start discussion on the first two topics > shortly. Please do ensure that you take a look at the working group > charter here so that in > the not too distant future, we can start a discussion around governance. > We need to elect a chair and co-chair to provide reports to the PSF > board. I?m happy to fill this role in the interim period. > Superstar! > > Finally a polite reminder that this is a group for making things happen. > Long off-topic discussions will be bumped, in some cases to the > education sig where they can continue. > Great stuff! Many thanks Carrie Anne for making this happen. N. > > Many thanks, > > > Carrie Anne Philbin > > > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg > -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 473 bytes Desc: OpenPGP digital signature URL: From chris at codingclub.co.uk Mon Sep 21 22:09:43 2015 From: chris at codingclub.co.uk (Chris Roffey) Date: Mon, 21 Sep 2015 21:09:43 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: <382B4E6B-D608-4401-867A-2E93DF37D898@codingclub.co.uk> Hi All Fantastic that this group has started up! I again, am not a developer but I hope I can contribute to the human speak error-messages module and I would add to this a child friendly documentation section. I am afraid that I am not convinced that Puppy is heading in the right direction though. Has anyone asked kids what they want - perhaps at the recent UK Pycon? It might be that I am simply out of synch with the group (if so I will just back out politely and wish you all good luck) but I do not see there being a very large group of students around the world that want a really paired down editor with big icons: I don?t think there are many 8 year olds that actually could or should be learning Python. 10 and 11 year olds are already used to more sophisticated interfaces than Puppy and rather than a paired down minimalistic interface are they not more likely to want a clear, interface with facilities that help them with the difficulties of moving to their first text based language? So, for example, clear error messages has to be a top priority. Thinking student first though, we would realise that font size buttons are for the teacher not the students, therefore this facility should be included and made easy for teachers to implement but probably in a View menu and with sensible shortcut keys. My students would want help with the indent problem, therefore I would add easily accessed indent, dedent and reformat (for pasted code) buttons and insist that there are only 4 spaces allowed, no choice. Personally I would prefer a simplified frame system which also gets rid of the long line of code problem; getting rid of this problem means that students can be encouraged to use meaningful variable names with out worrying about code clutter. They would also like help with avoiding syntax errors in the first place rather than having them pointed out at run time. There are many other things I know my students would like to see (and that I would like to see for them) but, just out of interest, their number one priority would be a deploy/share menu so that they can share applications they make with their friends and relatives on any platform without having to ask them to install Python first. Probably the hardest thing to implement! I am very aware that we have been asked to do stuff rather than discuss - I am just concerned that people will end up working hard on producing something no one uses. I know it would take longer to produce and would require funding, but I would like to see a more ambitious IDE developed. Really sorry if I have offended anyone. (I know some people have already put in a lot of work.) I think my problem comes down to this: Is this group going to be focussed on producing only what can be done by a group of enthusiastic but time-limited enthusiasts or is it able to, within a year say, create something that is as professionally produced for students as the many commercial tools available to developers? Best wishes to everyone. Chris > On 21 Sep 2015, at 14:57, Alex Bradbury wrote: > > On 21 September 2015 at 14:15, Carrie Anne Philbin > wrote: >> - Error reporting that highlights lines and gives a good level of feedback >> to the user. > > Just to expand on this one a little, I think there's a lot of > potential for providing more user-friendly error messages. Khan > Academy's online JS environment goes to at least some effort in this > direction (https://www.khanacademy.org/computer-programming/new/pjs). > e.g. it will look at the Levenshtein edit distance to suggest variable > or method names you might have meant. There's also room for printing > something more direct and easier to understand for simple cases like > forgetting to close a string. > > This kind of thing is definitely a nice feature for this IDE, but a > tool that takes in Python error messages and spits out beautiful easy > to understand descriptions of what you might have done wrong could > potentially be a separate project/library. > > Alex > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg -------------- next part -------------- An HTML attachment was scrubbed... URL: From russel at winder.org.uk Tue Sep 22 10:13:03 2015 From: russel at winder.org.uk (Russel Winder) Date: Tue, 22 Sep 2015 09:13:03 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: <1442909583.8776.25.camel@winder.org.uk> Carrie Anne, Some comments derived from Python workshops for adults, which is clearly not the 8?16 age group, but I suspect these may be general, or maybe not. On Mon, 2015-09-21 at 14:15 +0100, Carrie Anne Philbin wrote: > Hi, > > > I would like to initiate work on building an education friendly > python > editor to potentially replace IDLE and be part of an education bundle > available across multiple platforms (including relatively low-specced > systems such as the Raspberry Pi) through this work group. Is there to be a document somewhere collecting together people's likes and dislikes of IDLE? Just having email is very "event sourcing" I do not like IDLE myself, but I find many people using it simply because it is there. I do tend to try and get people to download and install Wing IDE 101 if at all possible. The Qt base for Wing IDE 101 makes it a far better looking thing than the Tk based IDLE. The two have the same editor/REPL set up, but Wing IDE 101 has a green "run the current editor", which his amazingly useful compared to the IDLE F5 mechanism. I still find many people confusing REPL and command line. I avoid te use of the term "shell" beacause although everyone from Bash/Zsh/Sh/cmd.exe land know what a shell is, the Python distribution insists on calling the REPL a Python Shell, which really causes chaos. One huge difficulty with IDLE/Wing IDE 101/PyCharm/Eclipse+PyDev/? is that doing command line things is hard. So for a single environment I need editor+REPL+shell. Do we know what is different about a mini-IDE for younger folk, from a mini-IDE for older folk? Is there such a difference? > > To kick off, here?s a list of possible requirements. Please feel free > to > comment and add to them: > > > *Absolutely must have*: > > - Both windows open within one application (the shell window and text > editor window). What is meant by shell? Does this mean REPL or command line? > - Simple buttons to run code Definitely. Wing IDE 101 vs IDLE shows this is a "must". > - A way to change font sizes easily I find this crucial for presenting, is it needed for using? PyCharm and Emacs have Control+mouse wheel which works well. Eclipse doesn't support this so I do not use it. > - Syntax highlighting Yes and no. I agree syntax highlighting can be helpful, but as soon as you get into ability to change styling you can end up with some grotesque and indeed hideous rendering. Some people are even advocating a return to monochrome. I generally try and get a mellow look to avoid stark contrasts. > > *Highly desired*: > > - Error reporting that highlights lines and gives a good level of > feedback > to the user. This is going to require Python stack analysis, creating an API for editor manipulation and integrating with syntax highlighting. Emacs (and I guess VIM) as well as PyCharm, etc. already do this sort of thing. Should the new system be build on a strip down Emacs as a base? > - REPL You said shell above so does this mean you really mean a command line shell above? I think all three are a "must". > - Projects > > Since my talk around the development of a new text editor at Euro > Python > in July and Pycon Australia in August, > community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel > Pope), and > others have begun work on an open source project called Puppy > . Here is a video > of Puppy but I believe > that > more has been added and/or removed since it was filmed. I think this > project could be what we are looking for and we would welcome the > thoughts > of the wg. I will take a look at this? -- Russel. ============================================================================= Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder at ekiga.net 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel at winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 181 bytes Desc: This is a digitally signed message part URL: From asb at asbradbury.org Tue Sep 22 10:36:52 2015 From: asb at asbradbury.org (Alex Bradbury) Date: Tue, 22 Sep 2015 09:36:52 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: On 21 September 2015 at 14:57, Alex Bradbury wrote: > On 21 September 2015 at 14:15, Carrie Anne Philbin > wrote: >> - Error reporting that highlights lines and gives a good level of feedback >> to the user. > > Just to expand on this one a little, I think there's a lot of > potential for providing more user-friendly error messages. Khan > Academy's online JS environment goes to at least some effort in this > direction (https://www.khanacademy.org/computer-programming/new/pjs). > e.g. it will look at the Levenshtein edit distance to suggest variable > or method names you might have meant. There's also room for printing > something more direct and easier to understand for simple cases like > forgetting to close a string. > > This kind of thing is definitely a nice feature for this IDE, but a > tool that takes in Python error messages and spits out beautiful easy > to understand descriptions of what you might have done wrong could > potentially be a separate project/library. I cam across https://github.com/SylvainDe/DidYouMean-Python which covers a number of common cases. Alex From chris at codingclub.co.uk Tue Sep 22 11:17:34 2015 From: chris at codingclub.co.uk (Chris Roffey) Date: Tue, 22 Sep 2015 10:17:34 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: <0B81AF0E-55E1-4958-BFD3-35676B341C32@codingclub.co.uk> An example of how to implement this cleanly and in a way that is familiar to students who use word-processors, can be seen here: http://www.greenfoot.org/frames/ (search for ?Doesn't typing variable names reintroduce possible errors? to jump to the correct section.) - Chris > On 22 Sep 2015, at 09:36, Alex Bradbury wrote: > > On 21 September 2015 at 14:57, Alex Bradbury wrote: >> On 21 September 2015 at 14:15, Carrie Anne Philbin >> wrote: >>> - Error reporting that highlights lines and gives a good level of feedback >>> to the user. >> >> Just to expand on this one a little, I think there's a lot of >> potential for providing more user-friendly error messages. Khan >> Academy's online JS environment goes to at least some effort in this >> direction (https://www.khanacademy.org/computer-programming/new/pjs). >> e.g. it will look at the Levenshtein edit distance to suggest variable >> or method names you might have meant. There's also room for printing >> something more direct and easier to understand for simple cases like >> forgetting to close a string. >> >> This kind of thing is definitely a nice feature for this IDE, but a >> tool that takes in Python error messages and spits out beautiful easy >> to understand descriptions of what you might have done wrong could >> potentially be a separate project/library. > > I cam across https://github.com/SylvainDe/DidYouMean-Python which > covers a number of common cases. > > Alex > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg -------------- next part -------------- An HTML attachment was scrubbed... URL: From stewart at penguintutor.com Tue Sep 22 11:30:31 2015 From: stewart at penguintutor.com (stewart at penguintutor.com) Date: Tue, 22 Sep 2015 10:30:31 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor - big buttons / other features Message-ID: Here are my thoughts ? I?ve trimmed some of the quotes to reduce the size of the email (although it?s still very long). >> ?I am afraid that I am not convinced that Puppy is heading in the >> right direction though. Has anyone asked kids what they want - perhaps >> at the recent UK Pycon? It might be that I am simply out of synch with >> the group (if so I will just back out politely and wish you all good >> luck) but I do not see there being a very large group of students >> around the world that want a really paired down editor with big icons: >> I don?t think there are many 8 year olds that actually could or should >> be learning Python. 10 and 11 year olds are already used to more >> sophisticated interfaces than Puppy? I think it?s difficult to ask someone that is just starting in programming what they need and they honestly don?t know. They wouldn?t be able to tell you what features they would like as they don?t know enough about what they will do. It is however possible to see when children are getting confused around the current interface and that provides a basis that can reduce the barriers to entering programming. The current interface of IDLE is confusing and does get in the way of them learning programming. It?s not just the children that struggle with this either, the parents do too. I spent a few minutes explaining the different windows to one parent at Pycon UK on Saturday who was unable to help their child as they were confused. Regarding the size of the buttons, I don?t think the buttons need to be particularly big, but what is needed is to limit the number of buttons and make it easy for them to know which button does what. For example there should be just one button for RUN and not have to know it?s Run Module rather than Run Shell. >> ?Thinking student first though, we would realise that font size >> buttons are for the teacher not the students, therefore this facility >> should be included and made easy for teachers to implement but >> probably in a View menu and with sensible shortcut keys.? Font size is useful for several people. Clearly it makes it easier for the teacher when projecting on a screen, but it?s also useful for children with a visual impairment, or just to make it easier when pair programming. Being able to shrink the size is good when you start writing longer programs as it allows one to easily see the rest of the code to remember the variable name etc. >> ?My students would want help with the indent problem, therefore I >> would add easily accessed indent, dedent and reformat (for pasted >> code) buttons and insist that there are only 4 spaces allowed, no >> choice. Personally I would prefer a simplified frame system which also >> gets rid of the long line of code problem; getting rid of this problem >> means that students can be encouraged to use meaningful variable names >> with out worrying about code clutter. They would also like help with >> avoiding syntax errors in the first place rather than having them >> pointed out at run time.? Indent is certainly one of the things that trips young (and old) programmers up, so a good consistent indent system is needed. I personally think spaces is better and would agree with that. Being able to select a chunk of code and move it to the next indent is very useful especially when copying and pasting sample code. >> ?There are many other things I know my students would like to see (and >> that I would like to see for them) but, just out of interest, their >> number one priority would be a deploy/share menu so that they can >> share applications they make with their friends and relatives on any >> platform without having to ask them to install Python first. Probably >> the hardest thing to implement!? A good point, but potentially a conflict with Python itself. One of the benefits of an interpreted language is that the code is portable and compiling to a binary would go against that. It may make it easier to run on Windows, but then stops it working on other systems. Or you end up bundling the Python interpreter with the code which turns into a huge wasteful package. Perhaps if there was a python-lite that was just a python installer that installs Python from the web that would be a compromise, but personally I?d prefer a README file with a link to https://www.python.org/downloads/ I do think that compiling to micro:bit /codebug is a little different as that is coding for a very specific platform which has to be compiled and obviously that fits in with the educational aim. >> ?I would like to see a more ambitious IDE developed.? I would also like to see a more ambitious IDE for Python, but I don?t think that would meet the aims of this list which is focussed on making it easier for those new to programming. Something that goes beyond what IDLE does but not as complex as Eclipse would be great for those looking to progress upwards from the kids editor, and useful for professional programmers, but beyond the scope of this group. >> ?Really sorry if I have offended anyone. (I know some people have >> already put in a lot of work.)? I?ve not been involved in the development work, but I don?t think your email should have offended anyone. I do think you raise some good points, I think there are many that would prefer a more advanced editor. Personally I think that the current suggestions are good and have a realistic chance of being implemented within a reasonable time. >> ?I think my problem comes down to this: Is this group going to be >> focussed on producing only what can be done by a group of enthusiastic >> but time-limited enthusiasts or is it able to, within a year say, >> create something that is as professionally produced for students as >> the many commercial tools available to developers?? I don?t think it?s about commercial funding vs volunteer effort. There are a huge number of open source projects that have never had any commercial funding, but are every bit as professional as commercial software. Many of the tools I use for development are based upon open source non-commercial software. -- Stewart Watkiss @stewartwatkiss @penguintutor http://www.penguintutor.com From stewart at penguintutor.com Tue Sep 22 11:53:29 2015 From: stewart at penguintutor.com (stewart at penguintutor.com) Date: Tue, 22 Sep 2015 10:53:29 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor - help page Message-ID: > *Absolutely must have*: > - Both windows open within one application (the shell window and text > editor window). > - Simple buttons to run code > - A way to change font sizes easily > - Syntax highlighting > *Highly desired*: > - Error reporting that highlights lines and gives a good level of > feedback to the user. > - REPL > - Projects I'd also add some kind of integrated help page & language reference. This would be particularly useful when running on the Raspberry Pi as when I've seen Raspberry Pis used in schools they have often been off the school network. I like the 3 pane view used in Sonic Pi, although for Python I think the command line should be more prominent and use the width of the editor. So I think it should be Top Left (most of screen) editor, bottom left (width of editor) command line / messages, right hand side help. Context sensative help (hover / tooltips) would be good too, but I think that would be a nice to have rather than essential. -- Stewart Watkiss @stewartwatkiss @penguintutor http://www.penguintutor.com From mark.smith at practicalpoetry.co.uk Tue Sep 22 12:58:20 2015 From: mark.smith at practicalpoetry.co.uk (Mark Smith) Date: Tue, 22 Sep 2015 11:58:20 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor - help page In-Reply-To: References: Message-ID: +1 for some sort of offline docs solution. I was playing on a disconnected Raspberry Pi at the weekend (at PyConUK - hi everyone!) and struggled without Python docs. If anyone on the Mac is used to Dash, it has been ported to Python as https://zealdocs.org/ - a cut down version of this built in to the editor would be AMAZING. On 22 September 2015 at 10:53, wrote: >> *Absolutely must have*: > > >> - Both windows open within one application (the shell window and text >> editor window). >> - Simple buttons to run code >> - A way to change font sizes easily >> - Syntax highlighting > > >> *Highly desired*: > > >> - Error reporting that highlights lines and gives a good level of >> feedback to the user. >> - REPL >> - Projects > > > I'd also add some kind of integrated help page & language reference. > This would be particularly useful when running on the Raspberry Pi as when > I've seen Raspberry Pis used in schools they have often been off the school > network. > > I like the 3 pane view used in Sonic Pi, although for Python I think the > command line should be more prominent and use the width of the editor. So I > think it should be Top Left (most of screen) editor, bottom left (width of > editor) command line / messages, right hand side help. > > Context sensative help (hover / tooltips) would be good too, but I think > that would be a nice to have rather than essential. > > -- > Stewart Watkiss > @stewartwatkiss @penguintutor > http://www.penguintutor.com > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg From ash at ashguy.com Tue Sep 22 13:07:08 2015 From: ash at ashguy.com (Ash Guy) Date: Tue, 22 Sep 2015 21:07:08 +1000 Subject: [Pythonedu-wg] A new, kid-friendly Python editor - help page In-Reply-To: References: Message-ID: Yullo folks.? The 2c of a humble (*chuckle*) UX guy / code teacher / enterprise python user here. What we?re not trying to do is create another power IDE for everyone to use. There are millions of these you can contribute to out there already if you want to do that. Its actually one of the most refreshing things about this project, the very specific target outcome? to take a user who doesn?t know how to write a line of code and empower them (in whatever learning environment they?re operating in) to understand and internalise the patterns of Python software development in the most efficient and enjoyable way possible. We want people to become great coders so they can write great software and we want them to have fun doing it.? I?m of the opinion that writing a big IDE that will be used for writing giant software systems is entirely counter to that goal. With this in mind then, what are the problems that this tool is?trying to solve? Starting with these allows the identification of places where?they have been solved in the past and then you start to innovate from there. It might be worth starting a Trello or something for this (many of you have a much more academic understanding of these issues than I do which would be great for fleshing it out), but some key ones that I can think of are: - Indentation - Reflecting the transformation of variables throughout execution - Assisting the user to identify, (and only then debug) simple syntax errors (without doing it for them) - Scoping / Encapsulation - Common language patterns (Looping / Conditionals) I dunno, what else? Someone at PyconAU had a list of these if I remember correctly. Point I?m trying to get at is THAT is where this should start and testing against those goals should be how features get included or excluded.? Some other thoughts: - Why not stick to single file apps only (at least to begin with)? That is to say, there is a direct mapping in the users mind between the .py file, and the program?they are running. They will then start to think of the script as the app, which resolves the issue with compiling binaries. Opening the app for the first time/without a file for context could just guide the user to create a .py file somewhere on their filesystem and double click it / drag it in. - When I was first learning to code C++ (my first language, and one I have never returned to since I arrived at the web) what I really wanted to do was create something that output something. Users need to be able to do some cool stuff pretty quickly. - Can there be?some way to manage pip deps in a visual way? It?d be cool for each script / app to spawn its own venv magically in the background and then you could explore the PyPI as if it was an app store? how empowering would that be! - I?ve never got the idea of this ?Spaces are better, as long as they behave like tabs? concept. While this is not the place for a deep and meaningful argument around whats better in the wild, I?d suggest this one be solved scientifically. What is going to be easier for the user when just starting out (in light of the above)? Does someone impartial want to run this discussion as a subproject?? - I would always prefer to assist the user than to tell the user what to do. Let them explore and make mistakes, and then hint at how they can be corrected. That means forgetting the drop-downs and autocompletes? these are for lazy power users like me. I want my students to type ever damn character of the software they?re writing, so they can understand how they got to where they are ;). - It would probably be super powerful to come up with some kind of slick visual representation for objects and variables that?could ?show the application growing and changing during its run? maybe even an interactive ?app diagram? (can you imagine little blocks popping into life as you step through your application creating variables etc!). I for one know I represent my collections of objects visually in my head. Could be a great tool for visual learners. - While I don?t like frame-style programming as a replacement for text style programming (as was suggested by someone in one of the emails today) there are some great visual queues (and I?m sure many other ideas) in there that?could be used. I suppose the focus needs to be that?the coder should come out the other side able to write code. No shortcuts on that front! - I really like the idea of having including dictionary?s in there. If the user types a keyword in correctly they can highlight it or triple pinky tap or whatever the gesture is for it these days to get a popup that explains said keyword in detail. This could even be an activity ? to have the user guess what they think should be next, and see if it actually in the language. - Can this?just use Python 3 and be done with it? Backwards compatibility is for sissys (and in all seriousness probably doesn?t solve any of the problems the tool is trying to solve). Thats me for now. I shall continue watching the emails. Cheers. Ash. ---? Ash Guy. Serial Entrepreneur, Tech Junkie,?Creative Thinker. E:?ash at ashguy.com On 22 September 2015 at 7:53:33 pm, stewart at penguintutor.com (stewart at penguintutor.com) wrote: > *Absolutely must have*: > - Both windows open within one application (the shell window and text > editor window). > - Simple buttons to run code > - A way to change font sizes easily > - Syntax highlighting > *Highly desired*: > - Error reporting that highlights lines and gives a good level of > feedback to the user. > - REPL > - Projects I'd also add some kind of integrated help page & language reference. This would be particularly useful when running on the Raspberry Pi as when I've seen Raspberry Pis used in schools they have often been off the school network. I like the 3 pane view used in Sonic Pi, although for Python I think the command line should be more prominent and use the width of the editor. So I think it should be Top Left (most of screen) editor, bottom left (width of editor) command line / messages, right hand side help. Context sensative help (hover / tooltips) would be good too, but I think that would be a nice to have rather than essential. -- Stewart Watkiss @stewartwatkiss @penguintutor http://www.penguintutor.com _______________________________________________ Pythonedu-wg mailing list Pythonedu-wg at python.org https://mail.python.org/mailman/listinfo/pythonedu-wg -------------- next part -------------- An HTML attachment was scrubbed... URL: From me at the-compiler.org Tue Sep 22 13:18:41 2015 From: me at the-compiler.org (Florian Bruhin) Date: Tue, 22 Sep 2015 13:18:41 +0200 Subject: [Pythonedu-wg] A new, kid-friendly Python editor - help page In-Reply-To: References: Message-ID: <20150922111841.GB30194@tonks> * Ash Guy [2015-09-22 21:07:08 +1000]: > - I?ve never got the idea of this ?Spaces are better, as long as they behave like tabs? concept. While this is not the place for a deep and meaningful argument around whats better in the wild, I?d suggest this one be solved scientifically. What is going to be easier for the user when just starting out (in light of the above)? Does someone impartial want to run this discussion as a subproject?? I think that's pretty easy to answer - almost all tutorials, resources, libaries, etc. use 4 spaces, as per PEP 8. Using something other than that will just introduce pain when copy-pasting code from somewhere else. Notepad++ used to default to inserting a tab when pressing the tab key even when writing Python, and I think they changed it to four spaces because of exactly that reason. > - It would probably be super powerful to come up with some kind of slick visual representation for objects and variables that?could ?show the application growing and changing during its run? maybe even an interactive ?app diagram? (can you imagine little blocks popping into life as you step through your application creating variables etc!). I for one know I represent my collections of objects visually in my head. Could be a great tool for visual learners. http://www.pythontutor.com/visualize.html comes to mind. > - Can this?just use Python 3 and be done with it? Backwards compatibility is for sissys (and in all seriousness probably doesn?t solve any of the problems the tool is trying to solve). +1 Florian -- http://www.the-compiler.org | me at the-compiler.org (Mail/XMPP) GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc I love long mails! | http://email.is-not-s.ms/ -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: Digital signature URL: From mail at dbrgn.ch Tue Sep 22 13:25:04 2015 From: mail at dbrgn.ch (Danilo Bargen) Date: Tue, 22 Sep 2015 06:25:04 -0500 Subject: [Pythonedu-wg] A new, kid-friendly Python editor - help page In-Reply-To: <20150922111841.GB30194@tonks> References: <20150922111841.GB30194@tonks> Message-ID: <1442921104.2709970.390333025.50FA31A0@webmail.messagingengine.com> Am Di, 22. Sep 2015, um 06:18, schrieb Florian Bruhin: > * Ash Guy [2015-09-22 21:07:08 +1000]: > > - I?ve never got the idea of this ?Spaces are better, as long as they behave like tabs? concept. While this is not the place for a deep and meaningful argument around whats better in the wild, I?d suggest this one be solved scientifically. What is going to be easier for the user when just starting out (in light of the above)? Does someone impartial want to run this discussion as a subproject?? > > I think that's pretty easy to answer - almost all tutorials, > resources, libaries, etc. use 4 spaces, as per PEP 8. Using something > other than that will just introduce pain when copy-pasting code from > somewhere else. I think this is even easier to answer - many kids don't actually know what the tab key does. Cheers Danilo From david.john.ames at gmail.com Tue Sep 22 18:46:16 2015 From: david.john.ames at gmail.com (Dave Ames) Date: Tue, 22 Sep 2015 16:46:16 +0000 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: <1442909583.8776.25.camel@winder.org.uk> References: <1442909583.8776.25.camel@winder.org.uk> Message-ID: On Tue, 22 Sep 2015 09:13 Russel Winder wrote: Carrie Anne, Some comments derived from Python workshops for adults, which is clearly not the 8?16 age group, but I suspect these may be general, or maybe not. On Mon, 2015-09-21 at 14:15 +0100, Carrie Anne Philbin wrote: > Hi, > > > I would like to initiate work on building an education friendly > python > editor to potentially replace IDLE and be part of an education bundle > available across multiple platforms (including relatively low-specced > systems such as the Raspberry Pi) through this work group. Is there to be a document somewhere collecting together people's likes and dislikes of IDLE? Just having email is very "event sourcing" I do not like IDLE myself, but I find many people using it simply because it is there. I do tend to try and get people to download and install Wing IDE 101 if at all possible. The Qt base for Wing IDE 101 makes it a far better looking thing than the Tk based IDLE. The two have the same editor/REPL set up, but Wing IDE 101 has a green "run the current editor", which his amazingly useful compared to the IDLE F5 mechanism. I still find many people confusing REPL and command line. I avoid te use of the term "shell" beacause although everyone from Bash/Zsh/Sh/cmd.exe land know what a shell is, the Python distribution insists on calling the REPL a Python Shell, which really causes chaos. One huge difficulty with IDLE/Wing IDE 101/PyCharm/Eclipse+PyDev/? is that doing command line things is hard. So for a single environment I need editor+REPL+shell. Do we know what is different about a mini-IDE for younger folk, from a mini-IDE for older folk? Is there such a difference? > > To kick off, here?s a list of possible requirements. Please feel free > to > comment and add to them: > > > *Absolutely must have*: > > - Both windows open within one application (the shell window and text > editor window). What is meant by shell? Does this mean REPL or command line? > - Simple buttons to run code Definitely. Wing IDE 101 vs IDLE shows this is a "must". > - A way to change font sizes easily I find this crucial for presenting, is it needed for using? PyCharm and Emacs have Control+mouse wheel which works well. Eclipse doesn't support this so I do not use it. > - Syntax highlighting Yes and no. I agree syntax highlighting can be helpful, but as soon as you get into ability to change styling you can end up with some grotesque and indeed hideous rendering. Some people are even advocating a return to monochrome. I generally try and get a mellow look to avoid stark contrasts. > > *Highly desired*: > > - Error reporting that highlights lines and gives a good level of > feedback > to the user. This is going to require Python stack analysis, creating an API for editor manipulation and integrating with syntax highlighting. Emacs (and I guess VIM) as well as PyCharm, etc. already do this sort of thing. Should the new system be build on a strip down Emacs as a base? > - REPL You said shell above so does this mean you really mean a command line shell above? I think all three are a "must". > - Projects > > Since my talk around the development of a new text editor at Euro > Python > in July and Pycon Australia in August, > community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel > Pope), and > others have begun work on an open source project called Puppy > . Here is a video > of Puppy but I believe > that > more has been added and/or removed since it was filmed. I think this > project could be what we are looking for and we would welcome the > thoughts > of the wg. I will take a look at this? -- Russel. ============================================================================= Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder at ekiga.net 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel at winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder _______________________________________________ Pythonedu-wg mailing list Pythonedu-wg at python.org https://mail.python.org/mailman/listinfo/pythonedu-wg Hi When Dan Pope was showing me the mock up of Puppy on Friday, by the shell I took him to mean a REPL. I would suspect that (rightly or wrongly) most school network technicians would be extremely wary of giving students access to a system shell of any kind. This is also the reason I've asked Dan to provide a means to run PGZero without accessing the command line. Cheers Dave -------------- next part -------------- An HTML attachment was scrubbed... URL: From ntoll at ntoll.org Tue Sep 22 21:50:18 2015 From: ntoll at ntoll.org (Nicholas H.Tollervey) Date: Tue, 22 Sep 2015 20:50:18 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: <1442909583.8776.25.camel@winder.org.uk> Message-ID: <5601B0FA.4070601@ntoll.org> On 22/09/15 17:46, Dave Ames wrote: > I would suspect that (rightly or wrongly) most school network > technicians would be extremely wary of giving students access to a > system shell of any kind. > Then most school network technicians are fools and should not have ANY input in such decisions. NOTE: I'm highly biased about this. ;-) N. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 473 bytes Desc: OpenPGP digital signature URL: From ntoll at ntoll.org Tue Sep 22 22:02:27 2015 From: ntoll at ntoll.org (Nicholas H.Tollervey) Date: Tue, 22 Sep 2015 21:02:27 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: Message-ID: <5601B3D3.6020804@ntoll.org> On 21/09/15 14:15, Carrie Anne Philbin wrote: > Since my talk around the development of a new text editor at Euro Python > in July and Pycon Australia in August, > community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), > and others have begun work on an open source project called Puppy > . Here is a video > of Puppy but I believe that > more has been added and/or removed since it was filmed. I think this > project could be what we are looking for and we would welcome the > thoughts of the wg. > OK... so the aim for Puppy is to be the simplest/friendliest editor for new programmers. If there is anything that distracts them from coding (no matter how useful a feature it may appear to be) we try to avoid it. The UI has actually been made more minimalist since that video was shot. We're also abstracting things into projects (so no need to faff about with concepts such as files - and we'll automatically save versioned files). Remember, this is first steps programming we're addressing here - if you're going to object that there's no access to then you've missed the point. We're asking ourselves if we can find that happy place where we balance simplicity with usefulness for anyone coming to programming Python for the first time (be they 5 or 105 years old). We expect them to graduate to "real" editors quite soon after they have gained the confidence they need from using Puppy. For those of you who like Philosophy of Education (like I do), this is a classic twist on Lev Vygotsky's ZPD (https://en.wikipedia.org/wiki/Zone_of_proximal_development). We're concentrating on the "learner can do unaided" and ZPD rings (ref the image in the Wikipedia article). Once Puppy falls completely into the "learner can do unaided" zone, *other* more featureful editors will be well in the ZPD and thus within reach of the learner. Does this make sense..? Ciao ciao! N. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 473 bytes Desc: OpenPGP digital signature URL: From willingc at willingconsulting.com Tue Sep 22 22:25:14 2015 From: willingc at willingconsulting.com (Carol Willing) Date: Tue, 22 Sep 2015 13:25:14 -0700 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: <5601B3D3.6020804@ntoll.org> References: <5601B3D3.6020804@ntoll.org> Message-ID: <5601B92A.2090303@willingconsulting.com> Carrie Anne, Thanks for kicking this discussion off. All, I'm enjoying reading your thoughts and insights. Simplicity and minimalist are two goals that are critical. There are many editors and IDEs available that are feature laden that learners can move to when they desire. I started developing in the mid 1970s and I loved it as a 6th grader because of the clean slate that I had to create, experiment, and learn how things worked. Back then, there was not an abundance of tutorials, books, videos, etc. to tell me how to program so I read lots of source code and tried many things. It was amazing to experience the joy of figuring things out, try/fail/try/fail/try/succeed, and being creative! While there are many approaches to teaching programming, one approach is to provide a mimimally frustrating environment and let the students create. I've recently been thinking about editors as pieces of paper that can be flipped over. Minimalist on one side and when flipped to the other side, it displays the operations and logic, much like Phillip Guo's excellent pythontutor project. I'm very interested to see how this evolves. I would love to see a project that minimizes the layers of software abstraction. I would also love to see Jupyter notebook simplified for education too. Warmly, Carol On 9/22/15 1:02 PM, Nicholas H.Tollervey wrote: > On 21/09/15 14:15, Carrie Anne Philbin wrote: >> Since my talk around the development of a new text editor at Euro Python >> in July and Pycon Australia in August, >> community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), >> and others have begun work on an open source project called Puppy >> . Here is a video >> of Puppy but I believe that >> more has been added and/or removed since it was filmed. I think this >> project could be what we are looking for and we would welcome the >> thoughts of the wg. >> > OK... so the aim for Puppy is to be the simplest/friendliest editor for > new programmers. If there is anything that distracts them from coding > (no matter how useful a feature it may appear to be) we try to avoid it. > > The UI has actually been made more minimalist since that video was shot. > We're also abstracting things into projects (so no need to faff about > with concepts such as files - and we'll automatically save versioned > files). > > Remember, this is first steps programming we're addressing here - if > you're going to object that there's no access to editor feature here/> then you've missed the point. > > We're asking ourselves if we can find that happy place where we balance > simplicity with usefulness for anyone coming to programming Python for > the first time (be they 5 or 105 years old). > > We expect them to graduate to "real" editors quite soon after they have > gained the confidence they need from using Puppy. > > For those of you who like Philosophy of Education (like I do), this is a > classic twist on Lev Vygotsky's ZPD > (https://en.wikipedia.org/wiki/Zone_of_proximal_development). We're > concentrating on the "learner can do unaided" and ZPD rings (ref the > image in the Wikipedia article). Once Puppy falls completely into the > "learner can do unaided" zone, *other* more featureful editors will be > well in the ZPD and thus within reach of the learner. Does this make > sense..? > > Ciao ciao! > > N. > > > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg -- *Carol Willing* Developer | Willing Consulting https://willingconsulting.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From funcalculus at gmail.com Tue Sep 22 23:09:36 2015 From: funcalculus at gmail.com (Peter Farrell) Date: Tue, 22 Sep 2015 14:09:36 -0700 Subject: [Pythonedu-wg] Pythonedu-wg Digest, Vol 3, Issue 7 In-Reply-To: References: Message-ID: HI! Great discussion. The already tab-enabled IDE I'd suggest is Geany ( http://www.geany.org/Main/HomePage), which is free and lightweight enough to work fine on the Pi. In fact I was introduced to it by the folks working on Pi3D, a package that lets you do 3D graphics on the Pi in Python. Peter Farrell My book: *Hacking Math Class With Python* farrellpolymath.com On Tue, Sep 22, 2015 at 12:50 PM, wrote: > Send Pythonedu-wg mailing list submissions to > pythonedu-wg at python.org > > To subscribe or unsubscribe via the World Wide Web, visit > https://mail.python.org/mailman/listinfo/pythonedu-wg > or, via email, send a message with subject or body 'help' to > pythonedu-wg-request at python.org > > You can reach the person managing the list at > pythonedu-wg-owner at python.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Pythonedu-wg digest..." > > > Today's Topics: > > 1. Re: A new, kid-friendly Python editor - help page (Florian Bruhin) > 2. Re: A new, kid-friendly Python editor - help page (Danilo Bargen) > 3. Re: A new, kid-friendly Python editor (Dave Ames) > 4. Re: A new, kid-friendly Python editor (Nicholas H.Tollervey) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Tue, 22 Sep 2015 13:18:41 +0200 > From: Florian Bruhin > To: pythonedu-wg at python.org > Subject: Re: [Pythonedu-wg] A new, kid-friendly Python editor - help > page > Message-ID: <20150922111841.GB30194 at tonks> > Content-Type: text/plain; charset="utf-8" > > * Ash Guy [2015-09-22 21:07:08 +1000]: > > - I?ve never got the idea of this ?Spaces are better, as long as they > behave like tabs? concept. While this is not the place for a deep and > meaningful argument around whats better in the wild, I?d suggest this one > be solved scientifically. What is going to be easier for the user when just > starting out (in light of the above)? Does someone impartial want to run > this discussion as a subproject?? > > I think that's pretty easy to answer - almost all tutorials, > resources, libaries, etc. use 4 spaces, as per PEP 8. Using something > other than that will just introduce pain when copy-pasting code from > somewhere else. > > Notepad++ used to default to inserting a tab when pressing the tab key > even when writing Python, and I think they changed it to four spaces > because of exactly that reason. > > > - It would probably be super powerful to come up with some kind of slick > visual representation for objects and variables that?could ?show the > application growing and changing during its run? maybe even an interactive > ?app diagram? (can you imagine little blocks popping into life as you step > through your application creating variables etc!). I for one know I > represent my collections of objects visually in my head. Could be a great > tool for visual learners. > > http://www.pythontutor.com/visualize.html comes to mind. > > > - Can this?just use Python 3 and be done with it? Backwards > compatibility is for sissys (and in all seriousness probably doesn?t solve > any of the problems the tool is trying to solve). > > +1 > > Florian > > -- > http://www.the-compiler.org | me at the-compiler.org (Mail/XMPP) > GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc > I love long mails! | http://email.is-not-s.ms/ > -------------- next part -------------- > A non-text attachment was scrubbed... > Name: signature.asc > Type: application/pgp-signature > Size: 819 bytes > Desc: Digital signature > URL: < > http://mail.python.org/pipermail/pythonedu-wg/attachments/20150922/b1df742c/attachment-0001.sig > > > > ------------------------------ > > Message: 2 > Date: Tue, 22 Sep 2015 06:25:04 -0500 > From: Danilo Bargen > To: pythonedu-wg at python.org > Subject: Re: [Pythonedu-wg] A new, kid-friendly Python editor - help > page > Message-ID: > <1442921104.2709970.390333025.50FA31A0 at webmail.messagingengine.com > > > Content-Type: text/plain; charset="UTF-8" > > Am Di, 22. Sep 2015, um 06:18, schrieb Florian Bruhin: > > * Ash Guy [2015-09-22 21:07:08 +1000]: > > > - I?ve never got the idea of this ?Spaces are better, as long as they > behave like tabs? concept. While this is not the place for a deep and > meaningful argument around whats better in the wild, I?d suggest this one > be solved scientifically. What is going to be easier for the user when just > starting out (in light of the above)? Does someone impartial want to run > this discussion as a subproject?? > > > > I think that's pretty easy to answer - almost all tutorials, > > resources, libaries, etc. use 4 spaces, as per PEP 8. Using something > > other than that will just introduce pain when copy-pasting code from > > somewhere else. > > I think this is even easier to answer - many kids don't actually know > what the tab key does. > > Cheers > Danilo > > > ------------------------------ > > Message: 3 > Date: Tue, 22 Sep 2015 16:46:16 +0000 > From: Dave Ames > To: Russel Winder , pythonedu-wg at python.org > Subject: Re: [Pythonedu-wg] A new, kid-friendly Python editor > Message-ID: > < > CANqypVpEDpJguhGbNfrVPtjfGN5m5ByC-E-cZHmgG2mFM_eaYA at mail.gmail.com> > Content-Type: text/plain; charset="utf-8" > > On Tue, 22 Sep 2015 09:13 Russel Winder wrote: > > Carrie Anne, > > Some comments derived from Python workshops for adults, which is > clearly not the 8?16 age group, but I suspect these may be general, or > maybe not. > > On Mon, 2015-09-21 at 14:15 +0100, Carrie Anne Philbin wrote: > > Hi, > > > > > > I would like to initiate work on building an education friendly > > python > > editor to potentially replace IDLE and be part of an education bundle > > available across multiple platforms (including relatively low-specced > > systems such as the Raspberry Pi) through this work group. > > Is there to be a document somewhere collecting together people's likes > and dislikes of IDLE? Just having email is very "event sourcing" I do > not like IDLE myself, but I find many people using it simply because it > is there. > > I do tend to try and get people to download and install Wing IDE 101 if > at all possible. The Qt base for Wing IDE 101 makes it a far better > looking thing than the Tk based IDLE. The two have the same editor/REPL > set up, but Wing IDE 101 has a green "run the current editor", which > his amazingly useful compared to the IDLE F5 mechanism. > > I still find many people confusing REPL and command line. I avoid te > use of the term "shell" beacause although everyone from > Bash/Zsh/Sh/cmd.exe land know what a shell is, the Python distribution > insists on calling the REPL a Python Shell, which really causes chaos. > > One huge difficulty with IDLE/Wing IDE 101/PyCharm/Eclipse+PyDev/? is > that doing command line things is hard. So for a single environment I > need editor+REPL+shell. > > Do we know what is different about a mini-IDE for younger folk, from a > mini-IDE for older folk? Is there such a difference? > > > > > To kick off, here?s a list of possible requirements. Please feel free > > to > > comment and add to them: > > > > > > *Absolutely must have*: > > > > - Both windows open within one application (the shell window and text > > editor window). > > What is meant by shell? Does this mean REPL or command line? > > > - Simple buttons to run code > > Definitely. Wing IDE 101 vs IDLE shows this is a "must". > > > - A way to change font sizes easily > > I find this crucial for presenting, is it needed for using? PyCharm and > Emacs have Control+mouse wheel which works well. Eclipse doesn't > support this so I do not use it. > > > - Syntax highlighting > > Yes and no. I agree syntax highlighting can be helpful, but as soon as > you get into ability to change styling you can end up with some > grotesque and indeed hideous rendering. Some people are even advocating > a return to monochrome. I generally try and get a mellow look to avoid > stark contrasts. > > > > > *Highly desired*: > > > > - Error reporting that highlights lines and gives a good level of > > feedback > > to the user. > > This is going to require Python stack analysis, creating an API for > editor manipulation and integrating with syntax highlighting. Emacs > (and I guess VIM) as well as PyCharm, etc. already do this sort of > thing. > > Should the new system be build on a strip down Emacs as a base? > > > - REPL > > You said shell above so does this mean you really mean a command line > shell above? I think all three are a "must". > > > - Projects > > > > Since my talk around the development of a new text editor at Euro > > Python > > in July and Pycon Australia in August, > > community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel > > Pope), and > > others have begun work on an open source project called Puppy > > . Here is a video > > of Puppy but I believe > > that > > more has been added and/or removed since it was filmed. I think this > > project could be what we are looking for and we would welcome the > > thoughts > > of the wg. > > I will take a look at this? > > -- > Russel. > > ============================================================================= > Dr Russel Winder t: +44 20 7585 2200 voip: > sip:russel.winder at ekiga.net > 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel at winder.org.uk > London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg > > > Hi > > When Dan Pope was showing me the mock up of Puppy on Friday, by the shell I > took him to mean a REPL. > > I would suspect that (rightly or wrongly) most school network technicians > would be extremely wary of giving students access to a system shell of any > kind. > > This is also the reason I've asked Dan to provide a means to run PGZero > without accessing the command line. > > Cheers > Dave > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: < > http://mail.python.org/pipermail/pythonedu-wg/attachments/20150922/d51b38d5/attachment-0001.html > > > > ------------------------------ > > Message: 4 > Date: Tue, 22 Sep 2015 20:50:18 +0100 > From: "Nicholas H.Tollervey" > To: pythonedu-wg at python.org > Subject: Re: [Pythonedu-wg] A new, kid-friendly Python editor > Message-ID: <5601B0FA.4070601 at ntoll.org> > Content-Type: text/plain; charset="windows-1252" > > On 22/09/15 17:46, Dave Ames wrote: > > I would suspect that (rightly or wrongly) most school network > > technicians would be extremely wary of giving students access to a > > system shell of any kind. > > > > Then most school network technicians are fools and should not have ANY > input in such decisions. > > NOTE: I'm highly biased about this. ;-) > > N. > > > -------------- next part -------------- > A non-text attachment was scrubbed... > Name: signature.asc > Type: application/pgp-signature > Size: 473 bytes > Desc: OpenPGP digital signature > URL: < > http://mail.python.org/pipermail/pythonedu-wg/attachments/20150922/97f0d63d/attachment.sig > > > > ------------------------------ > > Subject: Digest Footer > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg > > > ------------------------------ > > End of Pythonedu-wg Digest, Vol 3, Issue 7 > ****************************************** > -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris at codingclub.co.uk Tue Sep 22 23:48:39 2015 From: chris at codingclub.co.uk (Chris Roffey) Date: Tue, 22 Sep 2015 22:48:39 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: <5601B3D3.6020804@ntoll.org> References: <5601B3D3.6020804@ntoll.org> Message-ID: Hi Nicholas There is definitely a need to decide which direction this group will go. From this comment > Remember, this is first steps programming we're addressing here - if > you're going to object that there's no access to editor feature here/> then you've missed the point. and other comments today, it looks like it is decided. Frustrating for me as I would prefer to go in another direction - but I?ll get over it - and decisions are necessary. My year 7 form last year were being introduced to Python by another teacher and obviously I was interested in how they were getting on. One or two students said they hated Python! A bit strong. I enquired further as we had nothing much else to do in form time. (I can sign diaries pretty fast when I have to.) It turns out of course that they had been pretty comfortable playing with Scratch for half the year and hated Python / IDLE because it was so unforgiving to one student's dyslexia and another's simple inability to spell consistently. IDLE then kept humiliating them constantly by throwing error after error and nothing they produced ever worked. They also wanted to make visual games and apps but the teacher could not get them past simple print functions. Although some in the class did enjoy the challenge the teacher gave in and went back to Scratch as ?they were not ready for Python.? Lessons: They need help! Lots of help! Students are not always coming from a ?never programmed before? situation. They are not all world class typists and some cannot spell very well. They get confused by lots of things e.g. builtins, local and global variables, functions and methods (so I do not introduce Pygame at this stage.) They want to run before they can walk! So as we are going down this minimalistic route I feel we at least need to provide some scaffolding to help with spelling and provide more encouraging error messages. For those outside the UK it would perhaps help to explain that we are teaching programming to all abilities and some would prefer to do drama! Also it is a surprising fact that about 50% of the students in the UK have an IQ of less than 100! On the other hand things are not always as bad as my poor form had it. My Year 6 coding club (10 year olds) enjoyed learning Python though of course they did need help at times. Although I gave just one anecdote, I do also have first hand experience of teaching Python to students from Y6 - Y12 and I get occasional emails from readers of my books that target 10-14 year olds. I have sometime ago tried to think how we could best help students with an improved IDLE. (I personally think IDLE is the best IDE we currently have for first learners.) Sorry to the two people on this list who have already seen my best effort at an IDE for 10-14 year olds in a different forum but I think it might be worth sharing with the classroom teachers on the group where my thoughts led me. You might be able to see how I have focussed on the problems I highlighted above and how I would like to get students into graphical programming as quickly as possible while avoiding Pygame until the students are ready (i.e. when they are comfortable with iteration, functions, container data-types and have had OOP carefully introduced.) I know there are some people on this group who have taken a different approach and worked hard on making Pygame more student friendly which looks really exciting and might be a better way - it is on my to do list to examine this carefully. You can tell I am nervous though. I know this is not where this group is heading but it might be that you can find something in my current dream IDE that could be of use in Puppy: http://codingclub.co.uk/images/CREATE-overview.png (Note I would not have the GUI builder appear on first load.) best wishes Chris > On 22 Sep 2015, at 21:02, Nicholas H.Tollervey wrote: > > On 21/09/15 14:15, Carrie Anne Philbin wrote: >> Since my talk around the development of a new text editor at Euro Python >> in July and Pycon Australia in August, >> community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), >> and others have begun work on an open source project called Puppy >> . Here is a video >> of Puppy but I believe that >> more has been added and/or removed since it was filmed. I think this >> project could be what we are looking for and we would welcome the >> thoughts of the wg. >> > > OK... so the aim for Puppy is to be the simplest/friendliest editor for > new programmers. If there is anything that distracts them from coding > (no matter how useful a feature it may appear to be) we try to avoid it. > > The UI has actually been made more minimalist since that video was shot. > We're also abstracting things into projects (so no need to faff about > with concepts such as files - and we'll automatically save versioned > files). > > Remember, this is first steps programming we're addressing here - if > you're going to object that there's no access to editor feature here/> then you've missed the point. > > We're asking ourselves if we can find that happy place where we balance > simplicity with usefulness for anyone coming to programming Python for > the first time (be they 5 or 105 years old). > > We expect them to graduate to "real" editors quite soon after they have > gained the confidence they need from using Puppy. > > For those of you who like Philosophy of Education (like I do), this is a > classic twist on Lev Vygotsky's ZPD > (https://en.wikipedia.org/wiki/Zone_of_proximal_development). We're > concentrating on the "learner can do unaided" and ZPD rings (ref the > image in the Wikipedia article). Once Puppy falls completely into the > "learner can do unaided" zone, *other* more featureful editors will be > well in the ZPD and thus within reach of the learner. Does this make > sense..? > > Ciao ciao! > > N. > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg -------------- next part -------------- An HTML attachment was scrubbed... URL: From RJarvis at rwba.org.uk Wed Sep 23 00:09:53 2015 From: RJarvis at rwba.org.uk (Richard Jarvis) Date: Tue, 22 Sep 2015 22:09:53 +0000 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: <5601B3D3.6020804@ntoll.org> References: <5601B3D3.6020804@ntoll.org> Message-ID: Nicholas, that?s exactly what I wanted to hear! When I switched my school from VB.NET to Python last year, it was suggested we keep using VisualStudio. It?s great and all, but so OTT - I can?t believe I had to fight that one out. Anyway, we eventually got IDLE installed, and now spend the whole of year 9 (with 300+ 12/13 years olds) programming in it. It does the job, and doesn?t come with any of the distractions of the more advanced UIs. (and BTW, the switch has resulted in more than doubling our GCSE uptake - almost 90 this year, so that?s almost 150 more 10s & 11s using IDLE). But it could be better. In year 8, they get a gentle introduction to text based programming using SmallBasic. The UI for that rocks (for first steps). The IntelliSense feature, combined with the help window down the right pretty much makes them independent coders after an hour or two: IntelliSense means that literacy (spelling), and ?lots of typing? are no longer a stumbling block - kids can write a line of code with just a couple of key presses. The help window will explain the keyword they?re using, and give examples they can copy & paste. Obviously, Python isn't so syntax heavy, so the intellisense feature isn?t so useful - but some assistance with getting your code right is a winner. The ?snippets? feature in VisualStudio (tab-tab) has been great with our year 12s progressing to C#, being able to have the editor drop in a chunk of code has made them very independent. IDLE also falls down on the initial experience - we spend 99% of our time in the editor, so lets just start there. The run menu is awful, and the save dialog is even worse - I want to be able to type: print(?hello world?) and press GO. When you do run the code, and the ?Python Shell? pops up, it just introduces another level of complexity. I love the idea of having the two together, so that kids don?t have to manage the multiple windows, and switch between them when debugging. When they graduate to turtle/tkinter and end up with 3 windows, this just gets worse! Zooming is useful for teachers showing stuff on a projector, but not so important for kids. It?s buried in a menu in IDLE, and I find that enough - but maybe make it easier to get to? Zoom buttons are probably not needed? CTRL-mousewheel is my favourite :) And finally, the biggest stumbling block - indentation. That wastes more time than anything else, it?s so easy to get wrong, nested statements are a nightmare in IDLE, and it doesn?t really offer any assistance. I think it was you demoing the MicroBit editor at PyConUK - that looked amazing. Stick some colour in there to show the indents, and have the UI manage the spacing - just don?t allow indents in anything other than blocks of 4 spaces, and try to intelligently help users out? auto-unindent a line if they type else, etc... Oh, and error messages. The way IDLE does it is a bit cryptic & inconsistent - but it usually gives enough information to find the bug. Kids can learn the difference between a name/type/syntax/etc error - and absolutely should - just make it a bit more obvious where it occurred - highlight the whole line instead of just moving the cursor, and perhaps give a bit more of an explanation of the error (name error (usually) = spelling mistake, type error (usually) = using string as integers, etc) Sorry, ended up waffling on a bit - but am very excited about what you?ve got planned! Richard On 22 Sep 2015, at 21:02, Nicholas H.Tollervey > wrote: On 21/09/15 14:15, Carrie Anne Philbin wrote: Since my talk around the development of a new text editor at Euro Python in July and Pycon Australia in August, community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), and others have begun work on an open source project called Puppy . Here is a video of Puppy but I believe that more has been added and/or removed since it was filmed. I think this project could be what we are looking for and we would welcome the thoughts of the wg. OK... so the aim for Puppy is to be the simplest/friendliest editor for new programmers. If there is anything that distracts them from coding (no matter how useful a feature it may appear to be) we try to avoid it. The UI has actually been made more minimalist since that video was shot. We're also abstracting things into projects (so no need to faff about with concepts such as files - and we'll automatically save versioned files). Remember, this is first steps programming we're addressing here - if you're going to object that there's no access to then you've missed the point. We're asking ourselves if we can find that happy place where we balance simplicity with usefulness for anyone coming to programming Python for the first time (be they 5 or 105 years old). We expect them to graduate to "real" editors quite soon after they have gained the confidence they need from using Puppy. For those of you who like Philosophy of Education (like I do), this is a classic twist on Lev Vygotsky's ZPD (https://en.wikipedia.org/wiki/Zone_of_proximal_development). We're concentrating on the "learner can do unaided" and ZPD rings (ref the image in the Wikipedia article). Once Puppy falls completely into the "learner can do unaided" zone, *other* more featureful editors will be well in the ZPD and thus within reach of the learner. Does this make sense..? Ciao ciao! N. _______________________________________________ Pythonedu-wg mailing list Pythonedu-wg at python.org https://mail.python.org/mailman/listinfo/pythonedu-wg This communication may contain information which is confidential, personal and/or privileged. It is for the exclusive use of the intended recipient(s). If you are not the intended recipient(s), please note that any distribution, forwarding, copying or use of this communication or the information in it is strictly prohibited. If you have received it in error please contact the sender immediately by return e-mail. Please then delete the e-mail and any copies of it and do not use or disclose its contents to any person. Any personal views expressed in this e-mail are those of the individual sender and Royal Wootton Bassett Academy does not endorse or accept responsibility for them. Prior to taking any action based upon this e-mail message, you should seek appropriate confirmation of its authenticity. Wootton Bassett School was renamed Royal Wootton Bassett Academy on 14th March 2012. Royal Wootton Bassett Academy - a private company, limited by guarantee ? registered in England - No. 07569743 Registered office ? Lime Kiln, Royal Wootton Bassett, Wiltshire. SN4 7HG. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ash at ashguy.com Wed Sep 23 01:07:09 2015 From: ash at ashguy.com (Ash Guy) Date: Wed, 23 Sep 2015 09:07:09 +1000 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: <5601B3D3.6020804@ntoll.org> Message-ID: I?d make the argument that you should avoid autocomplete like the plague, but I take your point on making things easy? What about some kind of ?Onion Skinning? feature where the rest of the next matched statement shows up dulled out in some way underneath the oncoming whitespace. That way you?d get the hinting, but the user would still need to make deliberate decisions and mental links to the actual python keywords. You could take this as far as you want? what about onion skinning out a whole hello world example for new users? (Maybe that doesn?t work, but it could be interesting to test and see!) Just a thought. ---? Ash Guy. Serial Entrepreneur, Tech Junkie,?Creative Thinker. E:?ash at ashguy.com On 23 September 2015 at 8:43:21 am, Richard Jarvis (rjarvis at rwba.org.uk) wrote: Nicholas, that?s exactly what I wanted to hear! When I switched my school from VB.NET?to Python last year, it was suggested we keep using VisualStudio. It?s great and all, but so OTT - I can?t believe I had to fight that one out. Anyway, we eventually got IDLE installed, and now spend the whole of year 9 (with 300+ 12/13 years olds) programming in it. It does the job, and doesn?t come with any of the distractions of the more advanced UIs. (and BTW, the switch has resulted in more than doubling our GCSE uptake - almost 90 this year, so that?s almost 150 more 10s & 11s using IDLE). But it could be better. In year 8, they get a gentle introduction to text based programming using SmallBasic. The UI for that rocks (for first steps). The IntelliSense feature, combined with the help window down the right pretty much makes them independent coders after an hour or two: IntelliSense means that literacy (spelling), and ?lots of typing? are no longer a stumbling block - kids can write a line of code with just a couple of key presses. The help window will explain the keyword they?re using, and give examples they can copy & paste. Obviously, Python isn't so syntax heavy, so the intellisense feature isn?t so useful - but some assistance with getting your code right is a winner. The ?snippets? feature in VisualStudio (tab-tab) has been great with our year 12s progressing to C#, being able to have the editor drop in a chunk of code has made them very independent. IDLE also falls down on the initial experience - we spend 99% of our time in the editor, so lets just start there. The run menu is awful, and the save dialog is even worse - I want to be able to type: print(?hello world?) and press GO. When you do run the code, and the ?Python Shell? pops up, it just introduces another level of complexity. I love the idea of having the two together, so that kids don?t have to manage the multiple windows, and switch between them when debugging. When they graduate to turtle/tkinter and end up with 3 windows, this just gets worse! Zooming is useful for teachers showing stuff on a projector, but not so important for kids. It?s buried in a menu in IDLE, and I find that enough - but maybe make it easier to get to? Zoom buttons are probably not needed? CTRL-mousewheel is my favourite :) And finally, the biggest stumbling block - indentation. That wastes more time than anything else, it?s so easy to get wrong, nested statements are a nightmare in IDLE, and it doesn?t really offer any assistance. I think it was you demoing the MicroBit editor at PyConUK - that looked amazing. Stick some colour in there to show the indents, and have the UI manage the spacing - just don?t allow indents in anything other than blocks of 4 spaces, and try to intelligently help users out? auto-unindent a line if they type else, etc... Oh, and error messages. The way IDLE does it is a bit cryptic & inconsistent - but it usually gives enough information to find the bug. Kids can learn the difference between a name/type/syntax/etc error - and absolutely should - just make it a bit more obvious where it occurred - highlight the whole line instead of just moving the cursor, and perhaps give a bit more of an explanation of the error (name error (usually) = spelling mistake, type error (usually) = using string as integers, etc) Sorry, ended up waffling on a bit - but am very excited about what you?ve got planned! Richard On 22 Sep 2015, at 21:02, Nicholas H.Tollervey wrote: On 21/09/15 14:15, Carrie Anne Philbin wrote: Since my talk around the development of a new text editor at Euro Python in July and Pycon Australia in August, community members Ntoll (Nicholas Tollervey), Lord Mauve (Daniel Pope), and others have begun work on an open source project called Puppy . Here is a video of Puppy but I believe that more has been added and/or removed since it was filmed. I think this project could be what we are looking for and we would welcome the thoughts of the wg. OK... so the aim for Puppy is to be the simplest/friendliest editor for new programmers. If there is anything that distracts them from coding (no matter how useful a feature it may appear to be) we try to avoid it. The UI has actually been made more minimalist since that video was shot. We're also abstracting things into projects (so no need to faff about with concepts such as files - and we'll automatically save versioned files). Remember, this is first steps programming we're addressing here - if you're going to object that there's no access to then you've missed the point. We're asking ourselves if we can find that happy place where we balance simplicity with usefulness for anyone coming to programming Python for the first time (be they 5 or 105 years old). We expect them to graduate to "real" editors quite soon after they have gained the confidence they need from using Puppy. For those of you who like Philosophy of Education (like I do), this is a classic twist on Lev Vygotsky's ZPD (https://en.wikipedia.org/wiki/Zone_of_proximal_development). We're concentrating on the "learner can do unaided" and ZPD rings (ref the image in the Wikipedia article). Once Puppy falls completely into the "learner can do unaided" zone, *other* more featureful editors will be well in the ZPD and thus within reach of the learner. Does this make sense..? Ciao ciao! N. _______________________________________________ Pythonedu-wg mailing list Pythonedu-wg at python.org https://mail.python.org/mailman/listinfo/pythonedu-wg This communication may contain information which is confidential, personal and/or privileged. It is for the exclusive use of the intended recipient(s). If you are not the intended recipient(s), please note that any distribution, forwarding, copying or use of this communication or the information in it is strictly prohibited. If you have received it in error please contact the sender immediately by return e-mail. Please then delete the e-mail and any copies of it and do not use or disclose its contents to any person. Any personal views expressed in this e-mail are those of the individual sender and Royal Wootton Bassett Academy does not endorse or accept responsibility for them. Prior to taking any action based upon this e-mail message, you should seek appropriate confirmation of its authenticity. Wootton Bassett School was renamed Royal Wootton Bassett Academy on 14th March 2012. Royal Wootton Bassett Academy - a private company, limited by guarantee ? registered in England - No. 07569743 Registered office ? Lime Kiln, Royal Wootton Bassett, Wiltshire. SN4 7HG. _______________________________________________ Pythonedu-wg mailing list Pythonedu-wg at python.org https://mail.python.org/mailman/listinfo/pythonedu-wg -------------- next part -------------- An HTML attachment was scrubbed... URL: From david.john.ames at gmail.com Wed Sep 23 01:48:06 2015 From: david.john.ames at gmail.com (Dave Ames) Date: Tue, 22 Sep 2015 23:48:06 +0000 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: <5601B0FA.4070601@ntoll.org> References: <1442909583.8776.25.camel@winder.org.uk> <5601B0FA.4070601@ntoll.org> Message-ID: On Tue, 22 Sep 2015 20:50 Nicholas H.Tollervey wrote: On 22/09/15 17:46, Dave Ames wrote: > I would suspect that (rightly or wrongly) most school network > technicians would be extremely wary of giving students access to a > system shell of any kind. > Then most school network technicians are fools and should not have ANY input in such decisions. NOTE: I'm highly biased about this. ;-) N. _______________________________________________ Pythonedu-wg mailing list Pythonedu-wg at python.org https://mail.python.org/mailman/listinfo/pythonedu-wg Absolutely no disagreement from me there. If they've configured everything correctly then access to the command line for students, should present absolutely no threat to the network. But! The default state is "no command line", even though access to Python/Idle probably gives them at least the same level (if not more) of danger. Dave -------------- next part -------------- An HTML attachment was scrubbed... URL: From carrieanne at raspberrypi.org Wed Sep 23 16:10:15 2015 From: carrieanne at raspberrypi.org (Carrie Anne Philbin) Date: Wed, 23 Sep 2015 15:10:15 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: <1442909583.8776.25.camel@winder.org.uk> <5601B0FA.4070601@ntoll.org> Message-ID: Lots of great discussion but I'm losing track of our list, so I've moved it to a google doc. Please suggest amendments so that we can get a final list together to vote on before we turn to finding volunteers to help build it. Then we will take it to a testing phase to get feedback from real learners! https://docs.google.com/document/d/1rXM2-Up59PbOEXqZHbo_jj-zPFkhc---kVVMinPp6M4/edit?usp=sharing Thanks, Carrie Anne. On Wed, Sep 23, 2015 at 12:48 AM, Dave Ames wrote: > > On Tue, 22 Sep 2015 20:50 Nicholas H.Tollervey wrote: > > On 22/09/15 17:46, Dave Ames wrote: > > I would suspect that (rightly or wrongly) most school network > > technicians would be extremely wary of giving students access to a > > system shell of any kind. > > > > Then most school network technicians are fools and should not have ANY > input in such decisions. > > NOTE: I'm highly biased about this. ;-) > > N. > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg > > Absolutely no disagreement from me there. If they've configured everything > correctly then access to the command line for students, should present > absolutely no threat to the network. But! > > The default state is "no command line", even though access to Python/Idle > probably gives them at least the same level (if not more) of danger. > > Dave > > > -- Education Pioneer Raspberry Pi Foundation UK Charity No. 1129409 -------------- next part -------------- An HTML attachment was scrubbed... URL: From carrieanne at raspberrypi.org Wed Sep 23 17:26:46 2015 From: carrieanne at raspberrypi.org (Carrie Anne Philbin) Date: Wed, 23 Sep 2015 16:26:46 +0100 Subject: [Pythonedu-wg] Python Education Bundle Message-ID: Common feedback from people trying to use Python in education is that it can be difficult and confusing to get a system that includes all the dependencies they require. Although the Python standard library is ?batteries included?, we commonly want to use libraries like the Python Imaging Library, PyGame(Zero), NumPy and more. These are often non-trivial to install, particularly on Windows. The aim is to produce an easy to install Python ?education? bundle that includes many of these dependencies. A non-goal is replacing the existing Python installer package. As a number of people have pointed out, Conda (http://conda.pydata.org/docs/) might be a sensible starting point for this. I think it would be most sensible to start by more clearly working out our requirements before we get in to a detailed discussion of existing technical solutions though. To kick things off, here?s a list of possible requirements brainstormed by Alex Bradbury and I. Please do suggest things we may have missed. *Absolutely must have*: - Package available for Windows, Mac, and (ideally) Linux - Includes common libraries like PyGame and NumPy - Users still have the ability to install simple new libraries via pip install or similar - Include a graphical editor, ideally the new editor this working group is pursuing *Highly desired*: - Ability to select pre-built versions of libraries that weren?t picked for inclusion in the standard package after installation - Ability to easily Python and package versions after installation - Some way of helping the user make sure they?re running the ?correct? python/pip - Thought given to common Windows network management solutions used by schools To keep track of this list I've created another google doc that we can work on here . Thanks, Carrie Anne. -- Education Pioneer Raspberry Pi Foundation UK Charity No. 1129409 -------------- next part -------------- An HTML attachment was scrubbed... URL: From al at inventwithpython.com Thu Sep 24 01:24:29 2015 From: al at inventwithpython.com (Al Sweigart) Date: Wed, 23 Sep 2015 16:24:29 -0700 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: <1442909583.8776.25.camel@winder.org.uk> <5601B0FA.4070601@ntoll.org> Message-ID: I'd move a REPL from the "nice to have" to the "mandatory" list. The interactive shell is really nice when the student just has to learn what a new function or method does. The most common confusions students have told me about with IDLE are: 1) Mixing up the interactive shell and file editor windows. 2) Mixing up Python 2 and 3 (either the wrong code or running the wrong IDLE) +1 for Python 3 only +1 for using PyPI as a Python appstore. I think this idea has promise. One of Scratch's great features is that students can upload and show off their programs. +1 for syntax highlighting. Don't discount how colorful text improves the coolness of coding for students. Even if they change the colors to look like a garish MySpace page. On Wed, Sep 23, 2015 at 7:10 AM, Carrie Anne Philbin < carrieanne at raspberrypi.org> wrote: > Lots of great discussion but I'm losing track of our list, so I've moved > it to a google doc. Please suggest amendments so that we can get a final > list together to vote on before we turn to finding volunteers to help build > it. Then we will take it to a testing phase to get feedback from real > learners! > > > https://docs.google.com/document/d/1rXM2-Up59PbOEXqZHbo_jj-zPFkhc---kVVMinPp6M4/edit?usp=sharing > > > Thanks, > > Carrie Anne. > > On Wed, Sep 23, 2015 at 12:48 AM, Dave Ames > wrote: > >> >> On Tue, 22 Sep 2015 20:50 Nicholas H.Tollervey wrote: >> >> On 22/09/15 17:46, Dave Ames wrote: >> > I would suspect that (rightly or wrongly) most school network >> > technicians would be extremely wary of giving students access to a >> > system shell of any kind. >> > >> >> Then most school network technicians are fools and should not have ANY >> input in such decisions. >> >> NOTE: I'm highly biased about this. ;-) >> >> N. >> >> _______________________________________________ >> Pythonedu-wg mailing list >> Pythonedu-wg at python.org >> https://mail.python.org/mailman/listinfo/pythonedu-wg >> >> Absolutely no disagreement from me there. If they've configured >> everything correctly then access to the command line for students, should >> present absolutely no threat to the network. But! >> >> The default state is "no command line", even though access to Python/Idle >> probably gives them at least the same level (if not more) of danger. >> >> Dave >> >> >> > > > -- > Education Pioneer > Raspberry Pi Foundation > > UK Charity No. 1129409 > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From willingc at willingconsulting.com Thu Sep 24 02:08:49 2015 From: willingc at willingconsulting.com (Carol Willing) Date: Wed, 23 Sep 2015 17:08:49 -0700 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: <1442909583.8776.25.camel@winder.org.uk> <5601B0FA.4070601@ntoll.org> Message-ID: <56033F11.5080905@willingconsulting.com> On 9/23/15 4:24 PM, Al Sweigart wrote: > I'd move a REPL from the "nice to have" to the "mandatory" list. The > interactive shell is really nice when the student just has to learn > what a new function or method does. +1 REPL as mandatory. It's really helpful for interactive programming in a classroom setting. I use it all the time with folks just starting out. > > The most common confusions students have told me about with IDLE are: > > 1) Mixing up the interactive shell and file editor windows. > 2) Mixing up Python 2 and 3 (either the wrong code or running the > wrong IDLE) > > +1 for Python 3 only > Agreed. Less issues to explain when Python 3 only. > +1 for using PyPI as a Python appstore. I think this idea has promise. > One of Scratch's great features is that students can upload and show > off their programs. Just a heads up (though I suspect you are aware)... PyPI will likely be replaced by the project currently named "Warehouse" which will be much more visually appealing. Scratch :D > > +1 for syntax highlighting. Don't discount how colorful text improves > the coolness of coding for students. Even if they change the colors to > look like a garish MySpace page. Carol -- *Carol Willing* Developer | Willing Consulting https://willingconsulting.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris at kidscancode.org Thu Sep 24 04:15:19 2015 From: chris at kidscancode.org (Chris Bradfield) Date: Wed, 23 Sep 2015 19:15:19 -0700 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: <1442909583.8776.25.camel@winder.org.uk> <5601B0FA.4070601@ntoll.org> Message-ID: This is a great discussion - I'm very excited about this project! On Wed, Sep 23, 2015 at 4:24 PM, Al Sweigart wrote: > I'd move a REPL from the "nice to have" to the "mandatory" list. The > interactive shell is really nice when the student just has to learn what a > new function or method does. > Agree 100%. This is where I always start my students doing "Hello World" and turtle graphics. They get instant results without any need for the save/run/edit routine. > The most common confusions students have told me about with IDLE are: > > 1) Mixing up the interactive shell and file editor windows. > Multiple windows (and the "Python Shell" window always popping up on top) is a constant source of confusion. Also, when they move on to using the editor and running programs (don't get me started on "Run Module"), the shell window is not used for typing anymore, but shows output and error messages. This is so unwieldy and takes up far too much class time to get a handle on. > +1 for syntax highlighting. Don't discount how colorful text improves the > coolness of coding for students. Even if they change the colors to look > like a garish MySpace page. > Definitely +1. It also helps with a very common early problem: closing quotes. Colored strings are a great bit of feedback that you quoted everything correctly. Also, a visual indicator of unclosed parentheses would be huge - I see many students have a problem with this, especially when they start nesting them. Currently, if you forget to close parens, IDLE highlights the *next* statement and calls it a syntax error. Kids wind up staring at that red highlight unable to see what's wrong. Regards, Chris -- Chris Bradfield Founder, KidsCanCode http://kidscancode.org/ 818-794-0522 -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris at codingclub.co.uk Thu Sep 24 10:36:54 2015 From: chris at codingclub.co.uk (Chris Roffey) Date: Thu, 24 Sep 2015 09:36:54 +0100 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: <56033F11.5080905@willingconsulting.com> References: <1442909583.8776.25.camel@winder.org.uk> <5601B0FA.4070601@ntoll.org> <56033F11.5080905@willingconsulting.com> Message-ID: +1 REPL as mandatory +1 Python 3 only +1 for syntax highlighting +1 always have REPL and a Script window open together and joined (windowed apps such as turtle tkinter should always appear on top of this when run.) I know where the wish to avoid auto-complete comes from and I am in agreement BUT I am concerned that this might then lead to providing no help for dyslexics and poor spellers. I would like to see underlining of misspelt words as in MS Word that when clicked on show suggestions much as suggested by Alex so: +1 for DidYouMean-Python type spell-checking (and I would move it to mandatory) Is it possible to lose the mandatory / highly desirable distinction from the google doc as this distinction is making it hard to edit it? When voting later we could then choose whether we think it should be mandatory, highly desirable or avoided. (Keep the avoided section so people can easily indicate that their suggestion is that something should be avoided.) Chris > On 24 Sep 2015, at 01:08, Carol Willing wrote: > > On 9/23/15 4:24 PM, Al Sweigart wrote: >> I'd move a REPL from the "nice to have" to the "mandatory" list. The interactive shell is really nice when the student just has to learn what a new function or method does. > > +1 REPL as mandatory. It's really helpful for interactive programming in a classroom setting. I use it all the time with folks just starting out. > >> >> The most common confusions students have told me about with IDLE are: >> >> 1) Mixing up the interactive shell and file editor windows. >> 2) Mixing up Python 2 and 3 (either the wrong code or running the wrong IDLE) >> >> +1 for Python 3 only >> > > Agreed. Less issues to explain when Python 3 only. > >> +1 for using PyPI as a Python appstore. I think this idea has promise. One of Scratch's great features is that students can upload and show off their programs. > > Just a heads up (though I suspect you are aware)... PyPI will likely be replaced by the project currently named "Warehouse" which will be much more visually appealing. > > Scratch :D > >> >> +1 for syntax highlighting. Don't discount how colorful text improves the coolness of coding for students. Even if they change the colors to look like a garish MySpace page. > > Carol > > > -- > Carol Willing > Developer | Willing Consulting > https://willingconsulting.com > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg -------------- next part -------------- An HTML attachment was scrubbed... URL: From jeff at elkner.net Thu Sep 24 14:08:38 2015 From: jeff at elkner.net (Jeff Elkner) Date: Thu, 24 Sep 2015 08:08:38 -0400 Subject: [Pythonedu-wg] A new, kid-friendly Python editor In-Reply-To: References: <1442909583.8776.25.camel@winder.org.uk> <5601B0FA.4070601@ntoll.org> <56033F11.5080905@willingconsulting.com> Message-ID: On Thu, Sep 24, 2015 at 4:36 AM, Chris Roffey wrote: > +1 REPL as mandatory > +1 Python 3 only > +1 for syntax highlighting > +1 always have REPL and a Script window open together and joined (windowed > apps such as turtle tkinter should always appear on top of this when run.) > > I know where the wish to avoid auto-complete comes from and I am in > agreement BUT I am concerned that this might then lead to providing no help > for dyslexics and poor spellers. I would like to see underlining of misspelt > words as in MS Word that when clicked on show suggestions much as suggested > by Alex so: > > +1 for DidYouMean-Python type spell-checking (and I would move it to > mandatory) > > Is it possible to lose the mandatory / highly desirable distinction from the > google doc as this distinction is making it hard to edit it? When voting > later we could then choose whether we think it should be mandatory, highly > desirable or avoided. (Keep the avoided section so people can easily > indicate that their suggestion is that something should be avoided.) > > Chris > > On 24 Sep 2015, at 01:08, Carol Willing > wrote: > > On 9/23/15 4:24 PM, Al Sweigart wrote: > > I'd move a REPL from the "nice to have" to the "mandatory" list. The > interactive shell is really nice when the student just has to learn what a > new function or method does. > > > +1 REPL as mandatory. It's really helpful for interactive programming in a > classroom setting. I use it all the time with folks just starting out. > > > The most common confusions students have told me about with IDLE are: > > 1) Mixing up the interactive shell and file editor windows. > 2) Mixing up Python 2 and 3 (either the wrong code or running the wrong > IDLE) > > +1 for Python 3 only +1 for Python 3 only, and not only for "technical" reasons. We in the EDU space, since we tend less than others to be tied to legacy modules, etc., should be leading the charge to switch to Python 3 and support the future of our language! > Agreed. Less issues to explain when Python 3 only. > > +1 for using PyPI as a Python appstore. I think this idea has promise. One > of Scratch's great features is that students can upload and show off their > programs. > > > Just a heads up (though I suspect you are aware)... PyPI will likely be > replaced by the project currently named "Warehouse" which will be much more > visually appealing. > > Scratch :D > > > +1 for syntax highlighting. Don't discount how colorful text improves the > coolness of coding for students. Even if they change the colors to look like > a garish MySpace page. > > > Carol > > > -- > Carol Willing > Developer | Willing Consulting > https://willingconsulting.com > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg > > > > _______________________________________________ > Pythonedu-wg mailing list > Pythonedu-wg at python.org > https://mail.python.org/mailman/listinfo/pythonedu-wg > From stewart at penguintutor.com Mon Sep 28 18:02:00 2015 From: stewart at penguintutor.com (stewart at penguintutor.com) Date: Mon, 28 Sep 2015 17:02:00 +0100 Subject: [Pythonedu-wg] Python Education Bundle Message-ID: > Common feedback from people trying to use Python in education is that > it can be difficult and confusing to get a system that includes all the > dependencies they require. Not many people have contributed to this discussion although argubly I think this is just as, if not more important than the editor discussion. Working on my own projects is fairly straight forward as I usually develop on Linux (which is much easier platform for Python development than say Windows), my computer is not restricted in anyway and I always have an internet connection (at least during the development and setup). However when I have worked with schools then it's not been possible to install additional packages as the machines are locked down, or because they are not allowed to connect to the network. So I think this is an important step forward in making it easier to learn programming in Python. I have found on some of my own projects I have had to list a large number of steps required in installing the pre-requisites that an educational bundle will help with. I think it's good to start with the requirements rather than solutions. From the "must have" list, and my understanding, I was expecting just a list of modules that could be pre-built and easy installed, but the highly desired list goes beyond that. I think there could be a real benefit with those addditional features, although I'm not sure how easily they can be implemented on computers that are "locked down". One thing I do think we need to consider is how updates to the education bundle can be managed as no doubt there will be additional modules that need to be added in future such as when the next super-dooper Raspberry Pi hat comes out :-) I think it's worth highlighting some of the issues / difficulties on the different platforms, I've listed some of my experiences below. **Windows** It is harder to install python moduels (and software in general) on Windows as it may be neccessary to install using different sources (eg. binary install files as well as PIP). I think the biggest problem with Windows is likely to be that they are locked down to prevent software from being installed (including locking out the teachers in some cases). I think that having a single installable package which includes the most popular modules that are used in education would make it easier to give that as a single install step that can be applied to existing Windows systems. It could then be presented to the adminstrator as a single install client that can be pushed out on the system. **Linux (excluding Raspberry Pi)** Although (excluding the Raspberry Pi) Linux is used less in schools than the other platforms I think it's still useful to at least look at how the education bundle can be implemented on Linux. I think this could be useful for colleges and schools looking to re-use some older machines. I think we are likely to see this considered more in future as teachers become more adept with Linux based on experience with the Raspberry Pi. The current PIP system is designed to make it easier to install software, but it's not quite as straight forward as it should be. It can be an issue where a computer is locked down to prevent additional software being installed and support for all packages isn't as easy as it could be. For example to install pygame for Python 3 on Ubuntu requires compiling the package and if using PyUSB (to control a USB device) then that includes dependencies upon Libusb and the package needs to be manually downloaded and installed using setup.py. **Raspbian on Raspberry Pi** Raspbian is already further ahead than some other Linux distributions with inclusion of pygame for Python 3, although it still has difficulty with some other packages (such as PyUSB). In some schools the Raspberry Pis are all being used off-network (due to school policy), so I think it would be good to get additional packages installed in the NOOBS image so they are available by default. **Mac OSX** Unfortunately I don't have any experience with Mac to be able to comment on the particular issues, although I expect it will not be too different from the other platforms in terms of issues. -- Stewart Watkiss @stewartwatkiss @penguintutor http://www.penguintutor.com