Double eleven, what books to stock up on? Xiaobian think, new book? A classic book? Best seller? It seems that each category is worth recommending. There are hundreds of professional new books in the publishing house every year. How to choose the good books you need at the right time? Singles’ Day is a good time. Let’s take a look at some of this year’s best books for Singles’ Day.
Essential classic books (essential for thinking cultivation)
1. Programming Abas (2nd edition)
This book is a classic in computer science. The book revolves around a series of practical problems faced by programmers. With insight and creativity, Jon Bentley guides readers to understand these problems and learn the solutions that are crucial to a programmer’s practical programming career. This book features thorough and intelligent descriptions of practical programming techniques and basic design principles through some interesting and instructive programs that are well designed to provide clear and complete solutions to complex programming problems. This book is a great read for programmers at all levels.
2. The Beauty of Mathematics third Edition
This is a highly respected classic popular science work, recommended by many institutions as a stepping stone to mathematics, is a must read for college students in the field of information.
Mathematics is not only the summary and induction of facts in nature, but also the result of abstract thinking. In “The Beauty of Mathematics”, Dr. Wu Jun focused on his understanding of mathematics and information processing, and expressed the beauty of mathematics in THE IT field, especially in speech recognition, natural language processing and information search. These are hot technical topics in the age of intelligence.
The book also uses a lot of space to introduce allusions to various fields, is the liberal arts students can also understand the popular science reading. Becoming a master of a field is an accident, but more inevitable. Its inevitability is the thinking method of the masters. Through this book, we can understand their ordinariness and excellence, understand the reasons for their success, and experience the wonderful lives of those who truly understand the beauty of mathematics.
The book has won the eighth Wenjin Book Award of The National Library of China, the Book Nomination Award of the fifth China Excellent Publications Award, and was selected as one of the “recommended 100 Excellent Books to The National Youth in 2014”. The first edition has won the best seller of the whole industry in 2012-2013. The Beauty of Mathematics has been selected as a required reading for many times. “The Beauty of Mathematics” gives readers, especially the young people who are in college or even high school, the inspiration of beautiful mathematics. The author hopes that the young people who do engineering in China can experience the correct way to do things in the information technology industry from “The Beauty of Mathematics”, so as to achieve success in both career and life.
The third edition adds three new chapters on three of today’s most popular topics: the mathematical foundations of blockchain, the principles of quantum communication, and the mathematical limits of artificial intelligence.
3. Clean code
“There are two reasons to read this book: first, you’re a programmer; Second, you want to be a better programmer. Good, IT needs better programmers!” While bad code can run, if it’s untidy, it can sink a development team, and poorly written code consumes countless hours and resources every year. But it is not inevitable. Robert C. Martin, the renowned software expert, offers a revolutionary vision. Along with his colleagues at Object Mentor, he has distilled the values of software craftsmanship from their best agile practices about clean code to make you a better programmer — once you start reading this book. What do you need to do to read this book? You’ll read code — lots of code. This book will make you think about what is right code and what is wrong code. More importantly, this book will force you to reassess your professional values and commitment to your craft.
4. Refactoring: Improving the design of existing code (version 2)
The new edition follows the structure of version 1, explaining in turn what refactoring is, why it is needed, how to identify code that needs refactoring by “bad smell,” and how to successfully implement refactoring in practice (regardless of the programming language). ● Understand the refactoring process and basic principles of refactoring; ● Fast and effective application of a variety of reconstruction techniques, improve the expression and maintainability of the program; ● Identify “bad smells” in code that indicate areas that need refactoring; ● In-depth understanding of various refactoring techniques, each of which contains four sections: explanation, motivation, practice and example; ● Build robust tests to support refactoring; ● Understand the trade-offs and challenges of refactoring.
5. Domain-driven Design: Solutions to Software Core Complexity (Revised edition)
The book is a classic of domain-driven design, and the revised edition is a complete revision and improvement of the Chinese version previously published.
The book focuses on design and development practices and demonstrates how domain-driven design can be applied to real software development, combined with several real project cases. It presents a systematic approach to domain-driven design, synthesizes commonly accepted practices, incorporates the author’s insights and experience, and presents new extensible design practices, proven techniques, and basic principles for software project development that are easy to tackle complex domains.
6. Top of the Wave (4th Edition) (First and second volumes)
This is not a history of the tech industry, but a must-read for IT people in the digital age, not for IT people.
The fourth edition of “Top of the Wave” is a book about the rise and fall of the Internet and the IT industry. The content in the book was originally published on the Google Bulletin board by Dr. Wu Jun. After several rewrites and reconstructions, the fourth edition added a quarter of the content, and rewrote and updated other chapters. For more than a century, there have always been companies that have been fortunate, consciously or unconsciously, to be on the cusp of technological revolution. For decades, they represented the wave of technology, until the next wave came along. Starting more than 100 years ago, AT&T, IBM, Apple, Intel, Microsoft, Cisco, Yahoo, Google, and perhaps tesla, have all had the good fortune to rise to the top. Although they come from different fields, and some of them have declined or are in decline, they have all been extremely brilliant. Behind the rise and fall of these companies, there is an inevitable law. “Top of the Wave” systematically introduces the essence of the success of these companies and the development of the technology industry over a hundred years. This book not only tells the history of the technology industry, but also reveals its laws.
Classic books required (Professional books required)
1. Deep learning
Deep learning is a branch of machine learning that enables computers to learn experiences and understand the world through hierarchical concepts. Because computers can derive knowledge from experience, there is no need for a human to formally define all the knowledge a computer needs. Hierarchical concepts allow computers to learn complex concepts by constructing simple concepts, and these hierarchical graph structures will have deep layers. This book will cover many topics in the field of deep learning.
This book provides background information on mathematics and related concepts, including linear algebra, probability theory, information theory, numerical optimization, and machine learning. At the same time, it also introduces the industry practitioners used in deep learning techniques, including depth of feedforward network, regularization, optimization algorithm, convolution, sequence modeling and practice methods, and research, such as natural language processing, speech recognition, computer vision, online recommendation systems, bioinformatics, and video games. Finally, a number of research areas are provided, covering theoretical topics including linear factor models, autoencoders, representation learning, structured probability models, Monte Carlo methods, partition functions, approximate inference, and depth generation models.
2. Artificial Intelligence (2nd Edition)
This book is an artificial intelligence textbook carefully written by the author based on years of teaching experience, which can be called “the encyclopedia of artificial intelligence”. The book covers a brief history of artificial intelligence, search method, knowledge search, game of logic of the search, artificial intelligence, knowledge representation, production system, expert system, machine learning and neural network, genetic algorithm (ga), natural language processing, automatic programming, robot technology, advanced computer game, the history and future of artificial intelligence and other topics. This book provides rich supporting resources for teaching, which is suitable for teaching materials of artificial intelligence related majors in colleges and universities, as well as readers who are interested in artificial intelligence related fields.
3. A hundred face Deep learning algorithm engineer takes you to an interview
Written by nearly 30 algorithm researchers and algorithm engineers at Hulu, this book is specifically for deep learning and is an extension of Hundred Sides Machine Learning: Algorithm Engineers Take You to An Interview. The book is roughly divided into two parts. The first part introduces classical deep learning algorithms and models, including convolutional neural networks, recurrent neural networks, graph neural networks, generative models, generative adversarial networks, reinforcement learning, meta-learning, automatic machine learning, etc. The second part introduces the application of deep learning in some fields, including computer vision, natural language processing, recommendation systems, computational advertising, video processing, computer hearing, autonomous driving, etc. The book is still organized in the form of questions and answers, with each question given a difficulty level and relevant knowledge points, to urge readers to self-examine and think on their own initiative. Each chapter of the book carefully selects different aspects of the corresponding field and problems at different levels, and matches each other to show the “hundred aspects” of deep learning, so that different readers can find the appropriate content.
4. The stupid way to learn Python 3
This book is an introduction to Python, suitable for readers who do not know much about computers and have not learned programming, but are interested in programming. This book guides readers to learn programming step by step in the way of exercises, from simple printing to the realization of a complete project, so that beginners can start from the basic programming technology, and finally experience the basic process of software development. This book is based on Python version 3.6. The book is very simple in structure. In addition to “preparation”, there are 52 exercises, 26 of which cover the input/output, variables and functions topics, and the other 26 cover more advanced topics such as conditional determination, loops, classes and objects, code testing, and project implementation. Each chapter is roughly the same format, starting with code exercises, following instructions to write code, running and checking the results, and then doing additional exercises.
5. Python programming is quick and easy to automate tedious work
This book is a hands-on guide to Python programming. The purpose of this book is not only to introduce the basics of the Python language, but also to teach the reader how to apply this knowledge and skills through hands-on projects. The first part of the book covers basic Python programming concepts, and the second part covers a number of different tasks that you can write Python programs for your computer to do automatically. Each chapter of Part 2 has some project procedures for the reader to follow. At the end of each chapter, problem sets and in-depth practice projects are provided to help you consolidate what you have learned. The appendix provides solutions to all the problem sets. This book is for anyone who wants to learn to program in Python, but especially for beginners who lack basic programming skills. By reading this book, readers will be able to take advantage of powerful programming languages and tools, and will experience the joy of Python programming.
6. Python Core Programming (Version 3)
Python Core Programming (3rd Edition) is a new and updated version of the classic bestselling book Python Core Programming (2nd Edition), which is divided into three parts. Part 1 covers some general applications of Python, including regular expressions, network programming, Internet client programming, multithreaded programming, GUI programming, database programming, Microsoft Office programming, and extending Python. Part 2 covers topics related to Web development, including Web clients and servers, Web programming related to CGI and WSGI, Django Web frameworks, cloud computing, and advanced Web services. Part 3 is a supplementary/experimental chapter, covering text processing and a few other things.
7. The fifth edition of Spring Combat
The Spring framework makes life easier for Java developers. Spring 5’s new features further improve productivity through microservices, reactive development. With full integration with Spring Boot, we can now launch complex projects with minimal configuration. The new and upgraded WebFlux framework provides out-of-the-box support for reactive applications. The book continues to introduce the core features of Spring 5 in a clear and well-known style. You will build a secure, database-backed Web application step by step. Along the way, you’ll also explore reactive programming, microservices, service discovery, RESTful apis, deployment, and master expert-level best practices. Whether you are a beginner to Spring or want to upgrade to Spring 5, this book is a must.
C++ Primer Plus 6th edition Chinese version
“C++ Primer Plus (6th edition) Chinese version” consists of 18 chapters, Respectively introduces the c + + program operation mode, basic data types, complex data type, circulation and relational expression, branching and logical operators, function overloading, and a function template, the memory model and namespace, class design and use, polymorphism and virtual functions, dynamic memory allocation, inheritance, code reuse, a friend, the exception handling technology, the string class and standards Template library, input/output, C++11 new features and more. C++ Primer Plus (6th edition) Is aimed at beginners of C++. It starts with the basic knowledge of C language and then elaborates on the new features of C++. Therefore, no background in C language is required. “C++ Primer Plus (6th edition) Chinese version” can be used as a teaching material for C++ courses in colleges and universities, and can also be used by beginners for self-learning C++.
C Primer Plus 6th Edition Chinese Version
C Primer Plus (6th Edition) Chinese is a carefully tested and well-designed complete C language tutorial that covers the core content of C programming. C Primer Plus (6th Edition), a computer science classic, explains the principles of programming, including structured code and top-down design. As with previous editions, the author’s goal is to provide readers with an introductory, coherent, and insightful C tutorial. The author mixes basic programming concepts well with the details of THE C language, and encourages readers to master new topics by demonstrating one or two concepts simultaneously with plenty of snide examples. Review questions and programming exercises at the end of each chapter further reinforce the most important information and help readers understand and digest difficult concepts. Written in a friendly, easy-to-use format, this book is suitable not only for students who plan to seriously learn C programming, but also for developers who are proficient in other programming languages but want to gain a better grasp of the core language.
C and Pointers
Designed for advanced C programmers and students, this book is a comprehensive resource for those who need an in-depth understanding of the C programming language. This book thoroughly explores the basics and advanced features of Pointers, ensuring that C programmers can incorporate the power of Pointers into their C programs. This comprehensive book, with detailed explanations of C programming idioms and in-depth discussions of some of the more advanced topics of C Pointers, is a valuable tutorial and reference for advanced students and C programmers. Contents:
- Provides complete background information to facilitate readers to fully understand C language;
- A comprehensive introduction to Pointers, including syntax, the art of using Pointers effectively, and common programming idioms for Pointers;
- The different methods of implementing general abstract data structure are compared.
- Use a simple, familiar writing style to explain difficult topics clearly, and use extensive illustrations and diagrams to visualize complex concepts;
- Programming skills, efficiency, portability and software engineering are discussed, and some common programming pitfalls are marked by “warning”.
- Every function in the C standard library is introduced.
11.A
This book details C features that can make a big difference between what a program expects to do and what it actually does. This book demonstrates and introduces these pitfalls and pitfalls in C through specific cases and helpful suggestions. The end of each chapter contains some reflections and corresponding discussions. Even EXPERTS in C programming often encounter problems that can take days of debugging to fix. Each of the examples in this book puts C programmers in a bind, and the book helps prevent these problems by showing them.
In addition to the examples in the book, the following suggestions are provided:
- Avoid off-by-one errors;
- Understand and build function declarations;
- Understand the subtle relationship between Pointers and arrays.
Go language practice
Go is aimed at mid-level developers who already have some experience with other programming languages and want to start learning Go or have a deeper understanding of Go and its internals. This book will provide a focused, holistic and customizable perspective. The book focuses on the specification and implementation of the Go language, covering topics such as syntax, Go’s type system, concurrency, channels, and testing. ● Go language specification and implementation. ● Type system for Go. ● Internal implementation of Go language data structure. ● Testing and benchmarking.
Advanced Programming for the UNIX environment, version 3
Advanced Programming in the UNIX Environment is the third edition of Advanced Programming in the UNIX Environment. In the eight years since the second edition of this book, UNIX has changed dramatically, particularly in the standards that affect UNIX programming interfaces. In keeping with the style of the previous edition, the book has been revised and supplemented according to new standards, reflecting new technological developments. In addition to the introduction of UNIX files and directories, standard I/O libraries, system data files and information, process environment, process control, process relations, signals, threads, thread control, daemons, various I/O, interprocess communication, network IPC, pseudo terminal and other aspects of the content, but also on this basis introduced a number of application examples. Including how to create database libraries and how to communicate with network printers. In addition, the function prototype and the answers to some exercises are given in the appendix.
Book recommendation
See our weekly list of new books published yesterday