Skip to content

Latest commit

 

History

History
102 lines (70 loc) · 4.48 KB

File metadata and controls

102 lines (70 loc) · 4.48 KB

Flashcards

Spaced-repetition decks distilling the exam-critical facts from across the course into recall-tested Question::Answer cards.

Part of the [[Readme|Python for Security Professionals]] course.

Overview

Each deck uses the Obsidian spaced-repetition plugin's inline format — Question::Answer on a single line. Install the plugin, open a deck, and it schedules the cards for review.

The decks target durable, testable facts — definitions, defaults, syntax, and the security reasoning behind them — rather than long walkthroughs. Study the linked modules for depth, then drill these to lock it in.

Learning Objectives

By the end of this module you will be able to:

  • Recall Python syntax and semantics without reaching for the documentation.
  • State the security rationale behind the course's recurring recommendations.
  • Distinguish commonly confused pairs — is versus ==, threads versus processes, hashing versus encryption.
  • Identify the correct standard-library module for a given security task.

Prerequisites

  • The modules each deck covers — flashcards reinforce understanding, they do not create it.
  • The Obsidian spaced-repetition plugin, or any tool that reads Question::Answer lines.

Topics Covered

  • [[Python-Fundamentals-Flashcards]] — types, operators, control flow, functions, and OOP (Modules 1–6).
  • [[Data-and-Modules-Flashcards]] — files, exceptions, modules, packages, built-ins, and the standard library (Modules 7–11).
  • [[Security-Automation-Flashcards]] — concurrency, subprocess, log analysis, and reconnaissance (Modules 12–13).
  • [[Security-Tooling-Flashcards]] — sockets, TLS, hashing, credentials, and tool architecture (Module 14 and the libraries).

Practical Exercises

  1. Review one deck per day and record which cards you consistently fail.
  2. For every failed card, re-read the linked note and write your own version of the card.
  3. Add cards for anything that surprised you while doing the [[Practical-Labs/Readme|Practical Labs]].
  4. Cover a deck's answers and write the code the card describes from memory.

Security Applications

The decks deliberately over-weight the facts that have security consequences when forgotten:

Fact Consequence if forgotten
secrets, not random Predictable tokens and passwords
Never shell=True with input Command injection
Always set a socket timeout Hung scans, unbounded waits
hmac.compare_digest, not == Timing side channel
Slow KDFs for passwords Trivially cracked credential store
Never unpickle untrusted data Remote code execution
Verify TLS certificates Interceptable traffic and stolen credentials

Common Mistakes

  • Drilling cards for material you have not yet read — recall without understanding does not transfer.
  • Writing cards that ask for a whole paragraph — a card should have one short, checkable answer.
  • Using a colon inside a question without realising :: is the delimiter.
  • Never revising the deck — a card you always get right is wasting review time; a card you always fail needs rewriting, not repetition.

Best Practices

  • One fact per card; split anything that needs a list.
  • Phrase questions so the answer is unambiguous.
  • Write cards in your own words after reading the note.
  • Review little and often rather than in long sessions.
  • Delete or rewrite cards you keep failing — the card is usually the problem.

Review Questions

  1. Which deck covers the difference between threads and processes?
  2. Why do the decks emphasise secrets over random?
  3. What makes a good flashcard answer, and how long should it be?
  4. Which security facts would you add for the tooling you personally build?

Commands

# Count the cards in a deck
grep -c '::' Flashcards/Python-Fundamentals-Flashcards.md

# Count cards across every deck
grep -rc '::' Flashcards/*-Flashcards.md

References

Related Notes

  • [[Readme|Python for Security Professionals]] — course home
  • [[Practical-Labs/Readme|Practical Labs]] — hands-on practice that complements recall drilling
  • [[Mini-Projects/Readme|Mini Projects]] — applying what the decks reinforce

Navigation

  • Home: [[Readme|Course Home]]
  • See also: [[Mini-Projects/Readme|Mini Projects]]