On 22/01/2019 06:57, Matthew Polack wrote: > 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?
There is a beginners page on the Python web site for non programmers. It lists many tutorials that you could consider. Also there used to be an Education Special Interest Group (edu-sig) populated with teachers using Python in schools. I don't know if it is still active but you could try asking there. I do know that at least two schools have used my tutorial(see .sig). One of them for a class of 14 year olds (I have no idea what age range your year 9/10 students are). It is intended to teach good programming theory as well as practice. Another more academic tutorial is Allan Downey's "Think Python" site. It is slightly deeper than mine but covers less breadth. > 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... In the UK many schools use the RaspberryPi project to teach robots to kids as part of their Technology courses. The programming is picked up by osmosis on an as-needed basis. The upside is that it's a lot of fun and gets kids used to the concepts of hardware and software working in unison. The downside is that they learn a lot of bad coding habits and don't understand the theoretical underpinnings of either the hardware or software. But as a way to get them hooked it works well . > 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 turtle module is good too. Turtle graphics were invented explicitly to teach kids programming (using the LOGO programming language). They are even better when combined with a real robot turtle, but I'm not sure how you would do that using Python. There may be an off the shelf option if you Google it... > 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') Don't underestimate the power of CLI when starting out. Classic games like oxo, hangman and Conway's life are challenging for beginners and easy to do on a terminal. (They are also great for demonstrating how good data structure design can radically simplify complex code.) Adventure games like the Colossal Cave are obviously easy on a CLI too. > 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. Consider including basic GUIs too. They are the simplest way to get them into event driven thinking and for some types of programming are easier to write than CLI apps. The only snag with Python is the lack of a GUI builder which forces the kids to write a lots of boring boiler plate code... > 3.) Possibly explore robotics. Or web programming maybe? There are lots of easy Web frameworks for Python and since, for most kids today, computing *is* the web it might be worthwhile. The downside is it introduces a lot of new concepts - HTML, networks etc Overall it sounds good. -- Alan G Author of the Learn to Program web site http://www.alan-g.me.uk/ http://www.amazon.com/author/alan_gauld Follow my photo-blog on Flickr at: http://www.flickr.com/photos/alangauldphotos _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor