Most of the following books are not especially difficult. Most are available at Amazon.com.
The Mythical Man-Month; Brooks, Addison-Wesley, 1995
ACM Turing Award Lectures; Addison-Wesley, 1987
Computer Related Risks; Neumann, Addison-Wesley, 1995
Computers, Ethics, and Social Values; Johnson and Nissenbaum, Prentice Hall, 1995
Great Papers in Computer Science, LaPlante, IEEE, 1996
The CRC Card Book; Bellin and Simone, Addison-Wesley, 1997
Designing Object-Oriented Software; Wirfs-Brock, Wilkerson, and Wiener, Prentice-Hall, 1990
UML Distilled; Fowler and Scott, Addison-Wesley, 1997
Java and Object Orientation: an Introduction, Hunt, Springer-Verlag, 1998
Extreme Programming Explained, Beck, Addison-Wesley, 1999
Design Patterns Explained, Shalloway and Trott, Addison-Wesley, 2002
Patterns in Java; Grand, Wiley, 1998
Design Patterns; Gamma, Helm, Johnson, and Vlissides, Addison-Wesley, 1995
Pattern-oriented Software Architecture; Buschmann, Meunier, Rohnert, Sommerlad,and Stal, Wiley, 1996
The Patterns Handbook, Rising, Cambridge, 1998
Analysis Patterns, Fowler, Addison Wesley, 1997
Pattern Languages of Program Design, Coplien and Schmidt (editors), Addison Wesley 1995
Pattern Languages of Program Design 2, Vlissides, Coplien and Kerth (editors), Addison Wesley 1996
Pattern Languages of Program Design 3, Martin, Riehle, and Buschmann(editors), Addison Wesley 1998
Pattern Languages of Program Design 4, Harrison, Foote, and Rohenert(editors), Addison Wesley 2000
The Java Programming Language, Arnold and Gosling, Addison-Wesley, 1998
The Java Tutorial, Campione and Walrath, Addison-Wesley, 1998
Refactoring, Martin Fowler, Addison-Wesley, 2000
Essential Java Style: Patterns for Implementation, Langr, Prentice Hall, 2000
Effective C++; Myers, Addison-Wesley, 1998
Mastering Object-Oriented Design in C++; Horstman, Wiley, 1995
Thinking Recursively; Roberts, Wiley, 1986
Software Tools in Pascal; Kernighan and Plauger, Addison-Wesley, 1981
The Science of Programming; Gries, Springer Verlag, 1981
A Logical Approach to Discrete Math; Gries and Schneider, Springer Verlag, 1993
Programming Pearls; Bentley, Addison-Wesley, 1986
More Programming Pearls; Bentley, Addison-Wesley, 1988
The C Programming Language; Kernighan and Ritchie, Prentice Hall, 1988
Structure and Interpretation of Computer Programs; Abelson, Sussman, and Sussman, 1996
Java Structures, Bailey, McGraw-Hill, 1999
A Theory of Objects; Abadi and Cardelli, Springer-Verlag, 1996
The Lambda Calculus : Its Syntax and Semantics; Barendregt, 1984
Compilers: Principles, Techniques, and Tools; Aho, Sethi, and Ullman, Addison-Wesley, 1985
On Pascal Compilers: Hansen, Prentice-Hall, 1985
A First Course in Formal Language Theory; Rayward-Smith, Blackwell, 1983
First Course in Computability; Rayward-Smith, Blackwell, 1987
Structured Computer Organization; Tanenbaum and Goodman, Prentice Hall, 1998
Programming Language Processors in Java, Watt and Brown, Prentice-Hall, 2000
Designing the User Interface (3ed), Schneiderman, Addison Wesley, 1998
April 17, 2002