Coding for Young Mathematicians


I summarized my thoughts about Lisa Floyd’s presentation at the Bring IT, Together Conference like this.

Calculators are successful in Mathematics not because we learn how to write the code to create a calculator but because we use it to get a deeper understanding of non-trivial Mathematics

When I saw this in the program, I knew that I wanted to attend. Lisa has been doing a great deal of research into Mathematics and Computational Thinking and was a keynote a few years ago. I didn’t know what to expect but I was hoping for something other than a “Let’s do something cool in Scratch and then try to tie it into Mathematics or some other subject area”.

I wasn’t disappointed.

I’ve attended many a session like I described above. I always enjoy them (despite the sarcasm) but I always wonder about the claims of how students all understand coding and Mathematics as a result. Is that really true?

I was hoping that this wouldn’t be another like that. Plus the fact that she mentioned Scratch AND Python was intriguing.

As she notes, “Ontario does not have coding in K-8”. Of course this is true but we sure have all kinds of Mathematics! She gave us a number of different examples featuring Geometric Art, Gtowing Patterns, Plotting on a Grid, Probability, … In the presentation, she gave us lots of examples and talked us through the process that she uses.

None of the examples started with a blank screen! She stressed the concept of having students remix her content. By running what she distributes, the students see a Mathematical concept and then their understanding is pushed and enhanced by working with the code to make things something better.

Her approach is very visual by showing the results of the program and then takes on the Mathematics concepts. Tweak this, change that, what happens when you do this? How can you make the output look like this. The primary focus was purely on the Mathematics and the coding was secondary. It was a refreshing approach.

Lisa’s approach was cemented for me on the Friday. I attended a session where we were programming robots using a drag and drop language specifically written for those robots. We were to program them to do a task without knowing just what was happening. Often the tool that we needed was in another menu and we were encouraged to try some numbers to see how far in one direction we could make it go. Turning wasn’t a matter of turning 90 degrees, but applying force onto one wheel going in one direction while the other went in the other direction. We eventually figured it out but lost considerable time in the process. There were something like six groups in the room and nobody got the right answer; some were closer than others. Lisa’s concept of remixing would have fit right in.

I really do like her approach. I made myself another note…

Instead of debugging the program, she could spend time debugging the Mathematics involved…

You can check out some of the examples she used, in Scratch, on her website. Type the URL correctly; Lisa notes that a person with a similar spelling as chosen a different career path.

I had an opportunity to interview Lisa. You can read it here.

This Week in Ontario Edublogs


I almost did it again.  Instead of “This Week in Ontario Edublogs”, I started to type the title as “The Week in Ontario Edublogs”.  I’ve done it before and that’s why this post’s numbering doesn’t reflect the actual number of times I’ve written this post.  Sigh.  Let’s just say I’ve written it a lot.

And here’s what I was excited to read this week.


An Alternative To A School Cellphone Ban

After a bit of a dry spell, Andrew Campbell is back blogging.  What caught my eye about this post was that he claimed that the Premier made reference to it on social media.

As Andrew notes, this isn’t a problem that schools have created, it’s one that parents and students have brought into schools with them.  So, Andrew offers the simplistic solution – have parents make students keep the devices at home.

I suppose that such a simplistic approach is doable.  After all, there are other things that are not allowed in schools and there are heavy handed consequences for doing so.  The same could apply to cellphones.

I think back to my schooling and we actually had to purchase a sliderule for use in school.  One of the wealthier kids in the class came with an electronic calculator and was absolutely forbidden to use this device which gave exact answers in favour of using a device that approximated the answer.

Calculators were introduced with some folks screaming about the demise of civilization (at least the Mathematics part of it) and yet these devices are just taken for granted these days.

I suspect that years from now, people will look back and laugh at how we anguished over the issue of BYOD and bringing powerful and enabling devices into the classroom.  The issue they might be debating could be about whether reading about Einstein or interacting with a holograph is more educationally sound.


Back To The Map Of Canada: What Do You Do With That 2%?

This post from Aviva Dunsiger brought me back nightmares about quicky PD sessions given in staff meetings.  Often they’re about 15 minutes long, totally out of context for me at least and ultimately we wrote them off as filler.

As you read Aviva’s post, you can visualize her heart rate climbing as a result of anxiety.  I’m surprised that she didn’t bring in something to do with self-regulation.

Personally, I can recall such PD sessions where I got my colours done in that 15 minutes to tell me that my learning style was something other than what I thought.  Then, there was the time we all had to sing and, believe me, you don’t want to hear me sing.  After the meeting I approached the superintendent and offered to lead a session to have everyone create a program and was turned down.  I guess there are priorities.

It seems to me that doing something in a staff meeting with teachers from various grades and subject areas is actually a very hard task.  It needs to be generic enough to be meaningful enough to everyone and yet valuable enough to justify the time devoted to it.

Not an easy task.


This week we did…something

It’s the time of year for Progress Reports – the things that go home in advance of Report Cards.  There was a time when these were a quick glimpse about socialization and a status report on work habits.  Now, they’re substantially more than that.

This post from Lisa Corbett paints an interesting picture of the challenge of making something worthwhile at this time of year, given her approach to the teaching and learning done in her class so far.

Because of the work I’m doing to spiral in math this year I am feeling like I don’t have a lot of things to use for comments on progress reports. I’ve decided to focus my commenting on some of the mathematical process skills.

I think that, when you read it, you’ll empathize with her plight.

Perhaps for the Mathematics subject area, she could just put a link to this post in the student progress report and have the parents read what’s going on here.


Focus on Trees – Part One

Absolutely every now and again, it’s really important to take a look at the learning environment and that’s what Ann-Marie Kee does here.  In particular, she identifying various trees and their significance on her school property.

Could you do that?

I think to some of the new builds where a bulldozer comes in and flattens everything and a boxy school building appears.  A little later, perhaps some grass and a few trees as part of a planting or community partnership.

You’d never be able to say this with that approach.

I think of our trees as keepers of our culture.

And, I just have to include this.


Preserving the Cup

Skip to the end and Beth Lyons says it well.

But our educators can not pour from an empty cup.

One of the things that Beth has observed is that this year is a bit different from others.  She claims to be an optimist but is struggling to have optimistic thoughts these days.

She sees teachers stretched thin already.  Herself included.  And, it’s only October.

Who better than a teacher-librarian who has interactions with every staff member in the school to make that observation?

Is there a magic potion that can be taken to turn this around?  I think we all know that the answer is no.  I can’t help but wonder if the recent election hasn’t contributed heavily to this – we live in a time when positive messages take a back seat to the negative.  It has to take a toll.

Caring for others is important but Beth notes many times that it’s also important to take care of yourself.  It’s not being selfish.

We need to get beyond that.


100DaysofCode

Peter Beens is participating in very active pieces of personal learning.  Earlier this week, I noted that he was part of the WordCamp in the Niagara Region?  This is different.

When you click through, you’ll see that this whole project is very comprehensive. Much like other challenges like the 30 days of photography challenges, Peter has to work on something every day. He’s doing so and documenting it.

You’ll also click through to see the activities and Peter sharing his notes on his work.

Wow!


‼️‼️ELECTION DAY‼️‼️

And, finally, a new Ontario Blogger. This is from Indigenous Awareness.

Essentially, this post is a summary of positions about Indigenous issues from the major political parties in Canada. When I first read it, I was feeling badly that I hadn’t read it in advance of the election.

And yet, now that we have a minority government in place, perhaps the messages and positions from the parties are even more important. Will they be held accountable?

By themselves, each of the parties have shared their positions. But, since no one party will be able to pass legislation without assistance from another, looking for common threads or close to common threads might be a good indication of what might happen.


As I say every week, please take the time to click through and read these posts in their original form. There is great thinking and sharing of ideas there.

Then, follow these folks on Twitter to stay on top of their future thinking.

  • @acampbell99
  • @avivaloca
  • @LisaCorbett0261
  • @AMKeeLCS
  • @MrsLyonsLibrary
  • @pbeens
  • @indigenousawrns

This post appeared originally on:

https://dougpete.wordpress.com

If you read it anywhere else, it’s not the original.

Creative Coding in Python


I ran into Sheena Vaidyanathan at the recently CSTA Conference. (See my interview with her here. It includes links to resources that she’s created.)

Now, running into Sheena isn’t strange; she’s a regular at this conference. It was the circumstance that was strange. Just five minutes before I saw her, I had cleaned up the check-in desk and saw that someone had left a book on the counter. It was called “Creative Coding in Python” and written by Sheena with a 2019 Copyright.

I had a quick flip through the book, noting all the colourful pages and then put it on the back shelf for the owner to claim it.

When I saw Sheena, I figured she had to be the owner and was showing it off. I had a quick discussion about it, thinking that she was selling them at the conference but no, she wasn’t. And, this copy wasn’t hers. She told me to take it if nobody came looking for it.

Fortunately for me, I guess, nobody came to ask about it so it came home with me and provided me with the chance to read it cover to cover on the flight home. Now, I did have a couple of other books on my iPad to read that would be considered more recreational but I’ve given up being worried about looking geeky long ago!

I was nicely surprised with the format. I’ll admit, your typical Computer Science book isn’t exactly a page turner! But this one was. I didn’t have Python on my computer to try the examples but I did them in my head and it wasn’t long before I was at the end of the book.

I found the content a nice combination of old and new school content. I wondered to myself if you actually had to be old school to recognize the old school content.

There are five chapters, each devoted to a specific content that introduced and expanded on the concepts.

  • Chapter 1 – Create your own chatbots
  • Chapter 2 – Create your own art masterpieces
  • Chapter 3 – Create your own adventure games
  • Chapter 4 – Create your own dice games
  • Chapter 5 – Create your own apps and games

As to be expected, new concepts are added as you go along and the programs become more sophisticated as you work your way through the book. In the side columns, Sheena introduces and fleshes our computer concepts along the way.

So, who is the audience? Sheena teaches middle school and the writing level and activities would fit very nicely there. Of course, there are all kinds of tools for development of code in Python; she goes conservative and talks about using IDLE. I could see this book being used as a reference for a teacher learning and using Python with students. I could also see it being in the Resource Centre for students to check out if their regular classes are using a block based application for those who want to go further.

Of course, keeping with tradition, the first program is a “Hello world”.

The book is available through Amazon here. Click the cover and explore things.

Nifty


One of my favourite sessions that is held at the CSTA Conference is “Nifty Assignments”.

Nifty Assignments is a project to gather and distribute great assignment ideas and their materials by K-12 CS teachers for K-12 CS teachers. Each year a few assignments are showcased by the authors at the Nifty Assignments session held at the annual CSTA conference.  It is intended to be a replica of (and homage to) the highly successful, and longstanding, Nifty Assignments session at the Annual ACM SIGCSE conference devised by Nick Parlante.

Of course, there are rules – and a philosophy.

Anyone who has ever taught Computer Science knows that the problems included in textbooks can be simple and often not all that inspiring. You know that you end up creating many (most?) problems on your own. Make them relevant to your class, cover the concepts you’re teaching, engage students, etc.

Well, there’s one great Computer Science textbook – the greatest of all time Oh! Pascal! But beyond that, Computer Science teachers know the drill.

So, Nifty Assignments is an attempt, via session at the conference to address that. It’s very popular; whatever room it’s held in seems to always be packed and this year was no different.

The nifty resource can be found here.

This year’s collection has the following topics.

The slidedeck for the presentation is available as well. Check it out here.

https://docs.google.com/presentation/d/1SRXQjHb321b3QNb5VxUVNgf6MTLNo8RXOFgVhpsWSVE/edit

Follow the links on the individual topics to get to the details for these five great, er, nifty assignments.

This Week in Ontario Edublogs


Welcome to the last TWIOE in June and the school year.  As always, there is some inspirational content written by Ontario Educators.  Perhaps you’ll be inspired to start or re-start your own blog this summer if you’re not already a regular writer?


Rethinking End of Year Countdowns

File this post from Laura Bottrell on the Heart and Art Blog under “maybe I’ve been doing things wrong all this time”.

For many, it’s been a month (or more) of counting down until today.  I even remember a colleague who shared the countdown on his blackboard for all to see.

Laura reminds us that this countdown may not necessarily be exciting for everyone in the class.

I always thought that celebrating the end of the year was just adding to the fun and excitement of summer. I’ve always had a fun countdown for my class. Lately, I’ve been wondering if this is just adding stress on some of my students. It really hit me last week when I announced that we only had ten school days left and there were at least five children in my class that crumbled to tears.

Her suggestion turns the table and has you thinking about treating things differently.  A little late for this year perhaps but … it’s nice to have a reminder that things aren’t always what they seem.


Why do you want kids to code?

With apologies to Jim Cash, I read the title to this post a little too quickly.  Instead of “Why”, I read it as “What” and thought that it might be about some new things to code!

However, using the word “Why” changes everything.  Jim summarizes his thoughts in this graphic he created.

It generated some interesting comments when Jim announced the post on Facebook.

I understand his message but I also wonder if I’m on the same page with him because of having a background in programming.  As Jim correctly notes, there’s a certain bandwagon effect about coding that has people jumping on because it’s felt that it’s important or someone is keynoting about the cool things that kids are doing.

Coding goes well beyond the mechanics of getting the job done.  (Blue side) Until you’re looking at the big picture, you’re not doing it justice.  (Green side)

It would be interesting to find out how many people get pressured to “do coding” because it’s the latest thing and yet they may be doing it without a suitable background in coding.


Go Magic! Let’s do this! 🙂

And the winner in the “Who gets David Carruthers added to their staff” raffle is …

<drum roll>

Bonaventure Meadows.

It looks easy enough to get to.  (at least by driving)

Getting to the actual school placed David in a series of job interviews and he shares his reflections about that process in the post.  I can understand the need for standardized questions for all applicants for fairness.

But, the school really needs to be prepared to take advantage of the skills that David has refined over his time as a learning coordinator.

Maybe instead of “Go Magic!”, should read “Get ready, Magic”.

And, then there’s the whole Plugged-in Portable thing?  I guess we’ll find out in the future.


Reader’s Theatre = Experiential Learning

I read this post from Stepan Pruchnicky a few times and I absolutely understood his message.

In Language, it’s important to read and understand different texts.  The concept of reading a script was a new spin on it.  But, as Stepan digs into it, it has to potential to go very deep, rich in understanding and empathy for characters to be played in the script.

It was during the radio version of This Week in Ontario Edublogs and Stephen Hurley’s comments about the connections to David Booth and Stephen’s own experience that really put me over the top with the concept.

I’d suggest putting Stepan’s post on your list for summer reading.  This is an idea that could really generate mileage for you.  Perhaps a future post would recommend suitable scripts?


Context is Key

Of course it is, Ruthie Sloan.

But, I certainly haven’t thought about it as deeply as you explore in this post.

You take the notion of context and apply it to…

  • wardrobe
  • digital expression
  • body language
  • how we communicate

The post is a great discussion about each of these.

It’s also a reminder of so many things that may just pass us by as life goes on.  These are things that we do every day.  It goes beyond what and moves into how, when, and who.

I loved the collection of images that she includes at the bottom.


“I Don’t Have Time For That”

Joel McLean reminds us that this comes up too often when people are wondering about taking charge of their own professional learning.  I suggest that it’s an easy answer and often given to avoid things.

I also am reminded about my Covey training.  The first rule – schedule the important things first.  Then, let all of the other stuff fill your time for you.  Goodness know that, in education, there’s no danger of that not happening.

I remember also returning from my training and explaining the approach to my supervisor.  We still meet for coffee every now and again and he notes how this changed his professional life.  (Not my comment but after my experience, he went and took the course himself.)

There was only one caveat to my own implementation – I was never allowed to allow my priorities to supersede his priorities for me!  I shouldn’t have encouraged him to take the course.

Maybe Joel has some advice for how to handle that!


Observations & Conversations : Part 1 of many?

The structure of the Interstitial App, or, Observations & Conversations – Part 2

From Cal Armstrong, a pair or posts and maybe more to come.

After my session at the OAME Conference (link to Presentation), a few folks asked me how I had put this together, so I’m going to give a brief run-down here.

It sounds like the audience was really impressed with Cal’s use of Microsoft Powerapps.

I know that I was; I’d heard about it but really hadn’t done anything with it.  I guess that you need to have a reason and Cal used his mathematics audience as the target for his presentation.

If you’re curious, read both posts.  If you’re interested in creating your own, pay attention to the second post.  Here, Cal takes you through his process step by step.


And there’s your last day of school inspiration.

Make sure you’re following these great bloggers on Twitter.

  • @L_Bottrell
  • @cashjim
  • @dcarruthersedu
  • @stepanpruch
  • @Roosloan
  • @jprofNB
  • @sig225

This post was created and posted to:

https://dougpete.wordpress.com

If you read it anywhere else, you’re not reading the original.

My Own Flappy Bird


Like most people, I think, I was curious about Flappy Bird when I read about the success that the developer had with it but more importantly, the $50,000 a day that he was reportedly making from it.  I downloaded the app and played with it for a bit and got a bit frustrated trying to get a 1 for a score and so deleted it.  I don’t have time to master this nonsense.

Then I read that Flappy Bird was going to be pulled from the application stores, never to return.  I figured that this was either an indication that he’d made a gazillion dollars and just didn’t want to support it going forward.  After all, nothing succeeds like success.  Score 1 for me, Brandon.  The other option was that this was some ploy to get a lot of downloads in a hurry.  I figured that I’d help the cause.  I might never play it again but at least I’d have a little bit of history.  So, I downloaded it again.  Add two downloads to the big total for me.

Bored one afternoon, I figured it was about time that I mastered it.  I got up to 3.  Grrrr.  When I read that a friend of mine’s daughter had a pretty good score, I realized that I just wasn’t cut out for flapping.

On the UK Microsoft blog, there was a post to promote the UK Hour of Code.  It was titled “All in a Flap – How to create your very own Flappy Bird clone (Guest Post)”.  Now, there were warnings that people were posting malware in their own clones of Flappy Bird but here was the opportunity to write your own.  I wondered…

  • how would this play out for the classroom?
  • here was a chance to do something significant with Microsoft’s TouchDevelop code

The next step was predictable.  I sat down to work my way through the tutorial to see what I could do.

The tutorial was laid out in the form of a series of challenges.  Note the stars below.  Each is awarded at the end of the completion of a step.  Off I went.

greatjob

The development environment, with overlaid tutorial, is interesting.  Everything is designed to be tapped on to insert or edit your code as you go.  For this ol’ coder, the urge to use my keyboard was there.  However, I quickly boxed myself into a corner – the tutorial really was written for touch – so I gave in.  After a while, you just get used to it!  It’s not bad once you get the knack of it.  I did want to make my game a little different so instead of the suggested bat, I decided to flap with an orange.   It just didn’t cut it so I did go back and edit out the orange and replaced it with the bat.  The results made much more sense!

board

All along the way, there is a dialog to explain what would be done next.  You’re really stepping through the code development nicely.  Nothing is given to you – you have to add and edit everything.  I will admit to getting a bit frustrated but got over it in a hurry.  Once I decided to go with the mouse clicks to do the selection and editing, development moved along fairly nicely.  The only new challenge was when the desired action was on the next page of instructions.  Again, I got over that with a little patience.

The ongoing tutorial really did explain things nicely.  That will make it definitely easier to go back and modify the code afterwards.

instructions

When you’re done, it’s interesting to take a look at the code.  Having paid attention to the tutorial as I went along definitely made it easier to go back and modify the script to see what I could do to break a well put together program.   Selecting a line of code gets you back to the editing instructions.  The only thing missing was creating your own comments inline.

code

As you can see, I went with a desert theme.

desert

You’re prompted as you go to log in to save your code.  That’s always good advice.  It also gives you the ability to publish your code as an application from the web.

All in all, it was an interesting activity.  I started with the end in mind and just kept going.  Once completed, the real fun was in going through the code to see how it was developed and then modify it for my own fun and enjoyment.

You can’t beat writing your own game where you make your own rules and make things easy enough to get a high score.  I think I’m at 5.

Entry Points


 

I make no apologies when I admit my preferences and soft heart for computer science.  Over the years, no other subject has changed so much in content and pedagogical approach.  It’s a terrific computer science teacher who stays on top of all of this.

Over the years, there has been no shortage of debate as to what to teach, when to teach it, how to teach it, …

If you do reading from many blogs who address one concept of computer science – coding – you’ll find that there are a number of posts giving “## reasons to teach coding to students”.  Some talk about it generally so that it could be understood that it should be taught somewhere in a child’s educational career and others specifically make reference to why you’d want to teach coding in elementary schools.  My preference would be, given the large number of places that computers are used in other ways in the curriculum, that the earlier the better.

But the kids aren’t ready!  Really?  How many have helped mom and dad program their smartphone?  How many have their own and have customized it to their liking.  They’re already tinkering and learning.  They are ready.

I’m a firm believer that since we’re big fans of technology, we really want to ensure that students become educated users of the technology, and part of that is to just get a sense of what it’s all about.  Now, I don’t think that we’re expecting our students to create the next great web browser, but there’s so much value in knowing what coding is all about and a sense of how it’s done.  I’ve mentioned it in this blog before but I really believe in the message of Douglas Rushkoff’s “Program or be Programmed“.  Your school’s teacher-librarian needs to have a copy of that in your professional library.

Through the introduction of this awareness, it also opens the doors to the whole discipline where the students just may wish to extend their abilities.

The real question, to me, remains largely unanswered.  Where should coding, as an introduction to computer science, be introduced?  It’s amazing the number of teachers who will agree that it’s a good skill to have as long as someone else introduces it!

I’ve been playing around with Code Monster from Crunchzilla and can see where it may solve the problem for implementation.

Code Monster is a number of things.  It’s an environment to learn about Javascript (not to be confused with Java), it’s a play as you go tutorial, it’s a place to see immediate results for instant feedback, and it’s a conversation with a monster who steps you through the process.

The use of the tutorial provides feedback to the learner and gives an instant sense of achievement.  Recently, I tried it out here at dougpete labs.  (which is really a couch and two recliner chairs with a dog who wants to be part of everything)  Within minutes, my guinea pig made the comment “Hey, I could actually do this … it isn’t all that hard.”  The more I started to think about Code Monster, the more I liked it.

As a beginning learning environment, you’re not presented with a large confusing interface with a tonne of options like you would find in a professional IDE and the concept of the code in one window and the results in another window right beside generates that instant feeling of gratification that comes from writing good code.

With your friendly monster leading the way, learning is quick, efficient, and fun.  The deeper you get into the tutorials, the more you want to experience.

I can see an application like this having multiple entry points in schools:

  • in a computer studies class, an introduction to Javascript with a proceed at your own pace functionality;
  • in an elementary school classroom, where the desire is there to easily introduce coding to students;
  • in a computer club where students learn the concepts on their own in a group setting.

Working through the tutorial with the monster will indeed give a sense of what coding is about and hopefully generate enough interest to take on something else.  There is so much available once you get started – Scratch, Alice, GameMaker – and a good start to coding is a great way to ensure success.

Powered by Qumana