CS
Being Digital 豆瓣
作者: Nicholas Negroponte Knopf 1995 - 1
In lively, mordantly witty prose, Negroponte decodes the mysteries--and debunks the hype--surrounding bandwidth, multimedia, virtual reality, and the Internet, and explains why such touted innovations as the fax and the CD-ROM are likely to go the way of the BetaMax. "Succinct and readable. . . . If you suffer from digital anxiety . . . here is a book that lays it all out for you."--Newsday.
From the Trade Paperback edition.
Cambrian Intelligence: The Early History of the New AI Goodreads 豆瓣
作者: Rodney A. Brooks The MIT Press 1999 - 7 其它标题: Cambrian Intelligence
Until the mid-1980s, AI researchers assumed that an intelligent system doing high-level reasoning was necessary for the coupling of perception and action. In this traditional model, cognition mediates between perception and plans of action. Realizing that this core AI, as it was known, was illusory, Rodney A. Brooks turned the field of AI on its head by introducing the behavior-based approach to robotics. The cornerstone of behavior-based robotics is the realization that the coupling of perception and action gives rise to all the power of intelligence and that cognition is only in the eye of an observer. Behavior-based robotics has been the basis of successful applications in entertainment, service industries, agriculture, mining, and the home. It has given rise to both autonomous mobile robots and more recent humanoid robots such as Brooks' Cog. This book represents Brooks' initial formulation of and contributions to the development of the behavior-based approach to robotics. It presents all of the key philosophical and technical ideas that put this bottom-up approach at the forefront of current research in not only AI but all of cognitive science.
Information - Der Geist in der Natur 豆瓣
作者: Valentino Braitenberg 2010 - 11
Ich traue mir zu, auch den glühendsten Esoteriker von der Schönheit eines Weltbilds zu überzeugen, in dem der Geist seinen Platz findet, dort wo er hingehört: in einer geschlossenen Darstellung der Natur.
Valentin Braitenberg
Wir leben mitten in einem üppigen Theater millionenfach variierter pflanzlicher und tierischer Formen. Sie bedecken die Oberfläche der Erde und erwecken unsere Bewunderung und unser ästhetisches Empfinden. Die GeSetze dieser Vielfalt – ihren „Geist“ also – haben wir allerdings noch kaum ergründet.
Valentin Braitenberg ist Hirnforscher und Kybernetiker. Er hat sich ein Leben lang bemüht, komplexe Verschaltungen im Gehirn als technische Lösungen verhaltensphysiologischer Aufgaben zu erklären. In diesem Buch geht seine Ambition noch einen Schritt weiter: Im Begriff der Information, der in der „künstlichen Intelligenz“ eine zentrale Rolle spielt, sieht er das Äquivalent zum „Geist in der Natur“. Mit nüchternem, wissenschaftlich-kritischem Blick und doch immer wieder augenzwinkernd präsentiert er uns die Geister, die uns umgeben – und zeigt auf ebenso unterhaltsame wie verblüffende Weise, dass sie ihren festen Platz in der Wissenschaft verdient haben. Ein uraltes philosophisches Problem wird so entzaubert.
Software Engineering at Google 豆瓣 Goodreads
作者: Titus Winters / Tom Manshreck O'Reilly Media 2020 - 3
The approach to and understanding of software engineering at Google is unlike any other company. With this book, you’ll get a candid and insightful look at how software is constructed and maintained by some of the world’s leading practitioners.
Titus Winters, Tom Manshreck, and Hyrum K. Wright, software engineers and a technical writer at Google, reframe how software engineering is practiced and taught: from an emphasis on programming to an emphasis on software engineering, which roughly translates to programming over time.
You’ll learn:
Fundamental differences between software engineering and programming
How an organization effectively manages a living codebase and efficiently responds to inevitable change
Why culture (and recognizing it) is important, and how processes, practices, and tools come into play
算法图解 豆瓣 谷歌图书
Grokking Algorithms: An illustrated guide for programmers and other curious people
8.0 (33 个评分) 作者: [美] Aditya Bhargava 译者: 袁国忠 人民邮电出版社 2017 - 3
本书示例丰富,图文并茂,以让人容易理解的方式阐释了算法,旨在帮助程序员在日常项目中更好地发挥算法的能量。书中的前三章将帮助你打下基础,带你学习二分查找、大O表示法、两种基本的数据结构以及递归等。余下的篇幅将主要介绍应用广泛的算法,具体内容包括:面对具体问题时的解决技巧,比如,何时采用贪婪算法或动态规划;散列表的应用;图算法;K最近邻算法。
The Linux Command Line, 2nd Edition 谷歌图书 豆瓣
作者: William Shotts No Starch Press 2019 - 3
The Linux Command Line takes you from your very first terminal keystrokes to writing full programs in Bash, the most popular Linux shell (or command line). Along the way you'll learn the timeless skills handed down by generations of experienced, mouse-shunning gurus: file navigation, environment configuration, command chaining, pattern matching with regular expressions, and more.
In addition to that practical knowledge, author William Shotts reveals the philosophy behind these tools and the rich heritage that your desktop Linux machine has inherited from Unix supercomputers of yore.
As you make your way through the book's short, easily-digestible chapters, you'll learn how to:
* Create and delete files, directories, and symlinks
* Administer your system, including networking, package installation, and process management
* Use standard input and output, redirection, and pipelines
* Edit files with Vi, the world's most popular text editor
* Write shell scripts to automate common or boring tasks
* Slice and dice text files with cut, paste, grep, patch, and sed
Once you overcome your initial "shell shock," you'll find that the command line is a natural and expressive way to communicate with your computer. Just don't be surprised if your mouse starts to gather dust.
2022年3月10日 想读 我想读这本书 (私人收藏) 2022-03-10
CS Linux 美國
Modern C++ Design Goodreads 豆瓣
作者: Andrei Alexandrescu Addison-Wesley Professional 2001 - 2
In Modern C++ Design, Andrei Alexandrescu opens new vistas for C++ programmers. Displaying extraordinary creativity and virtuosity, Alexandrescu offers a cutting-edge approach to software design that unites design patterns, generic programming, and C++, enabling programmers to achieve expressive, flexible, and highly reusable code. The book introduces the concept of generic components, reusable design templates that enable an easier and more seamless transition from design to application code, generate code that better expresses the original design intention, and support the reuse of design structures with minimal recoding. The author then shows how to apply this approach to recurring, real-world issues that C++ programmers face in their day-to-day activity. All code is available on the Web, along with Alexandrescu's downloadable Loki C++ library, which provides powerful out-of-the-box functionality for virtually any C++ project. For experienced C++ programmers who have at least some familiarity with the Standard Template Library (STL).
Principles of Computer System Design 豆瓣
作者: Jerome H. Saltzer / M. Frans Kaashoek Morgan Kaufmann 2009 - 7
This text identifies, examines, and illustrates fundamental concepts in computer system design that are common across operating systems, networks, database systems, distributed systems, programming languages, software engineering, security, fault tolerance, and architecture. Through carefully analyzed case studies from each of these disciplines, it demonstrates how to apply these concepts to tackle practical system design problems.
To support the focus on design, the text identifies and explains abstractions that have proven successful in practice such as, remote procedure call, client/service organization, file systems, data integrity, consistency, and authenticated messages. Most computer systems are built using a handful of such abstractions. The text describes how these abstractions are implemented, demonstrates how they are used in different systems, and prepares the reader to apply them in future designs.
Features:

Concepts of computer system design guided by fundamental principles.
Cross-cutting approach that identifies abstractions common to networking, operating systems, transaction systems, distributed systems, architecture, and software engineering.
Case studies that make the abstractions real: naming (DNS and the URL); file systems (the UNIX file system); clients and services (NFS); virtualization (virtual machines); scheduling (disk arms); security (TLS).
Numerous pseudocode fragments that provide concrete examples of abstract concepts.
Extensive support. The authors and MIT OpenCourseWare provide on-line, free of charge, open educational resources, including additional chapters, course syllabi, board layouts and slides, lecture videos, and an archive of lecture schedules, class assignments, and design projects.
Crafting Interpreters Goodreads 豆瓣
作者: Robert Nystrom Genever Benning 2021 - 7
Despite using them every day, most software engineers know little about how programming languages are designed and implemented. For many, their only experience with that corner of computer science was a terrifying "compilers" class that they suffered through in undergrad and tried to blot from their memory as soon as they had scribbled their last NFA to DFA conversion on the final exam.
That fearsome reputation belies a field that is rich with useful techniques and not so difficult as some of its practitioners might have you believe. A better understanding of how programming languages are built will make you a stronger software engineer and teach you concepts and data structures you'll use the rest of your coding days. You might even have fun.
This book teaches you everything you need to know to implement a full-featured, efficient scripting language. You’ll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up with new ideas, and your hands will get dirty and calloused.
Starting from main(), you will build a language that features rich syntax, dynamic typing, garbage collection, lexical scope, first-class functions, closures, classes, and inheritance. All packed into a few thousand lines of clean, fast code that you thoroughly understand because you wrote each one yourself.
C++ High Performance 豆瓣
作者: Björn Andrist / Viktor Sehr Packt Publishing 2020
C++ High Performance, Second Edition guides you through optimizing the performance of your C++ apps. This allows them to run faster and consume fewer resources on the device they're running on without compromising the readability of your codebase.
The book begins by introducing the C++ language and some of its modern concepts in brief. Once you are familiar with the fundamentals, you will be ready to measure, identify, and eradicate bottlenecks in your C++ codebase. By following this process, you will gradually improve your style of writing code. The book then explores data structure optimization, memory management, and how it can be used efficiently concerning CPU caches.
After laying the foundation, the book trains you to leverage algorithms, ranges, and containers from the standard library to achieve faster execution, write readable code, and use customized iterators. It provides hands-on examples of C++ metaprogramming, coroutines, reflection to reduce boilerplate code, proxy objects to perform optimizations under the hood, concurrent programming, and lock-free data structures. The book concludes with an overview of parallel algorithms.
By the end of this book, you will have the ability to use every tool as needed to boost the efficiency of your C++ projects.