Team Teach: Core Concepts in CSP
A reimagined overview of the big ideas from our collaborative lessons—each section links to the original deep-dive resources for further exploration.
Upsides of Computing
Deep dive: Positive Impacts on Society
Summary:
Computing helps in healthcare, business, education, and the environment by using data and automation.
- AI-powered diagnostics for faster, more accurate medical decisions
 - Automated workflows that free up human effort
 - Platforms for seamless global collaboration
 - IoT networks monitoring air, water, and wildlife health
 - Online learning systems expanding educational reach
 - Real-time analytics supporting disaster relief
 
Downsides of Technology
Deep dive: Unintended Consequences
Summary:
Technology can harm privacy, jobs, and the environment if not managed carefully.
- Mass surveillance eroding individual privacy
 - Automation displacing workers in routine roles
 - Social media overuse impacting mental health
 - Growing cybercrime, phishing, and ransomware
 - Algorithmic bias producing unfair outcomes
 - Escalating e-waste and resource depletion
 
Bridging the Digital Gap
Deep dive: Closing the Digital Divide
Summary:
Free and light tools let people code on old or low-cost devices.
- Cloud IDEs (Replit, Jupyter) requiring only a browser
 - Linux distributions revitalizing Chromebooks and old PCs
 - Windows Subsystem for Linux (WSL) for Unix tools on Windows
 - Cross-platform editors like VS Code and Atom
 - Offline documentation for limited-connectivity regions
 - Community-led workshops sharing practical skills
 
Algorithmic Bias
Deep dive: Computing Bias
Summary:
Algorithms can treat some groups unfairly if their training data isn’t balanced.
- Training sets that underrepresent certain demographics
 - Testing only on popular hardware configurations
 - Black-box models hiding biased decision logic
 - Feedback loops that amplify existing prejudices
 - Development guidelines emphasizing fairness
 - Regular audits to detect and correct bias
 
Harnessing the Crowd
Deep dive: Crowdsourcing in Practice
Summary:
Many people can work on small tasks to solve big problems together.
- Foldit gamers solving protein structures in HIV research
 - Volunteer editors building and curating Wikipedia
 - Crowdsourced labeling for machine-learning datasets
 - Competition platforms (Kaggle, Innocentive) spurring innovation
 - Microtask services like Amazon Mechanical Turk
 - Crowdfunding creative and technical projects
 
Law & Ethics in Code
Deep dive: Ethical and Legal Issues
Summary:
Code must respect copyrights, patents, and fair-use rules.
- Copyright vs. patent: creative works vs. inventions
 - Open-source licenses (GPL, MIT, Apache) and their terms
 - Best practices for citing third-party code
 - Ownership concerns around AI-generated content
 - Digital Rights Management (DRM) to enforce usage rules
 - Ethical guidelines for collaborative and academic projects
 
Staying Secure
Deep dive: Safe Computing Essentials
Summary:
Use MFA, encryption, and regular updates to keep data and systems safe.
- Multi-Factor Authentication (MFA) for hardened accounts
 - SSL/TLS encryption to protect data in transit
 - Regular patching of OS and applications
 - VPNs and firewalls to isolate and guard networks
 - Phishing awareness training for end users
 - Collecting only essential personal data
 
Binary Search Fundamentals
Deep dive: Binary Search Explained
Summary:
Binary search finds an item by splitting a sorted list in half each time.
- Divide-and-conquer approach: compare to midpoint
 - Time complexity: O(log n)
 - Prerequisite: data must be sorted
 - Handling duplicates: adjust pointers to find first/last match
 - Safe midpoint calc: 
mid = low + (high - low)//2 - Built-in support via Python’s 
bisectmodule 
Data Filtering Techniques
Deep dive: Practical Filtering
Summary:
Filtering picks items that meet a condition from a list.
- Python list comprehensions for concise filters
 - Predicate functions for complex selection logic
 - Linear time performance: O(n)
 - Chaining conditions to refine results
 - SQL 
WHEREand Pandas.loc[]for large datasets - Use cases: spam detection, data cleaning, eligibility checks
 
Randomized Methods
Deep dive: Random Algorithms
Summary:
Random algorithms use chance to solve problems or make fair choices.
- Monte Carlo simulations estimating probabilities
 - Random forests building diverse model ensembles
 - Cryptographic key generation with secure randomness
 - Shuffling and sampling for unbiased selection
 - Genetic algorithms evolving solutions iteratively
 - Tools: Python’s 
randomandsecretsmodules 
Simulation Models
Deep dive: Simulations Unpacked
Summary:
Simulations mimic real systems so we can test without risk.
- Engineering stress tests in ANSYS or SolidWorks
 - VR surgical simulations for healthcare training
 - Climate and environmental modeling
 - Agent-based economic forecasts
 - Physics engines powering realistic games
 - Educational demos like dice rolls and RPS
 
Understanding Big O
Deep dive: Complexity Concepts
Summary:
Big O shows how an algorithm’s time or space needs grow with more data.
- O(1): constant-time operations
 - O(log n): divide-and-conquer strategies
 - O(n): single-pass loops
 - O(n log n): efficient sorting algorithms
 - O(n²+): nested loops and exhaustive searches
 - Space complexity: memory usage trends
 
Graphs & Heuristic Searches
Deep dive: Graphs & A* Search
Summary:
Graphs show connections, and heuristics find good paths fast.
- Nodes (vertices) and edges (connections)
 - Directed vs. undirected, weighted vs. unweighted graphs
 - Applications: social networks, GPS routing, recommendations
 - Greedy best-first search for quick heuristics
 - A* combining cost and heuristic estimates
 - Tackling NP-hard problems with approximation
 
Practice Questions
- What are three positive societal impacts of computing? (Upsides of Computing)
 
Answer
- AI-powered diagnostics in healthcare - Automation streamlining business processes - Environmental monitoring via IoT sensors- Name two risks associated with rapid technological growth. (Downsides of Technology)
 
Answer
- Widespread data collection eroding privacy - Automation leading to job displacement- List four strategies for coding on low-budget hardware. (Bridging the Digital Gap)
 
Answer
- Use browser-based IDEs (Replit, Jupyter) - Install lightweight Linux on older machines - Enable WSL on Windows for Unix tools - Adopt cross-platform editors like VS Code- Describe one example of algorithmic bias and how to mitigate it. (Algorithmic Bias)
 
Answer
- Facial recognition misidentifying certain groups; mitigate with diverse datasets and inclusive testing.- Give two real-world applications of crowdsourcing. (Harnessing the Crowd)
 
Answer
- Foldit protein-folding game contributions - Volunteer-edited articles on Wikipedia- What are the main differences between copyright and patent protections? (Law & Ethics in Code)
 
Answer
- **Copyright:** Covers creative works like code and media - **Patent:** Protects inventions and technical processes- Explain why MFA and encryption are critical for cybersecurity. (Staying Secure)
 
Answer
- MFA adds extra verification, reducing unauthorized access - Encryption ensures data confidentiality during transmission- Outline the steps of binary search on a sorted list of 16 items. (Binary Search Fundamentals)
 
Answer
1. Compare target with the middle element (index 7) 2. Choose left or right half (8 elements) 3. Repeat halving (8 → 4 → 2 → 1) until found or range is empty- How does a list comprehension filter out even numbers? (Data Filtering Techniques)