My Technical Library
A personal, evolving library of books and references that help me keep learning Computer Science beyond day-to-day work.
After many years working in software engineering, I recently found myself doing something I had not done seriously in quite a while: going back to textbooks.
Preparing for a technical examination gave me the opportunity to revisit topics I first encountered at university, explore areas that have evolved considerably since then, and discover subjects I had never studied in depth before.
That experience gradually turned into something bigger:
a personal virtual library of technical knowledge.
Not a ranking of the “best programming books”.
Not a fixed reading list.
It is a growing map of subjects, books and connections that I can return to whenever I want to understand something beyond the surface.
Why I Built It
When I started preparing, I first looked at study manuals specifically designed for technical examinations.
They were useful for building an initial overview, but I quickly found that many of them stopped at the basic definition of a concept.
I wanted to go further.
Why does an algorithm work?
When should one architectural approach be preferred over another?
What trade-offs are hidden behind a technology?
How do apparently unrelated concepts connect?
So I started using AI in a slightly different way.
Rather than asking it to replace the learning process, I used it as a technical librarian.
Starting from the topics I needed to study, I mapped each concept to authoritative books written by recognised academic or professional authors, identifying the chapters that were most relevant and the connections with other areas worth exploring.
That mapping gradually became this library.
AI helped me find the path. The books helped me walk it.
Explore by Topic
Choose an area to explore the books, concepts and chapters I have found most useful.
Algorithms & Data Structures
Complexity, graphs, shortest paths, dynamic programming, maximum flow and algorithm design.
2 books in the library
Operating Systems & Virtualization
Processes, threads, scheduling, memory, filesystems, concurrency and virtualization.
1 book in the library
Computer Networks
HTTP, DNS, TCP/IP, routing, transport protocols and secure communications.
1 book in the library
Databases & Data Management
Relational models, SQL, indexing, transactions, isolation, concurrency and distributed data.
3 books in the library
Distributed Systems
Replication, consistency, consensus, partitioning, fault tolerance and distributed processing.
2 books in the library
Software Architecture & Microservices
System decomposition, communication patterns, APIs, resilience and architectural trade-offs.
2 books in the library
Containers, Cloud & DevOps
Containers, orchestration, deployment, autoscaling, self-healing and modern delivery pipelines.
2 books in the library
Machine Learning & Artificial Intelligence
Classification, regression, clustering, optimisation, neural networks and model evaluation.
2 books in the library
Cybersecurity & Cryptography
Encryption, key exchange, digital signatures, authentication, privacy and secure systems.
2 books in the library
Blockchain & Smart Contracts
Consensus, transactions, smart contracts, gas, scalability and cryptographic verification.
2 books in the library
More Than a Reading List
I do not want this library to become a collection of book covers with no context.
For every book, I try to answer three questions.
Why is it here?
What makes the book useful, authoritative or particularly effective at explaining its subject?
What can I learn from it?
Which concepts and technical problems does it help me understand?
Where should I start?
Which chapters or sections are worth reading when I want to explore a specific topic without necessarily reading the entire book?
Each book page will therefore contain its main topics, selected chapters, related subjects and a short note about why I added it to the library.
The goal is not simply to collect books.
It is to build connections between knowledge.
Currently Exploring
The library is intentionally unfinished.
These are some of the areas I am studying now or would like to expand next.
Privacy-Enhancing Technologies
Differential Privacy · Homomorphic Encryption · Secure Multi-Party Computation · Zero-Knowledge Proofs · Federated Learning
Post-Quantum Cryptography
Quantum-resistant algorithms · new cryptographic standards · migration from classical public-key cryptography
Software Design Patterns
Architectural patterns · behavioural patterns · maintainability · software design
Event-Driven Architectures
Messaging · event streams · Saga · transactional Outbox/Inbox · eventual consistency
Large Language Models
Transformers · embeddings · RAG · fine-tuning · evaluation
Cloud Architecture
Resilience · scalability · observability · distributed infrastructure · cloud-native design
Books in the Age of AI
Do technical books still matter today?
Today, an explanation is always a prompt away.
We can instantly ask for a definition, an example, a comparison, an implementation or a simplified explanation of almost any technical concept.
That is incredibly useful.
But while building this library, I rediscovered something that books still do particularly well.
A good book does not only answer the question you already know how to ask. It builds a path.
It introduces a concept because another one will depend on it later.
It explains why an apparently good solution eventually fails.
It connects ideas that we may never have thought to search for individually.
For me, AI did not replace that experience.
It helped me navigate it more effectively.
A Library That Keeps Growing
This is only the first version.
Over time, I plan to add new books, new technical areas, chapter-level recommendations, personal notes and connections between related topics.
The long-term goal is simple:
To build a personal map of technical knowledge that remains useful long after a specific course, project or examination is over.
What Would You Add?
Some of the most valuable technical books I have read came from recommendations by colleagues.
So I would like this library to be influenced by other people’s experience too.
Which technical book taught you something that stayed with you for years?
And perhaps more importantly:
Which book would you still recommend today to someone who already has many years of professional experience?