Frequently Asked Questions
What is coding?
How do I get started?! What program should I use and what age/grade is each program best for?
On the Teacher Resources page I've categorized resources by type and age range, K - 2, 3 - 5, 6 - 8, and high school and go in order of difficulty (easiest at the top, more challenging as you descend the list). Obviously some students will fly through the introductory activities and some will spend the whole year struggling through it. Luckily coding is not for torturing students, it's to give them technical skills they may need in the future. Even more lucky, as a teacher, currently you're not assessed on your students' tech performance. Use this opportunity to encourage your students to make whatever they want. There is no hard and fast rules for what they make or how long it takes them to make it. Enjoy the learning process and relax in knowing that coding is a self-contained, year-long extension activity that will only add value to any student that embraces it.
The list is also broken up by device, iPad Apps on the left and Web Apps on the right. Below the apps I have also included a few games and activities you can play with you class. 'Functions are Directions' games does not require computers, but does work on collaborative learning, verbal skills, following directions, and much more. TinkerCAD and City X require a 3D printer or access to a 3D printer. A work-around to keep in mind if you don't have a 3D printer or know anyone with one, is to have your end products made by Shapeways or another printing company in your area. You can even look into other fun alternatives like printing in chocolate by Choc Edge!
Classroom management tips?
At the beginning of class I like to show an inspirational, interesting, or funny video or website. Rad (educational) Videos are a great place to start, but I also like to intersperse fun with interesting, using this time to inform my students about some of the governing bodies that maintain Internet and web standards. No matter what you do, this time has the possibilities to keep spirits high when the coding gets tough.
During class I have my students ask three students their question before they ask me. Depending on the age of the students I also spend the first day, or one of the first days, of class showing them how to use online forums, like Stack Overflow. We also go over best practices to search on an engine like Google. See Google Like a Pro poster at the end of the resource list.
At the end of each class, building in 10minutes of sharing time is invaluable. It allows you as the teacher to check in on students you may not have had the chance during class, students learn about things they haven't tried or thought of before, and most importantly it reinforces the peer-tutor model. I make a big deal when a student has done something I haven't seen before, to ensure the other students know about the new feature and who in the class will be their teacher when they want to include it in their app or website.
What age should kids learn code in the classroom?
Good question! I thought the same thing when I was first started using code in my classroom. Here's what I know:
Coding is not for everyone. Some kids will be stoked to code for every activity and some will be turned off by even the thought. I've found that kids enjoy playing with game-like coding programs at every age, but the ideal age to begin writing code is late 4th, beginning of 5th grade. At this stage students are comfortable with the structure of writing and can identify a title and paragraph on a word document. At age 9 or 10, children are also beginning to think abstractly, and will be able to use their knowledge of the writing process to learn HTML tags and CSS structure with ease. Students at this age are also very receptive to new information, because most of what they are taught all day long is brand new information, coding is just one more thing.
Do I need to learn how to code?
No, is the short answer. Sort of, is the slightly longer answer. Like any web application, iPad game, or project you use in the classroom you should have at least looked at it before. Take 20 minutes to play with as much as you can, so when you assign your first coding activity, you feel comfortable. Once you assign your first task, and for every time after that, walk around and ask questions about what students are making. My go-to sentence is, "Wow, that looks great, how did you do that?" It will empower your students, reinforce their understanding by having to verbalize what they did, and you can learn something all at the same time.
Should all the kids learn the same thing?
For me this is always depended on the amount of time I had with the kids. For a one or two week project I would have all the kids work on the same thing. When everyone is working on the same thing there are more knowledgable people in the room to answer difficult or new questions that come up. A few good short projects are building an iPhone app with the MIT app inventor 2, or even just going to the design process of making a new app. For a whole quarter, semester, or year-long class I would encourage you to allow every student to pick the language or platform that interests them the most. My suggestions for doing this is that they have to find at least one other person in the class that works on the same language. This way you can then sure they will have someone to work with and ask questions to that is not only you or another instructor in the room.
What does a block building coding program mean?
Block building coding programs teach logic, sequential thinking, and the tools necessary to program in the future. Academically you are using language arts skills like story creation, sequential events, and dialogue. Mathematically students have to use their understanding of numbers to have characters walk around or equations to make things happen in dynamic ways. In some cases like Scratch and Scratch Jr students will also use a coordinate grid to plot their characters in the scene.
How do I reach you to ask more questions?
I'm always happy to answer questions, email me at email@example.com or tweet @joykesten.