CS
鸟哥的Linux私房菜 豆瓣
8.6 (31 个评分) 作者: 鸟哥 人民邮电出版社 2010 - 6
本书是最具知名度的Linux入门书《鸟哥的Linux私房菜基础学习篇》的最新版,全面而详细地介绍了Linux操作系统。全书分为5个部分:第一部分着重说明Linux的起源及功能,如何规划和安装Linux主机;第二部分介绍Linux的文件系统、文件、目录与磁盘的管理;第三部分介绍文字模式接口 shell和管理系统的好帮手shell脚本,另外还介绍了文字编辑器vi和vim的使用方法;第四部分介绍了对于系统安全非常重要的Linux账号的管理,以及主机系统与程序的管理,如查看进程、任务分配和作业管理;第五部分介绍了系统管理员(root)的管理事项,如了解系统运行状况、系统服务,针对登录文件进行解析,对系统进行备份以及核心的管理等。
本书内容丰富全面,基本概念的讲解非常细致,深入浅出。各种功能和命令的介绍,都配以大量的实例操作和详尽的解析。本书是初学者学习Linux不可多得的一本入门好书。
Understanding the Linux Kernel 豆瓣
作者: Daniel Plerre Bovet / Marco Cesati O'Reilly Media 2005 - 11
In order to thoroughly understand what makes Linux tick and why it works so well on a wide variety of systems, you need to delve deep into the heart of the kernel. The kernel handles all interactions between the CPU and the external world, and determines which programs will share processor time, in what order. It manages limited memory so well that hundreds of processes can share the system efficiently, and expertly organizes data transfers so that the CPU isn't kept waiting any longer than necessary for the relatively slow disks. The third edition of Understanding the Linux Kernel takes you on a guided tour of the most significant data structures, algorithms, and programming tricks used in the kernel. Probing beyond superficial features, the authors offer valuable insights to people who want to know how things really work inside their machine. Important Intel-specific features are discussed. Relevant segments of code are dissected line by line. But the book covers more than just the functioning of the code; it explains the theoretical underpinnings of why Linux does things the way it does. This edition of the book covers Version 2.6 , which has seen significant changes to nearly every kernel subsystem, particularly in the areas of memory management and block devices. The book focuses on the following topics: * Memory management, including file buffering, process swapping, and Direct memory Access (DMA) * The Virtual Filesystem layer and the Second and Third Extended Filesystems * Process creation and scheduling * Signals, interrupts, and the essential interfaces to device drivers * Timing * Synchronization within the kernel * Interprocess Communication (IPC) * Program execution Understanding the Linux Kernel will acquaint you with all the inner workings of Linux, but it's more than just an academic exercise. You'll learn what conditions bring out Linux's best performance, and you'll see how it meets the challenge of providing good system response during process scheduling, file access, and memory management in a wide variety of environments. This book will help you make the most of your Linux system.
Clean Code 豆瓣 Goodreads
9.5 (8 个评分) 作者: [美国] Robert C·Martin Prentice Hall 2008 - 8
Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.
Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship. Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code “on the fly” into a book that will instill within you the values of a software craftsman and make you a better programmer—but only if you work at it.
What kind of work will you be doing? You’ll be reading code—lots of code. And you will be challenged to think about what’s right about that code, and what’s wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft.
Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code—of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and “smells” gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code.
Readers will come away from this book understanding
How to tell the difference between good and bad code
How to write good code and how to transform bad code into good code
How to create good names, good functions, good objects, and good classes
How to format code for maximum readability
How to implement complete error handling without obscuring code logic
How to unit test and practice test-driven development
This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code.
Blown to Bits 豆瓣
作者: Hal Abelson / Ken Ledeen Addison-Wesley Professional 2008 - 6
"If you want to understand the future before it happens, you'll love this book. If you want to change the future before it happens to you, this book is required reading." -Reed Hundt, former Chairman of the Federal Communications Commission "There is no simpler or clearer statement of the radical change that digital technologies will bring, nor any book that better prepares one for thinking about the next steps." -LawrenceLessig, Stanford Law School and Author of Code and Other Laws of Cyberspace "Blown to Bits will blow you away. In highly accessible and always fun prose, it explores all the nooks and crannies of the digital universe, exploring not only how this exploding space works but also what it means." -Debora Spar, President of Barnard College, Author of Ruling the Waves and The Baby Business "This is a wonderful book-probably the best since Hal Varian and Carl Schultz wrote Digital Rules. The authors are engineers, not economists. The result is a long, friendly talk with the genie, out of the lamp, and willing to help you avoid making the traditional mistake with that all-important third wish." -David Warsh, Author of Knowledge and the Wealth of Nations "Blown to Bits is one of the clearest expositions I've seen of the social and political issues arising from the Internet. Its remarkably clear explanations of how the Net actually works lets the hot air out of some seemingly endless debates. You've made explaining this stuff look easy. Congratulations!" -David Weinberger, Coauthor of The Cluetrain Manifesto and Author of Everything Is Miscellaneous: The Power of the New Digital Disorder. "Blown to Bits is a timely, important, and very readable take on how information is produced and consumed today, and more important, on the approaching sea change in the way that we as a society deal with the consequences." -Craig Silverstein, Director of Technology, Google, Inc. "This book gives an overview of the kinds of issues confronting society as we become increasingly dependent on the Internet and the World Wide Web. Every informed citizen should read this book and then form their own opinion on these and related issues. And after reading this book you will rethink how (and even whether) you use the Web to form your opinions..." -James S. Miller, Senior Director for Technology Policy and Strategy, Microsoft Corporation "Most writing about the digital world comes from techies writing about technical matter for other techies or from pundits whose turn of phrase greatly exceeds their technical knowledge. In Blown to Bits, experts in computer science address authoritatively the practical issues in which we all have keen interest." -Howard Gardner, Hobbs Professor of Cognition and Education, Harvard Graduate School of Education, Author of Multiple Intelligences and Changing Minds "Regardless of your experience with computers, Blown to Bits provides a uniquely entertaining and informative perspective from the computing industry's greatest minds. A fascinating, insightful and entertaining book that helps you understand computers and their impact on the world in a whole new way. This is a rare book that explains the impact of the digital explosion in a way that everyone can understand and, at the same time, challenges experts to think in new ways." -Anne Margulies, Assistant Secretary for Information Technology and Chief Information Officer of the Commonwealth of Massachusetts "Blown to Bits is fun and fundamental. What a pleasure to see real teachers offering such excellent framework for students in a digital age to explore and understand their digital environment, code and law, starting with the insight of Claude Shannon. I look forward to you teaching in an open online school." -Professor Charles Nesson, Harvard Law School, Founder, Berkman Center for Internet and Society "To many of us, computers and the Internet are magic. We make stuff, send stuff, receive stuff, and buy stuff. It's all pointing, clicking, copying, and pasting. But it's all mysterious. This book explains in clear and comprehensive terms how all this gear on my desk works and why we should pay close attention to these revolutionary changes in our lives. It's a brilliant and necessary work for consumers, citizens, and students of all ages." -Siva Vaidhyanathan, cultural historian and media scholar at the University of Virginia and author of Copyrights and Copywrongs: The Rise of Intellectual Property and How it Threatens Creativity "The world has turned into the proverbial elephant and we the blind men. The old and the young among us risk being controlled by, rather than in control of, events and technologies. Blown to Bits is a remarkable and essential Rosetta Stone for beginning to figure out how all of the pieces of the new world we have just begun to enter-law, technology, culture, information-are going to fit together. Will life explode with new possibilities, or contract under pressure of new horrors? The precipice is both exhilarating and frightening. Hal Abelson, Ken Ledeen, and Harry Lewis, together, have ably managed to describe the elephant. Readers of this compact book describing the beginning stages of a vast human adventure will be one jump ahead, for they will have a framework on which to hang new pieces that will continue to appear with remarkable speed. To say that this is a 'must read' sounds trite, but, this time, it's absolutely true." -Harvey Silverglate, criminal defense and civil liberties lawyer and writer Every day, billions of photographs, news stories, songs, X-rays, TV shows, phone calls, and emails are being scattered around the world as sequences of zeroes and ones: bits. We can't escape this explosion of digital information and few of us want to-the benefits are too seductive. The technology has enabled unprecedented innovation, collaboration, entertainment, and democratic participation. But the same engineering marvels are shattering centuries-old assumptions about privacy, identity, free expression, and personal control as more and more details of our lives are captured as digital data. Can you control who sees all that personal information about you? Can email be truly confidential, when nothing seems to be private? Shouldn't the Internet be censored the way radio and TV are? Is it really a federal crime to download music? When you use Google or Yahoo! to search for something, how do they decide which sites to show you? Do you still have free speech in the digital world? Do you have a voice in shaping government or corporate policies about any of this? Blown to Bits offers provocative answers to these questions and tells intriguing real-life stories. This book is a wake-up call to the human consequences of the digital explosion. Preface xiii Chapter 1: Digital Explosion: Why Is It Happening, and What Is at Stake? 1 Chapter 2: Naked in the Sunlight: Privacy Lost, Privacy Abandoned 19 Chapter 3: Ghosts in the Machine: Secrets and Surprises of Electronic Documents 73 Chapter 4: Needles in the Haystack: Google and Other Brokers in the Bits Bazaar 109 Chapter 5: Secret Bits: How Codes Became Unbreakable 161 Chapter 6: Balance Toppled: Who Owns the Bits? 195 Chapter 7: You Can't Say That on the Internet: Guarding the Frontiers of Digital Expression 229 Chapter 8: Bits in the Air: Old Metaphors, New Technologies, and Free Speech 259 Conclusion: After the Explosion 295 Appendix: The Internet as System and Spirit 301 Endnotes 317 Index 347
Engines of Logic 豆瓣
作者: Martin Davis W. W. Norton & Company 2001 - 9
Computers are ubiquitous yet to many they remain objects of irreducible mystery. This text looks at the question of how today's computers can perform such a variety of tasks if computing is just glorified arithmetic. The author illustrates how the answer lies in the fact that computers are essentially engines of logic and that their hardware and software embody concepts developed over centuries by logicians. "Engines of Logic" gives the reader a clear explanation of how and why computers work.
The Art of UNIX Programming 豆瓣 Goodreads
The Art of UNIX Programming
8.8 (5 个评分) 作者: [美国] Eric S·Raymond Addison-Wesley 2003 - 10
Writing better software: 30 years of UNIX development wisdom In this book, five years in the making, the author encapsulates three decades of unwritten, hard-won software engineering wisdom. Raymond brings together for the first time the philosophy, design patterns, tools, culture, and traditions that make UNIX home to the world's best and most innovative software, and shows how these are carried forward in Linux and today's open-source movement. Using examples from leading open-source projects, he shows UNIX and Linux programmers how to apply this wisdom in building software that's more elegant, more portable, more reusable, and longer-lived.
Fundamentals of Kalman Filtering 豆瓣
作者: Paul Zarchan / Howard Musoff AIAA (American Institute of Aeronautics & Ast 2009 - 9
This is a practical guide to building Kalman filters that shows how the filtering equations can be applied to real-life problems. Numerous examples are presented in detail, showing the many ways in which Kalman filters can be designed. Computer code written in FORTRAN, MATLAB[registered], and True BASIC accompanies all of the examples so that the interested reader can verify concepts and explore issues beyond the scope of the text. In certain instances, the authors intentionally introduce mistakes to the initial filter designs to show the reader what happens when the filter is not working properly. The text carefully sets up a problem before the Kalman filter is actually formulated, to give the reader an intuitive feel for the problem being addressed. Because real problems are seldom presented as differential equations, and usually do not have unique solutions, the authors illustrate several different filtering approaches. Readers will gain experience in software and performance tradeoffs for determining the best filtering approach. The material that has been added to this edition is in response to questions and feedback from readers. The third edition has three new chapters on unusual topics related to Kalman filtering and other filtering techniques based on the method of least squares. Chapter 17 presents a type of filter known as the fixed or finite memory filter, which only remembers a finite number of measurements from the past. Chapter 18 shows how the chain rule from calculus can be used for filter initialization or to avoid filtering altogether. A realistic three-dimensional GPS example is used to illustrate the chain-rule method for filter initialization. Finally, Chapter 19 shows how a bank of linear sine-wave Kalman filters, each one tuned to a different sine-wave frequency, can be used to estimate the actual frequency of noisy sinusoidal measurements and obtain estimates of the states of the sine wave when the measurement noise is low.
Code Complete 豆瓣 Goodreads
Code Complete
作者: Steve McConnell Microsoft Press 2004 - 6
在线阅读本书
Widely considered one of the best practical guides to programming, Steve McConnells original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practicesand hundreds of new code samplesillustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your experience level, development environment, or project size, this book will inform and stimulate your thinkingand help you build the highest quality code. Discover the timeless techniques and strategies that help you: Design for minimum complexity and maximum creativity Reap the benefits of collaborative development Apply defensive programming techniques to reduce and flush out errors Exploit opportunities to refactoror evolvecode, and do it safely Use construction practices that are right-weight for your project Debug problems quickly and effectively Resolve critical construction issues early and correctly Build quality into the beginning, middle, and end of your project
点击链接进入中文版:
代码大全(第2版)
Refactoring 豆瓣 Goodreads
作者: Martin Fowler / Kent Beck Addison-Wesley Professional 1999 - 7
Refactoring is about improving the design of existing code. It is the process of changing a software system in such a way that it does not alter the external behavior of the code, yet improves its internal structure. With refactoring you can even take a bad design and rework it into a good one. This book offers a thorough discussion of the principles of refactoring, including where to spot opportunities for refactoring, and how to set up the required tests. There is also a catalog of more than 40 proven refactorings with details as to when and why to use the refactoring, step by step instructions for implementing it, and an example illustrating how it works The book is written using Java as its principle language, but the ideas are applicable to any OO language.
Modern Graph Theory 豆瓣
作者: Bela Bollobas Springer 1998 - 7
An in-depth account of graph theory, written for serious students of mathematics and computer science. It reflects the current state of the subject and emphasises connections with other branches of pure mathematics. Recognising that graph theory is one of several courses competing for the attention of a student, the book contains extensive descriptive passages designed to convey the flavour of the subject and to arouse interest. In addition to a modern treatment of the classical areas of graph theory, the book presents a detailed account of newer topics, including Szemeredis Regularity Lemma and its use, Shelahs extension of the Hales-Jewett Theorem, the precise nature of the phase transition in a random graph process, the connection between electrical networks and random walks on graphs, and the Tutte polynomial and its cousins in knot theory. Moreover, the book contains over 600 well thought-out exercises: although some are straightforward, most are substantial, and some will stretch even the most able reader.
A Small Matter of Programming 豆瓣
作者: Nardi, Bonnie A. Mit Pr 1993 - 7
A Small Matter of Programming asks why it has been so difficult for end users to command programming power and explores the problems of end user-driven application development that must be solved to afford end users greater computational power.Drawing on empirical research on existing end user systems, A Small Matter of Programming analyzes cognitive, social, and technical issues of end user programming. In particular, it examines the importance of task-specific programming languages, visual application frameworks, and collaborative work practices for end user computing, with the goal of helping designers and programmers understand and better satisfy the needs of end users who want the capability to create, customize, and extend their applications software.The ideas in the book are based on the author's research on two successful end user programming systems - spreadsheets and CAD systems - as well as other empirical research. Nardi concentrates on broad issues in end user programming, especially end users' strengths and problems, introducing tools and techniques as they are related to higher-level user issues.Bonnie A. Nardi is a Member of the Technical Staff at Hewlett Packard Laboratories.
Handbook of Latent Semantic Analysis 豆瓣
作者: Thomas K. Landauer / Danielle S. McNamara Lawrence Erlbaum 2007 - 2
The Handbook of Latent Semantic Analysis is the authoritative reference for the theory behind Latent Semantic Analysis (LSA), a burgeoning mathematical method used to analyze how words make meaning, with the desired outcome to program machines to understand human commands via natural language rather than strict programming protocols. The first book of its kind to deliver such a comprehensive analysis, this volume explores every area of the method and combines theoretical implications as well as practical matters of LSA. Readers are introduced to a powerful new way of understanding language phenomena, as well as innovative ways to perform tasks that depend on language or other complex systems. The Handbook clarifies misunderstandings and pre-formed objections to LSA, and provides examples of exciting new educational technologies made possible by LSA and similar techniques. It raises issues in philosophy, artificial intelligence, and linguistics, while describing how LSA has underwritten a range of educational technologies and information systems. Alternate approaches to language understanding are addressed and compared to LSA. This work is essential reading for anyone-newcomers to this area and experts alike-interested in how human language works or interested in computational analysis and uses of text. Educational technologists, cognitive scientists, philosophers, and information technologists in particular will consider this volume especially useful.
Automated Data Collection with R 豆瓣
作者: Simon Munzert / Christian Rubba Wiley 2015 - 1
A hands on guide to web scraping and text mining for bothbeginners and experienced users of R
(1)Introduces fundamental concepts of the main architecture of theweb and databases and covers HTTP, HTML, XML, JSON, SQL.
(2)Provides basic techniques to query web documents and data sets(XPath and regular expressions).
(3)An extensive set of exercises are presented to guide thereader through each technique.
(4)Explores both supervised and unsupervised techniques as well asadvanced techniques such as data scraping and text management.
(5)Case studies are featured throughout along with examples foreach technique presented.
(6)R code and solutions to exercises featured in thebook are provided on a supporting website.
Learn Python the Hard Way 豆瓣 Goodreads
8.8 (5 个评分) 作者: Zed A. Shaw Addison-Wesley Professional 2013 - 10
Master Python and become a programmer-even if you never thought you could! This breakthrough book and CD can help practically anyone get started in programming. It's called "The Hard Way," but it's really quite simple. What's "hard" is this: it requires discipline, practice, and persistence. Zed A. Shaw teaches the Python programming language through a series of 52 brilliantly-crafted exercises-all formatted consistently, and most no longer than two pages (including "extra credit"). Just read each exercise, type in its sample code precisely (no copy-and-paste!), and make the programs run. As you read, type, fix your mistakes, and watch the results, you'll learn how software works, how programming works, what good programs look like, and how to read, write, and see code. You'll discover how to spot crucial differences that fundamentally affect program behavior, and you'll learn everything you need to know about Python logic, input/output, variables, and functions. Above all, you'll learn the attention to detail that is indispensable to successful programming (and so much else in life). At first, yes, it can be difficult. But it gets easier. And Shaw offers plenty of extra guidance and insight through 5+ full hours of teaching video on the accompanying CD. As Shaw's thousands of online readers and fans will attest, the moment will come when you just "get it"-and that moment feels great. Nothing important comes without discipline, practice, and persistence. But, with Learn Python the Hard Way, readers who bring those qualities to programming will master it-and they will reap the rewards, both personally and in their careers.
Pattern Classification 豆瓣
作者: Richard O. Duda / Peter E. Hart Wiley-Interscience 2000 - 11
The first edition, published in 1973, has become a classic reference in the field. Now with the second edition, readers will find information on key new topics such as neural networks and statistical pattern recognition, the theory of machine learning, and the theory of invariances. Also included are worked examples, comparisons between different methods, extensive graphics, expanded exercises and computer project topics. An Instructor's Manual presenting detailed solutions to all the problems in the book is available from the Wiley editorial department.
Introduction To The Theory Of Neural Computation, Volume I 豆瓣
作者: John A. Hertz Westview Press 1991 - 6
This book comprehensively discusses the neural network models from a statistical mechanics perspective. It starts with one of the most influential developments in the theory of neural networks: Hopfield's analysis of networks with symmetric connections using the spin system approach and using the notion of an energy function from physics. Introduction to the Theory of Neural Computation uses these powerful tools to analyze neural networks as associative memory stores and solvers of optimization problems. A detailed analysis of multi-layer networks and recurrent networks follow. The book ends with chapters on unsupervised learning and a formal treatment of the relationship between statistical mechanics and neural networks. Little information is provided about applications and implementations, and the treatment of the material reflects the background of the authors as physicists. However the book is essential for a solid understanding of the computational potential of neural networks. Introduction to the Theory of Neural Computation assumes that the reader is familiar with undergraduate level mathematics, but does not have any background in physics. All of the necessary tools are introduced in the book.
Learning with Kernels 豆瓣
作者: Bernhard Schlkopf / Alexander J. Smola The MIT Press 2001
In the 1990s, a new type of learning algorithm was developed, based on results from statistical learning theory: the Support Vector Machine (SVM). This gave rise to a new class of theoretically elegant learning machines that use a central concept of SVMs -- -kernels--for a number of learning tasks. Kernel machines provide a modular framework that can be adapted to different tasks and domains by the choice of the kernel function and the base algorithm. They are replacing neural networks in a variety of fields, including engineering, information retrieval, and bioinformatics.Learning with Kernels provides an introduction to SVMs and related kernel methods. Although the book begins with the basics, it also includes the latest research. It provides all of the concepts necessary to enable a reader equipped with some basic mathematical knowledge to enter the world of machine learning using theoretically well-founded yet easy-to-use kernel algorithms and to understand and apply the powerful algorithms that have been developed over the last few years.
Neural Networks for Pattern Recognition 豆瓣
作者: Christopher M. Bishop Oxford University Press 1996 - 1
This book provides the first comprehensive treatment of feed-forward neural networks from the perspective of statistical pattern recognition. After introducing the basic concepts of pattern recognition, the book describes techniques for modelling probability density functions, and discusses the properties and relative merits of the multi-layer perceptron and radial basis function network models. It also motivates the use of various forms of error functions, and reviews the principal algorithms for error function minimization. As well as providing a detailed discussion of learning and generalization in neural networks, the book also covers the important topics of data processing, feature extraction, and prior knowledge. The book concludes with an extensive treatment of Bayesian techniques and their applications to neural networks.