Matija Novak

Books

Books I completed, grouped by reading year.

This page collects the books I have read as an adult, mostly since around 2009, with a few earlier reads included as well, and groups them by the year in which I finished them. Within each year, entries are ordered by completion date. Each book entry can be opened for more details. Page counts are approximate, since I mostly read Kindle or other online editions such as Project Gutenberg. Descriptions are gathered from Goodreads or Google Books, and subjects are gathered from Open Library.

Top Fiction Picks

Six favourite fiction books and series across adventure, mystery, fantasy, and historical fiction.

The Count of Monte Cristo

An enduring favourite for its scale, patience, and carefully constructed revenge narrative.

Historical adventure

Sherlock Holmes

A classic detective series that still feels sharp because of its atmosphere, logic, and memorable cases.

Mystery and detective fiction

The Hangman's Daughter

A historical mystery series with strong setting, investigation, and a grounded sense of place.

Historical mystery

Outlander

A long-form series I value for its blend of history, travel, survival, and character-driven storytelling.

Historical fiction

The Lord of the Rings

A foundational fantasy work with unusual depth, worldbuilding, and long-term rereading value.

Epic fantasy

Harry Potter

A formative fantasy series that remains one of the most enjoyable examples of accessible long-form fiction.

Fantasy series

Top Professional Picks

Six professional books that shaped how I think about software design, development, and engineering practice.

A Philosophy of Software Design

A concise and highly practical book about reducing complexity through better interfaces and deeper modules.

Software design

Refactoring

A reliable reference for improving existing code without losing control of behaviour or readability.

Code quality

Clean Code series

Robert C. Martin's Clean series has shaped much of my thinking about code, with Clean Code remaining my favourite.

Programming practice

Growing Object-Oriented Software, Guided by Tests

One of the best books for connecting test-driven work with design decisions in real systems.

TDD and object design

Test-Driven Development: By Example

A foundational book for understanding the rhythm and discipline behind incremental, test-first development.

Testing

Writing a Simple Operating System from Scratch

A compact, hands-on introduction to low-level systems work that stood out as an early favourite in this part of my reading.

Operating systems

Reading List

A chronological archive of completed books.