Learn to write, debug, and demonstrate programs in three languages, explore programming careers, and understand software safety practices to earn this merit badge.

Requirements

  1. 1. Safety and Healthy Coding

    Digital Safety and Coding Health

    Do all
    Do the following:
    1. a.

      View the Personal Safety Awareness “Digital Safety” video (with your parent…

      View the Personal Safety Awareness “Digital Safety” video (with your parent or guardian’s permission.)
    2. b.

      Discuss first aid and prevention for the types of injuries that could occur during programming activities, including repetitive stress injuries and eyestrain.

  2. 2. From Early Machines to Modern Code

    From Punch Cards to Python

    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.
  3. 3. How Software Fits the World

    Languages and Everyday Code

    Do all
    Do the following:
    1. a.

      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. b.

      Describe three different programmed devices you rely on every day.

  4. 4. Respecting Software Rights

    Intellectual Property and Software Use

    Do all
    Do the following:
    1. a.

      Explain the four types of intellectual property used to protect computer programs.

    2. b.

      Describe the difference between licensing and owning software.

    3. c.

      Describe the differences between freeware, open source, and commercial software, and why it is important to respect the terms of use of each.

  5. 5. Building Programs

    Choosing Your Three Projects

    Choose 3
    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. First Language Project

      In the first language and environment, write or modify a program, debug and demonstrate, and explain as above.
    2. Second Language Project

      In the second language and environment, write or modify a program, debug and demonstrate, and explain as above.
    3. Third Language Project

      In the third language and environment, write or modify a program, debug and demonstrate, and explain as above.
  6. 6. Paths After the Badge

    Careers or Coding for Life

    Choose 1
    Do ONE of the following:
    1. Research a Programming Career

      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. Build a Programming Hobby

      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.