"Computer Networking : Principles, Protocols and Practice" is an open-source ebook that …
"Computer Networking : Principles, Protocols and Practice" is an open-source ebook that explains the main principles of Computer Networking and the key protocols that are used on the Internet. The first part describes the theoretical foundations of this domain as well and the main algorithms and protocols. The ebook is intended to be used for an upper-level undergraduate networking course. The second part contains a detailed explanation of the main Internet protocols including HTTP, DNS, TCP, UDP, IPv6, BGP, RIP, OSPF, Ethernet and WiFi. The last part contains exercises and practical labs to allow the students to test their knowledge. The Computer Networking: Principles, Protocols and Practice textbook is one of the winners of the first Open Textbook challenge organised by the Saylor foundation in the US.
The documentation is missing or obsolete, and the original developers have departed. …
The documentation is missing or obsolete, and the original developers have departed. Your team has limited understanding of the system, and unit tests are missing for many, if not all, of the components. When you fix a bug in one place, another bug pops up somewhere else in the system. Long rebuild times make any change difficult. All of these are signs of software that is close to the breaking point.
Many systems can be upgraded or simply thrown away if they no longer serve their purpose. Legacy software, however, is crucial for operations and needs to be continually available and upgraded. How can you reduce the complexity of a legacy system sufficiently so that it can continue to be used and adapted at acceptable cost?
Based on the authors' industrial experiences, this book is a guide on how to reverse engineer legacy systems to understand their problems, and then reengineer those systems to meet new demands. Patterns are used to clarify and explain the process of understanding large code bases, hence transforming them to meet new requirements. The key insight is that the right design and organization of your system is not something that can be evident from the initial requirements alone, but rather as a consequence of understanding how these requirements evolve.
The Open Logic Text is an open textbook on mathematical logic aimed …
The Open Logic Text is an open textbook on mathematical logic aimed at a non-mathematical audience, intended for advanced logic courses as taught in many philosophy departments. It is open-source: you can download the LaTeX code. It is open: you’re free to change it whichever way you like, and share your changes. It is collaborative: a team of people is working on it, using the GitHub platform, and we welcome contributions and feedback. And it is written with configurability in mind.
Open Signals and Systems Laboratory Exercises is a collection of lab assignments …
Open Signals and Systems Laboratory Exercises is a collection of lab assignments that have been used in EE 224: Signals and Systems I in the Department of Electrical and Computer Engineering at Iowa State University. These lab exercises have been curated, edited, and presented in a consistent format to improve student learning.
Opensciency is core open science curriculum material, drafted to introduce those beginning …
Opensciency is core open science curriculum material, drafted to introduce those beginning their open science journey to important definitions, tools, and resources; and provide for participants at all levels recommended practices. The material is made available under a CC-BY 4.0 International license and is structured into five modules:
- Ethos of Open Science - Open Tools and Resources - Open Data - Open Software - Open Results
In this book, you will learn about all three kinds of interaction. …
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 sufifciently 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.
Digital technologies old and new are not objects that can be packed …
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.
Pharo is an open-source, elegant and pure object-oriented language that supports truly …
Pharo is an open-source, elegant and pure object-oriented language that supports truly immersive and life programming experience. Pharo offers excellent tools such as hot-debuggers and on the fly code update that change the programming experience. More at http://www.pharo.org. Pharo is a powerful language and IDE that companies use to deliver complex business-effective applications. More at: http://www.pharo.org/success
In Pharo everything is an object, and anything can change at run-time under your fingers. Pharo is written in itself you can explore a complete world. You can feel and talk to objects. But Pharo does not stop there, with Pharo you can improve your object-oriented skills by rediscovering the essence of object-oriented programming. Pharo by Example 50, intended for both students and developers, will guide you gently through the Pharo language and environment by means of a series of examples and exercises. This book is available under the Creative Commons Attribution-ShareAlike 3.0 license.
Most books that use MATLAB are aimed at readers who know how …
Most books that use MATLAB are aimed at readers who know how to program. This book is for people who have never programmed before. As a result, the order of presentation is unusual. The book starts with scalar values and works up to vectors and matrices very gradually. This approach is good for beginning programmers, because it is hard to understand composite objects until you understand basic programming semantics.
Digital accessibility skills are in high demand, as the world becomes more …
Digital accessibility skills are in high demand, as the world becomes more aware of barriers in digital content that prevent some people from participating in a digital society. These are essential skills for web developers, and essential knowledge for organizations that want to ensure their web content is reaching the broadest audience possible.
Unlike some other textbooks, this one does not follow a top-down narrative. …
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.
The main programming language used in this book is Racket. Like with all operating systems, however, Racket actually supports a host of programming languages, so you must tell Racket which language you’re programming in.
This textbook has been used in classes at: Brown University, Cal Poly, Columbus State University, Northeastern University, NYU, Reed College, UC-San Diego, UC-Santa Cruz, University of Rhode Island, University of Utah, Westmont College, Williams College, and Worcester Polytechnic Institute.
New Edition! The goal of this book is to provide an Informatics-oriented …
New Edition! The goal of this book is to provide an Informatics-oriented introduction to programming. The primary difference between a computer science approach and the Informatics approach taken in this book is a greater focus on using Python to solve data analysis problems common in the world of Informatics.
The chapters in their current form have been made available to students …
The chapters in their current form have been made available to students who used Python in my Decision Science course in Fall 2019 (the course I had to prep for. Most students used R, but this helped those who choose Python). It has also been used as reference for students and project partners who use Python but have not had any training on using Python for data management.
This work is still useful for those learning Python as a data analysis platform as well as those who need to convert R code into Python due to deployment needs or to take advantage of Python resources in other domains. While it was not used as a textbook, the material was used by students in my decision models course and in senior capstone course for those who choose to use Python instead of R. While it seemed to help, the students had more difficulty than students who used R.
Half a century after they were first described, relational database systems remain …
Half a century after they were first described, relational database systems remain by far the most popular choice for the storage of large datasets. The book starts by describing the practical and theoretical reasons why this is so.
It then shows how to analyse a data requirement and use it to design and develop a database. Through a series of practical exercises and prepared scripts, it teaches SQL, using a freely downloadable, fully working database system (SAP SQL Anywhere™ for Windows 7 and above, MacOS 10.9 and above, and Linux)
The author works as an independent consultant. He had a career in database systems, and taught the subject for more than two decades, as a course tutor for the UK Open University. He is a Fellow of the Higher Education Academy.
This text is a free introductory text that introduces MS Access and …
This text is a free introductory text that introduces MS Access and relational database design. The motivation is to support a second-year course on database systems which, to the student, is either a service course providing an introduction to database concepts, or, as a prerequisite for more advanced study in the field.
This is the website for “R for Data Science”. This book will …
This is the website for “R for Data Science”. This book will teach you how to do data science with R: You’ll learn how to get your data into R, get it into the most useful structure, transform it, visualise it and model it. In this book, you will find a practicum of skills for data science. Just as a chemist learns how to clean test tubes and stock a lab, you’ll learn how to clean data and draw plots—and many other things besides. These are the skills that allow data science to happen, and here you will find the best practices for doing each of these things with R. You’ll learn how to use the grammar of graphics, literate programming, and reproducible research to save time. You’ll also learn how to manage cognitive resources to facilitate discoveries when wrangling, visualising, and exploring data.
Welcome to “SQL and Database Management Using Pop Culture,” a GitHub repository …
Welcome to “SQL and Database Management Using Pop Culture,” a GitHub repository that leads a double life as an interactive Database and SQL textbook. Through this innovative approach, we blend the technical world of SQL and database management with the relatable and often thrilling realm of pop culture. This book is designed to make the complex concepts of databases not just understandable but genuinely enjoyable to learn.
Why This Book? Databases are the backbone of the modern data-driven world, yet their intricacies can often seem labyrinthine to learners. This book demystifies these complexities by drawing parallels with popular culture, weaving a narrative that is both informative and relatable. Whether you are a student stepping into the world of databases or a professional seeking to deepen your understanding, this book provides a fresh perspective that is both comprehensive and accessible. The book starts with basic queries in SQLite, and move on to introduce both PostgreSQL and MySQL in later chapters. The content is aligned with the content of the CompTia Data Sys+ and Oracle Database Foundations exams.
The Structure of the Book. Each chapter of this book is crafted like an episode of a TV series, where learning SQL and database management becomes an adventure rather than a routine academic endeavor. Here’s what awaits you in this journey:
Chapter 0: Get started with an interactive introduction to SQL and Python in Colab notebooks. Chapters 1 to 12: From the deck of the Star Trek Enterprise to the magical corridors of Hogwarts, dive into every aspect of SQL and database management. Each chapter unfolds a new scenario, tying complex database concepts to familiar stories and characters from pop culture. This repository houses twelve Jupyter notebooks, making the learning experience highly interactive and hands-on. You’ll not just read about SQL queries and database theories but also get to experiment and see the results in real-time.
No restrictions on your remixing, redistributing, or making derivative works. Give credit to the author, as required.
Your remixing, redistributing, or making derivatives works comes with some restrictions, including how it is shared.
Your redistributing comes with some restrictions. Do not remix or make derivative works.
Most restrictive license type. Prohibits most uses, sharing, and any changes.
Copyrighted materials, available under Fair Use and the TEACH Act for US-based educators, or other custom arrangements. Go to the resource provider to see their individual restrictions.