What Is Computational Thinking?

definition, analog/digital, history, stored program computer, Moore's law


Riley, pp. 1-5 (definition)
Riley, pp. 5-17 (history)
Riley, pp. 17-21 (modern)
Riley, pp. 21-23 (Moore's law)

How Real-World Information Becomes Computable Data

information v. data; number systems; encoding information, compression


Riley, pp. 27-30 (information/data)
Riley, pp. 30-35 (binary)
Riley, pp. 35-39 (number systems)
Riley, pp. 39-52 (encoding, compression)

Algorithmic Thinking II (applications)

stored-program architecture; expressions; numbers; operators; arity; precedence; strings; concatenation; patterns; regular expressions;


Riley, pp. 223-224, 232-236 (spreadsheets)
Riley, pp. 224-231-x (operators, expressions, etc.)
Riley, pp. 237-245 (text)
Riley, pp. 245-256 (patterns)

Let's Get It Correct

errors; validation; verification; testing; boundary analysis;


Riley, pp. 263-267 (errors)
Riley, pp. 267-272 (validation and verification)
Riley, pp. 272-283 (testing)
Riley, pp. 283-287 (boundary analysis)

Limits of Computation

time/space; miniaturization limits; plotting and assessing algorithm performance; halting problem; Turing test


Riley, pp. 291-305 (measuring performance)
Riley, pp. 305-312 (the impractical and the impossible)
Riley, pp. 313-316 (Turing test and AI)

Information Security



Riley, pp. 344-353 (definitions)
Riley, pp. 353-359 (authentication/authorization)
Riley, pp. 359-365 (encryption)
Riley, pp. 365-370 (firewalls)
Riley, pp. 370-376 (strategies)