OERC Reviewed Textbooks
Higher education textbooks on a range of subjects that have been vetted by our curation experts. These texts are published by individual higher education faculty as well high quality open textbook providers such as OpenStax, BCCampus, OpenSUNY, and many others.
This is a textbook for first year Computer Science. Algorithms and Data Structures With Applications to Graphics and Geometry.
Best open source book in Discrete Math. Covers all the subjects in a standard Discrete Math class for mathematics or computer science students and contains sage cells for all subjects. Set Theory, Combinatorics, Logic, Relations, Recursion, Graph Theory, Trees, Algebraic Structures, Boolean Algebras, Automata, etc. Originally published commercially, its original text was peer-reviewed and was adopted for use at several universities throughout the country. Now in its open source version, has the same quality but it is free.
If you've ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?
In Automate the Boring Stuff with Python, you'll learn how to use Python to write programs that do in minutes what would take you hours to do by hand-no prior programming experience required. Once you've mastered the basics of programming, you'll create Python programs that effortlessly perform useful and impressive feats of automation to:
Search for text in a file or across multiple files
Create, update, move, and rename files and folders
Search the Web and download online content
Update and format data in Excel spreadsheets of any size
Split, merge, watermark, and encrypt PDFs
Send reminder emails and text notifications
Fill out online forms
Step-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks.
Don't spend your time doing work a well-trained monkey could do. Even if you've never written a line of code, you can make your computer do the grunt work. Learn how in Automate the Boring Stuff with Python.
This textbook was written for a community college introductory course in spreadsheets utilizing Microsoft Excel. While the figures shown utilize Excel 2016, the textbook was written to be applicable to other versions of Excel as well. The book introduces new users to the basics of spreadsheets and is appropriate for students in any major who have not used Excel before.
This textbook was written for a community college introductory course in spreadsheets utilizing Microsoft Excel. While the figures shown utilize Excel 2019, the textbook was written to be applicable to other versions of Excel as well. The book introduces new users to the basics of spreadsheets and is appropriate for students in any major who have not used Excel before. This textbook includes instructions for Excel for Mac also.
Blueprints is a concise yet comprehensive coverage of Object-Oriented Analysis and Design concepts, suitable for a second programming course in Computer Science. It introduces and teaches application development in a command-line environment, and assumes basic expertise with the Java programming language.
A Brief Introduction to Engineering Computation with MATLAB is specifically designed for students with no programming experience. However, students are expected to be proficient in First Year Mathematics and Sciences and access to good reference books are highly recommended. Students are assumed to have a working knowledge of the Mac OS X or Microsoft Windows operating systems. The strategic goal of the course and book is to provide learners with an appreciation for the role computation plays in solving engineering problems. MATLAB specific skills that students are expected to be proficient at are: write scripts to solve engineering problems including interpolation, numerical integration and regression analysis, plot graphs to visualize, analyze and present numerical data, and publish reports.
"A Byte of Python" is a free book on programming using the Python language. It serves as a tutorial or guide to the Python language for a beginner audience. If all you know about computers is how to save text files, then this is the book for you. There are many translations of the book available in different human languages.
This book was developed in an attempt to maintain in one location the information and references that point to the many important historical developments of the short life of the computer graphics world as we know it.
This open textbook aims to fill the gap between the open-source implementations and the open-source network specifications by providing a detailed but pedagogical description of the key principles that guide the operation of the Internet.
Suppose you want to build a computer network, one that has the potential to grow to global proportions and to support applications as diverse as teleconferencing, video on demand, electronic commerce, distributed computing, and digital libraries. What available technologies would serve as the underlying building blocks, and what kind of software architecture would you design to integrate these building blocks into an effective communication service? Answering this question is the overriding goal of this book—to describe the available building materials and then to show how they can be used to construct a network from the ground up.
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.
Database Design - 2nd Edition covers database systems and database design concepts. New to this edition are SQL info, additional examples, key terms and review exercises at the end of each chapter.
Defend Dissent is an introduction to cryptography paired with the social impacts of surveillance and the protective potential of encryption, with a focus on US social movements. Each chapter ends with a story that brings social context to the material—from surveillance used against contemporary US protests to the African National Congress’s use of partially manual encryption in fighting apartheid in South Africa in the 80s.
This book can be read linearly, or you can pick and choose what you would like to learn about. Each chapter is prefaced with what you should read first (for background) and concludes with what you might want to read next.
The book offers a blend of theory and practice in guiding readers to apply design thinking principles to solving some of our world’s biggest problems. At the same time, readers are encouraged to become aware of new and emerging technologies that make prototyping and applying solutions a reality.
Pharo is a clean, innovative, open-source, live-programming environment.
Enterprise Pharo is the third volume of a series of book covering Pharo and its community. Whereas the first volume Pharo by Example is intended for newcomers and the second volume Deep into Pharo covers deep topics of Pharo, this third volume covers libraries and frameworks for enterprises, and in particular those doing web development.
- Applied Science
- Computer Science
- Material Type:
- Attila Magyar
- Christophe Demarey
- Cyril Ferlicot Delbecque
- Damien Cassou
- Damien Pollet
- Esteban Lorenzano
- Gabriel Omar Cotelli
- Guillaume Larchevêque
- Johan Fabry
- Liudmyla Dolia
- Luc Fabresse
- Mariano Martinez-Peck
- Martín Dias
- Max Leske
- Norbert Hartl
- Olivier Auverlot
- Stéphane Ducasse
- Sven Van Caekenberghe
- Date Added:
The following set of materials is used in the Textbook Transformation Grants implementation of Ethical Hacking for Effective Defense:
TCP/IP Level Attacks
Footprinting and Social Engineering
Programming for Security Professionals
Operating System Vulnerabilities
Embedded System Security
Hacking Web Servers
Hacking Wireless Networks
Protecting Networks with Security Devices