Build Classroom Community with Coding Team Builders!

Back to school means old faces, new faces, and getting to know each other in a new classroom community. We know fostering collaboration and building an emotionally supportive environment positively impacts academic achievement and developing a community from the start is key.

Team building activities that promote critical thinking and collaborative problem-solving are a great way to kick off the year with your students and develop a strong sense of community that works together from day one. Traditional team builders like “The Human Knot” are great, but what if we could use coding and computer science concepts to get to know each other?

Here’s how:

Variables

In programming, variables store information in a program. The information is referred to as values, and can be either text or numbers. You can think of a variable like a container with a label that stores related items inside.

Strings

A string is a variable that stores values that are groups of characters, like a word or phrase. A great example of a string variable is a name: a name is a value that is used to identify a person.

Name Games: Back to school name games that help students get to know each other are a great opportunity to introduce string variables. Explain to students that they represent a variable and their name is a string that is a value associated with them. There are tons of name games out there, get creative and have fun!

A simple and silly name game that can get students thinking about string variables can be as basic as students going around a circle and choosing a word that goes with their name (their favorite food, sport, a rhyme, or a letter that matches the first letter in their name). For example, “Ashley Apples” or “Mike Bike”. Everyone says their own name and the names that came before to help get to know each other!

Integers

Integers are values that are written and stored as numbers.  Integers are variables that store values just like strings, only the values are numbers and not words.

Paper Bag Share:  Each student has a paper bag and labels the bag with a word or topic that describes something about them. The topic must relate to the student and needs to be something expressed in numbers. Get students thinking about things they have that will tell a little bit about them.

An example would be labeling the bag “Siblings” or “Pets”.  Students would write on a piece of paper how many siblings or pets they have (0, 2, 4, etc.) and place the value inside the bag. You can have students choose any topic  to represent a variable and have them place a related value inside.

Arrays

Arrays are ordered lists of variables that include both strings and integers. Arrays keep related values organized and in a specific order.

Time Capsule: As a class, make a time capsule for the year that represents an array.

  • Name the array based on the grade or class name, like “4th Grade.”
  • Students write down their expectations and goals for each month of the school year on separate pieces of paper.
  • Students place each of the 10 “values” inside the time capsule in order from September to June, keeping the values organized chronologically in the time capsule.

Object-Oriented Programming: Objects, Classes, and Properties

Objects and Classes

Classes hold information about an object and allow us to create new, individual objects based on these details. A helpful way to explain classes and objects to students is to think of basic classification: grouping objects based on their similarities and differences.

Activities that allow students to explore their similarities and differences will help students understand classes and objects in programming while getting to know each other.

Properties

Properties are special types of variables that are attached to an object and describe it.

Students can think about themselves as an object and things that they have as properties. Any team building activities that allow students to describe themselves and each other will help students understand properties and objects in programming.

We’ve gone ahead and created a sample activity for you that will help students in grades 3-5 learn about variables and properties while engaging in back to school team building.  Get it here:

DL Team Builders Here

Like what you see or have ideas? Leave it in the comments below!

#KidsCanCode 8/16/16 Kick Off Coding!

Welcome back everyone! We chatted with teachers all over the United States during the first #KidsCanCode of the fall! Take a look at this week’s #KidsCanCode Chat, moderated by Kodable, to get tips from teachers who are teaching code in the upcoming school year.

Don’t forget to join us next Tuesday for our Back to School Webinar. Same time as the usual #KidsCanCode, but this time you get to ask the questions! RSVP here ->

Code your Back to School Procedures!

An elementary classroom without clear procedures for daily routines means chaos. As you head back to school and get your classroom operating like a well-oiled machine, consider including some coding concepts to make it fun and frontload computer science lessons you’ll teach later in the year!

How do classroom procedures relate to coding concepts?

Every transition throughout the day requires clear, rehearsed routines that keep everyone safe and in an efficient learning environment. Procedures help us avoid wasting precious time, keep students on track, and allow for 30+ humans to function together in one room- a miraculous feat when you think about it.

Procedures require order, rules, and often silly names that direct students to perform a certain set of actions (think “Criss-Cross Applesauce,” “Put a bubble in,” etc.). These are all elements of programming concepts used in programs to direct a computer to carry out tasks- making them perfect examples of how we can relate programming to real life for our students.

Sequence

We know that in programming, sequence is the order that commands are executed by a computer which allows us to carry out tasks that have multiple steps. In programming, we direct the computer to perform multiple steps in the correct order and it allows us to carry out a task.

In the classroom, students have to perform multi-step tasks as well, such as washing their hands, transitioning to lunch, or coming in from recess. Think about some routines that are specific to your classroom and how they are a sequence of steps put together: this is just like how a computer carries out tasks and will help students understand this process for computers.

Conditions

In programming, conditions are basic “if, then” logic statements that modify how code is executed; making them a key part of the decision-making process for computers. Conditional statements are basic cause and effect: “If this, then that.”

In the classroom, students experience conditional statements daily as they follow classroom rules and guidelines (or break them!).  Using conditional statements will help students think about and set classroom norms together, and make conditional statements easier to understand in programming down the road. Integrating conditional statements into classroom procedures will help students understand how stories can alter and the role programmers play in changing a computer program’s path.

Functions

Criss Cross Apple Sauce Function

 

In programming, a function is a named sequence of steps that can be reused and easily called on over and over again.

 

Classroom management strategies are a great example of a function: teaching students a sequence of steps and giving it a silly name that you can say without having to direct students through each step in the process, every time.

In the classroom, functions can be a lifesaver! Getting students to do a series of tasks in one motion by calling out a  name can keep things in order and on task; which is what we all want for a productive learning environment.

We’ve taken the time to make k-2 example mini-lessons that you can easily tailor to your own classroom procedures:

Download Mini Lessons Here

To help yourself understand the programming concepts and how they can be used with your back to school procedures, watch our videos and share your ideas in the comments below!

Teacher to Teacher: Welcome to Kodable Academy!

Our mission has always been (and will always be!) making it as easy as possible to teach programming in elementary school. For us, this means equipping teachers with the  knowledge and understanding needed to teach computer science, without adding to the heavy workload and demands teachers already face.

Today, we are thrilled to announce the kick-off of Kodable Academy! We’re bringing you teacher to teacher resources on foundational programming concepts. You’ll learn right alongside us, and feel good about the content you’re delivering to your students. Don’t worry, we’ve got you!

What it looks like

Kodable Academy is a video series of short mini lessons (less than 5 minutes) that teach you foundational programming concepts. Each video explains the programming concept, gives a real life example that makes it easy to understand (like making a peanut butter and jelly sandwich), explains how the concept is actually applied in programming, and why it all matters. Technical jargon and abstract details? No thanks, let’s keep it simple!

Our first video teaches about Sequence, the most foundational concept in programming. The rest of the videos in the series build on Sequence, and follow the same “teaching” structure:

Who it’s for

You and everyone! Made by a teacher for other teachers, we want as many teachers as possible to feel confident taking on computer science. Our Kodable Academy resources are free and available to the public.  You’ll also find it easy to access through Kodable’s Helpdesk, registered Kodable teacher or not. We believe everyone should have access to knowledge and we hope you’ll share!

What it means for you

You can feel confident teaching computer science to your students, whether you have a coding background or not! You’ll have a better understanding of the lessons you’re teaching and the tech tools you’re using in your classroom- from iPads to robots. Need to come back to a concept? No problem! You’ll always have a quick resource at your fingertips.

Teachers already do so much. In taking on computer science, we hope Kodable Academy will be a valuable learning tool that gets you just as excited as we are about the future of computer science!

Watch Now!

Let us know what you think of Kodable Academy! Anything else you’d like us to cover? Leave it in the comments!

#KidsCanCode 6/28/16 Implementing Computer Science

We had a great time chatting with teachers in our last #KidsCanCode of the summer! We talked all about implementing computer science, from past experience to piloting new programs! Read more for details and ideas.

Full Implementation: Step 4 to Implementing Computer Science in Elementary

This is the final piece of our 4 part series covering each stage of implementing computer science in elementary school, based on thousands of conversations with educators. 

Full implementation- it’s go time! You’re ready to implement computer science in elementary schools when you’ve found a program that has proven benefits and met your goals. Testing the program out in the form of a pilot with a small sample group helps you analyze outcomes to better understand your long term goals. At this point you are ready to roll the program out on a school or district level and fully offer computer science to your students. HOORAY!

What Does Full Implementation Mean?

  • What is full implementation? Full implementation is the adoption of a new program or curriculum at a school-wide or district-wide level. This is what you’ve been building up to!
  • Who is involved? Administration, teachers (tech and general education), parents, and at times the Superintendent. This is an all-hands on deck situation; shiny and new! Everyone has a different role with varying degrees of involvement when full implementation is happening post-pilot. Expect the technology teacher, general classroom teachers, and administration to be on the “front lines.”
  • Logistics: You should already know how and where computer science fits into the daily schedule (for each class, grade, and the school) from testing the waters during the pilot stage.  The progression of the program is clear.  You have an actionable plan to meet goals and move students through the program successfully.  Pilots are often free or less costly, but moving to full implementation almost always includes purchasing. Get our purchasing tips and helpful funding ideas and don’t forget to share pilot data with decision makers!
  • Goals, learning objectives, and data: Results (qualitative and quantitative data) from the pilot stage have been analyzed and goals have been clearly defined for a full rollout of the program. Objectives are clear and the entire team is prepared to collect data during the first few years of implementation. It’s important to note that full implementation takes time to evolve beyond year 1-set goals for years 1-5 and each year adjust the structure accordingly
  • Staff Involvement: Every school or district is different! However, across the board we see professional development as a key ingredient to success. Teachers need to be prepared and have access to any and all resources that will ease the transition. It can make or break the implementation process!

4 Tips for Fully Implementing Computer Science

1. Prepare the Team!

Implementing a new program of any kind requires getting everyone on the same page and feeling confident.

  • Make sure teachers have the knowledge they need through proper staff training, professional development (ongoing!) and resources to implement computer science.
  • Help general classroom teachers understand the program if computer science is going to be specific to technology class. Get them involved by inviting them to your classroom
  • Allow collaborative planning time for staff . This will help students have consistency across classes and classroom teachers to integrate computer science into math and ELA. Need collaborative planning ideas? Get them here!

2. Show, Don’t Tell

Don’t talk about it, show it! The pilot is going to be a key factor in showing the value of implementing computer science in classrooms and setting the tone for those getting started.  You can talk about something great until you’re blue in the face (or your audience is falling asleep). The magic comes when people see and interpret the value on their own.

  • Have photos, data, and student work examples available for others to see (in the classroom, hallways, website). Read about one of our star teachers, Brian Adams, and how he shared the value of computer science with his students’ families!
  • Present to other teachers and parents at meetings or family nights.  Older students can show their work, demonstrate how to use the program, and display what they’ve learned!
  • Create opportunities for new computer science teachers to watch others; specifically teachers who gained experience during the pilot stage.

3. Goals, Goals, Goals

Use the pilot experience to show the importance of goal-setting and help you set long-term goals. Model for other teachers how to set computer science goals and think beyond just one year.

  • What do you want students to be able to do?
  • How do you want to integrate computer science across content areas?
  • How do you want to see students apply what they’re learning?
  • What academic results are you looking for?

Thinking beyond one year will allow you to see big-picture goals and think about the ultimate, end goal you have for all students. The second half of setting a goal is keeping up with it! Successful implementation means monitoring your goals. Check in with teachers and students regularly and iterate if necessary.

4. Include Parents!

 

According to 90% of parents in the U.S., computer science education is something they want their kids to have as part of their schooling. More often than not, families want to be included and help in some way.

Not sure how to get parents involved? Here are some favorite ways our Kodable teachers have shared with us:

  • Communicate: Be transparent and equip parents with the knowledge needed to be a part of it! Send home letters from both teacher and student, share about your school implementing computer science on your school or class website, and give parents the opportunity to see it in action.
  • Homework: Send home information about the program and how students can practice at home. Homework can be fun!
  • Family coding night: Students act as teachers and show parents how to code! This can be exciting for everyone and really empowers students and gives them ownership.
  • Family conferences: Students lead the conference and talk about their progress, challenges, and successes. Teachers act as facilitators and students lead the conference.

Have you gone from piloting a computer science program to fully implementing in your school or district? We want to hear about it in the comments below!

 

 

 

 

Piloting: Step 3 to Implementing Computer Science in Elementary

This is part 3 of a 4 part series where we will cover each stage of implementing computer science in elementary school based on thousands of conversations with educators.

After casual exposure and experimentation with multiple options, you’ve had your “WOW!” moment and you’re ready to pilot one program with structured goals and meaning. When piloting anything new with goals of expansion down the road, you likely have the support of administration and colleagues and are no longer the lone wolf. We’ve worked with thousands of teachers and administrators in this stage of implementing computer science in elementary.  Here are some tips to successfully move from a small-scale pilot to full implementation.

What does a pilot look like?

  • What is the  pilot stage? The pilot stage comes after casual exposure and a structured experimentation and is the initial launch of one specific program. The pilot stage is the final step before a full, school or district-wide implementation and serves as a “test run” to prepare and learn from.
  • Who is involved? In the pilot stage, school administration is involved, as well as at least one teacher participating in the pilot. At the district level, a superintendent may be involved as well, and parents are aware of the pilot programming happening in the community.
  • Logistics: School-specific logistics are hashed out in the pilot stage. This includes who is teaching, how often, where the program fits into the daily schedule, what resources are used, what devices are being used and how.
  • Goals, learning objectives, and data: Goals and learning objectives are clearly defined, and a method of data collection is established to evaluate the results of the pilot. This is essential moving forward, as data-driven results will drive instruction and support the value of the program you’re piloting before implementing on a larger scale.
  • Training: The teacher or teachers piloting the program are prepared and have taken the time to get to know the tools they’ll be using. At this stage, teachers should feel confident and supported.

5 Tips for Piloting a Computer Science Program

tumblr_nzasjppYew1sov1ino1_500

Set clear, measurable goals.

Leading up to a pilot, you’ve experimented with different programs and your goals have developed or shifted accordingly. When kicking off a program pilot, your goals need to be clearly defined and measurable in order to evaluate data or results that demonstrate student outcomes. This is essential to move forward; your administration will want and need to see data that proves results and supports the awesome anecdotal proof you’re gathering in your classroom.  We suggest sitting down and writing out your goals for the year before getting started with your students! Feeling ambitious? Set goals for the next 5 years! You’ll get anidea of where you want to end up.

mJRa4GD

Start small.

School districts start small by piloting programs in a few schools before adopting a district-wide program. At the school level, we often see pilots beginning with one class or grade (depending on the school size). Then you can expand to include the whole school. By starting small, you have a more focused sample size that you can work with intensely, establish logistics, and flexibly bend as you learn during the pilot.

GIF Dance Party

Let people in on the magic!

To go from a pilot to a school-wide program, you need support from administration, colleagues, and parents. You want everyone to be excited about the learning process and potential. Help everyone understand the extent of what you’ve started!

Invite administration, colleagues, and parents to see you teach a lesson. If you can’t (or your colleagues can’t) find a way to witness it live:

  • Record a lesson and ask for time to present at PD or a school event like Open House or Coding Night.
  • Share documentation and photos on your classroom walls, bulletin board, or class website.
  • Have students present and talk about the work they are doing and show parents and staff how to use the program.

Having support and excitement during the pilot is a catalyst for full implementation and will get everyone excited about computer science in elementary.

dGf5sn

Have a scalable plan.

Consider logistics that will affect the whole school before starting the pilot:

  • What devices will be used and are there enough?
  • Does the school have security or firewall issues that will need to be resolved?
  • Is there opportunity or time to train staff?
  • Will it be isolated to technology or integrated with the classroom teachers?
  • Is there a plan to purchase (budget money set aside, grants written, funding secured) and is everyone on board?
  • How will it work in the schedule (daily, once a week, used during one quarter or semester, etc.)?

Lets-Do-This

Being prepared is half the victory.

It is important that the teacher or teachers piloting the program are prepared. Take the extra time to review the program with everyone participating, and offer training to those who need it. Contact the program or software company to see if they offer professional development or support to teachers piloting the program. Being prepared will pay off in the long run!

tumblr_m3azuapgfx1rncsuho1_1280

Fail forward.

You will fail. Failing forward is about embracing failure as a learning experience. Utilize the opportunity to be better next time, knowing the purpose of a pilot is to learn and prepare. At times, you may feel like you’re in over your head or you may not see the immediate value in what you’re doing but approach the experience ready to fail forward. It will have long-lasting benefits personally and professionally!

Have you conducted a pilot in your school? Tell us about something you learned in the comments! 

Experimentation: Step 2 to Implementing Computer Science in Elementary

This is part 2 of a 4 part series where we will cover each stage of implementing computer science in elementary school based on thousands of conversations with educators.

An iPad loaded with all of the latest and greatest coding apps can make you feel like a kid in a candy store: you want to sample everything before making a decision. Thousands of teachers started using Kodable as part of a “try it all and see what sticks” experimentation, are now implementing a computer science curriculum in their elementary schools. We have learned a lot from teachers about the experimental stage of computer science education and how it can lead to piloting one CS program school-wide and we’re excited to share our favorite tips!

What does the experimental stage look like?

  • What is the experimental stage? The experimental stage comes after casual exposure to coding and programming education in the form of apps, games, or unplugged activities not necessarily aligned with any objectives.  This stage is centered around exploration and experimenting with what will work, answering the question, “How can we implement this with more meaning?” Experimentation often takes the form of small-scaled structure around coding; usually after school coding clubs, lunch clubs, or coding in an after school setting.
  • Who is involved? At the experimental stage, it’s often one teacher (usually the technology teacher), after school staff, or volunteers getting their feet wet with coding. Sometimes the administration is leading the charge, or has programming on their radar but not ready to fully implement a clear structure for the school yet. The experimental stage is monumental in laying the groundwork for a strong support system and eventual large-scale rollout.
  • What resources are used? Teachers start with what’s free. Once it’s clear that a program has enough value to be purchased, schools find a way to get funding or include it in the budget. We almost always see teachers start with free content, trial periods, or free programs and once the benefits are clear the purchasing process begins. Closer to the pilot and implementation stages is when the financial investments for full computer science programs happen over  apps and free trial lessons.
  • What logistics are on the radar? During the experimental stage, the nitty gritty details aren’t quite hashed out but are important to be thinking about. Teachers are trying different things to find the best structure, where coding can fit into the schedule, and thinking about how to implement a fully structured program with meaning.
  • Where do goals and learning objectives come into play? Goals are essential to rolling out any new academic program, and computer science is no different. Without objectives, there won’t be meaning or a way to measure student outcomes. At the experimental stage, goals are unclear but exploring various options helps teachers define their goals. Seeing different possibilities and potential allows teachers and administration to define clear goals and eventually dive deeper into one program that is aligned with desired student outcomes.

So, how do you decide on which program you want to pilot?

Identify Benefits

During the experimentation stage, a lot of the decision comes down to potential. From the little bit you’ve seen, is there potential for academic value? Are students engaged? Does the program offer useful tools that you will need as a teacher and school to fully implement (content,resources, training for teachers, opportunities to learn, ability to track student data, etc.)? Once you can think about all of the different options, you should be able to answer which will have the most benefit for students and teachers to set everyone forward on a path to computer science success.

Assess Academic Value

There’s a huge and important difference between playing and learning. It’s important to consider which apps are unstructured and leave room for students to play without learning. Learning for elementary students can and should happen through playing, but the play needs to be structured and grounded in logic.  Choose an option that teaches and requires students to apply fundamental programming concepts.  Noting which apps seem to be rooted in logic and content that is supported with pedagogy will really help you make your decision- and will likely help you secure funding to implement on a larger scale.

Evaluate Feasibility

To move forward toward piloting a program, feasibility must be considered. Which program is one that provides proper resources, training, and professional development and permits staff to carry it out? Are there enough devices (iPads, Chromebooks, computers, etc.) for the programs you’re exploring or unplugged lessons to make it work? Can the staff commit to set up, training, and getting started? Answering these questions will help you see if there are any major roadblocks with the programs you’re exploring or minor bumps to iron out before piloting with one specific program.

Observe Collaboration

Programming is a unique subject area as it lends itself to (and at times depends on) collaboration. Consider which option allows for students to work together, share their work, talk about what they’re doing, or explain programming logic. Which option allows for teachers to seamlessly work together? Is there a program you’ve seen that has potential for students and teachers to learn and collaborate with each other? A program that encourages students to work in isolation and doesn’t teach them the language they need to practice metacognition or outwardly piece together what they’re working on may not be the right path to go down.

As you get ready to move into the third stage of implementing computer science in elementary, piloting a CS program, you’ll need to really start thinking about your goals and what program aligns. Once you do that, you’re ready to run with it! We’ve seen some amazing teachers narrow in and roll out successful pilots, and we’re excited to share their stories with you in parts 3 and 4 of our blog series next week.

Have you been experimenting with a variety of computer science programs? We’d love to hear how you narrowed in on a program that works for you and your school- leave it in the comment section below!

Casual Exposure: Step one to implementing computer science in elementary

This is the first in a 4 part series where we will cover each stage of implementing computer science in elementary school based on thousands of conversations with educators.

Getting started in teaching computer science can seem like a daunting task. Many educators never start out thinking they will make it a long term thing. Many of the trailblazing educators who are now implementing a complete K-5 coding curriculum started out with one hour in December three years ago. This was their first introduction to computer science and the magic it can bring to an elementary classroom. It marked the beginning of the first step in implementing computer science in elementary with casual exposure to programming concepts.

 

What does the first step to implementing computer science in elementary look like?

giphy

Who is involved?

Everyone is aware that there is some coding happening. Usually on a specific day or at a scheduled event. Teachers are often mildly interested until they see the spark of creativity, engagement, and collaboration happening in their students. Parents are also involved at this point through PTA volunteers or a special interest.

 

tumblr_inline_n94owf5JEG1sybzrb

What resources do people use?

Schools often download and install dozens of apps, tools, and resources for their students to play with and explore. This phase is characterized by unstructured learning through play. Don’t be afraid to try everything until you find what sticks!

 

giphy-2

How much time is spent on coding?

Since this is a step characterized by exploration, many educators allow students to code during free-choice time and keep an eye on what tools are being chosen the most and what they’re learning from the exploration. Allow students to play in their own time, but don’t be afraid to schedule 30 minutes a week for free coding.

giphy-1

What are the goals?

Since this step starts with a casual interest, there often aren’t defined goals. However, you will find that as you and your students spend more time coding, you’ll begin to get ideas about goals for your future in computer science. Keep these in mind, because they will be crucial to your progress in later steps.

 

Moving forward and implementing computer science in elementary

We see a lot of teachers get their start with Kodable through casual exposure- events like the Hour of Code, an iPad loaded with a variety of educational tools and apps for free time, or hearing about us from other teachers. So, how have our teachers run with this type of CS exposure and turned it into a full programming curriculum at their schools?  Here are some tips from our champion teachers.

 

  • Set Goals
    It’s hard to know what the best fit is without clear computer science goals for your school. Think about what you want everyone to get out of it- then you can move forward to find your best fit.
  • Test multiple programs and apps
    There’s a lot out there! How does each program or app you’re using align with your goals for student outcomes? Can you combine a few for the ultimate year of elementary CS? What will best fit with your schedule and make the most sense for you?
  • Get student feedback
    Are students not only loving the programs you’re using but learning and excited about learning? What are parents and other teachers hearing students talk about and engaged with? Talk to students about what they like, how it is helping them learn, and what their own goals are moving forward.
  • Drive your decisions with data and engagement
    If you notice student engagement like you’ve never seen before and it’s trickling into other content areas, run with the momentum! Maybe math scores are improving and critical thinking skills are shining- clear signs to see what benefits could lay ahead.

Moving to Step 2: Structured Experimentation can take some time, but keep working at it. There’s no one size fits all solution. We are all still figuring out how to implement computer science. Stay tuned for the next part of our series. We’ll dive deep into Step 2 and discuss tips and characteristics of the phase.

 

Does this sound familiar to you? Tell us how you got started with coding! Have you moved to step 2? Share your tips in the comments!