290 likes | 396 Views
CSE 20211 Fundamentals of Computing Prof. Douglas Thain Fall 2011. Main Objectives. Learn how to think algorithmically. Get LOTS of practice programming. Take a tour of computer science. Learn a lot of C, a little C++, and some Unix. What is Computer Science and Engineering?.
E N D
CSE 20211Fundamentals of ComputingProf. Douglas ThainFall 2011
Main Objectives • Learn how to think algorithmically. • Get LOTS of practice programming. • Take a tour of computer science. • Learn a lot of C, a little C++, and some Unix.
Conventional(but unsatisfying) definitions: • Computer science is the study of software, and is closest to the field of mathematics. • Computer engineering is the study of hardware and is closest to the field of EE.
CSE is Logic and Mathematics P = NP? Quicksort The PageRank Algorithm The Minimax Algorithm
Computing is a Mode of Science Theory Experiment Simulation via Computation
Learning the Craft of Programming • Write programs for fun! • Write programs for work. • Write programs for contests. • Learn several languages: • An assembly language. (x86, MIPS, PowerPC) • A procedural language (C, FORTRAN) • An object-oriented language (Java, C#) • A scripting language (python, perl, bash) • A functional language (LISP, Haskell) • Work on a team writing software (classes, research) • Download, examine, and modify open source software. • Read good books about computing. • Revisit programs you have written before.
Handheld Devices (2000s) + The Cloud
Personal Computers (1990s) The Internet (2000s)