This is very much an introductory article, but it's the sort of thing where, if you don't know it, you really don't know it. When people think about computer programs, they usually think about algorithms (for example, functions and procedures), but an equally important dimension is the data structure. This article surveys the most important types of data structure, beginning with simple concepts like arrays, stacks and queues, proceeding through more interesting things like linked lists and hash tables, and wraps up with a look at graphs and trees and tries. If you don't know what these things are, and your work involves technology, you should review this article.