ISTE: Creative Coding with Functions

Creative Coding with Functions was run by Jean Griffin and Arta Szathmary.

The session was quite short but worthwhile. We learned a bit about functions, which I already knew, but through the explanation and resources provided I got some good ideas for ways in which I can teach the concept to my own class.

scratch1We had a look at the differences between block-based coding and text-based coding. Many teachers have found that the students (probably at the prompting of their parents) feel that block based coding is childish, it isn’t realistic and they aren’t learning anything useful. This started a useful discussion on how you can address that negative attitude. Believe it or not, block based coding is actually used right through university to teach computer science at some universities in the United States.

Logo5Block based coding looks easier, and it is, but it abstracts you from the syntax so that you can get the bigger picture. My own personal view is that if you can understand program flow and constructs, then once you move from block-based to text based, you are to learn the syntax for a concept you already understand. This is easier than learning the concept and the syntax at the same time.

appinventorI have felt for a long time that by teaching only text-based coding to students with no prior knowledge it makes the concepts much less accessible. I see real benefit in abstracting the syntax from the program flow and teaching them separately, as a progression. I also feel strongly that there should be a lower level, lead in, subject to the high level computer science subject that I teach. (I have roughly a 15% drop-out rate early in the year, based on the level of difficulty of the course, this rate has been decreasing, but is still alarming)

Through discussions with fellow computer science teachers, I did notice that I am basically the only one that takes a flying leap straight into coding with no prior knowledge. All the others I spoke to have a progression of increasing difficulty over a number of years.

In block based coding for lower year levels, such as through middle school, a recommended progression of learning is to start with Hour of Code activities as a taster, then move through to Scratch, progress on to Snap! and then engage in high level activities using MIT App Inventor.

grok-shadow-dark-blueFor people wanting to learn Python, then Grok is actually pretty cool, free and Australian!

So all in all, I found the session was good, but the most useful aspect was in the discussions I had with fellow teachers.

2 thoughts on “ISTE: Creative Coding with Functions

  1. Thanks for sharing this. I come from the other end of the teaching coding spectrum as far as the age level of my students goes. I teach 4th and 5th graders. I find it refreshing to hear from a teacher of older students that they believe coding concepts should be introduced at a younger age. I agree completely with this quote “I see real benefit in abstracting the syntax from the program flow and teaching them separately, as a progression.” It is also my experiance that many of the students who call Scratch easy have very little experiance with it and have not been exposed to it’s possibilities. I love that Scratch and then Snap have such easy entry points and yet such high celings. They not only let students learn coding concepts but show them what could be possible with coding. Most of the students who think Scratch is easy have only done easy things with it. Imagine if they could see some of the projects that came out of Constructing Modern Knowledge.

Leave a comment