Python with Data Structures |
![Fundamentals of Python: Data Structures, Second Edition](covers/CS2PythonCoverv2Small.jpg) |
Fundamentals of Python: Data Structures, Second Edition (Cengage, 2019). |
Easy GUI Programming in Java |
![GUI Programming Book](covers/EasyJavaGUICoverIcon.jpg) |
Easy GUI Programming in Java (eBook, 2018). |
Fundamentals of Python |
![Fundamentals of Python, Second Edition](covers/CS1PythonCoverv2Small.jpg) |
Fundamentals of Python, Second Edition (Cengage, 2019). |
Functional Programming in Haskell |
![A Gentle Introduction to Functional Programming in Haskell](covers/HaskellBookCoverIcon.jpg) |
A Gentle Introduction to Functional Programming in Haskell (eBook, 2016). |
Scientific Computing |
![Scientific Computing](covers/ScientificComputing.jpg) |
Scientific Computation and Programming in Python (with Daniel Kaplan and Simon Levy, Project Mosaic, 2016). |
Python for Teens |
![Python Programming for Teens](covers/pythonteens.jpg) |
Python Programming for Teens (Course Technology, Cengage Learning, 2015). |
GUI Programming |
![GUI Programming Book](covers/EasyGUICoverIcon.jpg) |
Easy GUI Programming in Python (eBook, 2012). |
CS1 with Python |
![CS1 Python](covers/python1.jpg) |
Fundamentals of Python: First Programs (Course Technology, Cengage Learning, 2012). |
CS2 with Python |
![CS2 Python](covers/python2.jpg) |
Fundamentals of Python: Data Structures (Course Technology, Cengage Learning, 2014). |
CS1/CS2 with Python |
![](covers/python12.jpg) |
Fundamentals of Python: From First Programs through Data Structures (Course Technology, Cengage Learning, 2010). |
Programming Language Design |
![](covers/proglang.jpg) |
Programming Languages: Principles and Practice (Course Technology, Cengage Learning, 2012). |
CS1 with Java |
![](covers/javacover1.jpg) |
Java: A Framework for Programming and Problem Solving, Second Edition (with Martin Osborne, ITP/Brooks/Cole,
2002) |
CS2 with Java |
![](covers/javacover2.jpg) |
Java: A Framework for Program Design and Data Structures (with Martin Osborne, ITP/Brooks/Cole, 2004) |
CS1 with C++ |
![](covers/cs1cp.jpg) |
Understanding Programming and Problem Solving with C++ (with Douglas W. Nance, ITP/PWS, 1996) |
CS2 with C++ |
![](covers/cs2cp.jpg) |
Understanding Program Design and Data Structures with C++ (with Thomas L. Naps, ITP/PWS, 1996) |
CS1 and CS2 with C++ |
![](covers/cs12cp.jpg) |
Introduction to Computer Science with C++ (with Douglas W. Nance and Thomas L. Naps, ITP/PWS, 1996) |
High school C++
AP A |
![](covers/hs1.jpg) |
Fundamentals of C++, Second Edition (with Douglas W. Nance, ITP/South-Western, 2001) |
High school C++
AP AB |
![](covers/hs2.jpg) |
Fundamentals of C++ and Data Structures, Second Edition (with Thomas L. Naps, ITP/South-Western, 2001) |
High school Java
AP A |
![](covers/edition4.jpg) |
Fundamentals of Java, AP Computer Science Essentials (with Martin Osborne, Course Technology/Cengage Learning, 2011) |
High school Java
AP A/AB |
![](covers/comp3ethumb.jpg) |
Fundamentals of Java, AP Computer Science for the A and AB Exams (with Martin Osborne, Thomson/Course Technology, 2006) |
High school Java
AP A |
![](covers/intro3ethumb.jpg) |
Fundamentals of Java, AP Computer Science for the A Exam (with Martin Osborne, Thomson/Course Technology, 2006) |
High school Java
Pre AP |
![](covers/basicsjava.jpg) |
Java Basics (with Martin Osborne, Thomson/Course Technology, 2003) |
OOP with Smalltalk |
![Smalltalk in Brief](covers/cover.gif) |
Smalltalk in Brief (with Martin Osborne, ITP/PWS, 1997) |