Skip navigation

Computer Science and Intelligent Systems

Computer Science and Intelligent Systems

In Adversarial Design, Carl DiSalvo examines the ways that technology design can provoke and engage the political. He describes a practice, which he terms “adversarial design,” that uses the means and forms of design to challenge beliefs, values, and what is taken to be fact. It is not simply applying design to politics--attempting to improve governance for example, by redesigning ballots and polling places; it is implicitly contestational and strives to question conventional approaches to political issues.

Introduction to Covariate Shift Adaptation

As the power of computing has grown over the past few decades, the field of machine learning has advanced rapidly in both theory and practice. Machine learning methods are usually based on the assumption that the data generation mechanism does not change over time. Yet real-world applications of machine learning, including image recognition, natural language processing, speech recognition, robot control, and bioinformatics, often violate this common assumption. Dealing with non-stationarity is one of modern machine learning’s greatest challenges.

Evidence-Based Social Design

Online communities are among the most popular destinations on the Internet, but not all online communities are equally successful. For every flourishing Facebook, there is a moribund Friendster--not to mention the scores of smaller social networking sites that never attracted enough members to be viable. This book offers lessons from theory and empirical research in the social sciences that can help improve the design of online communities.

Building Computers That Understand Speech

Stanley Kubrick’s 1968 film 2001: A Space Odyssey famously featured HAL, a computer with the ability to hold lengthy conversations with his fellow space travelers. More than forty years later, we have advanced computer technology that Kubrick never imagined, but we do not have computers that talk and understand speech as HAL did. Is it a failure of our technology that we have not gotten much further than an automated voice that tells us to “say or press 1”?

An Ecological Approach to Information Behavior

Human information interaction (HII) is an emerging area of study that investigates how people interact with information; its subfield human information behavior (HIB) is a flourishing, active discipline. Yet despite their obvious relevance to the design of information systems, these research areas have had almost no impact on systems design. One issue may be the contextual complexity of human interaction with information; another may be the difficulty in translating real-life and unstructured HII complexity into formal, linear structures necessary for systems design.

A First Course

This book guides students through an exploration of the idea that thinking might be understood as a form of computation. Students make the connection between thinking and computing by learning to write computer programs for a variety of tasks that require thought, including solving puzzles, understanding natural language, recognizing objects in visual scenes, planning courses of action, and playing strategic games.

The Ethical and Social Implications of Robotics

Robots today serve in many roles, from entertainer to educator to executioner. As robotics technology advances, ethical concerns become more pressing: Should robots be programmed to follow a code of ethics, if this is even possible? Are there risks in forming emotional bonds with robots? How might society—and ethics—change with robotics? This volume is the first book to bring together prominent scholars and experts from both science and the humanities to explore these and other questions in this emerging field.

C# is an object-oriented programming language that is similar to Java in many respects but more comprehensive and different in most details. This book offers a quick and accessible reference for anyone who wants to know C# in more detail than that provided by a standard textbook. It will be particularly useful for C# learners who are familiar with Java. This second edition has been updated and expanded, reflecting the evolution and extension of the C# programming language. It covers C# versions 3.0 and 4.0 and takes a look ahead at some of the innovations of version 5.0.

Logic, Language, and Analysis

In Software Abstractions Daniel Jackson introduces an approach to software design that draws on traditional formal methods but exploits automated tools to find flaws as early as possible. This approach--which Jackson calls “lightweight formal methods” or “agile modeling”--takes from formal specification the idea of a precise and expressive notation based on a tiny core of simple and robust concepts but replaces conventional analysis based on theorem proving with a fully automated analysis that gives designers immediate feedback.

Rise of the Networked Generation

Hello Avatar! Or, {llSay(0, “Hello Avatar!”); is a tiny piece of user-friendly code that allows us to program our virtual selves. In Hello Avatar, B. Coleman examines a crucial aspect of our cultural shift from analog to digital: the continuum between online and off-, what she calls the “x-reality” that crosses between the virtual and the real. She looks at the emergence of a world that is neither virtual nor real but encompasses a multiplicity of network combinations.