* As an Amazon Associate I earn from qualifying purchases.

Programming Merit Badge

Free Resources and Answers

Time: 2–4 weeks
Difficulty: Moderate
Setting: Indoor, computer work
Best For: Scouts interested in coding, technology, problem solving
Hands-On Level: High
Eagle Required: No

The Programming merit badge gives you a chance to learn how computers follow instructions. You will explore how programmers use code to solve problems, build tools, and make technology work. Along the way, you will practice thinking carefully and breaking large problems into smaller steps.

Download a handout about the Programming Merit Badge

As you work on this merit badge, you will learn about different programming languages and create programs of your own. You will see how coding is used in websites, apps, games, devices, and many other parts of daily life. You do not need to be an expert before you begin. You will learn by trying ideas, testing your work, and fixing problems.

Programming can be challenging, but that is part of the experience. You will practice patience, creativity, and persistence as you work through mistakes and improve your code. You might also discover that you enjoy computer science and want to learn more. Whether programming becomes a hobby, a school subject, or a career, the skills you practice can help you in many other areas.

The requirements for the Programming merit badge were updated on January 1, 2026.

Programming Merit Badge Requirements and Workbook

Programming Merit Badge Answers and Resources

Help with Answers for Programming Merit Badge Requirements

Find specific helps for some of the Programming merit badge requirements listed below. Some of these resources will just give the answers. Others will provide engaging ways for older Scouts to introduce these concepts to new Scouts.

Requirement 1: Safety

Do the following:

  1. View the Personal Safety Awareness “Digital Safety” video (with your parent or guardian’s permission.)
  2. Discuss first aid and prevention for the types of injuries that could occur during programming activities, including repetitive stress injuries and eyestrain.

Programming Merit Badge Requirement 1 Helps and Answers

Requirement 1a: Digital Safety

What You Need To Do

With permission from your parent or guardian, view the Personal Safety Awareness “Digital Safety” video. This video covers safe choices when using computers, phones, online services, and other digital tools.

Helpful Tips

  • Keep personal information private when you are online.
  • Use strong passwords for your accounts and keep them secure.
  • Be careful with messages, links, downloads, and requests from people you do not know.
  • Use trusted websites, apps, and programs when working online.
  • Tell a parent, guardian, or another trusted adult about online behavior that makes you uncomfortable.
  • Treat other people with respect when using email, games, social media, and other online tools.
  • Follow the same safety habits when programming, sharing code, or using online coding websites.

Resources

Leader Tips

  • Give Scouts access to the official Personal Safety Awareness “Digital Safety” video.
  • Remind Scouts to get permission from a parent or guardian before viewing it.
  • Use questions about common online situations to help Scouts apply the safety ideas.
  • Keep discussions focused on safe choices and where Scouts can go for help.

Requirement 1b: Programming Injuries

What You Need To Do

Discuss first aid and ways to prevent injuries that can happen during programming activities. Include repetitive stress injuries and eyestrain in your discussion.

Helpful Tips

  • Repetitive stress injuries can develop from repeated motions such as typing or using a mouse for long periods.
  • Pain, stiffness, tingling, or soreness in the hands, wrists, or arms can be signs of a problem.
  • Take regular breaks from typing and mouse use to give your hands and arms a rest.
  • Keep your keyboard and mouse in positions that allow your wrists and arms to stay comfortable.
  • Eyestrain can cause tired, dry, sore, or irritated eyes after long periods of screen use.
  • Look away from the screen often and focus on objects farther away to give your eyes a break.
  • Adjust screen brightness, room lighting, and viewing distance to make the screen comfortable to see.
  • Stop the activity if pain or eye discomfort becomes serious or continues after resting.
  • Tell an adult about ongoing pain, numbness, vision problems, or other symptoms that may need medical care.

Resources

Leader Tips

  • Ask Scouts to identify risks in the computer setup they normally use.
  • Have them describe both prevention and basic first aid for repetitive stress injuries and eyestrain.
  • Encourage frequent breaks and a comfortable workstation during programming sessions.
  • Focus the discussion on habits Scouts can use each time they work at a computer.

Requirement 2: History

Discuss with your counselor the history of programming and the evolution of programming languages, including at least three milestones related to the advancement or development of programming over time.

Programming Merit Badge Requirement 2 Helps and Answers

Requirement 2: History of Programming

What You Need To Do

Discuss the history of programming and programming languages with your counselor. Include at least three important milestones that helped programming develop over time. This matches the current Programming merit badge requirement published by Scouting America.

Helpful Tips

  • Early computers required programmers to give instructions in forms closely tied to the computer’s hardware.
  • Machine language uses numerical instructions a computer can process directly.
  • Assembly language uses short names and symbols instead of writing every instruction as numbers.
  • FORTRAN appeared in the 1950s and became an important language for scientific and engineering work.
  • COBOL was created for business uses such as handling records and processing large amounts of data.
  • The C language was developed in the early 1970s and influenced many programming languages that came later.
  • Object-oriented programming groups code around objects containing data and actions. Languages such as C++ and Java helped make this approach common.
  • Python was first released in the early 1990s and uses a style designed to make code easier to read.
  • JavaScript appeared in the 1990s and became a major language for interactive web pages.
  • A programming milestone can be a new language, a new way to write programs, or an invention that changed how programmers work.
  • Choose at least three milestones and be ready to describe when each happened and why it mattered.
  • Put your milestones in date order to make the development of programming easier to discuss.

Resources

Leader Tips

  • Help Scouts choose milestones from different periods instead of focusing only on recent languages.
  • Ask how each milestone made programming easier, faster, or useful for new purposes.
  • A simple timeline can help Scouts organize the events before the discussion.
  • Keep the focus on the development of programming, not memorizing a long list of dates.

Requirement 3: General Knowledge

Do the following:

  1. Create a list of five popular programming languages in use today and describe which industry or industries they are primarily used in and why.
  2. Describe three different programmed devices you rely on every day.

Programming Merit Badge Requirement 3 Helps and Answers

Requirement 3a: Programming Languages

What You Need To Do

Create a list of five popular programming languages used today. For each one, describe the industries that use it and why the language works well for those jobs.

Helpful Tips

  • Python is used in data science, artificial intelligence, automation, web development, and scientific work.
  • JavaScript is widely used in web development because it adds interactive features to websites and web apps.
  • Java is used in business software, web services, and Android development because it can run on many types of systems.
  • C++ is common in games, robotics, engineering, and systems software because it gives programmers strong control over computer resources.
  • C# is often used for Windows software and game development, including projects made with the Unity game engine.
  • Swift is used to create apps for Apple devices such as iPhones, iPads, and Macs.
  • SQL is used with databases in fields such as finance, healthcare, retail, and online services.
  • Choose five languages with different uses so your list shows a wide range of programming work.
  • For each language, include both the industry and a short reason it is useful there.

Resources

Leader Tips

  • Encourage Scouts to choose languages used in several different fields.
  • Ask for a clear connection between each language and its main uses.
  • Help Scouts avoid listing HTML or CSS as programming languages unless they also explain the difference.
  • Keep the focus on five solid examples rather than a long list.

Requirement 3b: Programmed Devices

What You Need To Do

Describe three programmed devices you use or depend on every day. Include what each device does and how programming helps it work.

Helpful Tips

  • Smartphones use programs for calls, messages, maps, photos, games, and many other tasks.
  • Computers and laptops use programmed operating systems and apps to control files, displays, keyboards, and other parts.
  • Cars use software for features such as braking systems, navigation, engine controls, cameras, and safety alerts.
  • Smart thermostats use programs to control heating and cooling based on settings, schedules, or sensors.
  • Microwaves use programmed controls for cooking time, power level, buttons, and displays.
  • Video game consoles use software to run games, connect controllers, display graphics, and connect to online services.
  • Smart speakers use programmed systems to process voice commands and control other connected devices.
  • ATMs and payment terminals use software to process transactions and communicate with banking systems.
  • Choose devices you actually use so your descriptions are easier to discuss.
  • Include one or two specific programmed features for each device.

Leader Tips

  • Ask Scouts to pick devices from their own daily routine.
  • Have them describe what the programming controls or manages.
  • Guide them toward specific examples instead of broad answers such as “it uses code.”
  • Different devices can help show how programming appears in many parts of daily life.

Requirement 4: Intellectual Property

Do the following:

  1. Explain the four types of intellectual property used to protect computer programs.
  2. Describe the difference between licensing and owning software.
  3. Describe the differences between freeware, open source, and commercial software, and why it is important to respect the terms of use of each.

Programming Merit Badge Requirement 4 Helps and Answers

Requirement 4a: Types of Intellectual Property

What You Need To Do

Explain four types of intellectual property used to protect computer programs: copyright, patents, trademarks, and trade secrets. Describe what each one protects. This is part of the current Programming merit badge requirement from Scouting America.

Helpful Tips

  • Copyright protects original work such as computer code, written instructions, graphics, and other creative material.
  • Copyright usually belongs to the person or group that created the work unless rights were transferred.
  • A patent can protect a new and useful invention or process when it meets legal requirements.
  • Some software-related inventions may qualify for patent protection.
  • A trademark protects names, logos, symbols, or other marks used to identify a product or company.
  • A software company may use trademarks to protect its product name or logo.
  • A trade secret is valuable information kept private by a person or business.
  • Source code, formulas, methods, or internal processes may be treated as trade secrets when they are kept confidential.
  • These four protections cover different parts of a computer program or software business.
  • More than one type of intellectual property can apply to the same software product.

Resources

Leader Tips

  • Ask Scouts to give a simple software-related example for each type of protection.
  • Keep the discussion focused on what each form of intellectual property protects.
  • Help Scouts separate trademarks from copyright and patents from trade secrets.
  • Avoid turning the discussion into detailed legal advice.

Requirement 4b: Licensing and Owning Software

What You Need To Do

Describe the difference between having a license to use software and owning the rights to software. Focus on who controls the software and what the user is allowed to do.

Helpful Tips

  • A software license gives a person permission to use software under certain rules.
  • The creator or company usually keeps the copyright and other ownership rights.
  • A license may limit how many devices can use the program.
  • A license may allow only personal, school, or business use.
  • Some licenses last for a set time, while others continue without a time limit.
  • Paying for software does not always transfer ownership of the program itself.
  • Owning the intellectual property rights gives the owner control over copying, selling, changing, or licensing the work, subject to applicable law.
  • Buying a copy of software is different from buying the copyright to the software.
  • The license agreement lists the permissions and limits for the user.

Resources

Leader Tips

  • Use familiar examples such as a purchased app, a subscription, or school software.
  • Ask Scouts to identify what the user receives and what the software company keeps.
  • Focus on the difference between permission to use software and ownership of its rights.
  • Keep examples simple and tied to everyday software.

Requirement 4c: Freeware, Open Source, and Commercial Software

What You Need To Do

Describe the differences between freeware, open-source software, and commercial software. Include why users must follow the terms of use or license for each type.

Helpful Tips

  • Freeware is software offered for use without a purchase price.
  • Freeware can still be protected by copyright and can have rules limiting copying, changing, or sharing it.
  • Open-source software provides access to its source code under an open-source license.
  • An open-source license may allow people to use, change, and share the code under stated conditions.
  • Some open-source licenses require credit, license notices, or other conditions when code is shared.
  • Commercial software is created and distributed as part of a business.
  • Commercial software may require a purchase, subscription, or other payment.
  • Commercial software often has limits on copying, sharing, installation, or business use.
  • “Free” does not mean the software has no copyright or rules.
  • The license or terms of use set the permissions for each program.
  • Ignoring those terms can violate the creator’s rights and may also violate the law.
  • Check the license before copying, changing, sharing, or installing software on additional devices.

Resources

Leader Tips

  • Provide examples with different licenses and ask Scouts to compare the permissions.
  • Guide Scouts toward the license terms instead of relying only on labels such as “free.”
  • Emphasize responsible use of software and respect for creators’ rights.
  • Keep the discussion focused on practical choices Scouts may face when using or sharing software.

Requirement 5: Project

With your counselor’s guidance, select three different programming languages and development environments. For each sub-requirement below, do the following: Write or modify a program using the indicated programming language and development environment. The program must take input and produce output based on computations and decisions made on the input. Debug and demonstrate the program to your counselor. Explain how each program processes inputs, makes decisions based on those inputs, and provides outputs based on computations and decision making.

  1. In the first language and environment, write or modify a program, debug and demonstrate, and explain as above.
  2. In the second language and environment, write or modify a program, debug and demonstrate, and explain as above.
  3. In the third language and environment, write or modify a program, debug and demonstrate, and explain as above.

Programming Merit Badge Requirement 5 Helps and Answers

Requirement 5: Create Programs in Three Languages

What You Need To Do

With your counselor’s guidance, choose three different programming languages and development environments. For each one, write or modify a program that takes input, makes decisions or calculations with that input, produces output, gets debugged, and is demonstrated to your counselor.

Helpful Tips

  • Choose three different programming languages, such as Python, Java, JavaScript, C++, or C#.
  • Use a suitable development environment for each language, such as IDLE, Visual Studio Code, IntelliJ IDEA, Eclipse, or a browser-based coding tool.
  • Each program must accept some type of input from a user, file, sensor, or other source.
  • The program must process the input instead of only displaying a fixed message.
  • Use calculations, comparisons, or decision statements such as if and else.
  • The output should change based on the input or the results of the program’s calculations.
  • Test several different inputs to make sure the program works correctly.
  • Debugging means finding and fixing errors in the code.
  • Syntax errors happen when code does not follow the rules of the programming language.
  • Logic errors happen when the program runs but gives the wrong result.
  • Keep notes about problems you find and how you fix them.
  • Be ready to demonstrate all three working programs to your counselor.
  • For each program, describe where the input comes from, how the program processes it, what decisions it makes, and what output it produces.
  • A simple program is enough if it clearly meets every part of the requirement.
  • Complete the same process with the first, second, and third programming languages.

Resources

Leader Tips

  • Help Scouts choose three languages and environments that are practical with the equipment available.
  • Check early that each project includes input, processing, decision making, and output.
  • Ask Scouts to demonstrate their debugging process instead of only showing finished programs.
  • Let Scouts describe their own code and how each part works rather than completing the explanation for them.

Requirement 6: Careers

Do ONE of the following:

  1. Explore careers related to this merit badge. Research one career to learn about the training and education needed, costs, job prospects, salary, job duties, and career advancement. Your research methods may include—with your parent or guardian’s permission—an internet or library search, an interview with a professional in the field, or a visit to a location where people in this career work. Discuss with your counselor both your findings and what about this profession might make it an interesting career.
  2. Explore how you could use knowledge and skills from this merit badge to pursue a hobby or healthy lifestyle. Research any training needed, expenses, and organizations that promote or support it. Discuss with your counselor what short-term and long-term goals you might have if you pursued this.

Programming Merit Badge Requirement 6 Helps and Answers

Requirement 6a: Explore a Programming Career

What You Need To Do

Choose one career related to programming and research it. Find information about training, education, costs, job prospects, salary, job duties, and advancement, then discuss your findings and your interest in the career with your counselor.

Helpful Tips

  • Start by choosing a career that uses programming as an important part of the job.
  • Find the education or training usually needed to enter the field.
  • Check whether the career requires a college degree, certificate, special training, or work experience.
  • Look at the possible costs for college, training programs, certifications, or equipment.
  • Find current information about job prospects and future demand for workers in the field.
  • Research the typical salary range for the career.
  • List several common duties performed by people in the job.
  • Look for ways a person can advance to higher positions or more specialized work.
  • Use reliable sources such as government career websites, colleges, professional groups, or interviews with people in the field.
  • Get permission from a parent or guardian before using online resources or contacting a professional.
  • Be ready to describe which parts of the career appeal to you and which parts may be challenging.

Careers to Consider

  • Software developer
  • Web developer
  • Mobile app developer
  • Game developer
  • Data scientist
  • Cybersecurity analyst
  • Artificial intelligence engineer
  • Robotics engineer
  • Database administrator
  • Systems programmer
  • Cloud engineer
  • Computer systems analyst
  • Embedded systems programmer
  • Quality assurance engineer
  • IT automation specialist

Resources

Leader Tips

  • Help Scouts choose one career with enough information available for solid research.
  • Ask for specific facts about education, duties, pay, job outlook, and advancement.
  • Encourage the use of more than one reliable source when possible.
  • Keep the final discussion focused on both the research and the Scout’s personal interest.

Requirement 6b: Programming as a Hobby or Healthy Activity

What You Need To Do

Explore ways programming skills could support a hobby or healthy lifestyle. Research any training, costs, and organizations connected with the activity, then discuss possible short-term and long-term goals with your counselor.

Helpful Tips

  • Choose an activity that combines programming with something you enjoy doing.
  • Find any skills, classes, tutorials, or equipment needed to get started.
  • Check the cost of software, hardware, memberships, courses, or other supplies.
  • Many programming tools and online lessons are available at little or no cost.
  • Look for clubs, schools, community groups, or online organizations that support the activity.
  • Set a short-term goal you could complete within a few weeks or months.
  • Set a long-term goal that would require more practice or a larger project.
  • Programming can support outdoor activities by tracking distance, routes, weather data, or other information.
  • Programming can support fitness by creating timers, trackers, reminders, or ways to organize workout data.
  • Programming can also support creative hobbies such as games, music, art, electronics, or robotics.
  • Keep screen time balanced with exercise, sleep, outdoor activity, and time with other people.
  • Choose goals that are realistic for the equipment, time, and experience you have available.

Hobbies to Consider

  • Build a simple video game.
  • Program a robot.
  • Create a hiking or mileage tracker.
  • Build a workout timer.
  • Make a step-counting or fitness app.
  • Create a website for a club, team, or hobby.
  • Program an electronic project with a microcontroller.
  • Create digital art with code.
  • Make music with programming tools.
  • Build a weather-tracking project.
  • Analyze sports or fitness data.
  • Create a sleep or hydration reminder.
  • Build a budget tracker for camping or hobby expenses.
  • Make a quiz or study game.
  • Program a tool for tracking Scouting activities.

Leader Tips

  • Help Scouts choose an activity connected to a real interest.
  • Ask them to identify practical costs, training, and support resources.
  • Guide them toward clear short-term and long-term goals.
  • Encourage projects that keep programming balanced with other healthy activities.

Resources

More Merit Badge Resources

The Programming merit badge helps Scouts learn the basics of writing and testing simple code. It fits well in the merit badge program because it teaches problem-solving, logic, and careful thinking. Scouts see how small steps create working programs. This adds a strong technology option to the wide range of badges and shows that Scouting includes modern skills along with outdoor and creative subjects.

This badge also connects to others that explore technology and design. A Scout who enjoys Programming might also try Digital Technology, Robotics, or Game Design. These badges help Scouts see how coding supports many fields. The variety gives them many ways to explore their interests.

Learn More about Scouts BSA

The Programming merit badge supports the larger Scouts BSA program by building patience, focus, and steady work. Debugging teaches persistence, which helps Scouts grow in personal development and leadership. They learn to plan, test, and adjust their work.

It also supports citizenship and responsibility. Scouts learn how software choices affect others. They see how safe and respectful coding helps people work and communicate. This encourages them to use their skills in positive ways.

Frequently Asked Questions

What is the Programming merit badge about?

The Programming merit badge teaches Scouts how to write code, debug programs, and understand different types of software. It also helps Scouts learn about the history of programming and how it’s used in everyday life.

Do I need to know programming before starting the Programming merit badge?

No, you don’t need to know programming before starting. The badge is designed to help you learn basic skills, even if you’re a beginner.

What tools will I need for the Programming merit badge?

You’ll need access to a computer and software to write and run programs. Your counselor will guide you in choosing the right tools and programming languages.

What kinds of programs will I write for the Programming merit badge?

You’ll write or modify programs that take input, make decisions, and produce output. For example, you might create a program to solve math problems or display personalized messages.

Why do I need to learn about digital safety for the Programming merit badge?

Learning about digital safety helps you use computers responsibly. It teaches you how to protect your personal information and avoid online risks while working on programming projects.

What are some programming languages I might use for the Programming merit badge?

Some common languages include Python, Java, and JavaScript. Your counselor can help you pick the best ones for your projects.

How can the Programming merit badge help me in the future?

The Programming merit badge teaches problem-solving and technical skills. These can be used in school, future jobs, or even creating your own apps, games, or websites.

Can I work on the Programming merit badge with a friend?

Yes, you can work with others, but each Scout needs to write and demonstrate their own programs to complete the requirements.

Coding for the Future

The Programming merit badge is a great way for Scouts to learn how computers work and how to write code. It introduces basic programming concepts, like taking input, making decisions, and producing output. Scouts get hands-on experience with different programming languages, which helps them build skills and confidence in using technology.

This badge also teaches Scouts about the history of programming and the evolution of programming languages. Learning about milestones in technology shows how programming has shaped the modern world. Scouts can also explore career paths and industries where programming is used, from video game development to robotics.

Another important part of the Programming merit badge is learning how to use technology safely and responsibly. Scouts learn about digital safety and the rules for using software, like licensing and intellectual property. These lessons help them understand the importance of respecting creators and protecting their own work.

The Programming merit badge is not just about writing code—it’s about building problem-solving skills and understanding how programming impacts the world. Scouts who complete this badge may discover a new hobby or even a future career in technology.

Posted on  

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.