Key Ideas
Computing and science are connected:
scientists utilize computers as tools for conducting research
computer-based models and a computational approach are increasingly used
computer science is a rigorous field of study regarding "artificial" systems
utilizes the scientific method and experimentation
new scientific fields such as bioinformatics and data science blur the lines
Programming is a tool for:
solving problems
experimentation
analysis
Computer science is more than just programming:
problem solving
design & analysis of algorithms
hardware design and manufacturing
interface design and implementation
theoretical understanding of computation
Skills Developed
Problem-solving skills
Analytical/Empirical reasoning skills
Communication skills
Web page development
Programming Concepts
static (HTML) vs. dynamic (JavaScript) pages
dynamic elements (images, buttons, boxes, divs, spans)
element attributes (src, height, value, innerHTML, style)
event handling (onclick, onmouseover, onmouseout)
variables & assignments
data types & expressions
functions & libraries
conditional execution & repetition
counters & sums
General Concepts
Computer basics
von Neumann architecture, hardware vs. software
History of science & computing
scientific method, generations (relays, vacuum tubes, transistors, IC, microprocessors, ULSI)
Internet & the Web
Internet & Web histories, TCP/IP, HTTP
Algorithms & programming
algorithms, efficiency, high-level languages, compilers & interpreters
Computer Science as a Discipline
CS as science?, central themes (software, hardware, theory), subfields, related fields
Data Representation
analog vs. digital, number/text/sound/image/video representations
Computers & Society
positive impact, potential dangers
Applications in science
biology/bioinformatics: computer tools, modeling, biological databases
data science: supervised (e.g., neural networks) vs. unsupervised (e.g., clustering)
modeling & simulations: Monte Carlo methods, random walks, random sequences, dice, slots