Programming Languages
Mathematics and Algorithms
Communications
100

An interpreted programming language supporting object oriented design and duck-typing, created by Guido van Rossum

What is Python?

100

A branch of algebra in which all of the involved variables are either true or false

What is boolean algebra?

100

The most basic unit of information, formalized by Claude Shannon in 1945

What is a bit?

200

Developed in 1972 at Bell Labs, this language is still widely used today and is popular in embedded programming

What is C?

200

A law in boolean algebra that states: "not (A or B)" is equivalent to "(not A) and (not B)"

What is De Morgan's Law?

200

This process converts a "plaintext" into a "ciphertext"

What is encryption?

300

This programming language is sometimes referred to as "C with Classes"

What is C++?

300

The principle that states: If N objects are placed into k boxes, then there is at least one box containing at least ⌈N/k⌉ objects

What is the pidgeonhole principle?

300

An electronic circuit that is used to recover the information content from a modulated carrier wave

What is a demodulator?

400

This programming language can help to guarantee memory safety by using a novel feature called a "borrow checker"

What is Rust?

400

An algorithm that solves a problem by reducing that problem into smaller instances of the same problem

What is a recursive algorithm?

400

A type of code that allows errors in transmitted information to be detected and corrected at the receiver

What is an error correction code?

500

A programming language known for being purely functional, and including features such as type inference and lazy evaluation

What is Haskell?

500

A notation used to describe the runtime or computational complexity of an algorithm

What is Big O notation?

500

A mathematical transform that allows functions based on time to be converted into functions based on frequency

What is a Fourier Transform?

M
e
n
u