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.

Try it yourself


If you’re like me, you probably hear and read a lot about this.  “Chromebooks aren’t real computers”.

I always like to challenge back with a why?

The answers are typical – it doesn’t run Photoshop.  Or, I’m not always connected to the Internet.

So, I’ll add a reply to that – “When was the last time you used Photoshop?”  “Did you buy your current computer just because of Photoshop?” “If you could install a program on your Chromebook and could run it offline, would that change your perspective?”

Now, the misconception of a Chromebook’s capabilities undoubtedly stem back to the beginning when it really was a browser in a box needing an Internet connection.  It’s just that it’s come a long way since then but the Internet never forgets.  Neither do some of the silly people who still maintain that it’s just a browser.

In fact, the whole concept like the Chrome browser and Chromebook has come so far.  And, you’re not limited to just that; modern Chromebooks run Android and some are experimenting with Linux.

And yes, it’s not the product of universal choice in schools.  I’d be up in arms if someone indicated that a Computer Science or Drafting or Visual Arts program would be equally as served.  But, there are so many other areas where the Chromebook does a terrific job.

So terrific, in fact, that we’re now seeing that Microsoft is developing a version of Windows to put computers at the same price point.  That’s going to be interesting.

In the meantime, you owe it to yourself to get yourself up to speed.  To that end, you should check out the Chromebook Simulator in your current system.

chromebook

Even if you are a Chromebook user, there’s always something new to learn.  Maybe a little time in the simulator will change the opinions of some or make others more sophisticated users!

CSTA’s 2015 Annual Conference is Drawing Near


DFS

With the Computer Science Teachers Association’s annual conference coming up in July there are a few things we thought you should know now that we’ve sprung into spring and we’re less than two months away:

– Several workshops are at, or nearing capacity

– There will be NO onsite registration for workshops, so if you are interested you must sign up online in advance

– Housing reservations close on: June 17

– The online registration deadline is drawing near: June 26

– We will be providing workshop and conference certificates for CEU’s (check with your state board for regulations/requirements)

The bottom line is, we don’t want you to put off registering any longer. This year is sure to be amazingly, wonderful, and memorable. Please come join us at DFW Lakes Executive Conference Center in Grapevine, Texas, July 12-14. http://www.cstaconference.org

If you have any questions, please contact Tiffany Nash at: t.nash@csta-hq.org.

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.

Hour of Code Resources


As I noted in yesterday’s post, I hope that classrooms continue to incorporate coding into learning activities.  There are so many benefits and anyone with any kind of crystal ball can only see that the importance of being able to take control of one’s sure isn’t going to decrease.

To aid the cause, I have created a Pearltree of Resource for the Hour of Code.  There have been so many blog posts, newspaper articles, and class pages devoted for the advocation and sharing of successes.

I tried to focus on just the classroom room resources that one could use.  There were many developed and I’m not naive enough to say that this is the definitive list.  However, I am bold enough to say that this is a great place to start!

coding

You can access the Pearltree here.  Alternatively, I created a Learnist board with the same materials.

If you know of a resource that should be included, please let me know the resource.  I’d be happy to add it.

What Will You Do Now?


Last week was Computer Science Education Week.

Many people were involved with the Hour of Code.

If you read the blogs and stories that permeated the media, you’ll know

  • kids had a whale of a time;
  • teachers hopefully made the connections between coding and their regular curriculum;

For me, I enjoyed the Angry Birds activity from Code.org

I downloaded and really enjoyed Codecademy’s iOS app.

But, I wonder.  Are things done until there’s a similar push next year?

I sure hope not.

Hopefully, students and teachers have seen the benefits of coding.  Hopefully, school administrators will be supportive of more coding initiatives within their schools.  Hopefully, schools and school districts will recognize the need for solid professional learning opportunities for teachers.  One excellent opportunity is the CSTA’s Annual Conference.  This year’s event will be held in St. Charles, IL, July 14 and 15, 2014.

Let’s hope that people find a way to keep the momentum.  Search and bookmark Hour of Code Resources.  There’s a great deal just waiting to be used.

Why Coding?


If you do a great deal of reading online, you’ll have discovered a great deal of messages about the Hour of Code during Computer Science Education Week.  It seems like a great movement to expose all students to just what coding is all about and perhaps to inspire the next generation of computer scientists.

One article that I read stood out: No, Mr. President, Not Everyone Needs to Learn How to Code.

With all of the good news stories about coding activities happening in classrooms, I was drawn to this to investigate the other side.  The article tries to draw the intention from the US President’s statements and does offer some realistic conclusions.

As every computer science teacher will tell you, not every student in any computer science class will go on to write the next big Angry Birds program.  But, increasingly, the underpinnings of computer science take on importance for just surviving and staying on top of things in a technology driven world.  The Ontario Ministry of Education has a terrific curriculum here.  As well, in Ontario, the Association for Computer Studies Educators continues the process of ongoing professional learning among its members.

Pat Yongpradit, now at code.org shared some good news with me yesterday.

While I personally would like to see all students as programmers, and I’ve been a long time advocate that every student take at least one course in computer studies, it still isn’t a reality.  If it would only be acknowledged, that there’s much more that follows a student when she/he exits a computer studies course.  It’s an understanding that she/he can become a master of their devices and don’t have to rely on someone else for assistance.  I’d like to offer three experiences that could have been averted with some understanding of how computers and computing devices work.

Recently, I was at a food court in a shopping centre.  I wasn’t deliberately trying to eavesdrop on the teenagers next to me but you couldn’t help but hear the conversation if you were within 10 metres of them, it was so loud.  It went something like this.

  • She:  I don’t have an iPhone, I had an Android but there has to be a Settings icon
  • He:  There isn’t one.
  • She:  Yes, you have to be able to configure it somehow.
  • He:  Here – you do it then – you took computer science

and then he slide his phone across the table to her.  (I left out some of the more colourful language).  She got it and tap, tap, tap – problem solved.  Then she explained why he needed a password on his phone.  He didn’t totally get it, but she did.

This happened a while ago.  I got a phone call from a teacher in the evening.  Dreamweaver was big at the time, being Ministry of Education licensed with teacher takehome rights, and she had asked her friend for a copy to install it.  She couldn’t get it to install.

  • She:  Well, I got it from #####.  She knows computers and says that it will work for me.
  • Me:  OK, when you put the CD in the drive, what happens?
  • She:  Nothing.
  • Me:  OK, eject the CD, make sure the coloured side is up and try again.
  • She:  Nothing.
  • Me:  What colour is the CD?
  • She:  Blue.
  • Me:  What kind of computer do you have?
  • She:  A Mac
  • Me:  You’ve got the Windows version of the software.  You’ll need to ask for the Mac version.
  • She:  But ##### said it would work.
  • Me:  Well, it won’t.  You’ll need to get the right version
  • She:  #$*&#$!$^ Well, you’re just wrong.  Click!

I did contact ##### the next day and got the right copy and things got straightened away.

The third example is one that I think everyone can deal with.  There’s nothing that tests your mettle more than configuring a printer, a mouse, or anything bluetooth / wireless.  It’s that conceptual understanding of just what’s happening that can be so difficult.  Depending upon the course in computer studies, you’ll have the opportunity to build a computer, or replace a card, or attach to a wireless network, or program a robot, or write a piece of code to make that silly inanimate object do your bidding.

You do have to feel sorry for those of us who struggle just to stay even.  Technology continues to get more sophisticated and there is a desire to get the most from the device that you’ve paid so much to acquire.  With all this sophistication comes a need to just get your head around what is happening.  There’s where coding comes to the rescue.  It’s more than understanding a language or languages.  It goes to the fact that you can be in control of the device.  You can make it do what you need it to.  You are the master of it.

Given that as the ultimate goal – doesn’t it make sense that all students have experience coding?