Phu Xuan University Library

Digital library

Textbooks, references and open learning resources.

Foundations of Computation

External

Foundations of Computation

Carol Critchlow; David Eck · Carol Crichlow and David Eck · 2011

Foundations of Computation is a free textbook for a one-semester course in theoretical computer science. It has been used for several years in a course at Hobart and William Smith Colleges. The course has no prerequisites other than introductory computer programming. The first half of the course covers material on logic, sets, and functions that would often be taught in a course in discrete mathematics. The second part covers material on automata, formal languages, and grammar that would ordinarily be encountered in an upper level course in theoretical computer science.

CC BY-NC-SAComputer Science 0 views
Operating Systems and Middleware: Supporting Controlled Interaction

External

Operating Systems and Middleware: Supporting Controlled Interaction

Max Hailperin · Max Hailperin · 2015

In this book, you will learn about all three kinds of interaction. In all three cases, interesting software techniques are needed in order to bring the computations into contact, yet keep them suffciently at arm's length that they don't compromise each other's reliability. The exciting challenge, then, is supporting controlled interaction. This includes support for computations that share a single computer and interact with one another, as your email and word processing programs do. It also includes support for data storage and network communication. This book describes how all these kinds of support are provided both by operating systems and by additional software layered on top of operating systems, which is known as middleware. Chapter 1 provides an overview of the text as a whole, explaining what an operating system is, what middleware is, and what sorts of support these systems provide for controlled interaction. The next nine chapters work through the varieties of controlled interac- tion that are exemplified by the scenario at the beginning of the preface: in- teraction between concurrent computations on the same system (as between your email program and your word processor), interaction across time (as between your word processor before your trip and your word processor after your trip), and interaction across space (as between your email program and your service provider's email server). The first of these three topics is controlled interaction between computa- tions operating at one time on a particular computer. Before such interaction can make sense, you need to understand how it is that a single computer can be running more than one program, such as an email program in one window and a word processing program in another. Therefore, Chapter 2 explains the fundamental mechanism for dividing a computer's attention between concurrent computations, known as threads. Chapter 3 continues with the related topic of scheduling. That is, if the computer is dividin

CC BY-SAComputer Science 0 views
Algorithms and Data Structures With Applications to Graphics and Geometry

External

Algorithms and Data Structures With Applications to Graphics and Geometry

Jurg Nievergelt; Klaus Hinrichs · Global Text Project · 2011

An introductory coverage of algorithms and data structures with application to graphics and geometry.

CC BYComputer SciencePure 0 views
Programming Fundamentals - A Modular Structured Approach using C++

External

Programming Fundamentals - A Modular Structured Approach using C++

Kenneth Busbee · OpenStax CNX · 2013

Programming Fundamentals - A Modular Structured Approach using C++ is written by Kenneth Leroy Busbee, a faculty member at Houston Community College in Houston, Texas. The materials used in this textbook/collection were developed by the author and others as independent modules for publication within the Connexions environment. Programming fundamentals are often divided into three college courses: Modular/Structured, Object Oriented and Data Structures. This textbook/collection covers the first of those three courses. The learning modules of this textbook/collection were written as standalone modules. Students using a collection of modules as a textbook will usually view it contents by reading the modules sequentially as presented by the author of the collection. The learning modules of this textbook/collection were, for the most part, written without consideration of a speci??c programming language. In many cases the C++ language is discussed as part of the explanation of the concept. Often the examples used for C++ are exactly the same for the Java programming language. However, some modules were written speci??cally for the C++ programming language. This could not beavoided as the C++ language is used in conjunction with this textbook/collection by the author in teaching college courses.

CC BYComputer ScienceProgramming Languages 0 views
The Little Book of Semaphores

External

The Little Book of Semaphores

Allen Downey · Green Tea Press · 2016

The Little Book of Semaphores is a free (in both senses of the word) textbook that introduces the principles of synchronization for concurrent programming. In most computer science curricula, synchronization is a module in an Operating Systems class. OS textbooks present a standard set of problems with a standard set of solutions, but most students don't get a good understanding of the material or the ability to solve similar problems. The approach of this book is to identify patterns that are useful for a variety of synchronization problems and then show how they can be assembled into solutions. After each problem, the book offers a hint before showing a solution, giving students a better chance of discovering solutions on their own. The book covers the classical problems, including "Readers-writers," "Producer-consumer", and "Dining Philosophers." In addition, it collects a number of not-so-classical problems, some written by the author and some by other teachers and textbook writers. Readers are invited to create and submit new problems.

CC BY-NC-SAComputer Science 0 views
Physical Modeling in MATLAB

External

Physical Modeling in MATLAB

Allen Downey · Green Tea Press · 2021

Modeling and simulation are powerful tools for explaining the world, making predictions, designing things that work, and making them work better. Learning to use these tools can be difficult; this book is my attempt to make the experience as enjoyable and productive as possible. By reading this book — and working on the exercises — you will learn some programming, some modeling, and some simulation: With basic programming skills, you can create models for a wide range of physical systems. My goal is to help you develop these skills in a way you can apply immediately to real-world problems. This book presents the entire modeling process, including model selection, analysis, simulation, and validation. I explain this process in Chapter 1, and there are examples throughout the book. Simulation is an approach to modeling that uses computer programs to implement models and generate predictions. This book shows how simulations are used to run experiments, answer questions, and guide decision-making.

CC BY-NCComputer Science 0 views
How to Think Like a Computer Scientist: Learning with Python

External

How to Think Like a Computer Scientist: Learning with Python

Allen Downey; Jeff Elkner; Chris Meyers · Green Tea Press · 2008

How to Think Like a Computer Scientist: Learning with Python is an introduction to programming using Python.

CC BYComputer ScienceProgramming Languages 0 views
Essentials of Geographic Information Systems

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.

CC BY-NC-SAComputer ScienceEarth Sciences 0 views
Think Python: How to Think Like a Computer Scientist

External

Think Python: How to Think Like a Computer Scientist

Allen Downey · Green Tea Press · 2012

Think Python is a concise introduction to software design using the Python programming language. Intended for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. Some of the ideas students find most challenging, like recursion and object-oriented programming, are divided into a sequence of smaller steps and introduced over the course of several chapters. This textbook has been used in classes at Bard College, Olin College of Engineering, University of California, Santa Barbara, University of Maine, University of Northern Colorado.

CC BY-NCComputer ScienceProgramming Languages 0 views
Programming Languages: Application and Interpretation

External

Programming Languages: Application and Interpretation

Shriram Krishnamurthi · Brown University · 2007

Unlike some other textbooks, this one does not follow a top-down narrative. Rather it has the flow of a conversation, with backtracking. We will often build up programs incrementally, just as a pair of programmers would. We will include mistakes, not because I don't know the answer, but because this is the best way for you to learn. Including mistakes makes it impossible for you to read passively: you must instead engage with the material, because you can never be sure of the veracity of what you're reading. At the end, you'll always get to the right answer. However, this non-linear path is more frustrating in the short term (you will often be tempted to say, “Just tell me the answer, already!”), and it makes the book a poor reference guide (you can't open up to a random page and be sure what it says is correct). However, that feeling of frustration is the sensation of learning. I don't know of a way around it. At various points you will encounter this: ExerciseThis is an exercise. Do try it. This is a traditional textbook exercise. It's something you need to do on your own. If you're using this book as part of a course, this may very well have been assigned as homework. In contrast, you will also find exercise-like questions that look like this: Do Now!There's an activity here! Do you see it? When you get to one of these, stop. Read, think, and formulate an answer before you proceed. You must do this because this is actually an exercise, but the answer is already in the book—most often in the text immediately following (i.e., in the part you're reading right now)—or is something you can determine for yourself by running a program. If you just read on, you'll see the answer without having thought about it (or not see it at all, if the instructions are to run a program), so you will get to neither (a) test your knowledge, nor (b) improve your intuitions. In other words, these are additional, explicit attempts to encourage active learning. Ultimately, however, I can o

CC BY-NC-SAComputer Science 0 views
Information Systems - A Manager's Guide to Harnessing Technology

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

CC BY-NC-SAComputer ScienceManagement 0 views
Del ágora a la nube: El destino de las humanidades en la era de la IA

External

Del ágora a la nube: El destino de las humanidades en la era de la IA

Karles Hoffmann-Jaramillo; Carlos Flores-Murillo; Eduardo Baidal-Bustamante · Editorial Grupo AEA · 2025

Explora la evolución del pensamiento crítico desde la Antigua Grecia hasta la era digital, analizando el impacto de la inteligencia artificial (IA) en la educación y la sociedad. Se inicia con una comparación entre el Ágora ateniense, donde se gestó el debate filosófico y la democracia, y los entornos digitales actuales, donde el acceso a la información ha cambiado la forma en que aprendemos. Se resalta cómo la enseñanza de Sócrates, Platón y Aristóteles, basada en el diálogo y la argumentación, sigue siendo relevante para desarrollar el pensamiento crítico en un mundo saturado de datos. En la era digital, la IA ha transformado la educación mediante herramientas que personalizan el aprendizaje y facilitan el acceso a información. Sin embargo, también plantea riesgos como la dependencia tecnológica, los sesgos algorítmicos y la pérdida de autonomía intelectual. El libro enfatiza la necesidad de equilibrar el uso de la tecnología con metodologías pedagógicas que fomenten la reflexión y el análisis crítico. Otro desafío clave es la desinformación, impulsada por la sobreabundancia de datos y la rapidez con la que circula la información en redes sociales. Ante esto, se propone fortalecer la capacidad de los estudiantes para evaluar fuentes, cuestionar datos y construir conocimientos con base en el análisis riguroso. Finalmente, la obra concluye que el futuro de la educación no debe estar centrado solo en la tecnología, sino en la formación de ciudadanos críticos y reflexivos. La IA puede ser una aliada en este proceso, pero es fundamental preservar la esencia humanista del aprendizaje, asegurando que la educación siga siendo un espacio de cuestionamiento, creatividad y pensamiento autónomo.

CC BY-NC-SAComputer ScienceEngineering & Technology 0 views
Gestión Inteligente Sinergias en las Tecnologías de la Información y Comunicación

External

Gestión Inteligente Sinergias en las Tecnologías de la Información y Comunicación

Miguel Fabricio Boné-Andrade; Luis Alfonso Núñez-Freire; Ramiro Enrique Guamán-Chávez · Editorial Grupo AEA · 2024

El libro aborda los desafíos y oportunidades de la inclusión digital, especialmente en el contexto rural de América Latina. Los capítulos iniciales analizan la transformación digital y sus efectos en áreas rurales, destacando la importancia de las TIC para mejorar la calidad de vida y reducir la brecha digital. Posteriormente, se examina el analfabetismo digital como barrera para la inclusión social, con propuestas para políticas de alfabetización que respondan a las necesidades de comunidades vulnerables. Los capítulos centrales exploran la alfabetización digital en Ecuador, enfatizando la infraestructura y las competencias digitales como ejes esenciales. La obra también cubre el rol de la educación superior en la inclusión digital, mostrando ejemplos de vinculación comunitaria por parte de universidades. Los capítulos finales presentan casos de uso de tecnologías en pequeñas empresas para optimizar procesos y mejorar la competitividad, y se discute la relevancia de la ciberseguridad en la era digital. En conjunto, el libro ofrece una perspectiva práctica y teórica, orientada a fomentar la participación equitativa en el ámbito digital, proponiendo soluciones adaptadas a contextos locales.

CC BY-NC-SAComputer Science 0 views
Inteligencia Artificial Aplicada a Procesamiento de Lenguaje Natural (NLP) con Python y Machine Learning.

External

Inteligencia Artificial Aplicada a Procesamiento de Lenguaje Natural (NLP) con Python y Machine Learning.

Lady Mariuxi Sangacha-Tapia; Ricardo Javier Celi; Ivan Leonel Acosta-Guzmán; Eleanor Alexandra Varela-Tapia · Editorial Grupo AEA · 2024

Este libro refleja el trabajo realizado bajo investigación entre docentes investigadores con el afán de que sea útil al lector, el uso de predicciones al momento de entrenar un algoritmo clasificado de texto en procesamiento de lenguaje natural (PLN) basado en machine learning. Conformado de 4 capítulos con la utilidad para el inicio al mundo de la IA de la rama de procesamiento de lenguaje natural con Python en machine learning. El Capítulo 1 menciona conceptos y la evolución de las diferentes ramas de conocimiento que abarca la inteligencia artificial (AI), el entendimiento del NLP, machine learning, tipos de aprendizaje para resolver problemas como el supervisado, no supervisado y refuerzo. Capítulo 2 se profundiza el NLP conociendo los contenidos básicos de clasificación como: Las técnicas y diseño de LSTM, tokeización, stopword, lematización, bag of Word (part of speech tagging). Capítulo 3 es la estructuración de este capítulo el conocer las definiciones de los modelos de aprendizaje supervisado que son útiles en NLP orientado a la clasificación de texto. Capítulo 4 un caso de predicción o grado de asertividad del modelamiento de un algoritmo, la intención es demostrar la utilización de un modelo y varias técnicas aplicando NLP basado en machine learning.

CC BY-NC-SAComputer Science 0 views
Inteligencia Artificial Aplicada con técnicas de Procesamiento de Lenguaje Natural y Machine Learning en el campo de la salud.

External

Inteligencia Artificial Aplicada con técnicas de Procesamiento de Lenguaje Natural y Machine Learning en el campo de la salud.

Eleanor Alexandra Varela-Tapia; Ivan Leonel Acosta-Guzmán; Jorge Alberto Oviedo-Peñafiel · Editorial Grupo AEA · 2024

La Inteligencia Artificial (IA), el Procesamiento del Lenguaje Natural (NLP) y el Aprendizaje Automático (ML) han jugado un papel crucial en la lucha contra la pandemia de Covid-19, proporcionando herramientas tecnológicas valiosas para el diagnóstico, seguimiento y control de la enfermedad, implementándose soluciones con IA para mitigar sus efectos. Se propone el diseño de un modelo de ML aplicando técnicas NLP en el preprocesamiento de texto para poder evaluar la eficacia del análisis de datos en conversaciones de personas contagiadas del coronavirus SARS-CoV-2. Se recopiló información de redes sociales como Twitter y Facebook, y encuestas a contagiados de Covid-19 en la Zona 8 de la provincia del Guayas. Con estos datos, se entrenó un sistema de clasificación textual utilizando los algoritmos de Soporte de Máquina Vectorial y Random Forest. El estudio resultó en una precisión del 96% en ambos modelos, demostrando su viabilidad para la creación e implementación de clasificadores de texto. Se logró mejorar el rendimiento del modelo, reduciendo las categorías con más de 200 ocurrencias, lo que resultó en una precisión más elevada sin diferencias significativas entre ambos modelos. Por último, se desarrolló un sitio web capaz de clasificar correctamente los síntomas y recomendaciones comentadas por los pacientes.

CC BY-NC-SAComputer Science 0 views
Ingeniería del Software II: Implementación, Pruebas y Mantenimiento

External

Ingeniería del Software II: Implementación, Pruebas y Mantenimiento

Ricardo Javier Celi-Párraga; Miguel Fabricio Boné-Andrade; Aldo Patricio Mora-Olivero; Juan Carlos Sarmiento-Saavedra · Editorial Grupo AEA · 2023

En este libro se investigó los procesos de implementación, pruebas y mantenimiento de la ingeniería del software y se documentó los diferentes tipos de pruebas de software para validar el correcto funcionamiento de un software, se documentó también los procesos de evolución de un software para lograr un correcto mantenimiento del software. Este libro tiene como objetivo aplicar los conceptos y teorías de validación del software con el fin de crear de software de calidad, confiable, que se encuentre disponible, protegido y seguro, para que el profesional de sistemas informáticos sea capaz de gestionar con eficiencia y en ambientes éticos y de responsabilidad proyectos inmersos en la creación software. Se investigó varios libros llegando a realizar un compendio de las partes más importantes y se llegó a la conclusión de que la ingeniería del software proporciona varias técnicas para la evaluación y validación del software y varias metodologías para el desarrollo de software confiable y seguro que el profesional puede utilizar dependiendo las diferentes necesidades, situaciones o proyectos a desarrollar

CC BY-NC-SAComputer Science 0 views
Ingeniería del Software I: Requerimientos y Modelado del Software

External

Ingeniería del Software I: Requerimientos y Modelado del Software

Ricardo Javier Celi-Párraga; Miguel Fabricio Boné-Andrade; Aldo Patricio Mora-Olivero; Juan Carlos Sarmiento-Saavedra · Editorial Grupo AEA · 2023

En este libro se investigó los fundamentos de la ingeniería del software y se documentó los conceptos básicos del software y los procesos para la creación de software, se documentó también cómo llevar a cabo un análisis de requerimientos de software, cuáles son los tipos de requerimientos, cómo obtenerlos, documentarlos, validarlos y modelarlos mediante diferentes tipos de diagramas. Este libro tiene como objetivo aplicar los conceptos y teorías de administración para la creación de software de calidad mediante las diferentes metodologías, técnicas y herramientas de la ingeniería del software para que el profesional de sistemas informáticos sea capaz de gestionar con eficiencia y en ambientes éticos y de responsabilidad proyectos inmersos en la creación software. Se investigó varios libros llegando a realizar un compendio de las partes más importantes y se llegó a la conclusión de que la ingeniería del software proporciona varias metodologías para el desarrollo del software y varios modelos para el diseño de software que el profesional puede utilizar dependiendo las diferentes necesidades o las diferentes situaciones o proyectos a desarrollar.

CC BY-NC-SAComputer Science 0 views
Evolución del Computador desde el ABC de su Arquitectura hasta la Construcción de una PC Gamer

External

Evolución del Computador desde el ABC de su Arquitectura hasta la Construcción de una PC Gamer

Gerardo Alfredo Solano-Gutiérrez; Luis Alfonso Núñez-Freire; José Javier Mendoza-Loor · Editorial Grupo AEA · 2023

El libro es una obra completa que aborda distintos aspectos importantes de la informática, desde la arquitectura y organización de la computadora hasta la construcción de una PC gamer. En el primer capítulo se explica de manera detallada la arquitectura y organización de los ordenadores, mientras que en el segundo se analizan las diferentes generaciones de ordenadores y su evolución a lo largo del tiempo, llegando hasta la inteligencia artificial. El tercer capítulo está dedicado a la memoria de la computadora y su funcionamiento, mientras que en el cuarto se explican las herramientas necesarias para el mantenimiento y la reparación de la PC, desde la clonación de discos duros hasta la construcción de dispositivos multi boot. Por último, el quinto capítulo se enfoca en las PC gamer's y ofrece una guía completa para los entusiastas de los juegos, brindando un procedimiento paso a paso para construir su propio PC gamer. Este libro es valioso tanto para estudiantes de sistemas como para profesionales de la computación, ya que cubre temas fundamentales como la arquitectura y organización de computadoras, historia y evolución, el diseño de computadoras, la memoria, las herramientas de mantenimiento y reparación de computadoras, y cómo armar una computadora de mayor rendimiento para usuarios jugadores. En resumen, esta obra ofrece información útil y completa sobre la evolución de la computadora, desde sus inicios hasta la actualidad, y brinda herramientas y consejos prácticos para su uso y mantenimiento

CC BY-NC-SAComputer Science 0 views
Programación Web del Frontend al Backend

External

Programación Web del Frontend al Backend

Ricardo Javier Celí Párraga; Miguel Fabricio Boné Andrade; Aldo Patricio Mora Olivero · Editorial Grupo AEA · 2023

En este libro se investigó los fundamentos de la programación web, así como las tecnologías esenciales para lograr crear aplicaciones web, tales como HTML y CSS. Se documentó los conceptos básicos de la programación Frontend utilizando el lenguaje de programación JavaScript, se documentó también los conceptos de la programación Backend utilizando el lenguaje de programación PHP. Este libro tiene como objetivo involucrarse en la programación web iniciando con el estudio del Frontend hasta el Backend con los conceptos básicos, códigos y ejemplos, utilizando tecnologías de programación gratuitas accesibles para cualquier estudiante, para llegar a crear aplicaciones dinámicas con acceso a base de datos. Como resultado se obtuvo que se puede llegar a crear aplicaciones web complejas utilizando tecnologías actuales gratuitas, con un diseño agradable, diseñándolo fácilmente con un Framework CSS como Bootstrap, y utilizando JQuery como una librería para crear rápidamente aplicaciones con JavaScript. Se utilizó además PHP por ser uno de los lenguajes más utilizados para crear aplicaciones conectadas a bases de datos MySQL.

CC BY-NC-SAComputer ScienceProgramming Languages 0 views
Pro Git: Everything You Need to Know About Git (Ukranian)

External

Pro Git: Everything You Need to Know About Git (Ukranian)

Scott Chacon; Ben Straub · Apress · 2014

The entire Pro Git book, written by Scott Chacon and Ben Straub and published by Apress, is available here. All content is licensed under the Creative Commons Attribution Non Commercial Share Alike 3.0 license. Print versions of the book are available on Amazon.com. The version found here has been updated with corrections and additions from hundreds of contributors. If you see an error or have a suggestion, patches and issues are welcome in its GitHub repository.

CC BY-NC-SAComputer ScienceInformation Systems 0 views