Martin Kleppmann
๐ค SpeakerAppearances Over Time
Podcast Appearances
And so I felt that, well, if I'd had a bit more background on how these data systems actually work internally, then I could have had an intuition about how to debug these kinds of performance issues.
And then after a while, after I'd learned more about how data systems work,
I thought, well, okay, it's time to write this down so that others don't have to learn it the hard way, but can hopefully just get a better idea of how these systems work and thus be better at managing their own data systems.
A lot of it was just kind of being curious and talking to people, actually, and just asking them lots of questions.
At LinkedIn, there were like a bunch of senior data systems engineers who understood this stuff very well, but hadn't maybe necessarily written it down.
And so I just talked to a bunch of them and quizzed them and that way started building a
an image in my own mind of how this stuff works and then once i sort of got the basics from these conversations then i was able to go and reach research papers for example they go into much more detail of exactly how and why things are designed in such a way but you know it is time consuming to read those things so so then what i tried to do was like pull out what what are really the essential ideas i just read a ton of blog posts as well
And so the reason why you see so many references at the end of each chapter in the book is, well, that is actually the material that I myself used in order to understand what was going on.
And then I thought, well, okay, well, if I found these things useful, then I'll also cite them
in the book as a way for anyone, any reader who wants to go beyond the basics covered in the book, here are some good sources to further reading.
This three-part structure is not that critical in the design of the book, really.
That's sort of more after the fact.
I thought, oh, well, it seems like we can group the chapters into roughly this sort of structure.
But the topics of the chapters were more or less what I had envisaged.
So I
I knew that I wanted to talk about what a transaction actually is.
I knew that I wanted to talk about replication.
I knew that I wanted to talk about sharding or partitioning.
I knew that I wanted to talk about consistency and consensus.
Those sort of high-level topics, I think, were clear from my initial book proposal to the publisher.