In this post, I would like to share my current reading list. If you are reading some of these books, please, share your notes.
Introduction to Information Retrieval
This is an excellent book. I expect to update what I know and learn more about all aspects of the design and implementation of systems for gathering, indexing, and searching documents; methods for evaluating systems; and an introduction to the use of machine learning methods on text collections.
I decided to read this book after a good conversation with Ayende. In the next months, I will be blogging a lot about Indexing.
Practical File System Design
Ayende recommended this book.
It covers all topics related to file systems. Some very advanced topics are covered in detail such as journaling, attributes, indexing and query processing.
If you like low-level programming and to know about how operating systems work as I do, I strongly recommend this book.
Attacking Network Protocols
Another Ayende’s recommendation
Attacking Network Protocols is a deep dive into network protocol security from James Forshaw, one of the world’s leading bug hunters.
I need to improve my skills and knowledge about how Networks work. This book looks like a precious resource.
Operating Systems Concepts
Another Ayende’s recommendation.
Writing low-level software demands me to understand how the operating system works. This book is an up-to-date solid theoretical foundation for understanding operating systems.
Serious Cryptograpy
Another Ayende’s recommendation.
From his blog: “Serious Cryptography talks about cryptography, obviously, but it does it in such a way that it is understandable. I think that it is unique in the sense that most of the other cryptography books and materials that I have read started from so many baseline assumptions or were so math heavy that they were not approachable. The other types of cryptography books, like the Code Book are more in the sense of popular science. They give you background, but nothing actionable.”
What could I say…
Low-level programming
This one I will read just for fun. I love ASM and C. 🙂
if you want to learn Intel 64 assembly language and architecture, become proficient in C, and understand how the programs are compiled and executed down to machine instructions, enabling you to write robust, high-performance code, then this book is for you.
The Art of Multiprocessor Programming
Fabio Galuppo’s recommendation.
The Art of Multiprocessor Programming is an authoritative guide to multicore programming. It introduces a higher level set of software development skills than that needed for efficient single-core programming.
Cover image: Glen Noble