Programming · free flashcards
Programming flashcards: JavaScript, TypeScript, Python, Java, C#, Go, Rust and more
Developers look things up constantly, but the basics you recall instantly are the ones you actually use well. These decks cover the language features, query patterns and commands that come up in daily work and in technical interviews, each with a short, highlighted code example.
- Real code, highlightedAnswers are runnable snippets with syntax highlighting, not vague definitions.
- Interview-readyClosures, the event loop, generics, ownership and rebasing: the questions interviewers love.
- Five minutes a daySpaced repetition shows each card just before you forget it, so short sessions are enough.
Programming decks
JavaScript
Master the JavaScript every developer uses daily: scope, closures, equality, array methods, promises, async/await and the event loop.
50 cardsAdvanced JS
Fifty advanced JavaScript cards: event-loop ordering puzzles, generators and async iteration, this binding, Proxy and Reflect, modules, AbortController and coercion edge cases.
50 cardsTypeScript
Learn the TypeScript you use every day: narrowing, generics, keyof, mapped and conditional types, utility types, satisfies and strict mode, with code on every card.
50 cardsPython
Learn idiomatic Python fast: comprehensions, f-strings, args and kwargs, generators, decorators, context managers and the standard library.
50 cardsGit & terminal
The Git commands and shell skills developers use every day: branching, rebasing, undoing mistakes, pipes, redirects, permissions and processes.
50 cardsJava
Core Java with short snippets: equals vs ==, records, sealed types, collections, generics, exceptions, streams, lambdas and JVM basics.
50 cardsC#
C# and .NET fundamentals with short snippets: value vs reference types, properties, records, nullable reference types, LINQ, async/await and DI.
50 cardsKotlin
Kotlin fundamentals with short snippets: null safety, val vs var, data and sealed classes, extension functions, scope functions and coroutines.
50 cardsSwift
Swift fundamentals with short snippets: optionals, structs vs classes, protocols, enums with associated values, closures, ARC, async/await and SwiftUI.
50 cardsFlutter
Flutter and Dart basics: null safety, futures and streams, stateless vs stateful widgets, setState, hot reload, keys, layout and state management.
50 cardsPHP
Modern PHP 8 with short snippets: strict types, arrays, match, nullsafe and named arguments, enums, readonly, Composer, PDO and password_hash.
50 cardsRuby
Ruby fundamentals with short snippets: blocks, procs and lambdas, symbols, Enumerable, mixins, truthiness, method_missing, gems and Bundler.
50 cardsGo
Go (Golang) fundamentals with short, idiomatic snippets: slices vs arrays, maps, defer, error wrapping, interfaces, goroutines, channels, select and context.
50 cardsRust
Learn the Rust that the compiler keeps asking about: ownership, borrowing, lifetimes, Option and Result, traits, closures, smart pointers and async.
50 cardsC++
Modern C++ in short snippets: references vs pointers, RAII, smart pointers, move semantics, STL containers and algorithms, const, templates and UB.
50 cardsHaskell
Haskell fundamentals with short code: types and type classes, pattern matching, laziness, Maybe and Either, folds, Functor, Applicative and Monad.
50 cardsElixir
Elixir fundamentals with short snippets: immutability, pattern matching, the pipe operator, Enum vs Stream, processes, GenServer, supervisors and mix.
50 cardsx86-64 assembly
x86-64 assembly in Intel syntax: registers and sub-registers, flags, mov and lea, jumps, the stack frame, the System V calling convention and Linux syscalls.
50 cardsRegex
Learn regular expressions for good: anchors, classes, greedy vs lazy quantifiers, groups, lookarounds, flags, replacements and the backtracking trap.
50 cardsHow spaced repetition works
- Step 1See a cardRecall the answer before you flip it. Effortful recall is what builds memory.
- Step 2Grade yourselfAgain, Hard, Good or Easy. Each answer sets when the card comes back.
- Step 3Review just in timeCards return right before you would forget them: minutes, then days, then months.
Frequently asked questions
Are flashcards useful for learning to code?
For syntax, idioms and concepts, yes. They complement building projects by making the details automatic.
Which languages are covered?
JavaScript (essentials and advanced), TypeScript, Python, Java, C#, Kotlin, Swift, Flutter and Dart, PHP, Ruby, Go, Rust, C++, Haskell, Elixir and x86-64 assembly, plus Git and regex. Web frameworks, databases and computer science have their own topics, and Docker, Kubernetes, Linux and Vim are under IT & DevOps.
Can I make my own code cards?
Yes. Cards support fenced code blocks with highlighting for more than a dozen languages.
Start learning programming today
Free forever. Sync your progress, build a streak, get a daily reminder when your cards are ready, and see your stats grow.