Digital library
Textbooks, references and open learning resources.

External
Building User Interfaces for Modern Web Applications: React Programming
Cheer-Sun Yang · The Pennsylvania Alliance for Design of Open Textbooks (PA-ADOPT) · 2024
Since Facebook released React as an open-source software library for front-end programming in 2013, React has gain popularity quickly. Although there are other frameworks or libraries, React is considered a programmer-friendly JavaScript library using the functional programming approach for the front-end web application development. Teaching and learning React can provide training in Functional Programming, Software Engineering Principles, and the Event-Driven Programming Paradigm. The ultimate goal of this eTextbook is to provide a timely support for teaching the state-of-the-art technology as the React ecosystem evolves. In this eTextbook, the prerequisite concepts about HTML/CSS, JavaScript, and Bootstrap/React-Bootstrap are introduced first, followed by the main React language features. Finally, the Software Engineering Principles are introduced from the design, development, to debugging and maintenance. The main objectives are threefold: (1) provide concepts about JavaScript Programming, (2) introduce the concepts of modularity, functional programming, and (3) teach the concept of reusable User Interface (UI) as the front-end of modern model-view-controller (MVC) web applications. Although learning other technologies in the React ecosystem is imminent, it is the hope that this book paves the groundwork for the future learning and growing in the field of modern UI development.

External
An Open Guide to Data Structures and Algorithms
Paul Bible; Lucas Moser; Mia Scarlato · PALNI · 2023
This textbook serves as a gentle introduction for undergraduates to theoretical concepts in data structures and algorithms in computer science while providing coverage of practical implementation (coding) issues. The field of computer science (CS) supports a multitude of essential technologies in science, engineering, and communication as a social medium. The varied and interconnected nature of computer technology permeates countless career paths making CS a popular and growing major program. Mastery of the science behind computer science relies on an understanding of the theory of algorithms and data structures. These concepts underlie the fundamental tradeoffs that dictate performance in terms of speed, memory usage, and programming complexity that separate novice programmers from professional practitioners.

External
Programming Persistent Memory: A Comprehensive Guide for Developers
Stteve Scargall · Apress · 2020
Beginning and experienced programmers will use this comprehensive guide to persistent memory programming. You will understand how persistent memory brings together several new software/hardware requirements, and offers great promise for better performance and faster application startup times—a huge leap forward in byte-addressable capacity compared with current DRAM offerings. This revolutionary new technology gives applications significant performance and capacity improvements over existing technologies. It requires a new way of thinking and developing, which makes this highly disruptive to the IT/computing industry. The full spectrum of industry sectors that will benefit from this technology include, but are not limited to, in-memory and traditional databases, AI, analytics, HPC, virtualization, and big data. Programming Persistent Memory describes the technology and why it is exciting the industry. It covers the operating system and hardware requirements as well as how to create development environments using emulated or real persistent memory hardware. The book explains fundamental concepts; provides an introduction to persistent memory programming APIs for C, C++, JavaScript, and other languages; discusses RMDA with persistent memory; reviews security features; and presents many examples. Source code and examples that you can run on your own systems are included. What You’ll Learn Understand what persistent memory is, what it does, and the value it brings to the industry Become familiar with the operating system and hardware requirements to use persistent memory Know the fundamentals of persistent memory programming: why it is different from current programming methods, and what developers need to keep in mind when programming for persistence Look at persistent memory application development by example using the Persistent Memory Development Kit (PMDK) Design and optimize data structures for persistent memory Study how real-world applications are modified to le

External
Earth, Space, and Environmental Science Explorations with ArcGIS Pro
Wing Cheung · Wing Cheung
When I first started teaching Geographic Information Systems (GIS) over 15 years ago, there were only a handful of GIS tutorial books on the market. While a few of them focused on a particular theme, many of them were mainly technical publications with no unifying theme. These publications are perfect for teaching new users about basic GIS operations and continue to be invaluable to many users today. However, these publications consisted of tutorials focusing on vastly different real-world scenarios, and felt a little disjointed to integrate into a class that focuses on a specific field (e.g. Environmental Science, Geography, Urban Planning). Since then, I am happy to see that there has been a proliferation of publications that are not only focused on introducing the technology, but also provide an introduction to a specific field as well as GIS. It is with this consideration in mind that I wrote this book to not only introduce students to the tools in ArcGIS Pro, but also to provide a glimpse into some of the topics that may be covered in an introductory course in Geography, Environmental Science, or related disciplines. I aimed to achieve a balance of technical instruction and information about Earth, Space, and Environmental Sciences, to make this publication helpful for new GIS learners, as well as students who may be interested in learning about the applications of GIS in the Earth, Space, and Environmental Sciences. Before you begin with the book, please download and unzip the data for the book at https://tinyurl.com/ESESGIS. Each chapter will begin with a list of the technical objectives for the lab exercise, which is particularly useful to refer to should you need a refresher on how to perform a particular task at a later date. The list of technical objectives is followed by a short introduction that provides the context for the exercise. Subsequently, you will find the step-by-step directions for the exercises with questions embedded throughout (in yellow h

External
Making Sense of Digital Humanities
Julian Chambliss; Ellen Moll · Michigan State University · 2022
Taking up the challenge of navigating the complex world of digital humanities, Making Sense of Digital Humanities offers readers an exploration of the many ways scholars have employed the diverse toolkit of digital humanities to create a better understanding of the synergies and disruptions created by technological change. Rooted in a concern for the daunting tasks associated with teaching and learning about the digital humanities, this volume hopes to provide easy entry into a complex topic while highlighting how an understanding of digital humanities can transform our thinking about technology in the modern world.

External
A Person-Centered Guide to Demystifying Technology: Working together to observe, question, design, prototype, and implement/reject technology in support of people's valued beings and doings
Martin Wolske · University of Illinois Library - Urbana · 2023
Digital technologies old and new are not objects that can be packed inside a box. They are a seamless, indivisible combination of people, organizations, policies, economies, histories, cultures, knowledge, and material things that are continuously shaped and reshaped. Every one of us innovates-in-use our everyday technologies; we just do not always know it. We are shaped by the networked information tools in our midst, and we shape them and thereby shape others. While many of the chapters in this book can be approached as standalone explorations, as many around the world have done, its full potential comes when collaboratively taken as a journey through twelve sessions. Each session in this second, revised edition includes two thematically linked chapters, one more socially oriented and one more technically oriented. Sessions are brought together into three larger generative themes that are built from three decades of participatory design in and with community, and from the teaching of these concepts and practices in courses and workshops. Approached within a community of practice, learning outcomes include discovering ways to advance power, both power within and power with others; advancing our technical skills, but also and even more, our progressive community engagement skills, our critical sociotechnical skills, and our cognitive, information, and social-emotional skills; and progressing our culturally competent collective leadership through social justice storytelling within a framing of reciprocity. In so doing, this textbook seeks to address the call placed by the Rev. Dr. Martin Luther King, Jr. – to rapidly shift from a ‘thing-oriented’ society to a ‘person-oriented’ society.
External
A First Course in Electrical and Computer Engineering
Louis Scharf · OpenStax CNX · 2009
This book was written for an experimental freshman course at the University of Colorado. The course is now an elective that the majority of our electrical and computer engineering students take in the second semester of their freshman year, just before their first circuits course. Our department decided to offer this course for several reasons: we wanted to pique student' interest in engineering by acquainting them with engineering teachers early in their university careers and by providing with exposure to the types of problems that electrical and computer engineers are asked to solve; we wanted students entering the electrical and computer engineering programs to be prepared in complex analysis, phasors, and linear algebra, topics that are of fundamental importance in our discipline; we wanted students to have an introduction to a software application tool, such as MATLAB, to complete their preparation for practical and efficient computing in their subsequent courses and in their professional careers; we wanted students to make early contact with advanced topics like vector graphics, filtering, and binary coding so that they would gain a more rounded picture of modern electrical and computer engineering. In order to introduce this course, we had to sacrifice a second semester of Pascal programming. We concluded that the sacrifice was worth making because we found that most of our students were prepared for high-level language computing after just one semester of programming. We believe engineering educators elsewhere are reaching similar conclusions about their own students and curriculums. We hope this book helps create a much needed dialogue about curriculum revision and that it leads to the development of similar introductory courses that encourage students to enter and practice our craft.Students electing to take this course have completed one semester of calculus, computer programming, chemistry, and humanities. Concurrently with this course, students take ph

External
Embedded Controllers Using C and Arduino
James Fiore · dissidents · 2018
This text is designed to introduce and expand upon material related to the C programming language and embedded controllers, and specifically, the Arduino development system and associated Atmel ATmega microcontrollers. It is intended to fit the time constraints of a typical 3 to 4 credit hour course for electrical engineering technology and computer engineering technology programs, although it could also fit the needs of a hardware-oriented course in computer science. As such, the text does not attempt to cover every aspect of the C language, the Arduino system or Atmel AVR microcontrollers. The first section deals with the C language itself. It is assumed that the student is a relative newcomer to the C language but has some experience with another high level language, for example, Python. This means concepts such as conditionals and iteration are already familiar and the student can get up and running fairly quickly. From there, the Arduino development environment is examined. Unlike the myriad Arduino books now available, this text does not simply rely on the Arduino libraries. As convenient as the libraries may be, there are other, sometimes far more efficient, ways of programming the boards. Many of the chapters examine library source code to see “what's under the hood”. This more generic approach means it will be easier for the student to use other processors and development systems instead of being tightly tied to one platform. There is a lab manual for this textbook.

External
Nature of Geographic Information Systems
David DiBiase · BCcampus · 2014
The purpose of this text is to promote understanding of the Geographic Information Science and Technology enterprise (GIS&T, also known as “geospatial”).

External
Python for Everybody: Exploring Data Using Python 3
Charles Severance · Charles Severance · 2016
I never seemed to find the perfect data-oriented Python book for my course, so I set out to write just such a book. Luckily at a faculty meeting three weeks before I was about to start my new book from scratch over the holiday break, Dr. Atul Prakash showed me the Think Python book which he had used to teach his Python course that semester. It is a well-written Computer Science text with a focus on short, direct explanations and ease of learning.The overall book structure has been changed to get to doing data analysis problems as quickly as possible and have a series of running examples and exercises about data analysis from the very beginning. Chapters 2–10 are similar to the Think Python book, but there have been major changes. Number-oriented examples and exercises have been replaced with data- oriented exercises. Topics are presented in the order needed to build increasingly sophisticated data analysis solutions. Some topics like try and except are pulled forward and presented as part of the chapter on conditionals. Functions are given very light treatment until they are needed to handle program complexity rather than introduced as an early lesson in abstraction. Nearly all user-defined functions have been removed from the example code and exercises outside of Chapter 4. The word “recursion”1 does not appear in the book at all. In chapters 1 and 11–16, all of the material is brand new, focusing on real-world uses and simple examples of Python for data analysis including regular expressions for searching and parsing, automating tasks on your computer, retrieving data across the network, scraping web pages for data, object-oriented programming, using web services, parsing XML and JSON data, creating and using databases using Structured Query Language, and visualizing data. The ultimate goal of all of these changes is a shift from a Computer Science to an Informatics focus is to only include topics into a first technology class that can be useful even if one choose

External
Essentials of Geographic Information Systems
Jonathan Campbell; MIchael Shin · Saylor Foundation · 2011
Essentials of Geographic Information Systems integrates key concepts behind the technology with practical concerns and real-world applications. Recognizing that many potential GIS users are nonspecialists or may only need a few maps, this book is designed to be accessible, pragmatic, and concise. Essentials of Geographic Information Systems also illustrates how GIS is used to ask questions, inform choices, and guide policy. From the melting of the polar ice caps to privacy issues associated with mapping, this book provides a gentle, yet substantive, introduction to the use and application of digital maps, mapping, and GIS. In today's world, learning involves knowing how and where to search for information. In some respects, knowing where to look for answers and information is arguably just as important as the knowledge itself. Because Essentials of Geographic Information Systems is concise, focused, and directed, readers are encouraged to search for supplementary information and to follow up on specific topics of interest on their own when necessary. Essentials of Geographic Information Systems provides the foundations for learning GIS, but readers are encouraged to construct their own individual frameworks of GIS knowledge. The benefits of this approach are two-fold. First, it promotes active learning through research. Second, it facilitates flexible and selective learning—that is, what is learned is a function of individual needs and interest. Since GIS and related geospatial and navigation technology change so rapidly, a flexible and dynamic text is necessary in order to stay current and relevant. Though essential concepts in GIS tend to remain constant, the situations, applications, and examples of GIS are fluid and dynamic. Though this book is intended for use in introductory GIS courses, Essentials of Geographic Information Systems will also appeal to the large number of certificate, professional, extension, and online programs in GIS that are available today.

External
Information Systems - A Manager's Guide to Harnessing Technology
University of Minnesota Libraries Publishing · 2015
Information Systems: A Manager's Guide to Harnessing Technology is intended for use in undergraduate and/or graduate courses in Management Information Systems and Information Technology. The teaching approach in Information Systems: A Manager's Guide to Harnessing Technology can change this. The text offers a proven approach that has garnered student praise, increased IS enrollment, and engaged students to think deeper and more practically about the space where business and technology meet. Every topic is related to specific business examples, so students gain an immediate appreciation of its importance. Rather than lead with technical topics, the book starts with strategic thinking, focusing on big-picture issues that have confounded experts but will engage students. And while chapters introduce concepts, cases on approachable, exciting firms across industries further challenge students to apply what they've learned, asking questions like: Why was Netflix able to repel Blockbuster and WalMart? How did Harrah's Casino's become twice as profitable as comparably-sized Caesar's, enabling the former to acquire the latter? How does Spain's fashion giant Zara, a firm that shuns the sort of offshore manufacturing used by every other popular clothing chain, offer cheap fashions that fly off the shelves, all while achieving growth rates and profit margins that put Gap to shame? Why do technology markets often evolve into winner-take-all or winner take-most scenarios? And how can managers compete when these dynamics are present? Why is Google more profitable than Disney? How much is Facebook really worth? The teaching approach in this text encourages students to think deeper and more practically about the space where business and technology meet. Every topic is related to specific business examples, so students gain an immediate appreciation of its importance. Rather than starting with technical topics, the book starts with strategic thinking, focusing on big-picture issues t

External
Design Roadmapping: Guidebook for Future Foresight Techniques
Lianne Simonse · TU Delft Open · 2024
DESIGN ROADMAPPING is for anyone interested in design, strategy and innovation, and its wonderful combinations. For those who dare to create a future vision, frame the time pacing and map the pathways towards it. This guidebook teaches you how to create a roadmap. It outlines the origins, design theories and science results. Strategic designers, innovation managers and professors share their roadmapping experiences, views and achievements, including venture CPOs, Head of Design, product and program managers of international companies such as Canon, Peerby, Ferrari, Philips, Victoria State Library and many more. By design roadmapping you devise creative responses to future strategic challenges. Guided by future foresight techniques, you uncover new trends, scout for new technologies and map the values and ideas on the roadmap. Through strong visualization, a design roadmap supports an organizational mindset on value innovations.

External
Policy Analysis of Multi-Actor System
Ben Enserink; Pieter Bots; Els van Daalen · TU Delft Open · 2022
Policy of Multi-Actor Systems is an introduction into the art of craft of problem exploration and problem structuring. It positions policy analysis as a scientific discipline focused on systems analysis in a multi-actor context to support better informed decision-making. The approach presented in this book is considered to be the cornerstone of the curricula of the Faculty of Technology, Policy and Management of Delft University of Technology and underlies the research on (the governance of) socio-technical systems. Systems thinking applied in a multi-actor environment and its inherent multi-disciplinary character is what makes this work stand out from traditional hard- and soft systems approaches. The core of the book is dedicated to systems analysis, actor- or stakeholder-analysis and discusses methods for dealing with uncertainty. These analytical activities combined lead to a rich problem description and to plans for further research. Due to the stepwise approach this book serves as a basis for any problem analysis both for our bachelor and master students, our alumni worldwide and any interested practitioners.
External
Introductory Statistics 2e
Barbara Illowsky; Susan Dean; Daniel Birmajer; Bryan Blount · OpenStax, Rice University
Introductory Statistics 2e provides an engaging, practical, and thorough overview of the core concepts and skills taught in most one-semester statistics courses. The text focuses on diverse applications from a variety of fields and societal contexts, including business, healthcare, sciences, sociology, political science, computing, and several others. The material supports students with conceptual narratives, detailed step-by-step examples, and a wealth of illustrations, as well as collaborative exercises, technology integration problems, and statistics labs. The text assumes some knowledge of intermediate algebra, and includes thousands of problems and exercises that offer instructors and students ample opportunity to explore and reinforce useful statistical skills. The first edition of Introductory Statistics by OpenStax is available in web view here.
External
Introduction to Computer Science
Dr. Jean-Claude Franchitti; Amal Alhosban; Mark Buckler; Joanna Gilberti · OpenStax, Rice University
Introduction to Computer Science provides a comprehensive foundation in core computer science concepts and principles, aligning with the scope and sequence of most introductory computer science courses. The offering serves as an engaging entry point for students pursuing diverse fields of study and employment, including computer science, business, engineering, data science, social sciences, and related disciplines. By addressing a broad learner audience—ranging from computer science majors to non-majors—the book offers a thorough introduction to computational thinking and its applications across multiple domains. Introduction to Computer Science is designed to be both interactive and practical, focusing on real-world applications that showcase how core computer science concepts can be used to solve complex problems. Students will explore foundational concepts, such as algorithms, data structures, computer systems organization, and software development, using an array of engaging, hands-on activities. Introduction to Computer Science also includes advanced topics such as machine learning, cybersecurity, and cloud computing, ensuring students have a solid foundation for continued study and future professional success. The offering integrates meaningful learning experiences through chapter-based scenarios, problem-solving exercises, embedded coding activities, and project-based assessments that encourage students to apply what they learn in authentic contexts. The material also includes an array of industry insights and explorations of emerging technology trends in order to provide a holistic approach to learning that extends beyond theory.
External
Foundations of Information Systems
Dr. Mahesh S. Raisinghani; Amal Alhosban; Dax Bradley; Wade Chumney · OpenStax, Rice University
Foundations of Information Systems aligns to the topics and objectives of most introductory information systems courses in computer science and information technology, as well as in other subject areas such as health and business information systems. The offering helps students understand foundational concepts including hardware, software, database management systems, and data networks. The instruction is based on the ACM/IEEE/AIS curriculum standards for information systems (IS2020) that allow institutions to use the content for the purposes of accreditation for ABET, AACSB, and ACBSP. The material focuses on developing and applying knowledge regarding the collection, processing, storage, distribution, and value of information. Students will also learn about the various interactions between information systems professionals and others in organizations, so that they understand how to collaborate with management, colleagues, customers, and suppliers. Foundations of Information Systems is designed to engage students through a combination of practical, real-world applications and thought-provoking scenarios that promote critical thinking and a deeper understanding of core concepts. The pedagogical approach is centered on making information systems relevant to students from an array of backgrounds and career interests. By connecting theory to practice and encouraging students to explore real-world issues, Foundations of Information Systems equips students with the knowledge and skills necessary for success in their academic and professional journeys.
External
College Physics For AP® Courses 2e
Gregg Wolfe; Erika Gasper; John Stoke; Julie Kretchman · OpenStax, Rice University
College Physics for AP® Courses 2e is designed to engage students in their exploration of physics and help them apply these concepts to the Advanced Placement® test. Because physics is integral to modern technology and other sciences, the book also includes content that goes beyond the scope of the AP® course to further student understanding. The AP® Connection in each chapter directs students to the material they should focus on for the AP® exam, and what content — although interesting — is not necessarily part of the AP® curriculum. This book is Learning List-approved for AP® Physics courses and meets the scope and sequence for these courses. The first edition of College Physics for AP® Courses by OpenStax is available in web view here.

External
Más allá de la digitalización: La necesidad de la transformación digital estratégica
Marcos Antonio Espinoza-Mina; Alejandra Mercedes Colina-Vargas · Editorial Grupo AEA · 2025
En la era actual de disrupción digital, impulsada por avances en IA, Big Data y cambios en las expectativas del cliente, la Transformación Digital Estratégica (TDE) es un imperativo que va más allá de la simple digitalización. Este texto ofrece una guía estratégica integral, basada en investigación académica y análisis de la industria, para navegar esta compleja transición. Se presenta la TDE como un fenómeno holístico y multifacético que requiere la integración coherente de estrategia, cultura organizacional y liderazgo transformador. Es crucial desarrollar agilidad y capacidades dinámicas para la adaptación e innovación continuas. Los pilares clave incluyen el alineamiento estratégico, la creación de valor digital centrado en el cliente, modelos de negocio adaptables, gestión de datos como activo, culturas ágiles y liderazgo digital. Se examina el rol de tecnologías habilitadoras como Cloud (agilidad), IA (eficiencia/personalización) y Analítica Avanzada (decisiones), enfocadas en generar valor empresarial, junto a IoT y Blockchain. El texto también aborda desafíos inherentes como resistencia cultural, ciberseguridad, privacidad y ética de la IA, extrayendo perspectivas de ejemplos y mejores prácticas. Dirigido a estudiantes y profesionales, proporciona un marco integrado, accionable y basado en evidencia para liderar una TDE exitosa y sostenible.

External
Alternativas de alimentación para rumiantes
Jessica Cargua-Chávez; Adriana Carrillo-Cruz; Galo Cedeño-García · Editorial Grupo AEA · 2024
Se examina estrategias para optimizar la alimentación de rumiantes mediante el cultivo y manejo de diferentes forrajes en Santo Domingo de los Tsáchilas, Ecuador. En el primer capítulo, se destaca cómo el encalado y la fertilización mejoran el rendimiento del maíz, enfatizando en dosis óptimas de nutrientes. El segundo capítulo aborda la fertilización orgánica del pasto Mombasa bajo sombra de naranja, resaltando la superioridad de la pollinaza en el incremento de rendimiento y calidad del forraje. Los capítulos siguientes se centran en la edad óptima de corte para maximizar la biomasa del pasto Cuba OM-22, el manejo del King Grass como alternativa forrajera para el sector ganadero, y el desarrollo del forraje verde hidropónico de sorgo y maíz a dos densidades de siembra, demostrando que técnicas específicas de manejo y cultivo pueden significativamente influir en la productividad y sostenibilidad de la alimentación rumiante. A través de estos estudios, el libro propone soluciones prácticas y sustentables para mejorar la nutrición de rumiantes en entornos tropicales.