Digital library
Textbooks, references and open learning resources.

External
Culturally Responsive Computing: An Introduction into Computer Science, Security, and Technology
Devan Walton · ROTEL · 2024
"Culturally Responsive Computing" is an essential textbook that explores the intricate relationship between technology and global societies. It gives students and professionals a deep understanding of how cultural contexts shape and are shaped by computing practices, from algorithm design to user interface development. This book equips readers with the knowledge and skills to create inclusive, ethical, and culturally sensitive technological solutions for our diverse world.

External
Computer Science I
Chris Bourke · Chris Bourke · 2018
This textbook covers the traditional introductory Computer Science I topics but takes a unique approach. Topics are covered in a language-agnostic manner in the first part with supplemental parts that cover the same concepts in a specific language. The current version covers C, Java, and PHP. This textbook as been used in several Computer Science I sections over multiple years at the University of Nebraska-Lincoln

External
Self-directed multimodal learning in higher education
Jako Olivier · AOSIS Publishing · 2020
This book aims to provide an overview of theoretical and practical considerations in terms of self-directed multimodal learning within the university context. Multimodal learning is approached in terms of the levels of multimodality and specifically blended learning and the mixing of modes of delivery (contact and distance education). As such, this publication will provide a unique snapshot of multimodal practices within higher education through a self-directed learning epistemological lens. The book covers issues such as what self-directed multimodal learning entails, mapping of specific publications regarding blended learning, blended learning in mathematics, geography, natural science and computer literacy, comparative experiences in distance education as well as situated and culturally appropriate learning in multimodal contexts. This book provides a unique focus on multimodality in terms of learning and delivery within the context of self-directed learning. Therefore, the publication would not only advance the scholarship of blended and open distance learning in South Africa, but also the contribute to enriching the discourse regarding self-direction. From this book readers will get an impression of the latest trends in literature in terms of multimodal self-directed learning in South Africa as well as unique empirical work being done in this regard.

External
Memory & Cognition
Priyanka Mehta · University of Wisconsin System · 2026
Memory & Cognition offers a fresh, engaging tour of how the mind works—spanning the brain, mental imagery, the different functions of memory, and decision‑making. Blending psychology with neuroscience, computer science, sociology, and philosophy, the book grounds concepts in real‑life examples and uses experimental evidence, diagrams, and hypothetical scenarios to introduce complex topics to readers. Memory & Cognition is a concise, interdisciplinary guide for anyone curious about how we think, remember, and make decisions.

External
Case Studies in Systems Chemistry
George Fleck · Smith College Open Educational Resources: Textbooks · 1973
This publication was produced as a teaching tool for college chemistry.The book is a text for a computer-based unit on the chemistry of acid-base titrations, and is designed for use with FORTRAN or BASIC.computer systems, and with a programmable electronic calculator, in a variety of educational settings. The text attempts to present computer programs that are relatively free of reliance on specialized large computer systems programs. The case-study approach presented is highly research and laboratory oriented. Similar subject matter is conventionally taught in most introductory college chemistry courses, but this text material attempts greater depth of instruction through utilization of the computational resources of a computer.

External
Mind, Body, World: Foundations of Cognitive Science
Michael Dawson · Athabasca University Press · 2013
Cognitive science arose in the 1950s when it became apparent that a number of disciplines, including psychology, computer science, linguistics, and philosophy, were fragmenting. Perhaps owing to the field's immediate origins in cybernetics, as well as to the foundational assumption that cognition is information processing, cognitive science initially seemed more unified than psychology. However, as a result of differing interpretations of the foundational assumption and dramatically divergent views of the meaning of the term information processing, three separate schools emerged: classical cognitive science, connectionist cognitive science, and embodied cognitive science. Examples, cases, and research findings taken from the wide range of phenomena studied by cognitive scientists effectively explain and explore the relationship among the three perspectives. Intended to introduce both graduate and senior undergraduate students to the foundations of cognitive science, Mind, Body, World addresses a number of questions currently being asked by those practicing in the field: What are the core assumptions of the three different schools? What are the relationships between these different sets of core assumptions? Is there only one cognitive science, or are there many different cognitive sciences? Giving the schools equal treatment and displaying a broad and deep understanding of the field, Dawson highlights the fundamental tensions and lines of fragmentation that exist among the schools and provides a refreshing and unifying framework for students of cognitive science.

External
Statistical Thinking for the 21st Century
Russell Poldrack · Russell Poldrack · 2018
Statistical thinking is a way of understanding a complex world by describing it in relatively simple terms that nonetheless capture essential aspects of its structure, and that also provide us some idea of how uncertain we are about our knowledge. The foundations of statistical thinking come primarily from mathematics and statistics, but also from computer science, psychology, and other fields of study.

External
Discrete Math with SageMath: Learn math with open-source software
Zunaid Ahmed; Hellen Colman; Samuel Lubliner · Zunaid Ahmed, Hellen Colman, Samuel Lubliner · 2025
Our book is intended to provide concise and complete instructions on how to use Sage to solve problems in Discrete Math. It is appropriate for a first or second year undergraduate course for math and computer science majors. Our goal is to streamline the learning process with SageMath. This approach helps students focus more on mathematics and reduces the friction of learning how to code. Our resources are designed for all math students, regardless of programming experience. The novelty of our project is that the textbook is authored by students under faculty supervision. With Open Pedagogy as a guiding praxis, we present this student-created textbook as a more effective alternative in promoting student learning and engagement. Students present the contents in new and inventive ways, from the overall voice of the textbook to the actual examples drawn from their and their peers' lives. The text began as a support textbook for our undergraduate Discrete Math course developed at Wright College, one of the City Colleges of Chicago. Despite the fabulous capabilities of SageMath, students in Discrete Math were often frustrated by the lack of specific documentation geared towards beginning undergrad students in Discrete Math. We developed an OER for our students to use this mathematical software effectively.

External
A Cool Brisk Walk Through Discrete Mathematics
Stephen Davies · University of Mary Washington · 2023
A Cool Brisk Walk Through Discrete Mathematics - and its companion site "allthemath" - are completely-and-forever-free-and-open-source educational materials dedicated to the mathematics that budding computer science practitioners actually need to know. They feature the fun and addictive teaching of award-winning lecturer Dr. Stephen Davies of the University of Mary Washington in Fredericksburg, Virginia!

External
COMPUTATIONAL PHYSICS: A Practical Introduction to Computational Physics and Scientific Computing (using C++)
Konstantinosn Anagnostopoulos · National Technical University of Athens · 2016
This book is an introduction to the computational methods used in physics, but also in other scientific fields. It is addressed to an audience that has already been exposed to the introductory level of college physics, usually taught during the first two years of an undergraduate program in science and engineering. It assumes no prior knowledge of numerical analysis, programming or computers and teaches whatever is necessary for the solution of the problems addressed in the text. It can be used as a textbook in introductory computational physics or scientific computing classes. The book starts with very simple problems in particle motion and ends with an in-depth discussion of advanced techniques used in Monte Carlo simulations in statistical mechanics. The level of instruction rises slowly, while discussing problems like the diffusion equation, electrostatics on the plane, quantum mechanics and random walks. All the material can be taught in two semesters, but a selection of topics can form the material of a one semester course. The book aims to provide the students with the background and the experience needed in order to advance to high performance computing projects in science and engineering. It puts emphasis on hands--on programming of numerical code but also on the production, analysis and interpretation of data. But it also tries to keep the students motivated by considering interesting applications in physics, like chaos, quantum mechanics, special relativity and the physics of phase transitions. There is a C++ and a Fortran edition for the core programming. Data analysis is performed using the powerful tools of the GNU/Linux environment. All the necessary software is open source and freely available. The book and the accompanying software are given under a Creative Commons License/GNU public License as a service to the community. It can be used freely as a whole, or any part of it, in any form, by anyone. There is no official distribution of hard copies, b

External
Calculus in Context
James Callahan; David Cox; Kenneth Hoffman · Smith College Open Educational Resources: Textbooks · 1994
Designing the curriculum We believe that calculus can be for students what it was for Euler and the Bernoullis: a language and a tool for exploring the whole fabric of science. We also believe that much of the mathematical depth and vitality of calculus lies in connections to other sciences. The mathematical questions that arise are compelling in part because the answers matter to other disciplines. We began our work with a "clean slate," not by asking what parts of the traditional course to include or discard. Our starting points are thus our summary of what calculus is really about. Our curricular goals are what we aim to convey about the subject in the course. Our functional goals describe the attitudes and behaviors we hope our students will adopt in using calculus to approach scientific and mathematical questions. Starting Points Calculus is fundamentally a way of dealing with functional relationships that occur in scientific and mathematical contexts. The techniques of calculus must be subordinate to an overall view of the questions that give rise to these relationships. Technology radically enlarges the range of questions we can explore and the ways we can answer them. Computers and graphing calculators are much more than tools for teaching the traditional calculus. The concept of a dynamical system is central to science. Therefore, differential equations belong at the center of calculus, and technology makes this possible at the introductory level. The process of successive approximation is a key tool of calculus, even when the outcome of the process--the limit--cannot be explicitly given in closed form. Curricular Goals Develop calculus in the context of scientific and mathematical questions. Treat systems of differential equations as fundamental objects of study. Construct and analyze mathematical models. Use the method of successive approximations to define and solve problems. Develop geometric visualization with hand-drawn and computer graphics. Give num

External
Introduction to GNU Octave: A brief tutorial for linear algebra and calculus students
Jason Lachniet · Jason Lachniet · 2017
This brief book provides a noncomprehensive introduction to GNU Octave, a free open source alternative to MatLab. The basic syntax and usage is explained through concrete examples from the mathematics courses a math, computer science, or engineering major encounters in the first two years of college: linear algebra, calculus, and differential equations.

External
Discrete Mathematics: An Open Introduction
Oscar Levin · Oscar Levin · 2024
Discrete Mathematics: An Open Introduction is a free, open source textbook appropriate for a first or second year undergraduate course for math and computer science majors. The book is especially well-suited for courses that incorporate inquiry-based learning. Since Spring 2013, the book has been used as the primary textbook or a supplemental resource at more than 200 colleges and universities around the world (see the partial adoptions list). After many years of development, I am pleased to announce that the 4th edition of Discrete Mathematics: an Open Introduction is now available, here and on Runestone Academy. The new edition brings many improvements and a new organization of content. In particular, the book now starts with logic and proofs, then practices those proofs with graph theory. The second half of the book contains material on counting (with a new "application to probability" section) and sequences. Over the last few years, I have found that students have more success with this arrangement. There is also a stronger emphasis on discrete structures, which should make the book more useful for students in computer science, while still focusing on understanding mathematical concepts essential for math majors and future math teachers.
External
Precalculus
Thomas Tradler; Holly Carley · CUNY Academic Works · 2015
These are notes for a course in precalculus, as it is taught at New York City College of Technology - CUNY (where it is offered under the course number MAT 1375). Our approach is calculator based. For this, we will use the currently standard TI-84 calculator, and in particular, many of the examples will be explained and solved with it. However, we want to point out that there are also many other calculators that are suitable for the purpose of this course and many of these alternatives have similar functionalities as the calculator that we have chosen to use. An introduction to the TI-84 calculator together with the most common applications needed for this course is provided in appendix A. In the future we may expand on this by providing introductions to other calculators or computer algebra systems. This course in precalculus has the overarching theme of “functions.” This means that many of the often more algebraic topics studied in the previous courses are revisited under this new function theoretic point of view. However, in order to keep this text as self contained as possible we always recall all results that are necessary to follow the core of the course even if we assume that the student has familiarity with the formula or topic at hand. After a first introduction to the abstract notion of a function, we study polynomials, rational functions, exponential functions, logarithmic functions, and trigonometric functions with the function viewpoint. Throughout, we will always place particular importance to the corresponding graph of the discussed function which will be analyzed with the help of the TI-84 calculator as mentioned above. These are in fact the topics of the first four (of the five) parts of this precalculus course. In the fifth and last part of the book, we deviate from the above theme and collect more algebraically oriented topics that will be needed in calculus or other advanced mathematics courses or even other science courses. This part includes a

External
Abstract Algebra: Theory and Applications
Thomas Judson · University of Puget Sound · 2016
This text is intended for a one- or two-semester undergraduate course in abstract algebra. Traditionally, these courses have covered the theoretical aspects of groups, rings, and fields. However, with the development of computing in the last several decades, applications that involve abstract algebra and discrete mathematics have become increasingly important, and many science, engineering, and computer science students are now electing to minor in mathematics. Though theory still occupies a central role in the subject of abstract algebra and no student should go through such a course without a good notion of what a proof is, the importance of applications such as coding theory and cryptography has grown significantly. Until recently most abstract algebra texts included few if any applications. However, one of the major problems in teaching an abstract algebra course is that for many students it is their first encounter with an environment that requires them to do rigorous proofs. Such students often find it hard to see the use of learning to prove theorems and propositions; applied examples help the instructor provide motivation. This text contains more material than can possibly be covered in a single semester. Certainly there is adequate material for a two-semester course, and perhaps more; however, for a one-semester course it would be quite easy to omit selected chapters and still have a useful text. The order of presentation of topics is standard: groups, then rings, and finally fields. Emphasis can be placed either on theory or on applications. A typical one-semester course might cover groups and rings while briefly touching on field theory, using Chapters 1 through 6, 9, 10, 11, 13 (the first part), 16, 17, 18 (the first part), 20, and 21. Parts of these chapters could be deleted and applications substituted according to the interests of the students and the instructor. A two-semester course emphasizing theory might cover Chapters 1 through 6, 9, 10, 11, 13

External
An Introduction to Logic: From Everyday Life to Formal Systems
Albert Mosley; Eulalio Baltazar · Smith College Open Educational Resources: Textbooks · 2019
An introduction to the discipline of logic covering subjects from the structures of arguments, classical and modern logic, categorical and inductive inferences, to informal fallacies. Over 30 years of development provides a sound empirical based pedagogy throughout the text. Examples in ordinary language using familiar examples avoids the suggestion of an alien cultural imposition. A focus on the basic representational techniques of classical and modern logic. Students introduced to basic concepts of set theory, using Venn diagrams to represent statements and evaluate arguments. Students introduced to basic concepts of propositional logic and the use of truth-tables. Students introduced to basic concepts of predicate logic and the use of mixed quantifiers. Students introduced to the relationship between logic diagrams, circuit diagrams, and gate diagrams in computer science. Students introduced to the use of logic in ordinary and scientific contexts. Students provided a historical introduction to the development of modern probability theory and its relationship to logic. Students introduced to basic concepts of statistical inference, with non-technical treatments of hasty and biased statistical generalizations. And a unique treatment of stereotypical thinking in terms of statistical syllogisms. Students introduced to basic notions in analogical and causal inference. Exercises requiring both passive (recognition) and active (construction) skills. Exercises including locutions and examples from standard English and ethnic dialects of English (African-American, Hispanic-American, etc) Answers for sample exercises provided, making the text closer to a self-teaching module

External
Howdy or Hello?: Technical and Professional Communications
Matt McKinney; Kalani Pattison; Sarah LeMire; Kathy Anders · Texas A&M University · 2021
Technical writing courses introduce you to some of the most important aspects of writing in the worlds of science, technology, and business—in other words, the kind of writing that scientists, nurses, doctors, computer specialists, government officials, engineers, and other professionals do as a part of their regular work. The skills learned in technical writing courses can be useful in other fields as well, including education and social sciences.
External
Open Logic Project
Richard Zach; Andrew Arana; Jeremy Avigad; Walter Dean · Open Logic Text · 2016
The Open Logic Text is an open-source, collaborative textbook of formal meta-logic and formal methods, starting at an intermediate level (i.e., after an introductory formal logic course). Though aimed at a non-mathematical audience (in particular, students of philosophy and computer science), it is rigorous. The Open Logic Text is a collaborative project and is under active development. Coverage of some topics currently included may not yet be complete, and many sections still require substantial revision. We plan to expand the text to cover more topics in the future. We also plan to add features to the text, such as a glossary, a list of further reading, historical notes, pictures, better explanations, sections explaining the relevance of results to philosophy, computer science, and mathematics, and more problems and examples. If you find an error, or have a suggestion, please let the project team know. The project operates in the spirit of open source. Not only is the text freely available, we provide the LaTeX source under the Creative Commons Attribution license, which gives anyone the right to download, use, modify, re-arrange, convert, and re-distribute our work, as long as they give appropriate credit.

External
An Animated Introduction to Digital Logic Design
John Carpinelli · NJIT Library · 2023
This book is designed for use in an introductory course on digital logic design, typically offered in computer engineering, electrical engineering, computer science, and other related programs. Such a course is usually offered at the sophomore level. This book makes extensive use of animation to illustrate the flow of data within a digital system and to step through some of the procedures used to design and optimize digital circuits.

External
Elementary Differential Equations with Boundary Value Problems
William Trench · A.T. Still University · 2013
Elementary Differential Equations with Boundary Value Problems is written for students in science, engineering, and mathematics who have completed calculus through partial differentiation. An elementary text should be written so the student can read it with comprehension without too much pain. I have tried to put myself in the student's place, and have chosen to err on the side of too much detail rather than not enough. An elementary text can't be better than its exercises. This text includes 1695 numbered exercises, many with several parts. They range in difficulty from routine to very challenging. An elementary text should be written in an informal but mathematically accurate way, illustrated by appropriate graphics. I have tried to formulate mathematical concepts succinctly in language that students can understand. I have minimized the number of explicitly stated theorems and definitions, preferring to deal with concepts in a more conversational way, copiously illustrated by 250 completely worked out examples. Where appropriate, concepts and results are depicted in 144 figures. Although I believe that the computer is an immensely valuable tool for learning, doing, and writing mathematics, the selection and treatment of topics in this text reflects my pedagogical orientation along traditional lines. However, I have incorporated what I believe to be the best use of modern technology, so you can select the level of technology that you want to include in your course. The text includes 336 exercises – identified by the symbols C and C/G – that call for graphics or computation and graphics. There are also 73 laboratory exercises – identified by L – that require extensive use of technology. In addition, several sections include informal advice on the use of technology. If you prefer not to emphasize technology, simply ignore these exercises and the advice.