I like the idea of starting out right away on a GUI.  I know this is completely 
backwards to what would normally be taught, but hear me out.  Kids today are 
used to GUI interfaces.  They're on their phones, their computers, their TV  
sets.  

Why not teach kids to output to a window instead of a command line?  What if 
it's just was easy, or easier, to work with a GUI as it is the command line?

To output to the command line in standard Python:
print('my string', variable1, variable2)

To output the same information to a window using PySimpleGUI:
Popup('my string', variable1, variable2)

Or, you can "print" to a debug window if that's your thing.
Print('takes the same parameters as print')

If the ultimate goal is to teach kids about how to design a GUI window, how to 
lay out a GUI using good user interface design principals, then it would be 
nice to get the GUI coding out of the way and let the focus instead be on the 
GUI itself.  This is when having a drag-and-drop Designer Tool is handy.  If 
not, then the next best thing is a simple programming interface.

PySimpleGUI was designed so that the code visually matches the window layout.  

It's capable of duplicating pretty much any layout and widget combination that 
you can create coding directly to tkinter's (or Qt's or WxPython's) interfaces. 
 PySimpleGUI simply creates and executes the "boilerplate" code that is often 
brought up when GUIs are discussed.  

A goal was to remove all of the boilerplate code and provide a programmer with 
a simple, friendly and flexible set of APIs.  You write a single line of code 
per row of widgets in your window plus a 1/2 dozen lines to implement the event 
loop.

I don't see the harm in approaching the problem from a different direction.  It 
could be wildly successful.  Or... not...  The worst that can happen is you 
screw up a classroom full of future programmers, creating a warped vision that 
GUIs can be fun and easy.


@mike

-----Original Message-----
From: Matthew Polack <matthew.pol...@htlc.vic.edu.au> 
Sent: Tuesday, January 22, 2019 1:58 AM
To: tutor@python.org
Subject: [Tutor] Recommended Resurce or strategy for beginning students

Hi All,

In our growing school we're teaching Python programming for the first time as 
an elective subject with Year 9 and 10 students. (Had a dabble at this last 
year with 3 students in Year 11)

I'm wondering what specific resource or stategy people would recommend for 
absolute beginners?

ie. a course or program, book,...set of activities to follow that strategically 
introduces and develops key skills.

At this age level I don't think we need to be achieving 'rocket science'..but 
rather giving the students a good solid introduction.

Some of the leadership wanted me to use this programming in combination with 
building robots...I've even wondered whether this is trying to achieve too many 
things...and we're better off focused on programming itself... but am open to 
this idea too...

I've had a play with using the excellent PySimpleGUI...which is an excellent 
resource for building a GUI...but I've realised before doing too much of this 
we might need to get a grip on core fundamentals....

The challenge is trying to find a way to making this 'fun' for students whilst 
also having them genuinely learn rather than just 'copying pasting'
code...achieving something that looks good...but not really understanding what 
they are doing.

So far my strategy will be:

1.) Establish some core basics(utlising some form of 'course',,,which goes 
through basics of syntax..variables...loops etc. utilising just raw 
code...(probably a simple 'Adventure Game')
2.) Build some simple programs using PySimple GUi..eg. Some quiz games etc.
(there are some great examples on Github by another teacher and also the author 
Mike of PySimpleGUI.
3.) Possibly explore robotics.

Can anyone make any recommendations on either resources or teaching/learning 
strategy/curriculum.

Thank you,
Matt


Matthew Polack | Teacher


[image: Emailbanner3.png]

Trinity Drive  |  PO Box 822

Horsham Victoria 3402

p. 03 5382 2529   m. 0402456854

e. matthew.pol...@htlc.vic.edu.au

w. www.htlc.vic.edu.au

--
**Disclaimer: *Whilst every attempt has been made to ensure that material 
contained in this email is free from computer viruses or other defects, the 
attached files are provided, and may only be used, on the basis that the user 
assumes all responsibility for use of the material transmitted. This email is 
intended only for the use of the individual or entity named above and may 
contain information that is confidential and privileged. If you are not the 
intended recipient, please note that any dissemination, distribution or copying 
of this email is strictly prohibited. If you have received this email in error, 
please notify us immediately by return email or telephone +61 3 5382 2529** and 
destroy the original message.*

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

Reply via email to