Courses for every classroom

Skill Struck's Software Development Course (Louisiana, HS)

This course walks students through the basics of coding with Python alongside other topics such as digital citizenship, the internet, and data.

Full-year course · 158 lessons · 11 units

  • Python
  • Voyage
  • Year
  • 9th grade
  • 10th grade
  • 11th grade
  • 12th grade
  • Louisiana course

Course Summary

The curriculum includes coding exercises and practice on the Skill Struck platform interspersed with classroom collaboration activities, discussion points, supplemental materials, and unplugged activities. This course walks students through the basics of coding alongside other topics. This integrated approach keeps lessons diverse and students engaged. Students work individually and as teams to build innovative and competitive coding solutions.

Course Outline

    1. Intro to Python in Game Design
    2. Variables in Game Design
    3. Inputs & Outputs in Game Design
    4. Variable Types in Game Design
    5. Pygame Basics Learn how to initialize a Pygame environment!
    6. Comments & Documenting Code
    7. The Main While Loop/Background Color Learn how to use Pygame to draw shapes that you would use in your games!
    8. Draw a Circle/Functions Learn more about how to draw a circle in Pygame!
    9. Draw a Rectangle Learn how to draw a rectangle in Pygame!
    10. Draw a Triangle Learn how to draw a triangle in Pygame!
    11. Draw a Straight Line Learn to draw a straight line in Pygame!
    12. Draw an Arc Learn how to draw an arc in Pygame!
    13. Draw a Smiley Face Practice drawing all the shapes you've learned so far in Pygame!
    1. Types of Computer Games Learn the basic types and categories of video games and discover examples of each.
    2. Algorithms Discuss what an algorithm is and how they are used in creating video games.
    3. Random in Game Design Learn how to use random in generating games.
    4. Strings with Game Design
    5. Text on the Screen Learn how to add words to your screen!
    6. Concatenation with Game Design
    7. Math in Game Design
    8. Timer Counting Up Learn how to create a timer for your games!
    9. Timer Counting Down Learn how to add a countdown timer in Pygame!
    1. Animate Drawings Learn how to animate your drawings on Pygame.
    2. If Statements in Game Design
    3. Bounce Your Drawings Learn how to bounce your drawings off the walls
    4. Move Drawing with Keyboard Learn how to move your drawing around the page with your keyboard.
    5. Move a Drawing with Mouse Learn how to move drawings around the screen with the mouse!
    6. Clicking the Mouse Event Learn how to have the game respond to a mouse click.
    7. Ping Pong Game Learn how to create the ping pong game using Pygame!
    8. Ping Pong Game Part 2 Finish creating the ping pong game!
    9. Ping Pong Game Improvements Learn how to make your Ping Pong game even better.
    10. Snake Game Learn how the game of snake works with Pygame.
    1. Computer Parts and Pieces Learn the different parts that make up a computer!
    2. Introduction Welcome to Python! This lesson gives a great introduction to Python programming and will get you up and coding in no time.
    3. Variables Variables are an important part of programming. Let's find out how we can use them in this lesson.
    4. From Electricity to a Bit Learn how information moves through computer components to generate the programs you enjoy.
    5. Input/Output Writing programs that can get input from the user is a valuable skill.
    6. Introduction to Algorithms Learn what an algorithm is and where they are in your life.
    7. Visualizing Algorithms Learn how to create flow charts to visualize your algorithms.
    8. Syntax & Comments This lesson covers basic Python syntax and how to add comments to your code.
    9. Algorithms in Computer Programming Practice building algorithms for computer programming!
    10. Network Topologies Learn how different layouts of networks can help information move more efficiently
    11. Variable Types There are lots of different ways that you can store data in Python. This lesson covers a few of those data types.
    12. Numbers This lesson covers different types of numbers that you can use in Python.
    13. Troubleshooting Learn some strategies for fixing computer problems.
    1. Converting Data Types This lesson covers how to convert one data type into another.
    2. Digital Citizenship Learn about digital citizenship and how you can be responsible with your technology.
    3. Python Concatenation Connecting strings together can be very useful. Let's take a look at how this can be accomplished.
    4. Python Math Math is an important part of programming. This lesson covers how we can use math in Python.
    5. Modulus This lesson covers using modulus in Python. We will take a look at its usefulness including how to tell if a number is even or odd.
    6. Rogue Access Points Learn what access points are and explore how someone might exploit them.
    7. Encryption Learn how encryption helps make things more secure.
    8. Strings Strings in programming are a lot different than strings in real life. Let's see how useful strings are in Python.
    9. Computer Innovations Explore how different computer innovations have affected our everyday lives.
    10. String Methods Python provides methods or actions that we can take on our strings. This lesson will teach us some of the basic methods we can use.
    11. Error Messages & Debugging
    12. Cyber Bullying
    13. String Methods Continued This lesson continues the topic of methods that we can use with strings.
    14. Cybersecurity Posture Learn about different ways you can stay safe while using the internet.
    15. The Digital Divide
    1. Checking Strings Searching strings for certain characters, words or phrases is easy in Python!
    2. Simulations
    3. History of Computer Science Timeline Learn about the history of computer science and see how far we have come!
    4. Lists Lists are one of the main ways that we organize data in most programming languages. This lesson covers how to use lists in Python.
    5. Python If Statements If statements allow you to decide what code should run depending on some conditions. This lesson will cover the basics on using if statements in Python.
    6. Python Conditionals This lesson covers conditionals and how you can use them to compare data. We will also use if statements to execute code based on the conditionals.
    7. Python Else If Statements Else If statements in Python allow you to add multiple if statements at once. The possibilities are endless!
    8. Python For Loops This lesson covers For Loops and how to use them in Python. You will also learn how to access each item in a list using a For Loop.
    9. Python Functions Functions are a great way to break up long sections of code and can be used multiple times without having to rewrite them.
    10. Python Function Parameters One of the great things about functions is that we can pass parameters to them and the function can handle the rest.
    11. AI, Machine Learning, & Automation Learn how artificial intelligence, machine learning, and automation are affecting your world and potential changes in the future.
    12. Python While Loops While loops are looping code structures that run WHILE something is true.
    13. Nested For Loops This lesson covers the use of nested for loops when working with 2D lists.
    14. Team Project and the Software Development Life Cycle
    1. Project: Nicco's Pizza You are the new owner of Nicco’s Pizza in Rome Italy and Gordon Ramsey, The Cake Boss, and many other food celebrities are coming to eat at your restaurant. Since it is the very best Pizza it needs to have the very best ordering system.
    2. Project: Leap Year leap year calc
    3. Py String Methods
    4. Py String Methods Continued
    5. Py Programming Languages
    6. Py Lists
    7. History of Computer Science
    8. Py Python For Loops
    9. Py Python Functions
    10. Py Python Function Parameters
    11. Py Python While Loops
    1. Python 2 Project: Prime Number Calculator Prime number calc
    2. Printing Specifics in Python
    3. If Statement in a For Loop Why not combine a few of the previous lesson content? Let's take a look at using if statements in for loops.
    4. Python Accessing Items in a List Lists are great but not very useful if we can't access the items inside of them. Let's take a look at how to access these items without needing to use a for loop.
    5. Using Integers from a List Learn about different ways to use a list of integers!
    6. Adding to Lists in Python Learn different ways to add to and remove from a list in Python.
    7. Removing from Lists in Python Learn different ways to remove items from lists in Python
    8. Python Lists Continued This lesson continues on the topic of lists and accessing items inside of them.
    9. Testing Code
    10. Generator and Lambda Functions
    11. Multiple Parameters in Python Functions Two is better than one! Let's learn how we can pass multiple parameters to a function in Python.
    12. Python Dictionaries The second grouping of information we will look at in Python is dictionaries. Don't get these confused with real world dictionaries!
    13. Adding to and Removing from Dictionaries Learn the different ways to add to or remove from a dictionary in Python.
    14. Dictionaries Continued Let's continue learning about dictionaries in Python, specifically how to add and remove items, check the dictionary's length, and look for certain keys in a dictionary.
    15. Looping Through a Dictionary Using For Loops with dictionaries is easy! Let's see how this is accomplished in Python.
    16. Looping Through a Dictionary Continued This lesson adds to our knowledge of dictionaries and for loops.
    17. Tuples This lesson introduces tuples and how we can use them to store data in Python.
    18. Python 2 Project: Factorials In this project, students will write a program that receives one number as the input, then calculates the sum of all factorials of its factorial.
    19. Sets
    1. Reading Files One of the most useful features of Python is the ability to create, read, write, and edit files. This lesson covers the basics of this functionality.
    2. Reading Parts of a File This lesson will cover how to read only specific parts of a txt file.
    3. Append a Line to a Text File This lesson will teach you how to write a program that can edit text files.
    4. File Write Mode This lesson covers how to use the "w" command in the open() function.
    5. Nested For Loops This lesson covers the use of nested for loops when working with 2D lists.
    6. Multi-dimensional Lists This lesson covers multi-dimensional lists, and how they can be used in programming.
    7. Iterating through 2D Lists This lesson will cover how to use for loops to iterate through each element of a 2D list.
    8. Recursion This lesson will cover recursion, which is the technique of using functions that call themselves.
    9. Recursion vs Iteration This lesson covers the difference between recursive algorithms and iterative algorithms.
    10. Bubble Sort This lesson teaches about the Bubble sort algorithm, and how it is implemented.
    11. Python Random Learn how to get random values in Python
    12. Selection Sort This lesson covers Selection Sort, another sorting algorithm.
    13. Python Math Library
    14. Insertion Sort This lesson covers Insertion Sort, a useful data sorting algorithm.
    15. Python Datetime
    16. Merge Sort This lesson covers Merge sort, a useful data sorting algorithm.
    17. Modules & Packages
    1. Object-Oriented Programming This lesson covers the basics of object-oriented programming.
    2. Creating an Instance/Object This lesson covers how to create an instance of your class.
    3. Objects Continued
    4. Super Classes
    5. Interviewing Basics Learn the basics of interviewing!
    6. Dress for Success Learn the standard and dress expectations for different environments, and what they entail!
    7. Data Structures Learn about the different ways we use data and the challenges associated with data collection, structure, and interpretation.
    8. Printing Specifics in Python
    9. Different Concatenating Approaches
    10. Error Handling
    11. OS Path
    1. Team Members in Tech
    2. Software Engineer Learn what it means to be a software engineer!
    3. Database Administrator Learn what it means to be a database administrator!
    4. Network Analyst Learn what it means to be a network analyst!
    5. Video Game Developer Learn what it means to be a video game developer!
    6. Bioinformatic Scientist Learn what it means to be a bioinformatic scientist
    7. Drone Software Engineer Learn what it means to be a drone software engineer!
    8. Computer Science Teacher Learn what it means to be a computer science teacher!
    9. Virtual Reality Specialist Learn what it means to be a virtual reality specialist!
    10. Hardware Engineer Learn what it means to be a hardware engineer!
    11. Web Developer Learn what it means to be a web developer!
    12. Information Security Analyst Learn what it means to be an information security analyst!
    13. Health Information Technician Learn what it means to be a health information technician!
    14. Data Scientist Learn what it means to be a data scientist!
    15. Software Tester Learn what it means to be a software tester!
    16. App Developer Learn what it means to be an app developer!
    17. Artificial Intelligence Specialist Learn what it means to be an Artificial Intelligence Specialist!
    18. Ethical Hacker Learn what it means to be an ethical hacker!
    19. Web Designer Learn what it means to be a web designer!
    20. Agricultural Engineer Learn what it means to be an agricultural engineer!
    21. Marine Scientist
    22. Food Scientist
    23. Ecologist Learn what it's like to be a ecologist!
    24. Climatologist
    25. Biometrician
    26. Remote Sensing Specialist

Standard Alignment

CSTA K-12 Computer Science Standards

  • 2-AP-10
  • 2-AP-11
  • 2-AP-12
  • 2-AP-13
  • 2-AP-14
  • 2-AP-15
  • 2-AP-16
  • 2-AP-17
  • 2-AP-18
  • 2-AP-19
  • 2-CS-03
  • 2-DA-07
  • 2-DA-08
  • 2-IC-20
  • 2-IC-22
  • 2-IC-23
  • 2-NI-05
  • 2-NI-06
  • 3A-AP-13
  • 3A-AP-14
  • 3A-AP-15
  • 3A-AP-16
  • 3A-AP-17
  • 3A-AP-18
  • 3A-AP-19
  • 3A-AP-22
  • 3A-AP-23
  • 3A-CS-03
  • 3A-DA-11
  • 3A-DA-12
  • 3A-IC-27
  • 3A-IC-29
  • 3A-NI-06
  • 3A-NI-07
  • 3A-NI-08
  • 3B-AP-10
  • 3B-AP-11
  • 3B-AP-12
  • 3B-AP-13
  • 3B-AP-14
  • 3B-AP-16
  • 3B-AP-18
  • 3B-AP-19
  • 3B-AP-21
  • 3B-AP-22
  • 3B-IC-25
  • 3B-IC-27
  • 3B-NI-04
  • Aligned to 1 Utah standards

State standards documents

Document Standards Grades
National
2022 Skill Struck Standards Alignment + Correlation Guide CSTA K-12 Computer Science Standards · 2022 K-2, 3-5, 6-8, 9-12
Alabama
Alabama Course of Study Digital Literacy and CS Standards + Skill Struck Alignment Alabama Course of Study Digital Literacy and CS Standards K-2, 3-5, 6-8, 9-12
Arizona
Arizona Computer Science Standards + Skill Struck Alignment Arizona Computer Science Standards K-2, 3-5, 6-8, 9-12
Arkansas
Arkansas Computer Science and Computing Standards High School Programming + Skill Struck Alignment Arkansas Computer Science and Computing Standards High School Programming · 2023 9-12
California
California K-12 CS Standards + Skill Struck Alignment California K-12 CS Standards K-2, 3-5, 6-8, 9-12
Idaho
Idaho Content Standards Computer Science + Skill Struck Alignment Idaho Content Standards Computer Science · 2023 K-2, 3-5, 6-8, 9-12
Illinois
Illinois Computer Science Standards + Skill Struck Alignment Illinois Computer Science Standards · 2022 K-2, 3-5, 6-8, 9-12
Indiana
Indiana K-12 Computer Science Standards + Skill Struck Alignment Indiana K-12 Computer Science Standards · 2023 K-2, 3-5, 6-8, 9-12
Iowa
Iowa Computer Science Standards + Skill Struck Alignment Iowa Computer Science Standards K-2, 3-5, 6-8, 9-12
Kansas
Kansas CS Standards P-12 + Skill Struck Alignment Kansas CS Standards P-12 · 2023 K-2, 3-5, 6-8, 9-12
Kentucky
Kentucky Academic Standards for Computer Science + Skill Struck Alignment Kentucky Academic Standards for Computer Science · 2023 K-2, 3-5, 6-8, 9-12
Maryland
Maryland K-12 CS Standards + Skill Struck Alignment Maryland K-12 CS Standards · 2023 K-2, 3-5, 6-8, 9-12
Massachusetts
Massachusetts Digital Literacy and Computer Science Standards + Skill Struck Alignment Massachusetts Digital Literacy and Computer Science Standards · 2023 K-2, 3-5, 6-8, 9-12
Michigan
Michigan K-12 Standards Computer Science + Skill Struck Alignment Michigan K-12 Standards Computer Science · 2023 K-2, 3-5, 6-8, 9-12
Mississippi
Mississippi College and Career Readiness standards for Computer Science + Skill Struck Alignment Mississippi College and Career Readiness standards for Computer Science · 2022 K-2, 3-5, 6-8, 9-12
Missouri
Missouri K-12 Computer Science Performance Standards + Skill Struck Alignment Missouri K-12 Computer Science Performance Standards · 2023 K-2, 3-5, 6-8, 9-12
Nebraska
Nebraska K-12 Technology Standards + Skill Struck Alignment Nebraska K-12 Technology Standards · 2023 K-2, 3-5, 6-8, 9-12
Nevada
Nevada Academic Content Standards for CS + Skill Struck Alignment Nevada Academic Content Standards for CS K-2, 3-5, 6-8, 9-12
Nevada Academic Content Standards for Integrated Technology + Skill Struck Alignment Nevada Academic Content Standards for Integrated Technology K-2, 3-5, 6-8, 9-12
Nevada Computer Science Standards + Skill Struck Alignment Nevada Computer Science Standards 9-12
New Jersey
New Jersey Computer Science and Design Thinking Standards + Skill Struck Alignment New Jersey Computer Science and Design Thinking Standards · 2020 K-2, 3-5, 6-8, 9-12
New York
New York Computer Science and Digital Fluency Learning Standards K-12 + Skill Struck Alignment New York Computer Science and Digital Fluency Learning Standards K-12 K-2, 3-5, 6-8, 9-12
North Carolina
North Carolina K-12 CS Standards + Skill Struck Alignment North Carolina K-12 CS Standards K-2, 3-5, 6-8, 9-12
Ohio
Ohio's Learning Standards Computer Science + Skill Struck Alignment Ohio's Learning Standards Computer Science · 2023 K-2, 3-5, 6-8, 9-12
Oklahoma
Oklahoma Academic Standards for Computer Science + Skill Struck Alignment Oklahoma Academic Standards for Computer Science K-2, 3-5, 6-8, 9-12
Rhode Island
Rhode Island's K-12 CS Education Standards + Skill Struck Alignment Rhode Island's K-12 CS Education Standards K-2, 3-5, 6-8, 9-12
South Carolina
South Carolina's Computer Science Standards for High School + Skill Struck Alignment South Carolina's Computer Science Standards for High School · 2023 9-12
Tennessee
Tennessee K-12 Computer Science State Standards + Skill Struck Alignment Tennessee K-12 Computer Science State Standards · 2023 K-2, 3-5, 6-8, 9-12
Texas
TEKs Skills for CTE + Skill Struck Alignment TEKs Skills for CTE 9-12
Utah
Utah 6-12 CS Standards + Skill Struck Alignment Utah 6-12 CS Standards · 2019 6-8, 9-12
Virginia
Virginia K-12 CS Standards + Skill Struck Alignment Virginia K-12 CS Standards · 2023 K-2, 3-5, 6-8, 9-12
Washington
Washington K-12 CS State Learning Standards + Skill Struck Alignment Washington K-12 CS State Learning Standards K-2, 3-5, 6-8, 9-12
Wisconsin
Wisconsin Standards for Computer Science + Skill Struck Alignment Wisconsin Standards for Computer Science · 2023 K-2, 3-5, 6-8, 9-12

Course Project

In this course students will complete challenges that help solidify concepts as they use skills in a variety of ways. In order to complete tasks, students will creatively apply what they've learned by using different approaches to reach a goal. This experience closely follows challenges they would face in a technical interview, allowing them to practice. Some examples of projects: Find the Tens Place, Remove String Section, Leap Year, Factorial, Halloween Candy Count