Date: Thu, 9 May 2019 15:18:22 +0000
From: "Merlo, Christopher R." Christopher.Merlo@NCC.EDU
To: SIGCSE-members@LISTSERV.ACM.ORG
Subject: Re: [SIGCSE-members] Python GUI Materials
Thank you to everybody that responded to this thread. Once I started
investigating Jim's suggestion of graphics.py, I knew it was the right answer
for us. If you're on the fence, or reading this thread in the future, here's
the video that convinced me: https://www.youtube.com/watch?v=R39vTAj1u_8
-Chris
Christopher R. Merlo
Professor, Mathematics, Computer Science, and Information Technology
Nassau Community College
http://www.matcmp.ncc.edu/~cmerlo/
Date: Fri, 10 May 2019 09:50:31 -0400
From: Deepak Kumar dkumar@CS.BRYNMAWR.EDU
To: SIGCSE-members@LISTSERV.ACM.ORG
X-Mailer: iPhone Mail (16E227)
Subject: Re: [SIGCSE-members] Python GUI Materials
Greetings!
If the goal is to use animations and graphics as a context for teaching
computing, please take a look at Processing (processing.org).
Processing is much more state-of-the-art than the Python graphics.py
Also, you can chose to use it in Python, Java, or Javascript.
Date: Mon, 13 May 2019 18:16:50 -0400
From: Ursula Wolz ursula.wolz@GMAIL.COM
To: SIGCSE-members@LISTSERV.ACM.ORG
X-Mailer: Apple Mail (2.3124)
Subject: Re: [SIGCSE-members] Python GUI Materials
I want to second Deepak’s suggestion. I wrote the following on May 8 and was
denied because I accidentally put the entire reply stream in my email. Here
it is without a lot of reply:
This is for current context: There seems to be some confusion between ‘GUI’
and doing graphics and visualization. Following up on Deepak, Processing.org
is a HUGE moment to support the latter, though not very good at the former. I
would advise against teaching ‘GUI’ in python or any other general purpose
language because
(This is what I wrote on May 8) If the intent is indeed to do GUI and not
graphics/visualization:
The problem with minimized GUI systems for novices is they don’t necessarily
follow established patterns, frameworks or UX principles. Home grown for CS 1
is problematic — I built a Java novice GUI library called SimpleGUI for a CS
1 book co-authored with Elliot Koffman a long time ago. There are papers in
the ACM DL if you are curious. It never took off because of the prevailing
view back then that you had to produce industry reading coders in CS 1.
Please don’t make the same mistake here. At a minimum be really clear about
how the GUI library supports your carefully articulated learning goals.
One current alternative is Processing with Python. I used it with great
success in a Lang School of Liberal Arts course that is part of an emerging
‘Coding in the Liberal Arts’ program. The course was called “Coding Natural
Language.” Although articulated with CS 0, I introduced a lot of the CS 1
programming fundamentals, toyed with objects (avoiding the usual inheritance
pitfalls, used objects, didn’t build many). Student projects ranged from word
games to interactive stories to generative and kinetic poetry. Some poked
around libraries for machine learning as well or explored problems from NLP
summarization research.
Happy to elaborate on Python, GUI libraries and NLP in intro courses through
personal correspondence,
Ursula Wolz
RiverSound Solutions
Eugene Lang School of Liberal Arts, The New School
Date: Thu, 9 May 2019 15:18:22 +0000
From: "Merlo, Christopher R." Christopher.Merlo@NCC.EDU To: SIGCSE-members@LISTSERV.ACM.ORG Subject: Re: [SIGCSE-members] Python GUI Materials
Thank you to everybody that responded to this thread. Once I started investigating Jim's suggestion of graphics.py, I knew it was the right answer for us. If you're on the fence, or reading this thread in the future, here's the video that convinced me: https://www.youtube.com/watch?v=R39vTAj1u_8 -Chris
Christopher R. Merlo Professor, Mathematics, Computer Science, and Information Technology Nassau Community College http://www.matcmp.ncc.edu/~cmerlo/
Date: Fri, 10 May 2019 09:50:31 -0400
From: Deepak Kumar dkumar@CS.BRYNMAWR.EDU To: SIGCSE-members@LISTSERV.ACM.ORG X-Mailer: iPhone Mail (16E227)
Subject: Re: [SIGCSE-members] Python GUI Materials
Greetings!
If the goal is to use animations and graphics as a context for teaching computing, please take a look at Processing (processing.org).
Processing is much more state-of-the-art than the Python graphics.py
Also, you can chose to use it in Python, Java, or Javascript.
Materials for teaching CS1 using Processing can be found at: https://cs.brynmawr.edu/visual/
Best,
Deepak.
Date: Mon, 13 May 2019 18:16:50 -0400
From: Ursula Wolz ursula.wolz@GMAIL.COM To: SIGCSE-members@LISTSERV.ACM.ORG X-Mailer: Apple Mail (2.3124)
Subject: Re: [SIGCSE-members] Python GUI Materials
I want to second Deepak’s suggestion. I wrote the following on May 8 and was denied because I accidentally put the entire reply stream in my email. Here it is without a lot of reply:
This is for current context: There seems to be some confusion between ‘GUI’ and doing graphics and visualization. Following up on Deepak, Processing.org is a HUGE moment to support the latter, though not very good at the former. I would advise against teaching ‘GUI’ in python or any other general purpose language because
(This is what I wrote on May 8) If the intent is indeed to do GUI and not graphics/visualization: The problem with minimized GUI systems for novices is they don’t necessarily follow established patterns, frameworks or UX principles. Home grown for CS 1 is problematic — I built a Java novice GUI library called SimpleGUI for a CS 1 book co-authored with Elliot Koffman a long time ago. There are papers in the ACM DL if you are curious. It never took off because of the prevailing view back then that you had to produce industry reading coders in CS 1. Please don’t make the same mistake here. At a minimum be really clear about how the GUI library supports your carefully articulated learning goals.
One current alternative is Processing with Python. I used it with great success in a Lang School of Liberal Arts course that is part of an emerging ‘Coding in the Liberal Arts’ program. The course was called “Coding Natural Language.” Although articulated with CS 0, I introduced a lot of the CS 1 programming fundamentals, toyed with objects (avoiding the usual inheritance pitfalls, used objects, didn’t build many). Student projects ranged from word games to interactive stories to generative and kinetic poetry. Some poked around libraries for machine learning as well or explored problems from NLP summarization research.
Happy to elaborate on Python, GUI libraries and NLP in intro courses through personal correspondence,
Ursula Wolz RiverSound Solutions Eugene Lang School of Liberal Arts, The New School