Introduction to Computer Science (2025)
Cybersecurity, Computer Systems, and Networking
Generate resourceMajor and Emerging Technologies
Generate resourceData Analysis and Visualization
Generate resourceComputational Thinking
Generate resourceCareers and Professionalism
Generate resourceStandard 1.1 - Demonstrate professional readiness within the computer science domain.
Generate resource1.1.1 Demonstrate understanding of various career paths in computer science (e.g., software development, data science, cybersecurity, networking, robotics, computer engineering, and artificial intelligence) and their roles in different industries.
Generate resource1.1.2 Practice professional communication skills through various activities (e.g., mock interviews, technical presentations, and collaborative coding projects) to prepare for real-world scenarios in computer science careers.
Generate resource1.1.3 Describe the importance of ethical considerations in computer science (e.g., data privacy, algorithmic bias, and social impact of technology) and how they apply to professional practice.
Generate resource1.1.4 Evaluate the concept and importance of a professional online presence in computer science careers (e.g., portfolio websites, professional networking platforms, open-source contributions) and explore ways to showcase skills and projects.
Generate resource1.1.5 Identify key elements of a professional portfolio and explain the purpose of a portfolio (e.g., showcasing skills, documenting growth, and supporting college applications or job searches).
Generate resourceStandard 2.1 - Apply computational thinking to effectively solve real-world problems.
Generate resource2.1.1 Recognize situations where leveraging computational approaches (e.g., data analysis, automation, or simulations) would be beneficial for solving real-world problems.
Generate resource2.1.2 Apply the core computational thinking principles—abstraction, decomposition, algorithm development, and pattern recognition—to designing effective problem-solving strategies.
Generate resourceStandard 2.2 - Access, manipulate, and store data within a program using a text-based programming language.
Generate resource2.2.1 Use various data types (e.g., Booleans, characters, integers, floating points, and strings) appropriately within a program.
Generate resource2.2.3 Construct expressions using arithmetic operators (e.g., +, -, *, /, and %) and numeric data types to perform calculations within a program.
Generate resource2.2.4 Convert between different data types when necessary within a program (e.g., casting a string into an integer).
Generate resource2.2.5 Perform operations that encode and decode data from one form into another form (e.g., binary to hexadecimal, numeric values to colored pixels, or numbers to ASCII/Unicode representations).
Generate resource2.2.6 Implement data structures (e.g., arrays, lists, sets, and maps) to organize, store, manipulate, and perform operations on collections of data within a program.
Generate resourceStandard 2.3 - Design and create programs by understanding the execution sequence and anticipated outputs using a text-based programming language.
Generate resource2.3.1 Analyze a program in terms of steps of execution and expected outcomes (e.g., storyboards, flowcharts, and pseudocode).
Generate resource2.3.2 Construct Boolean expressions using relational operators (e.g., <, >, <=, >=, ==, and !=) within a program.
Generate resource2.3.3 Construct Boolean expressions using logical operators (e.g., AND, OR, and NOT) within a program.
Generate resource2.3.4 Create programs that implement selection control structures (e.g., if statements and switch statements) to make decisions and execute different code paths based on conditions.
Generate resource2.3.5 Create programs that implement iteration control structures (e.g., while loops and for loops) to repeat code blocks a specific number of times or until a condition is met.
Generate resource2.3.6 Create subroutines (e.g., procedures and functions) to modularize code for reusability and organization within a program.
Generate resource2.3.7 Debug errors (e.g., syntax, runtime, and logic) within a program to ensure program functionality.
Generate resourceStandard 2.4 - Transfer data into and out of a program effectively using a text-based programming language.
Generate resource2.4.1 Use the console for basic data input and output operations within a program.
Generate resource2.4.2 Explain the structure and purpose of different file types (e.g., txt, csv, bmp, and json) used for data storage.
Generate resource2.4.3 Develop programs that perform file operations including reading data from, writing data to, and appending data to files.
Generate resourceStandard 2.5 - Develop programs that adhere to good coding conventions and include clear documentation.
Generate resource2.5.1 Implement consistent formatting and naming conventions (e.g., indentation, spacing, variable names) to improve code readability and maintainability.
Generate resource2.5.2 Craft clear and concise comments within the code to explain the purpose of different code sections, algorithms used, and non-obvious logic.
Generate resourceStandard 3.1 - Investigate different types of data and explore various methods for collecting data.
Generate resource3.1.1 Categorize data into different types (e.g., quantitative vs. qualitative) and understand the distinction between them.
Generate resource3.1.2 Identify potential sources of data (e.g., sensors, surveys, databases, and web scraping) based on the type of data needed.
Generate resource3.1.3 Explain advantages and disadvantages of different data collection methods considering accuracy, cost, and time.
Generate resource3.1.4 Design basic data collection methods (e.g., surveys, checklists, experiments) for a specific purpose.
Generate resourceStandard 3.2 - Develop programs that effectively communicate data insights using analysis and visualizations.
Generate resource3.2.1 Identify and address data quality issues (e.g., missing values, inconsistencies, and outliers).
Generate resource3.2.2 Analyze data sets using descriptive statistics and visualizations (e.g., histograms and box plots).
Generate resource3.2.3 Inspect and use exploratory analysis techniques to identify patterns and relationships.
Generate resource3.2.4 Develop programs that perform appropriate data analysis techniques (e.g., correlations, comparing means).
Generate resource3.2.5 Create programs that generate visualizations (e.g., bar, line, scatter, pie charts).
Generate resourceStandard 3.3 - Communicate data insights effectively, considering data bias and ethics.
Generate resource3.3.1 Recognize and explain how potential biases in data can influence insights.
Generate resource3.3.2 Develop narratives that communicate data insights clearly and effectively.
Generate resourceStandard 4.1 - Develop understanding of major established technologies and their impact.
Generate resource4.1.1 Define artificial intelligence (AI), its subfields, benefits, and drawbacks.
Generate resource4.2.1 Define quantum computing and explain its potential to transform computing.
Generate resource4.2.4 Describe blockchain technology and its potential uses in various sectors.
Generate resourceStandard 5.1 - Understand the importance of cybersecurity and its role in protecting information.
Generate resource5.1.1 Analyze core information security principles (confidentiality, integrity, availability, authentication, non-repudiation).
Generate resource5.1.3 Describe cybersecurity practices and technologies (e.g., encryption, firewalls, MFA).
Generate resource5.1.4 Analyze the impact of best practices (e.g., strong passwords, awareness training).
Generate resource5.2.2 Define software and distinguish between system and application software.
Generate resource5.3.1 Define and explain common network concepts (e.g., IP, protocols, latency).
Generate resource5.3.4 Analyze the relationship between computer systems, software, and networks.
Generate resource