Goals of the Course
- Understand the tools of the trade:
- Data Structures that allow certain operations on the data
to be done efficiently.
- Algorithms that perform operations and maintain the data
- Gain experience in using library packages
- the buy-versus-build decision
- Understand performance:
- Big O: mathematical shorthand for rate of growth.
- How to analyze a problem, design a solution, and estimate
- How to analyze an existing design or program, spot the
performance problems, and fix them.
- Gain experience in other programming paradigms:
- Lisp: a notation, as well as a language
- Patterns or Rewrite Rules
- MapReduce, Hadoop and parallel data-intensive programming