Book picks similar to
Systems Analysis and Design by Kenneth E. Kendall
computer-science
textbook
computers
computer-science-and-information
Types and Programming Languages
Benjamin C. Pierce - 2002
The study of type systems--and of programming languages from a type-theoretic perspective--has important applications in software engineering, language design, high-performance compilers, and security.This text provides a comprehensive introduction both to type systems in computer science and to the basic theory of programming languages. The approach is pragmatic and operational; each new concept is motivated by programming examples and the more theoretical sections are driven by the needs of implementations. Each chapter is accompanied by numerous exercises and solutions, as well as a running implementation, available via the Web. Dependencies between chapters are explicitly identified, allowing readers to choose a variety of paths through the material.The core topics include the untyped lambda-calculus, simple type systems, type reconstruction, universal and existential polymorphism, subtyping, bounded quantification, recursive types, kinds, and type operators. Extended case studies develop a variety of approaches to modeling the features of object-oriented languages.
It's Complicated: The Social Lives of Networked Teens
Danah Boyd - 2014
. . It’s Complicated will update your mind.”—Alissa Quart, New York Times Book Review “A fascinating, well-researched and (mostly) reassuring look at how today's tech-savvy teenagers are using social media.”—People “The briefest possible summary? The kids are all right, but society isn’t.”—Andrew Leonard, Salon What is new about how teenagers communicate through services such as Facebook, Twitter, and Instagram? Do social media affect the quality of teens’ lives? In this eye-opening book, youth culture and technology expert danah boyd uncovers some of the major myths regarding teens' use of social media. She explores tropes about identity, privacy, safety, danger, and bullying. Ultimately, boyd argues that society fails young people when paternalism and protectionism hinder teenagers’ ability to become informed, thoughtful, and engaged citizens through their online interactions. Yet despite an environment of rampant fear-mongering, boyd finds that teens often find ways to engage and to develop a sense of identity. Boyd’s conclusions are essential reading not only for parents, teachers, and others who work with teens but also for anyone interested in the impact of emerging technologies on society, culture, and commerce in years to come. Offering insights gleaned from more than a decade of original fieldwork interviewing teenagers across the United States, boyd concludes reassuringly that the kids are all right. At the same time, she acknowledges that coming to terms with life in a networked era is not easy or obvious. In a technologically mediated world, life is bound to be complicated.
Linked: How Everything Is Connected to Everything Else and What It Means for Business, Science, and Everyday Life
Albert-László Barabási - 2002
Albert-László Barabási, the nation’s foremost expert in the new science of networks and author of Bursts, takes us on an intellectual adventure to prove that social networks, corporations, and living organisms are more similar than previously thought. Grasping a full understanding of network science will someday allow us to design blue-chip businesses, stop the outbreak of deadly diseases, and influence the exchange of ideas and information. Just as James Gleick and the Erdos–Rényi model brought the discovery of chaos theory to the general public, Linked tells the story of the true science of the future and of experiments in statistical mechanics on the internet, all vital parts of what would eventually be called the Barabási–Albert model.
Web Operations: Keeping the Data on Time
John Allspaw - 2010
It's the expertise you need when your start-up gets an unexpected spike in web traffic, or when a new feature causes your mature application to fail. In this collection of essays and interviews, web veterans such as Theo Schlossnagle, Baron Schwartz, and Alistair Croll offer insights into this evolving field. You'll learn stories from the trenches--from builders of some of the biggest sites on the Web--on what's necessary to help a site thrive.Learn the skills needed in web operations, and why they're gained through experience rather than schoolingUnderstand why it's important to gather metrics from both your application and infrastructureConsider common approaches to database architectures and the pitfalls that come with increasing scaleLearn how to handle the human side of outages and degradationsFind out how one company avoided disaster after a huge traffic delugeDiscover what went wrong after a problem occurs, and how to prevent it from happening againContributors include:John AllspawHeather ChampMichael ChristianRichard CookAlistair CrollPatrick DeboisEric FlorenzanoPaul HammondJustin HuffAdam JacobJacob LoomisMatt MassieBrian MoonAnoop NagwaniSean PowerEric RiesTheo SchlossnagleBaron SchwartzAndrew Shafer
The C# Programming Yellow Book
Rob Miles - 2010
With jokes, puns, and a rigorous problem solving based approach. You can download all the code samples used in the book from here: http://www.robmiles.com/s/Yellow-Book...
Linux Kernel Development
Robert Love - 2003
The book details the major subsystems and features of the Linux kernel, including its design, implementation, and interfaces. It covers the Linux kernel with both a practical and theoretical eye, which should appeal to readers with a variety of interests and needs. The author, a core kernel developer, shares valuable knowledge and experience on the 2.6 Linux kernel. Specific topics covered include process management, scheduling, time management and timers, the system call interface, memory addressing, memory management, the page cache, the VFS, kernel synchronization, portability concerns, and debugging techniques. This book covers the most interesting features of the Linux 2.6 kernel, including the CFS scheduler, preemptive kernel, block I/O layer, and I/O schedulers. The third edition of Linux Kernel Development includes new and updated material throughout the book:An all-new chapter on kernel data structuresDetails on interrupt handlers and bottom halvesExtended coverage of virtual memory and memory allocationTips on debugging the Linux kernelIn-depth coverage of kernel synchronization and lockingUseful insight into submitting kernel patches and working with the Linux kernel community
The Go Programming Language
Alan A.A. Donovan - 2015
It has been winning converts from dynamic language enthusiasts as well as users of traditional compiled languages. The former appreciate the robustness and efficiency that Go's lightweight type system brings to their code; the latter find Go's simplicity and fast tools a refreshing change. Thanks to its well-designed standard libraries and its excellent support for concurrent programming, Go is fast becoming the language of choice for distributed systems. The Go Programming Language is the definitive book on Go for the working programmer. It assumes no prior knowledge of Go, nor any other specific programming language, so you'll find it an accessible guide whether you come from JavaScript, Ruby, Python, Java, or C++. The book will quickly get you started using Go effectively from the beginning, and by the end, you will know how to use it well to write clear, idiomatic and efficient programs to solve real-world problems. You'll understand not just how to use its standard libraries, but how they work, and how to apply the same design techniques to your own projects. The earlier chapters will introduce you to the basic concepts of Go programming---numbers, strings, functions---while at the same time presenting important computer science concepts like recursion, and useful examples of graphics, UTF-8, and error handling. The chapters on methods and interfaces will show you a new way to think about object-oriented programming; the chapter on concurrency explains why concurrency is so important in modern programming, and how Go helps you handle it well. You'll also learn about Go's pragmatic but effective approach to testing; how to build, test, and manage projects using the go tool, and the art of metaprogramming using reflection. The book contains hundreds of interesting and practical examples that cover the whole language and a wide range of applications. The code samples from the book are available for download from gopl.io.
Living Clojure
Carin Meier - 2015
Author Carin Meier not only provides a practical overview of this JVM language and its functional programming concepts, but also includes a complete hands-on training course to help you learn Clojure in a structured way.The first half of the book takes you through Closure’s unique design and lets you try your hand at two Clojure projects, including a web app. The holistic course in second half provides you with critical tools and resources, including ways to plug into the Clojure community.
Understand the basic structure of a Clojure expression
Learn how to shape and control code in a functional way
Discover how Clojure handles real-world state and concurrency
Take advantage of Java classes and learn how Clojure handles polymorphism
Manage and use libraries in a Clojure project
Use the core.async library for asynchronous and concurrent communication
Explore the power of macros in Clojure programming
Learn how to think in Clojure by following the book’s seven-week training course
A Gift of Fire: Social, Legal, and Ethical Issues for Computers and the Internet
Sara Baase - 1996
It covers the issues students will face both as members of a technological society and as professionals in computer-related fields. One of its goals is to develop computer professionals who understand the implications of what they create and how it fits into society at large-another is to bring these issues to the attention of students outside of computer science.
Numerical Analysis
Richard L. Burden - 1978
Explaining how, why, and when the techniques can be expected to work, the Seventh Edition places an even greater emphasis on building readers' intuition to help them understand why the techniques presented work in general, and why, in some situations, they fail. Applied problems from diverse areas, such as engineering and physical, computer, and biological sciences, are provided so readers can understand how numerical methods are used in real-life situations. The Seventh Edition has been updated and now addresses the evolving use of technology, incorporating it whenever appropriate.
Reference and Information Services in the 21st Century : An Introduction
Kay Ann Cassell - 2006
The only reference text to identify the top resources in major subject areas and genres, it shows students how to approach the reference query by matching specific types of questions to the most appropriate format (when answering questions that require handy facts, for example, go first to ready reference sources; for questions about current events and issues, start with indexes). The book begins with the essentials -- interviewing patrons, determining the information need, and developing a basic search strategy. It then gives a thorough overview of the materials, print and electronic, most frequently used to answer questions -- from government information to bibliographic resources, dictionaries, encyclopedias, biographical information sources, atlases, and more. A section on special topics in reference includes chapters on when and how to use the Internet as a reference tool, suggestions on user instruction at the reference desk, and reader's advisory work, as well as a chapter on service to children and youth authored by acclaimed expert Mary K. Chelton. Finally, the book addresses reference management basics: selection and evaluation of material, management of the reference department, assessing and improving reference services, and future trends. Guided by an advisory board and a focus group, the authors have achieved an ideal balance between practical elements and guiding principles. This landmark text is sure to be of interest to LIS educators, students, and both novice and experienced reference professionals.
Security+ Guide to Network Security Fundamentals
Mark Ciampa - 2004
The book covers all of the new CompTIA Security+ 2008 exam objectives and maps to the new Security+ 2008 exam. This updated edition features many all-new topics, including topics new to the CompTIA exams like cross site scripting, SQL injection, rootkits, and virtualization, as well as topics of increasing importance in the industry as a whole, like the latest breeds of attackers, Wi-Fi Protected Access 2, and Microsoft Windows Vista security.
A Short Course in Digital Photography
Barbara London - 2009
"The London, Upton, Stone series has helped over 1,000,000 photography students capture their potential. After a very successful first edition, this second edition returns with the most up-to-date industry knowledge. Modeled after the long-running and widely used "A ""Short Course in Photography, " a brief text which presents the medium entirely in its most updated form.
Critical Theory Today: A User-Friendly Guide
Lois Tyson - 1998
It provides clear, simple explanations and concrete examples of complex concepts, making a wide variety of commonly used critical theories accessible to novices without sacrificing any theoretical rigor or thoroughness.This new edition provides in-depth coverage of the most common approaches to literary analysis today: feminism, psychoanalysis, Marxism, reader-response theory, new criticism, structuralism and semiotics, deconstruction, new historicism, cultural criticism, lesbian/gay/queer theory, African American criticism, and postcolonial criticism. The chapters provide an extended explanation of each theory, using examples from everyday life, popular culture, and literary texts; a list of specific questions critics who use that theory ask about literary texts; an interpretation of F. Scott Fitzgerald's The Great Gatsby through the lens of each theory; a list of questions for further practice to guide readers in applying each theory to different literary works; and a bibliography of primary and secondary works for further reading.