In today's information age, scientists and engineers must quickly and efficiently analyze extremely large sets of data. One of the best tools to accomplish this is Interactive Data Language (IDL (R)), a programming and visualization environment that facilitates numerical modeling, data analysis, and image processing. IDL's high-level language and powerful graphics capabilities allow users to write more flexible programs much faster than is possible with other programming languages. An Introduction to Programming with IDL enables students new to programming, as well as those with experience in other programming languages, to rapidly harness IDL's capabilities: fast, interactive performance; array syntax; dynamic data typing; and built-in graphics. Each concept is illustrated with sample code, including many complete short programs.