Showing posts with label CS Principles. Show all posts
Showing posts with label CS Principles. Show all posts

Friday, December 13, 2013

Struggling with the CS Principles Learning Objectives? Try them as Flashcards: CS Principles flashcards - Learning Objectives




One of the thing I have found most challenging in working with the APCS Principles Topic list over the last 3 years is the Learning Objectives themselves. None of them are all that hard in of themselves, but trying to make sure I am covering everything can sometimes be overwhelming. Unlike the existing APCS course, the topic list does not really suggest any particular sequence, so trying to make sure everything has been covered at AP depth can be a challenge.

Here are the LO's in Flashcard format if you would like to print them out. This has been really helpful for me as I lesson plan to make sure everything is in there. Sometimes it is fun to draw a few cards randomly and try to come up with an activity to cover them. this has helped with some out of the box combinations of topics.

**Note - these are the learning objectives as of Dec 2013. If you are reading this more than 6 months from now you should make sure they still align with the LO's. The course is still in pilot phase and the LO's are subject to adjustment as Collegeboard gets ready for the launch of the new course in 2016-17.

Collegeboard's AP CS Principles site

Sunday, November 3, 2013

APCS Principles has a lot of great places to include articles and news about computer science for student readings. Here is a summary of some of the more interesting ones I have posted on Twitter recently:



Friday, November 1, 2013

One of the biggest changes for the new APCS Principles course is the use of Performance Tasks (PT) as a part of the official CollegeBoard assessment. These PTs and a summative test at the end of the year will be used to score the kids, just like the 1-5 score they get on other AP tests.



This means our students need lots of practice writing. In my CS Principles pilot we do a lot of journaling throughout the year. I give them specific prompts to respond to every few days. We also heavily use discussion boards (more on that here) to get them reading and responding to other students work. this is especially important since two of the PTs are collaborative.

This year I am trying to keep these topics n a more organized list - here are the topics for Unit 2: The Internet Unplugged: Journal Topics for Unit 2

For their journals - I read them periodically throughout the term. I am not checking for grammar or spelling - the goal is to get ideas recorded and to start using writing as a part of their reflections on the topics we use in class.

Note - if you were using an old version of the PTs, they were updated earlier this fall. You can find the update here.

The most significant change is the Internet Task has been replaced by Explore. The feel of the two tasks are the same, but the updated version allows them to pick any innovation, not just those centered around the Internet.

For my students I am doing journal topics that connect the Internet and innovation. we'll be doing a Model Performance Task in the next few weeks, and will finish the first PT on Innovation after we finish the Unit 2.

Other writing Posts:

Wednesday, October 23, 2013

Whew, busy!

This year has been crazy, but the good kind. Over the past two days I have updated my list of what we are doing in the CS Principles Pilot so far this year. If you are interested, the list is here: http://supercs.net

Etsy shop that was selling the flashcards


Let me tell you, we've been busy. Digging into what we have covered so far gives me hope we are really moving towards something.

A side note, the Performance Tasks (nee Portfolio Assessments) have just been updated. If you are in any way working on the CS Principles project you ought to take a look. Of special interest is the new Impact PT that replaces the Internet one from the past two years.

A technique I am using this year goes back to my days as a debater. I have printed out all of the Learning Objectives on flash cards. Each time I lesson plan on a particular topic I pull the cards that relate. This approach has really let me see the connections in the topics as we go through the material, and has sparked some new ideas for journal topics.

If there is any interest let me know and I can try to post the flash cards as a pdf for folks to print out.

Friday, October 18, 2013


For the Computer Science Principles classes last week I had them define Computer Science . The Wordle below is from their definitions after Unit 1. I am planning on having them do this each unit and see how our collective definition shifts as we layer on more material. I think this might make a good writing prompt later int he year.
Other things I've been looking at:


  • Been using this site with my Algebra I kids: http://learnscratch.org/ I am hoping to incorporate Scratch and Graphing
  • Curious to Try this: http://www.learnstreet.com/teacher_signup as the AP Computer Science Principles classes start on the Internet and HTML
  • Rereading As We May Think by Vannevar Bush - this document, from 1945,  first suggests hypertext. Beyond the reading level of most of my high school kids, but some good nuggets
  • As the computer club keeps working on their 3-D printer I am looking forward to trying Blockify 
  • Interesting Video recruiting for AP Studio Art: http://www.youtube.com/watch?v=KwyeKseCShY
  • And, we just found out our CSTA chapter will get 100 Finches to play with next fall! Cannot wait.
  • And lastly made my hotel reservation for SIGCSE 2014. The one thing I learned coaching debate - make the hotel reservation early!

Tuesday, October 8, 2013

My AP CS Principles classes are finishing up Unit 1: Computers in Society.

So far we have covered hardware, from the basics of the CPU to the machine instruction cycle. They have learned binary and hexadecimal and are finishing up

Along the way they have worked together, written, and yet not written a single line of code.

IBM Wild Ducks


Odd for a programming class?

Turns out, what I originally did to keep myself from creating "just another coding class" ended up being a good decision. I have students ranging from absolute beginners to kids that have taken APCS or IBCS.

And anyone that has taught computer science knows that can be a recipe for disaster. The more experienced kids show off, intimidating the newbies, especially those that do not self identify as "good at computers". Most of this material is new to all of the kids, so no one has an advantage, other than working hard.

This also establishes that in this room, everyone has an opinion that counts, we work together and respect where we are int eh learning process.

So today we are finishing up Unit 1. My goal is to summarize what we have done and to start to look at the big ideas (Creativity, Abstraction, Data, Algorithms, Programming, Internet, Impact).


  • Fast Start: Based on everything we have talked about, what do you think computer science is? How would you explain it to someone else?
  • Finish working on their computer history projects
  • Watch this video from IBM: http://www-03.ibm.com/ibm/history/ibm100/us/en/
  • Whole Group Discussion - what is computer science
  • Poster - do a mind map with computer science  in the middle and the seven big ideas around the outside.
  • Test Review (still gotta grade, you know)



Monday, September 23, 2013

Today in AP Computer Science Principles we made the Analog Binary Calculator. We have been working up towards binary. I do not start them with the big explanation of This Is Binary.

Instead I do a series of puzzles as warm ups and exit tickets for the week or so before the actual lesson. That way by the time we get to full scale binary they have had some positive experiences and built their own understanding of how binary works.

(Why do I even do Binary? Here you go)

So for example I show them a picture of two light switches and point out they can either be on or off. Working with a partner they have to figure out how many numbers they can store using the light switches. What if we add a third switch, how many then? Without listing all the combinations can you predict how many numbers you could represent with 4 switches? This makes a great warm up activity.

The great thing about the flippy do is it is super easy to translate numbers back and forth. My stronger math kids pick up the number theory behind it quickly, while my weaker math students are successful so they will stick with it rather than tuning out.

If you also cover the full two's comp representation it is also an incredibly easy way to teach the steps.



Materials:
  • Index cards - 4x6 or larger
  • Markers
  • Scissors 
  • Rulers - helpful, but not necessary


Steps:

First you fold up the bottom 1/4, draw 8 columns, and cut the bottom flippy things like this:

Can you tell this is my white board?

Second, you label the powers of two. Then put 1's on the back of the flaps and zeros underneath as shown:



Then I have them do a few puzzles:
  • How may ways can you represent 13? 3? 15?
  • Count from 0 to 13. Any pattern with even/odd numbers?
  • What is the largest number this can store?
  • What is 01111111? 00111111? 00011111? - what is the pattern here?
The point here is, if I just tell them that there is only one way to make any base ten number in binary it goes in one ear and out the other. Snore.

If instead they are doing a puzzle, and after a few realize THEMSELVES that there is only one combo per number, they internalize that at a different level. They don't forget it.


After all this we do the algorithm to change from binary to base ten and back. The best part is when the kid in the back, the one that hates math, tells their neighbor "Hey, I actually get this".

Thursday, September 19, 2013

I have been asked to share this - I usually do this during my second unit in APCS Principles - The Internet Unplugged.

Writing is a big part of doing well on the new Performance Task assessments for the course. I have found this activity to be a great way to get them writing. I do not grade for grammar or spelling at this point. I want them writing, we can work on mechanics later.





One activity that works really well to get students writing is an online debate using a discussion board. The point of this activity is to get them used to thinking and debating a topic and responding to other students. In the beginning students tend to take a very surface approach to topics. Debating lets them really delve in and explore the why behind the points they are making.

This activity works well in several areas of the APCS Principles curriculum. It is simple to grade and really gets the students engaged in writing.
To get them ready we play a game in class to get them used to pros and cons, then we debate a current event topic online. The in class debate topic does not necessarily need to relate to computer science. For the online topic I usually pull a current event that relates to something like privacy or online ethics.
The in Class Game:
Have the students line up into two equal lines. Make one like pro and one line con.
Then explain the rules:
  • the two lines take turns
  • after a student goes they move to the back of the line
  • if you are in the pro line you must be for the resolution, if you are in the con line you must be against it, no matter your own personal opinions
  • whoever is at the front of the line earns a point for every time they
    • add a new point or
    • rebut a point made by the other team
  • No points are awarded for repeated points or responses

Once they understand the rules reveal the topic reveal the topic. As they take turns keep score.
Topics that work well are things like:
  • Resolved: the minimum driving age should be raised to 18
  • Resolved: cell phones should not be allowed in schools
  • Resolved: social media sites should be limited to people over the age of 18


As you move to the online debate a similar format works. In addition students may earn points by by responding with a related fact as long as they provide a link to a reliable source.

I usually let the online debate go on for 3 - 5 days. In the end you can add up points and declare a winner. You can even post a daily point tally. I do usually try to keep the total points close to keep everyone interested.
For topics for the online debate try to pick something currently in the news. The first time I did this activity Congress was debating some Internet piracy legislation that was being heavily covered in the news.  Computer Science is constantly in the news there is almost something in the headlines related to the Learning Objectives.

Monday, July 22, 2013

I am home for about 5 days before my next trek up to New York to work on the AP Computer Science MOOC.

In the past week I traveled from NYC to Boston for the CSTA annual conference, then on to Las Vegas for the APCS Principles Pilot II training and the AP National Conference.

Vector River Map From Flowing Data


In other words, my brain is full, but full of good things.

Unless you have been wilderness camping for the last 6 months you may have noticed a few things going on in computer science education.

I'll be posting more details about all of these projects soon, but some highlights:
  • Code.org - http://www.code.org/  - There's the video, which everyone should see. They are also building up some great advocacy resources, worth a look. Plus, I got to have dinner with Hadi and Pat. So exciting to have incredible people committed to computer science education. They are a huge part of the interest in computer science education right now. 
  • Computer Science Education Week -  http://www.csedweek.org/ - Do you have your plans yet? Dec 8 - 14th, better get on it.
  • Expanding Computing Education Pathways - http://expandingcomputing.cs.umass.edu/ - "Alliance seeks to increase the number and diversity of students in the pipeline to computing and computing-intensive degrees by supporting state-level computing education reforms." I got to attend a great workshop from ECEP at CSTA National lest week - really exciting momentum. I am especially glad to hear more about the role of community colleges in preparing our kids.
  • Exploring Computer Science -  http://www.exploringcs.org/ - They are coming to Washington DC, and I am really hoping to attend a training in the next year. I got to do a PD workshop with them at CSTA, and hands down the best PD I have attended. One of those where you walk away going "Well, the last 16 years of my career have been nice, but now I know how to make it better."
  • Hour of Code -  http://www.csedweek.org/ - they are asking folks to organize to give beginners 1 hour of code for every one of the country's 55 million school children...ideas? Let me know!
  • http://sitwithme.org/ - "Sometimes you have to sit to take a stand. Sit With Me invites you to validate and recognize the important role women play in creating future technology by taking a small but symbolic action: sit in a red chair and share your story." 
Whew! I know I am forgetting things. It has been a jam-packed summer. Please drop me a line to tell me what is going on in your neck of the woods for computer science education. 

Sunday, June 16, 2013

The class of 2013 has graduated, which means summer vacation has finally started. I got hit with the flu this past week which has made the last week extra hectic.

Finally


Posts may be a bit sporadic this summer. I won't step foot in Virginia until mid July, and then only for three days:


Hope to see you at one of these - if you are there make sure to say hello. 

I  follow computer science stuff on Twitter - so drop me a line and let me know how your summer is going. We have so many things happening as a community right now, it is really exciting to see all the hard work so many people have put in through the years building a k-12 computer science presence really start to take off. Here's hoping big changes are coming - because every kid in the United States should have the opportunity to take a computer science class.




Monday, May 27, 2013

This has gotten to be a bit of an obsession over the past few days. Using paint to create electric circuits.

Seriously, it is all I can think about. I am making a lot of  "this sweater is OK, but it would be awesomer with some LED light bulbs" statements that make my children hover between interest and a deep tween embarrassment that only mothers can induce.

It started with a CNN article on Pens that can be used to draw circuits. I know, great idea.



Except they are from the UK, and kind of pricey (12 pounds which is about $18 today). And according to my sources on twitter the conductivity isn't great once it is dried over long distances. That said the site has some nice classroom kits that include thumbtack batteries. There has been a hollow empty void in my life that is filled now that I know thumbtack batteries exist - you know what I mean?

Also according to the website these pens are available in Radio Shack, so good for those of us stateside.

Think Geek Conductive Paint

For about $30 you can get a 50ml tub of paint from Think Geek. I have visions of renumbering the computers in my lab using this ...possibilities are endless.

This appears to be the same company, so it is probably the same stuff that is in the pens, but it is a better price point for just the paint.

I also found a video describing how to make copper based conductive paint. Sounds fun, but given my overall free time...I might just head to Radio Shack.

MIT also has some resources listed:



One of the main reasons I am interested is the application for wearable electronics. I am curious to see if the paint can be used to attach conductive thread to the power source. I'll let you all know if it works.

Need more inspiration? Here is a video of interactive wallpaper made with conductive paint. It plays music.

We do some very simple circuits and logic gates in the APCS Principles class suing play-doh. The play-doh works well because it can be changed and experimented with very easily, but the stuff dries out so nothing can be taken home. This paint would make a nice extension, especially if they can make something to take home. Prototype in play-doh then paint for permanent.

Monday, April 29, 2013

The original post has lots of updates - amazing how many web sites are available for coding.



List is here

As I get time this summer I will try to update as to what websites work on tablets/Chromebooks.

Friday, April 26, 2013

Still working on Logic Gates in the Cs Principles class. Today they constructed logic gates using play-doh.

OR Gate
We started we watched this video connecting logic gates, AND and OR gates to binary numbers.

Before we did the logic gates I gave them a few challenge problems. I gave them a truth table and they had to construct a logic gate to produce the result. We used the logic.ly website to demo. Want to try one? Here you go:

Then they made logic gates with play-doh. The materials are fairly cheap. The most expensive part are the batteries and the battery holders (these run about $3). The good news is this activity works well with groups of 3 - 4 students, so you don't need a lot of these.

Materials:


I personally do not use the insulating play-doh. I am sure it would be helpful, but I barely have time to cook dinner for my own kids this week, much less make craft supplies.

I left the instructions very open ended. Each group got two battery packs, an LED and some play-doh. The instructions were to make an OR and an AND gate, and take a picture of each.

Post on PlayDoh circuit Ted Talk

Thursday, April 25, 2013



This is a free online course from Education Portal. The class is Business 104: Information Systems and Computer Applications.

Not all of this applies to the CS Principles class, but the section on the Internet offers some good explanations ns of the Internet at a more technical level.

http://education-portal.com/academy/topic/internet-intranet-and-extranet.html

Tuesday, April 23, 2013

In CS Principles we have moved on from Data and are now covering Questions. In this unit we cover logic gates and if-thens. I want the students to make a connection between the hardware, all the binary we did earlier in the year, and how conditionals work in programming,

image from logic.ly online demo


Logic Gates Video

This explanation starts with a scenario - What if you need to trigger an alarm in a room with two sensors?

I love this approach. So often we start with the truth table, then go to a scenario, and by that point you have lost them.

After this we used the Logic.ly website to let them try making their own logic gates.

Next class we'll be watching this video explaining how the OR and AND gates are made. The students had a lot of questions about this today and this makes it pretty clear.

Wednesday, April 17, 2013

The applications to pilot the new CS Principles class are due today. As folks were working on their submissions I have had several questions about books I used as a part of developing curriculum for the course.



I want by starting with a caution. Relying too much on one book runs the risk of locking in your curriculum. The course is most powerful when you have the flexibility to adapt what you are doing to where the students interest point. Relying on only one book you run the risk of robbing them of this experience.

Also, you as the teacher need to be driving your course. Obviously we need materials to fill in gaps in our own knowledge, but you ultimately need to develop these materials to meet your students where they are and pull them into the course.

So, now that I have warned you, here is my partial  list of books I used over the past two years.



I am curious, what books have you all been using? Anything unexpected?

Monday, April 15, 2013

(This is a day by day of the Data: Lets do the Numbers Unit in CS Principles. The overview is here.)

Done!

Cartoon from the National Archive 1919  - Redrawing Europe's Map


Today the students finished the data portfolios.

I had been thinking this had to be a paper - it is funny in teaching, we tend to fall back to that, worksheets and papers.

When I came in today and reread the requirements I found:

A collaboratively developed artifact that communicates a detailed description of your  group’s investigation, the questions, and your collective findings.  You may use any form  of digital artifact (e.g., a report, video, presentation, visualization, or combinations of  these) that allows you to best communicate your investigation and findings.  You and  your partner will each submit the same artifact.  
So much better. Some groups did Prezis, some did Power Points. Some went ahead and wrote a paper.

They finished these with enough time to their individual reflections.

An individually written document that addresses the investigation. Each group member  must write her/his own individual document. In writing the individual document you  must adhere to the Task description above and the Requirements description below in  supplying details of your investigation.  

So with the proper setup we finished it in three class days.

Friday, April 12, 2013

(This is a day by day of the Data: Lets do the Numbers Unit in CS Principles. The overview is here.)

So far the Data Portfolio has gone really well. Students are excited about their data sets and questions. Today we moved on to using these data sets to explore the questions they posed last class.


Number Crunching on the Eniac



Today I also realized I have been worrying about this too much. I was coming at this as a math major that hated statistics and absorbed as little of it as possible. I was worried about all the high end statistical analysis they need to do. Really I was making it too complicated. 

By giving them some positive experiences with data early in the unit, and steering the process of asking questions and selecting a data set they were in a position to handle the computation part of it with minimal trouble.

I have also realized there are some institutional barriers to getting this portfolio done. Some things teachers really need to think about ahead of time:


  • Computer Equipment and software. Due to budget cuts we still use Office 2003. Students have had difficulty with some of the larger data sets and Excel.
  • Internet filtering: Many data sets were blocked by our school filters. Also sites like Google Docs  are blocked, which is making collaboration between students difficult.
  • Limited storage space on the school network makes it hard to store the datasets. 
  • Many of my students do not have Internet access at home. In addition they live an hour or more away from school and staying after is not possible for many families. This is limiting their ability to collaborate outside of school. I am having to provide a lot of class time for them to write.


Bumpass Virginia - a real place

(You can see all the CS Principles documents here)

Here is the listing of what we did:

  • Work with Partner: today they started looking at their data and answering their questions. Today was a half day due to Kindergarten registration so we only had 45 minutes. Several groups are having to come back to the lab to finish up.
  • The prompt for the Data Portfolio rubric is:
apply computational tools and techniques to answer your questions, e.g., by finding patterns in the data, by transforming or translating the data, or by finding connections between the data and other sources of knowledge

Thursday, April 11, 2013

(This is a day by day of the Data: Lets do the Numbers Unit in CS Principles. The overview is here.)

Today we finally started working on the Data Portfolio. Today the focus is selecting a data set and creating the questions. My plan is next class they start really working with the data.


From the national Archives - the intent was a photo of a mine,  but found this instead  Toilet at head of stairs leading from basement in vacant house of company housing project. Industrial Collieries Corporation, Barrackville #41 Mine, Barrackville, Marion County, West Virginia., 06/13/1946 - hilarious!


They were really engaged in this today. I let them choose three people they would like to work with, and three they would not. I then assigned partners based on these requests. It was pretty funny, every student either selected them self as someone they want to work with or someone they did not want to work with. We all had a good chuckle at this.

The list of what we did is below. They really chose some interesting data sets. Many chose to start with Data.gov and search from there. Some of the topics they have chosen:
  • Israel Palestine
  • Traffic Fatalities as relate to Speeding
  • Crime Statistics
  • Government Spending in the US
  • Average Income per State
  • Violent Crime Rates
  • Mining accidents

The mining accidents was a bit of a head-scratcher, but it has turned out to be pretty interesting.



Here is the listing of what we did:

  • Fast Start:
    1. Do the Partner Selection survey 
    2. From the work we did before break describe the kinds of question we can answer with data? What kinds of questions can not be answered?
  • Journal Response: Building your Questions - Today we are building your questions about data. With your partner brainstorm 3 areas you would like to investigate with data. The link we used last class to some data sets is below.
  • Meet with teacher to discuss data set selection - we discussed:
    • What is the source?
    • Is it at least 5000 pieces of data?
    • Do you think this data set can answer your questions? How?
  • Journal Response: Develop a set of 3&5 questions that will be the focus of the investigation and submit them here. 
  • Online: Submit your dataset link
  • Start writing: They started on the collaborative part of the paper.
  • The first part of your paper will include: (this is from the data portfolio rubric)
    • Overview of your investigation: a description of the intent of the investigation and how it will be used to gain insight and knowledge;
    • The set of 3 to 5 questions that you will answer.
    • Explanation and justification of how the data and other sources used in your investigation (if any) are appropriate for exploring and answering the questions.
    • Information about the data set(s): a description of each data set; the URL of the data set; the date on which you accessed the data; and where possible a reference to the data set from  a written work (e.g., an article, book, or blog post).
    • Type these out in word and submit the file here. ALL partners must have a  copy of this file and submit it before leaving today.

Saturday, April 6, 2013

Code Lesson: Crunching Public Data

This course is available for pre-enrollment at Code Lesson.

The course Description:

Go beyond the spreadsheet! Crunching Public Data is an introductory programming course intended specifically for public- and private-sector knowledge workers who want to make sense of data stored in tabular format, then analyze and visualize it in meaningful ways. In the course we make use of actual data from the US government site data.gov to give students real-world experience with data analysis, particularly with data sets in the megabyte to gigabyte range that are larger than spreadsheets can typically handle.

This has a lot of promise for the CS Principles Data Portfolio - can't wait to see what they cover. The plan is to use Python to do the processing.

Subscribe to RSS Feed Follow me on Twitter!