J/C Coding Basics – Basic Plan

Basic Meeting Plans are designed to have minimal supplies and still hit the GSUSA Requirements. Most meetings can be done in a 90 minute time frame.

This plan is designed to meet both Junior and Cadette level requirements. You may need to watch the timing in order to get everything done within a 90 minute time frame. Some troops will fly through the steps and have extra time.

Items needed:

  • Pen/Pencil for each scout
  • Papers, 2 for each scout
  • Print out a dozen Meme examples. (If you use Cookie Memes, you can reuse these examples as part of the Cadette MEdia journey advertising activity.)
  • Print out random pictures you think they would enjoy making into memes. Have them pre-cut so they are ready to be pasted or taped onto a paper.
  • Glue or tape
  • (Optional) Markers to write on memes (or they can use pen/pencil).

Women in Science!

Info Needed: Margaret Hamilton worked with MIT and NASA to create computer programs used by astronauts in the Apollo 11 flight. That program saved three astronauts when the computer got confused as it tried to land on the moon. The program told the computer if these things happened, then it should to ignore the errors. The astronauts safely landed.

(J Requirement 5 Earned)

Note to Leaders – You can learn more about Margaret Hamilton with a short video

What is a Sequence?

Info Needed: An algorithm is a program to do something step by step. Sequence is the order those steps are done in. Sometimes it wouldn’t matter, like when you put your pants and shirt on. You could do it in any order. Sometimes it does matter, like if you tried to put peanut button on a sandwich after you already put the two slices of bread together.

Question Needed: What is something you do every day that could be made into an algorithm that requires a sequence?

Action Needed: As a group, pick daily life task that needs a sequence and make few steps they would need to do. One scout or leader can write down the group’s new code.

(Requirement 1 Earned)

Note to Leaders – You can learn more about sequencing with a short video

Play with loops?

Info Needed: A computer requires very specific instructions every time an action is taken. If you need to make 12 sandwiches before a campout, you would need to repeat the exact step by step instructions 12 times. Programmers save time by creating loops. If they write out the instructions to make the sandwich once they can label it “makesandwich”. Instead of writing that same code 12 times, they can simply write a line of code that says to follow the “makesandwich” code 12 times.

Question Needed: What are three things you could label as a loop in your daily algorithm?

Example: If your algorithm was to get ready for school every day, you could make a loop for “gettingdressed”, “eatingbreakfast”, and “packingbackpack” if those steps are the same everyday. Then you don’t need step by step instructions each day for those tasks that are the same every day – you just use the loop.

Action Needed: As a group, write down three loops their daily task might have. It’s okay if they decide to change their daily task. One scout or leader can write down the group’s new code.

(J Requirement 2 Earned)

Note to Leaders – You can learn more about loops with a short video

Conditionals!

Info Needed: “If you give a mouse a cookie, then he’ll be very hyper, else he’ll be normal.” If, then statements we use all the time. Else is just an addition for what would happen if the statement doesn’t happen. If/then/else are used in coding, called conditional. If something happens then what action is taken?

(J Requirement 3 Earned)

Question Needed: What is something from your daily algorithm that would be conditional?

Example: Getting dressed would have the conditional of “If it is cold, then I wear long sleeves, else I wear short sleeves.”

Action Needed: As a group, write down one condition for one of their tasks or loops already on the paper. One scout or leader can write down the group’s new code.

(J Requirement 4 Earned)

Note to Leaders – You can learn more about conditionals with a short video

Functions and Arguments in Algorithms

Info Needed: Algorithms were the step by step instructions. When you write them, each step has an action, called a Function. You need to name each function for what it is doing. Each function has different parameters, or arguments. These arguments give details on what the function is doing.

Example: You are going to cook dinner. Your Function would be named cook. The algorithm is for Dinner. If you used the programming language JavaScript, the code line could be: cookDinner()
What will you cook? Pasta. Your function would now be: cookDinner(“pasta”)
What kind of pasta? Spaghetti. Your function would now be: cookDinner(“pasta”, “spaghetti”)
Dinner is the algorithm, cook is the function and pasta and spaghetti are arguments.

Action Needed: As a group, change the daily task you have been using so it has a function and an argument. One scout or leader can write down the group’s new code.

(C Requirement 1 Earned)

Note to Leaders – You can learn more about functions and parameters with a short video

What makes a Meme?

Info Needed: All memes have two main factors: the picture and the words. Sometimes the words are broken up into a section above or below the picture.

Action Needed: Pick a meme as a group and break them down into how you would describe the photo, and what wording is used with it. One scout or leader can write down the group’s breakdown of each meme.

(C Requirement 2 Earned)

“Program” a Meme

Info Needed: When programmers are just beginning to work on a new program, they use human language instead of computer language. This is called pseudocode.

Action Needed: Using pseudocode, each scout writes down their own meme idea.

Example: Get a “Picture of Thin Mint Cookies”. Write words above: “Psst. You’re wife called.” Write words below: “She wants Thin Mint Cookies!”

(C Requirement 3 Earned)

“Program” a Meme

Info Needed: Pseudocode is great for planning, but it needs to be a real programing language, called shareable code, to work and for other programmers to read it.

Action Needed: Scouts need to change the pseudocode into something more like JavaScript code.

Example: getImage(“thin mint cookies”)
getMarker(black)
writeText(“Psst. You’re wife called”, top image)
writeText(“She wants Thin Mint Cookies!”, under image)

(C Requirement 4 Earned)

Make a Meme

Action Needed: Scouts pick from the photos you brought, paste or tape it to a paper, and write the meme above and/or below. Writing needs to be clear to anyone who tries to read their meme.

When all memes are done, share them with each other. Get feedback on their meme on if the message they wanted was conveyed or not.

(C Requirement 5 Earned)

Meeting End

Scouts can keep making additional memes (they can sketch out their own pictures too) and try them out on each other until it’s time to go home.

Meeting End

If there is extra time, challenge the scouts to think of another task that would have loops and conditionals – like landing on the moon! They can work individually or as a group. Who can come up with the craziest task?

General Notes

Note to Leaders – No Basic Plan compiled by The Badge Archive will earn multiple badges in one level. Part of being budget friendly is not costing more than the price of one official GSUSA badge per meeting.

Some badges will take two meeting to finish. This helps scouts enjoy activities and keeps the troop budget in mind by only needing one GSUSA badge for every two meetings. Troops may choose to get a fun patch for one of the meetings if scouts want a badge/patch for every meeting. Scouts can earn the fun patch if they only attend one meeting and get a fun patch and the official badge if they go to both.