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; computational thinking 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, paragraphs, divs, spans) element attributes (href, src, id, height, value, innerHTML, style) event handling (onclick, onmouseover, onmouseout) variables & assignments e.g., gallery.html, form.html, story.html data types & expressions e.g., tip.html, grades.html, level.html functions & libraries e.g., pick4.html, dice1.html, esp.html, oracle.html conditional execution e.g., tip3.html, letter.html, dicestats1.html, slots.html repetition & simulation e.g., interest.html, disease.html, manyrolls.html, volleyball.html counters & sums e.g., dicestats3.html, slots.html, manyrolls.html General Concepts Computer basics von Neumann architecture, hardware vs. software World Wide Web history, browser & server, HTTP, caching, cookies Internet history, distributed, packet switching, TCP/IP, DNS History of computers generations (relays, vacuum tubes, transistors, IC, microprocessors, ULSI) Scientific & Computational Thinking history, scientific method, consistency vs. accuracy, computational thinking 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 Inside the Data analog vs. digital, number/text/sound/image/video representations Inside the Computer transistors, gates, integrated circuits, circuit manufacture, Moore's Law Computers & Society positive impacts: everyday tasks, info source, communications, commerce, ... potential dangers: overreliance, overload, privacy & security, digital divide, ... Applications in science cryptography: history, private-key vs. publicc-key encryption, e-commerce biology/bioinformatics: computer tools, modeling, biological databases artificial intelligence: expert systems, neural networks, genetic algorithms data science: supervised (e.g., neural networks) vs. unsupervised (e.g., clustering) modeling & simulations: Monte Carlo methods, random walks, dice, slots