Categories
Computer Science Learning Tools Lesson Programming Quick STEM Resources STEM Drop-In SuperTopic Update

Coding Lesson : Intro To Block Based Programming

coding lesson computer

I love Lego Mindstorms Ev3 for teaching a coding lesson, but the price to get started is tough to swallow. Enough kits to teach a coding lesson to a class of  16  is 4, which translates to over $1,550.00. Even after getting the kits, you still need 4 computers (not Chromebooks) to run the software. The unfortunate financial reality of Public Education in America is that we are constantly in a state of near starvation. As such, it is not easy to get funds for unproven curricular tools. Stories from other teachers about STEM with robots is not enough to get you the money you need. Typically you need to demonstrate some major benefit in order to get extra money. How then, do you prove that learning coding has a positive impact on your students without breaking your budget?

Block Based Programming

Block based programming means that instead of typing in words with specific formatting to create a program, programmers use graphical blocks. Presenting programming in this manner will allow you to reach younger students. Traditional coding such as that found in the Python Programming Language is often difficult for younger students to process. After all, they may not fully grasp common English yet. Older learners can benefit from spending some time with a block based language as well.

Block based systems allow learners to discover programming structures, and the basics of how computer programs are constructed more easily. Generally speaking the only difference between computer programming languages are the semantic structures used to translate human commands into something a computer can understand. As such, once a student has a grasp of one language (even a block based one) other languages get much easier to grasp.

Coding Lesson with Block Based Programming

Unlike many of my other posts this will not be an actual lesson plan, but rather a guide to a few online lesson plans that I like in particular. I am a firm believer in “why fix it it it ain’t broke”. In this case, since there are so many top quality lessons out there for free I’m not going to reinvent the wheel. I have many, many, other things to occupy myself with.

www.Code.org

I list this one first because it is my personal go to for my students. Any time a students ask about any kind of coding lesson, any time a student seems to want more coding, or any time I need to give them a break from the normal curriculum this is where I go. There are dozens of online coding lessons that can introduce coding, and even allow a deeper delve for students. I typically suggest my students start with the Hour of Code. There are several different content options, and different options based on grade level. After they complete the hour long coding lesson, they can expand into other areas of the site. Code.org is so engaging for the kids that I often use it as a reward. Honestly, if you use nothing else from any of my posts use this.

www.Scratch.MIT.edu

I have used Scratch a little bit myself. I have also only used Scratch in my classroom for students who want independent study. In my class it has been used exclusively on the Raspberry Pi, not the web based version. On the Pi it is amazing. It really allows kids to do physical programming. All of that said, I have spoken with teachers that have used the web version, and its fantastic. One nice thing about Scratch is that it allows kids to be exceptionally creative with their programming.

When I used it I had the kids working through this book, they loved it. Additionally, there are plenty of tutorials on the Scratch Help site, and elsewhere. A great way you could use Scratch is to combine it with the Makey Makey. I haven’t had the opportunity to do so, but I can see its value. If I do use it this way, I can see students making both a game, and a controller for the game they make.

App Inventor 2 (The Best Tool EVER!)

App Inventor 2 is a web based IDE (Integrated Development Environment) for the Android operating system. This block based programming resource will allow your students to create, share, and even sell apps on for any Android device. I don’t know what you are teaching now, but if what you teach touches computers, or computer programming in any way your most common question is “How do I make games/apps?”. Our students hear stories all the time about how kids have made millions making apps. The stories are true, and with the right idea our students can do the same.

In addition to the rare case of a student actually making money by creating an app, this tool is phenomenal for any kind of performance based assessment. In PBA we are working towards having our students create something meaningful, and useful to show mastery of a topic. What better way to do that in a concrete manner than by creating an app that solves a real world problem? Another phenomenal feature is the focus on event driven programming. Being able to teach the concept of EDP alone is well worth using this tool.

There are a huge number of tutorials available for free online dealing with all aspects of AI 2. This is one that is free, and focused on app creation.  I certainly recommend running yourself through any tutorials you use, but you don’t need to be an expert to teach with this tool. The only challenge is that you need some Android devices to use. I solved this problem by purchasing some cheap Android tablets for my classroom, but you don’t need to buy them. Your students may have these devices already, or you may be able to get them donated.

Conclusion

Though it takes some work and creativity, it is absolutely possible to teach coding on a budget. In your classroom you can wrap coding into some other lesson, use coding to help teach a lesson, or teach it as a lesson itself. No matter how you decide to add coding to a STEM curriculum you really need to add it. In my experience few subjects foster higher levels of engagement, teach problem solving more effectively, or develop grit like a coding lesson.

I hope you’ve found this article helpful. If you have, and would like to be updated whenever we post a new article please sign up for notifications below. If you think you know anyone who would benefit from this knowledge, please share the article on your various social media platforms.

Categories
Cheap STEM Learning Tools Lesson Quick STEM Resources STEM Drop-In Uncategorized Update

STEM Drop-In Friday: Iteration With Paper Helicopters

STEM Drop-In

One of the things I like to do in my classroom is what I like call STEM Drop-In lessons. Periodically I come up with a mini project for the kids to do that will teach an engineering concept in a single class period while spending little to no money. The STEM Drop-In uses inexpensive materials, and allows my students a great deal of exploration in their learning.  I also try to pick projects that are expandable, and easy to customize so I can possibly back up what they happen to be working on in their other classes. In this particular case I am looking for my students to work on three separate concepts. First, they are exploring the engineering design concept of iteration. Second, this STEM Drop-In has them experientially research the science & technology of flight. Third, this project has them working with data. This quick and cheap lesson not only hits every STEM subject, but also fulfills three of four adolescent needs with fun, competency, and autonomy. Here we go!

Materials Needed:

  • This picture.
  • Paperclips.
  • Scissors.
  • Stop Watches (Optional).
  • Paper, Pencils, and Masking Tape.

 

What to Teach:

With this lesson you are leveraging the engineering concept of Iteration to teach science content in the form of flight science, and math content in the use of data. A quick aside: For those of you who have been following my posts on rockets or robots, you will note that I try to fit data into everything I do in the classroom. I do so because we all live in a world that is absolutely awash in data. Every move you make, every click you take, every post you write, and every status update you “like” generates data. In the work place of the future the ability to use, and analyze data will be a skill in high demand. Let’s all work give our students as many future advantages as possible. They deserve it!

How to Teach this STEM Drop-In:

You will start by following the link above, and printing out enough copies of the picture to give your students each 2 sheets. Two sheets will give them templates enough for 6 Helicopters. You may also want to pass out a couple of sheets of blank copy paper, in case students wish to iterate with complete autonomy.

The first iteration is your control, or baseline prototype. You will have the students cut along the solid lines, and fold along the dotted ones. They will then place a paper clip on the bottom, hold the helicopter at shoulder level, and drop it. If you are using stop watches they should time how long it takes for the helicopter to hit the floor, and write that number down. Have the students compare each others times, and have a quick discussion about whether it is a fair test.

It certainly isn’t a fair test because students are different heights, and drop the helicopters differently. You now have the opportunity to introduce another engineering concept, which is the idea of what makes a fair test. If you are already teaching a robotics problem solving unit, or want to in the future this is a good opportunity to introduce a helicopter dropping robot challenge to your curriculum.

To expand the lesson discuss how data is measured and used, and talk about the baseline you’ve established with the first Helicopter. Be sure to have your students do at least three drops per iteration in order to get an average sample. You will want to make certain to stress that they will be presenting their findings to the class, and need to have data to back up what they discover.

The Experiment:

Now for the Autonomous Iteration. Have your students choose from the options below, and redesign their helicopter with that in mind. This is the appropriate time to talk about drag, lift, and aerodynamics with the students.

  • Can they make it fall slower?
  • How about make it fall faster?
  • Maybe, make it spin more?
  • Possibly, make it spin less?
  • What about make it behave unexpectedly?
  • Come up with an iteration concept or two on your own. Feel free to explore!

 

You can give them as few, or as many iterations on this concept as you would like. After you have allowed sufficient time for some good exploration, have your students present their findings to the group. They should have data to show that proves their results. That’s it. Just a quick little STEM drop in for when your students need a break from their normal classwork.

If you have found this article helpful, please sign up for updates below. It is my goal to post a STEM Drop-In every week, and you won’t want to miss it! Thanks for stopping by!