Errors are a major problem for users. In the distant past, the users of computer technology often were limited to computer professionals with extensive technical training. With the growth of personal computers and the Internet, millions of people without technical backgrounds use computer technology on a daily basis, both at work and for leisure activities. Because errors can be such a problem for the end user, it is important to examine the causes of error, as well as different approaches for assisting the end user. This chapter presents definitions of error, as well as a taxonomy of user error. There are two general approaches for assisting the end user in responding to errors: system design and training design. Both of these are discussed in-depth in this chapter. The purpose of this chapter is to describe the current situation of end-user error and suggest ways to improve the end -user experience.