Category Archives: ECS

My Secret Obsession

I have a thing for elementary classrooms. While the idea of teaching the 12 and under crowd is in no way appealing, all the projects and circle time really sound fun.

Here are a few of my favorites:

This one we have used already this year. It is great for doing Octal and Hexadecimal numbers. It really gets the point across that hex and octal are a more compact way of storing large values. When you pull the cups apart you have the number written inside…I’ll try to post a picture of the Hex-Cups to make that clearer.
We already do the Analog-Binary Calculators – which my kids call Flippy-Dos, so the cups have become Roley-Dos. And seriously – the flippy-do is the easiest way to show twos comp for negative numbers.
This would be great for showing the sequencing of code. My beginning students have a hard time sometimes getting the ordering of the commands. This could be a fun way to demonstrate how important the order is. They could work in pars with a whiteboard and follow each other’s commands.

 

 

This project maps where a student is in their community. This is my next project for the CS Principles course. One of the my goals for the students is to understand that the Internet is a physical thing. My plan is to do these showing where they are on the Internet. They would be on the small circle in the middle – and then the structures that make up the Internet are on each of larger circles moving out.

This is a review game – the site includes the cards for the pockets. This would work well for AP style problems. Here is a link to how I used this with my APCS classes.
Created by Rebecca Dovi
I have spent the last 18 years teaching math and computer science at Powhatan High School in Powhatan Virginia. I currently teach Algebra 2, Exploring Computer Science/Game Design, and AP Computer Science. I also facilitate a Middle School Tech Club, Game Design and Tech Divas Summer Camps.

Logic Groups

This year in the Intro to Programming class we are trying logic groups. This past summer Robert Luciano presented this at the UVA Tapestry workshop. He’s also written about it here. This summer he gave several example puzzles which can be found in the zip file on the Tapestry site.

The idea is you put the kids in groups and present them with various logic puzzles. Getting them off the computers and collaborating to solve puzzles helps build problem solving, which is at the core of what we do.

This is our third week with the groups and so far the kids are really enjoying it. I have seen some kids that do not normally get very active with class activities get very involved in the puzzles. We are on a block schedule – so we do it the first time I see them each week, either Monday or Tuesday.

Today’s puzzle came from this site: Brain Food  It is #1, the elevator problem.

** Update – this particular puzzle stank. One kid had seen it before, and the rest of the groups got super frustrated. We’re going to try again on Wednesday with the latest edition of Bits and Bytes from the NSF. This latest issue has some great puzzles and tie ins with computer science curriculum.

Created by Rebecca Dovi

I have spent the last 18 years teaching math and computer science at Powhatan High School in Powhatan Virginia. I currently teach Algebra 2, Exploring Computer Science/Game Design, and AP Computer Science. I also facilitate a Middle School Tech Club, Game Design and Tech Divas Summer Camps.

HTML is not programming, so why teach it?

So in talking to parents and guidance counselors I occasionally get asked if a kid can jump ahead and take one of our upper lever computer science classes. My first question is always “have they programmed?” Yes, I know, programming is not the end all and be all of computer science, but for a student that wants to take the current AP Computer Science course they need to be able to code.

Sadly the answer I most often get is “yes, they know HTML”. Sigh.

For the CS Principles pilot this last year my second unit was The Internet Unplugged.  We covered both the hardware side along with how to actually make a web site. Yes, I taught HTML and CSS.

So the question is – why cover HTML at all?

One of the core themes of the CS Principles course is broadening participation. So many students have had exposure to HTML, and they all use web sites. This is the interface they use to get at the information on the web. It is an immediate way to show abstraction in action.

Plus, as we transitioned to coding students were already used to the idea that formatting and exact punctuation matters. This let us focus on the tools of programming, like ifs and loops.

And of course, CS Principles is not all about programming. The Internet is one of the seven core principles, equal to programming.

So this summer I am reviewing what we did in CS Principles last year. Honestly this was one of the better units we covered. It tied into all of the big ideas and was something we referred back to the rest of the year.

On the other hand I am not crazy about how I taught HTML. It was a bit dry – too much lecture and we got a bit bogged down. I’d like to reduce this to just 4 days.

Next year I plan on trying Thimble. This is offered by Mozilla and lets you type in the HTML interactively and see what happens immediately. It also points out errors right away.

Created by Rebecca Dovi
I have spent the last 18 years teaching math and computer science at Powhatan High School in Powhatan Virginia. I currently teach Algebra 2, Exploring Computer Science/Game Design, and AP Computer Science. I also facilitate a Middle School Tech Club, Game Design and Tech Divas Summer Camps.

ECS Unit 1: Human Computer Interaction

Human Computer Interactions (4 weeks)

Topics to be addressed:

  • Computers and the internet
  • Models of Intelligent Behavior
  • Societal impacts of computing

Resources

I have spent the last 18 years teaching math and computer science at Powhatan High School in Powhatan Virginia. I currently teach Algebra 2, Exploring Computer Science/Game Design, and AP Computer Science. I also facilitate a Middle School Tech Club, Game Design and Tech Divas Summer Camps.

ECS Syllabus

Exploring Computer Science is an exciting opportunity for ALL students to learn problem-solving skills and computational thinking. It’s an opportunity for rich cultural connections and integration with all subject-areas. 

Exploring Computer Science is designed to introduce students to the breadth of the field of computer science through an exploration of engaging and accessible topics. It is designed around concepts of computing and helps students understand why tools or languages might be utilized to solve particular problems. Through engaging, collaborative lessons, students develop computational practices of developing algorithms, problem-solving and programming with real-world situations in a safe environment.

The three themes are:

  1. The creative nature of computing
  2. Technology as a tool for solving problems
  3. The relevance of computer science and its impact on society

Throughout the course, students will gain experience in employing the following computational practices:

  • Analyze the effects of developments in computing
  • Design and implement creative solutions and artifacts
  • Apply abstractions and models
  • Analyze their computational work and the work of others
  • Communicate computational thought processes, procedures, and results to others
  • Collaborate with peers on computing activities

Through inquiry-based journals and differentiated activities students develop practical communication skills. An iterative process, students will test their designs and modify as needed. Our students are creators of technology, not just users of technology. Students analyze and develop creative solutions because they are Computer Scientists NOW! 
Exploring Computer Science develops today’s skills for tomorrow’s careers!

Topics include:

  • Computational thinking
  • Problem-solving
  • Design process
  • Web development
  • Programming
  • Data analysis
  • Robotics

This class meets every day throughout the year. Assessments are based on journal writing, individual participation, collaboration, and final projects.

view as pdf: Exploring Computer Science Syllabus

I have spent the last 18 years teaching math and computer science at Powhatan High School in Powhatan Virginia. I currently teach Algebra 2, Exploring Computer Science/Game Design, and AP Computer Science. I also facilitate a Middle School Tech Club, Game Design and Tech Divas Summer Camps.

Exploring Computer Science Curriculum

Exploring Computer Science is a course designed to introduce students to the breadth of the field of computer science through an exploration of engaging and accessible topics. The course is designed to focus on the conceptual ideas of computing and help students why certain tools or languages might be utilized to solve particular problems.

Links:

Curriculum:

Sample ECS Syllabus

I have spent the last 18 years teaching math and computer science at Powhatan High School in Powhatan Virginia. I currently teach Algebra 2, Exploring Computer Science/Game Design, and AP Computer Science. I also facilitate a Middle School Tech Club, Game Design and Tech Divas Summer Camps.

Exploring Computer Science in Virginia

This past summer CodeVA  partnered with Code.org  trained 29 teachers across the state in the Exploring Computer Science  course.

logo

One of the trickiest things in implementing new classes is figuring out what state course number it maps to, especially since in Virginia Computer Science can sit in either the math or career and technical ed departments.

The following courses are the most common for housing the ECS course. As the state department of education handles last year’s legislation allowing computer science to count as a science credit this list may expand.

Course Mappings to Virginia Course Codes:

ECS Course Mappings for VA CTE:

ECS Course Mappings Math:

Rebecca Dovi
As CEO (chief educational officer) of CodeVA Rebecca is responsible for training teachers and developing computer science curriculum as CodeVA works to bring computer science education to all Virginia students.