Technical books in print are generally better formatted than their e-book cousins (O'Reilly's digital library, Kindle) unless they're PDFs. This has a major impact on readability if there are significant amounts of diagrams or code samples or tables in the text.
I sometimes think 'I really prefer physical books, if only they had Ctrl-F' - but actually, in reality, it's often so much easier to leaf through and find something (from rough memory of where it was, skimming, jumping around, ..) than it is to search digitally (get the search term right, see results with little context, find it's impossible to search for part of an equation or the text in a diagram, or oh damn it was rendered as an image).
When something isn't just flowing text, it can be a real crap shoot in ebook form. And, even if the formatting is fine, I often find technical or other reference books (e.g. cookbooks) generally work better in physical form.
I much prefer physical books to e-books, especially for technical ones. I learn much better from a physical copy - flipping back and forth, checking where the current section fits into the bigger structure etc I find to be easier. I also like to underline and write notes in the margins - again, I prefer this in a physical book.
I've found few issues on which people are as diametrically opposed as the ebook/physical book debate.
I did a reading group at work a couple of years ago (for Designing Data Intensive Applications as it turns out!), and half the group looked at me like I had 3 heads when I offered to buy them hard copies and the other half was insulted if I didn't offer them hard copies
Martin deserves every penny of his hard-work on Designing Data Intensive Applications. Experienced engineers can easily use the book as a reference and you can give the book to smart junior engineers to give them a great foundation.
Honestly, the best technical book I’ve ever owned.
Agreed. I'm reading it just now and it is really high quality. Just the chapter on transactions is probably the best explanation of a single topic that I've read in any technical book. It's really good for such a complex topic—thorough while still being very readable!
Can someone expand on why the book is so good? I found it very unremarkable but it's recommended so much around here that I suspect that I've missed something important.
Seems many people haven't been exposed to a systematic overview of the topic otherwise, and it works great at providing that. At least that'd be my guess where your experience differs.
Unremarkable if you're in that field with experience. If you're one of the majority of developers working around the edges or new to the subject it is quite enlightening.
Its a practical overview of a difficult and modern topic. That in itself would make the book good, but for me, it is that the book goes deeper into the research and algorithms than most O'Reilly books -- but it does this without becoming a Science textbook.
It is easy to tell the people working in big data that haven't read the book, just from the mistakes they make.
Did you find it unremarkable because you already know the material, or because the material isn't relevant to what you do?
Anyway, some reasons:
* Draws together a wealth of material on databases and distributed systems that wasn't explained in a systematic, accessible way anywhere else. It provides a map to someone coming to this hard-to-navigate area for the first time.
* Great balance between being conversant with the academic research (without being too abstract) and being practically applicable (without being too tied to details of particular technologies)
* Shows underlying unity and concepts of very different data technologies, e.g. why classic relational database write-ahead logs and replication are very similar to streaming platforms like Kafka
* Subjective, but it is very clear, accessible, and well-written. This is very very hard to do and quite rare in technical books.
It's my favorite technical book of the decade and my first recommendation to anyone who asks me how to really "level up" as a senior engineer.
While I agree with all your points (I also think the book is a good one), I don't agree with the "level up" part. I don't see how, after reading carefully the book, any software engineer can "level up". If you don't have practical experience implementing (or dealing with, or maintaining) some of the scenarios the book talks about, then in no way one can "level up" just by reading the book.
The book provides tons of reference. I know that while reading the book, I experimented with many of the software described in the book. The author makes a good job at comparing various techs in putting them in context. This is very hard to do by just following a web of tutorials on the web.
Ah, yes, I should have said “first _reading_ recommendation” for how to level up! (And added: primarily for web backend or data engineers.)
Yes, of course you can’t level up just by reading a book; experience is the only way. The key thing - as you know, if you like the book - is that this book provides a coherent framework for thinking about data systems that engineers can fit their particular experience into. That “weird race condition” becomes less mysterious when it’s framed in terms of concepts like write skew or phantoms; joining two streams together becomes a problem about time and ordering. And so on. In fact the reason it’s such a great book is that you can read it with not much experience or background beyond basic database knowledge, absorb a lot of the ideas, and then keep coming back to it as your experience grows and you encounter new kinds of scenarios in your day to day work.
Very much so. I wish there were more books like that. Heavy on content, light on dogma, with very well weighted opinions and suggestions. Excellent book!
I wrote a book back in 2000 and it's one of those glad-I-did-it-but-never-again experiences.
I think the author nailed it with, "I strongly recommend that you estimate the value of your future royalties to be close to zero."
Do it as a way to give back / contribute to a topic you are passionate about, do it for the amazing learning experience, do it for the challenge. And then if you also make some money off it, that's just icing on the cake.
I'm not sure where I first heard this, but I feel it, even as I think about writing more: "everyone loves having written a book, not so much writing a book."
That's how I feel about lifting heavy weights. There's certainly a general principle to be found here.
One piece of feedback I got from someone I respect very much is, "read less and write more." So far that's been limited to quality documentation and Tufte style presentations, but I can definitely see the appeal of writing a book even if I don't make a penny off it.
These days most of my writing is in the form of research blog posts for my job, which I enjoy. I used to write a lot of fiction in my teens and early 20s, but somehow lost the discipline to sit down and do so after I discovered visual art.
Even if you enjoy some of the research and interviews--and even the writing off and on--pushing an entire book out there is inevitably a grind for most people, especially if you're up against deadlines.
I've heard the same thought expressed about reading books - i.e. people want to have read classics, but they hate actually reading them - and so unread classical literature accrues on the shelves, creating an illusion that the owner is well-read.
Taleb has a response about this in Antifragile: "A friend who writes books remarked that painters like painting but authors like “having written.” I suggested he stop writing, for his sake and the sake of his readers."
The greater context of the above was dealing with procrastination: Since procrastination is a message from our natural willpower via low motivation, the cure is changing the environment, or one’s profession, by selecting one in which one does not have to fight one’s impulses.
Not having written a book I don't know what the scars are about writing one that make the process very painful,I don't know if it's the writing itself, or the editing and getting feedback that makes it painful. But maybe procrastination does play a role, especially when one reflects on how much time they've wasted.
So to stop procrastinating, change your environment or profession to one where you don't fight your natural impulses. Easier said than done in this world though.
That sentiment (though I didn't think of it in quite this fashion) is why I set up a bi-weekly project management meeting at my last office, and tried to set up something similar for technical people.
The PM meeting was not a status reporting meeting. It had no management beyond the PMs (that is, no supervisors proper). The entire purpose was to facilitate sharing information across project boundaries (technical, procedural, or even just a chance to vent). I considered it to have "paid for itself" after two PMs discovered that another PM had already solved a procedural problem (how to get something done, not a technical problem) that they'd been stumbling over for months. That was also the day the PMs stopped complaining about the (non-mandatory) meeting that I'd set up for them. Another time, a PM discovered that another project had exactly the test capabilities they needed (but because of physical separation was totally unaware of this test lab tucked into a corner). Saved a lot of time and money that day, and the project ended up ahead of schedule in that aspect (not sure if they kept that lead, I left shortly after).
I wish I'd been able to get the technical meeting going, but management wasn't willing to give people the hour I asked for and "lunch & learn" only works for the motivated when you aren't getting paid and you aren't getting training credits towards some certification.
> That sentiment (though I didn't think of it in quite this fashion) is why I set up a bi-weekly project management meeting at my last office, and tried to set up something similar for technical people.
At my last office, I set up something very similar for our org with similar success. Your PM procedural problem case is a perfect example down to the complaining about having to attend a meeting they weren't required to attend.
Enter new management. After 8 weeks of ice-breaking meetings in triplicate and taking cues from all the wrong people, the first concrete thing they did that touched me was cancel that meeting. I found new employment shortly thereafter.
It's now an essential part of my repertoire. For technical people? Well that's mostly my team. We have a Trello board where anyone on team can drop RFC cards. Members of my team meet every couple weeks to review and discuss. It's visible to the whole org if anyone else is interested. (Generally, they aren't.)
I wanted the technical meeting because that was actually the weak spot for the org. Each team was isolated from each other to a greater than necessary degree. And no team was really "world class". But several had a phenomenal grasp of some aspect of development that the others lacked. I wanted to breakdown the, largely, artificial barrier between teams and better spread this knowledge and capability.
In the end, I quit before I could realize that, and what did happen (after I left) was more like you describe. Several teams basically did what you describe and set up their own internal learning and instruction approaches. But that doesn't help across the org, the bad teams are still bad. And the problem, mostly, wasn't the people but the time. They needed an opportunity to step back and think, and the firefighting they'd gotten stuck in was neverending. An hour every couple of weeks to hear and learn from others would've benefited them greatly.
Writing a book does not add value to your employer, enabling engineers in the world is one thing but it does not affect your day to day job or people arround you.
yes, why would an employer want employees who have the capability to write a book on the payroll? That's time that could be spent heads-down coding! </s>
An employer would LOVE to have a 300x engineer on board.
I mean take someone like Martin Fowler who wrote a number of highly influential book and a great website. Every time you look for him, you'll find his company or employer, ThoughtWorks. He and his work have put that company on the map as one of the top consultancy firms; he and his work educate everyone that works for that company, they follow his teachings and mindset, and become "10x" because of it.
Companies would be DESPERATE to hire him. Maybe not the kind of employers you think of, no, and maybe you wouldn't hire him for his 'output', but that's a very superficial way to look at it.
I agree with the former statement but once you have reached a 300x productivity multiplier you are no longer an engineer. You're primarily a teacher who communicates via books.
Even if you earned $0 from your book, I'd say being able to tell people you wrote a book at interviews and on your resume, and even at parties, would make it worth it.
And you'd be able to call yourself an author, how cool is that?
Surely that doesn't work if it's 'just' some self-published book the interviewers haven't heard of?
I don't mean any disrespect to yours at all (since I've never read any book on React, so I can say with certainty not your (unshared name) book on React) but anyone can write a bad book and start selling (or rather, 'offering for sale') PDFs/ePubs on their website (I've thought about doing it!) that shouldn't make them an automatic authority on the titular topic though.
I'm not really asking for any info, I'm assuming that if that's really worked as described for k___, then their book is well known or regarded in React circles, and that's why.
I don't think that's a good reason to do it, because well-regarded authors didn't become so by writing any old book - they either already were, or they wrote a bloody good one.
I don't disagree in that a publisher provides some quality floor and they presumably wouldn't have taken your book on if they already have a superior library on the same topic.
That said, put a self-published book on your site and someone can tell pretty quickly from a few minutes with the PDF if it's obviously bad. (Honestly, if I'm doing a book primarily for reputational purposes and I self-publish, I will (and have) just given it away for free.
>The combination of talks and the book have allowed me to establish a significant public presence and reputation in this field. I now get far more invitations to speak at conferences than I can realistically accept. Conference talks don’t generate income per se (good industry conferences generally pay for speakers’ travel and accommodation, but they rarely pay speaking fees), but this kind of reputation is helpful for getting consulting gigs.
This has been the real value of writing books--especially through a known publisher--for me. (I'm updating one at the moment.) Even if you're not a consultant, publishing a book on some topic still can give you cachet--and, in fact, because of the research you did, you probably are pretty expert on the topic even if you weren't before.
I agree that the expected future value of royalties isn't much--but there are other ways to earn money related to a book.
> The personal growth that comes from taking on such a challenge is also considerable. And there is no better way to learn something in depth than by explaining it to others.
I second. If you can't explain it, you don't understand it well enough. I'm the author of a YouTube course "Dynamic Programming for Beginners" [0]. Helping people to better understand the topic is a pure joy by itself, but it's also extremely rewardable for an author in terms personal growth. If you want to understand something, start teaching, you won't regret.
Writing for money and reservation of copyright are, at bottom, the ruin of literature. No one writes anything that is worth writing, unless he writes entirely for the sake of his subject. What an inestimable boon it would be, if in every branch of literature there were only a few books, but those excellent! This can never happen, as long as money is to be made by writing. It seems as though the money lay under a curse; for every author degenerates as soon as he begins to put pen to paper in any way for the sake of gain. The best works of the greatest men all come from the time when they had to write for nothing or for very little. And here, too, that Spanish proverb holds good, which declares that honor and money are not to be found in the same purse—honora y provecho no caben en un saco.
For professionals in technical fields where skills-assessment itself is expensive and uncertain, a book serves at a minimum as a signifier of one's own skill and ability. In exceptional circumstances, a book can lead to the author becoming part of both the skill-generating and certifying mechanism. Writing "the book" on a topic, and the teaching, lecturing, training, or technical leadership roles availed ... may ... prove worthwhile. Others then display their copies or familiarity of the book as evidence of their own ability. (Knuth, Gang of Four, Kernighan & Ritchie, etc.)
It's critical to realise that this signalling capability, as with attention, is a fundamentally rivalrous and finite space (perhaps not fully zero-sum), such that there can only be one truly leading authority or reference at a time. Though if like Martin Kleppmann you hit that spot, it can prove rewarding.
Specialties are fractal. It’s much easier to be the expert on something that 1,000 people do than something 1,000,000 people do. However, by making expert knowledge accessible it’s likely that far more people discover they really should be doing whatever it is you’re an expert at.
But the skill remains in competition with all other skills --- some specialisation or specialisations must shrink for another to grow.
With a century of universal compulsory education, US adult literacy rates have difficulty cracking 91%.[1] That's about 10 million people with no effective English literacy. (Some are literate in other languages.) Some other industrialised countries see similar results, though most fall at 98% or higher by UNESCO rankings.[2] And even basic literacy expresses a minimal language and cognitive capability.
Skill itself is finite. Over half the population, and over 2/3 in most surveyed industrialised countries, have poor, "below poor", or no computer skills at all, by an OECD survey.
The population with the demonstrated capacity to aquire any advanced computer skills seems to be about 5--10%, and this competes with all other high-skill, technical, or professional occupations. Increasingly it's a prerequisite for them, possibly shrinking that pool.
Again, the larger point is that attention, a key component of skills acquisition, is rivalrous, in both individuals and populations
________________________________
Notes:
1. NCES reports 4% "could not participate", 4.1% "below level 1', and 12.9% "level 1", or 21% "low English literacy" ages 16--65, in 2012 and 2014, a level insufficient "to complete tasks that require comparing and contrasting information, paraphrasing, or making low-level inferences".
The shift in skills tends to be advantageous to the new experts not the old ones. The great books on using slide rules have already been written, but their unlikely to find a new following.
Java applet‘s and a host of other tech is simply not coming back. Which is why experts often become advocates, they want their skills to remain relevant.
If one presumes a culture with an increasing overall complexity level, then the circumstance is not one of simply obsoleting technologies and skillsets being replaced, but of competition among multiple essential skillsets.
Complexity expands to meet all constraint boundaries.
Society is still largely bound by the human intellect. So, I don’t think overall complexity is actually increasing significantly. It’s more a question of how obvious the complexity is.
20, 50, and 100 years too seem like a reasonable point of comparison.
One simple approach is hand people old objective tests for subjects like math under the original rules. If people where simply becoming more competent in all areas then average scores should be higher today, but that’s not what happens.
Measuring complexity more specifically is probably easiest done by using equivalent jobs and compare how long each take to achieve competence. McDonald’s cooks take less time to train now vs the 1970’s, but I am not sure how that compares across industries.
Math is pardon the pun, fractal in nature. Geometry skills may be reasonably common, but topology and group theory for example are rarely taught in high school or their not even part of most collages general education requirements.
Go back 50 years and people may have been studying geometry but they covered significantly different areas.
Is it more or less complex than 20, 50, and 100 years ago?
How many subspecialisations have groups 9f 50, or 10, or5, or 1, who actually understand them?
At what scale of living practice does knowledge fail to be cultural and become merely transient, lodged for a few years in a few minds, perhaps mouldering for a few decades in a fiche copy of a once-read dissertation?
In terms of actually useful mathematics, not much. But, that’s missing the point. 100 years ago people studied chess as hard as they could, without machine assistance they didn’t become as skilled but that doesn’t mean chess somehow became more or less complex. Lawyers are dealing with roughly equivalent legal systems, and so it goes.
Mathematicians may have discovered say more digits of pi through useful tools, but at the core mathematicians are about as intelligent and still working just as hard. We have more mathematicians today in large part because global population has increased 4x in the last hundred years. However, go back 100 years and most people didn’t understand what hyper specialized work was being done.
> With a century of universal compulsory education, US adult literacy rates have difficulty cracking 91%.[1] That's about 10 million people with no effective English literacy. (Some are literate in other languages.) Some other industrialised countries see similar results, though most fall at 98% or higher by UNESCO rankings.[2]
I drilled into the literacy reports cited by [1], eventually landing at [3]. From those results, the US is not especially anomalous compared to other countries, although breaking down by nativity does suggest that the US has an anomalously large gap between native-born adults and immigrant adults.
The UNESCO rankings and the PIAAC rankings give substantially different results by observing scores. There's a few countries in both: Chile, Cyprus, Estonia, Greece, Italy, Lithuania, Poland, Singapore, Slovakia, Slovenia, Spain, and Turkey. Most of those countries are given >99% literacy rates by UNESCO, but have a few percent classified as "Below Level 1" by PIAAC, indicating that UNESCO has a much looser definition than PIAAC.
I can't tell you which ranking is better correlated to what a naïve observer would think of as "literate," but the two rankings are definitely measuring different things.
Just to note, I realised much of this when composing and citing my reply above. US NCES and UNESCO literacy metrics and criteria do seem to differ pretty materially.
There are other evidences of persistent barriers to skills and rationality attainment though, with fairly strong evidence.
US high school graduation rates reached a pretty firm plateau in about 1950, having risen from six percent in 1900. Much of the ballyhoo over secondary education (test scores vs. graduation rates) has involved trading one against the other, though improvements in fundamental living standards for the poorest (well mother/baby care, nutrition, housing, environmental contaminants most especially heavy metals, reduced general precarity) have also contributed greatly, as has equality of access. All of these being before pedagogical factors are considered --- raiseing the floor is the most cost-effective way of raising numerous population averages.
Hiher-education attainment similarly shows some resistance to expansion, as well as questions regarding comparability over time. Bachellors, Masters, and PhD inflation seem likely. There are also cases where standards seem to have tightened somewhat: there was a biography of a 19th century American who was admitted to the bar in a Southern state on the basis of a brief interview, but who declined the practived on account of the obviously lax standards evidenced. (Ran across recently via Wikipedia, though the details escape me.)
Back to literacy, the US seems to struggle to achieve ~95% at a minimum, the number I'd initially written above, though by its own measure (assuming all those unable to participate in the assessment are illiterate) as low as 91%.
The UNESCO values strike me as somewhat suspiciously high. I'm not sure that's warranted suspicion, but it suggests investigating methods more deeply.
"economically viable (it is possible to generate a reasonable level of income from it)."
The second part of that sentence, is not really the same as the first. By his own admission, his book is a real outlier on the high side (second highest in his peer group of O'Reilly books), and it only basically compensated for lost income. This strongly suggests that the median case, is you lose money.
Now, there are lots of other great reasons to write a book. The satisfaction of helping others, the space to focus and expand your thinking on a topic, the increase to your reputation, etc. But, "economically viable" doesn't really equate to "at least one or two people didn't lost money doing it".
It's very difficult for accomplished person in the tech field to find an activity that pays better than just getting a job at a top tier company. People who choose to do something else must have other reasons.
Another way to look at it is the answer to "Ask HN: I'm looking for a side project or job to make me extra money" is almost certainly not "Write a book!"
(With the most obvious exception being if you're a public figure of some sort.)
Miracles happen and sometimes a book, like this one, takes off. For the most part, it's not worth your time and energy. I've made far more money as an author of articles and as an expert witness than I ever did from my books, even though one did with quite well and was translated into Greek and German.
I'll also add that he must have one heck of a deal with ORA to get those kind of royalties because the standard ORA contract based on his sales, would not come to anything like that much money.
> For the most part, it's not worth your time and energy.
I'd revise that, and say it's not worth your time and energy if the goal is to make money from it. There may be other goals (e.g. to evangelize and popularize some piece of technology, or maybe to make certain tech more accessible).
> A lot of money, but I also put a lot of time into it! I estimate that I spent about 2.5 years of full-time equivalent work researching and writing the book, spread out over the course of 4 years. Of that time, I spent one year (2014–15) working full-time on the book without income, while the rest of the time I worked on the book part-time alongside part-time employment.
Is it too creepy to wonder how the author sustain himself during the "full-time without income" part ? (Did he start saving earlier on to get a big safety cushion, did he get an advance, etc ?)
I think if you're a senior software engineer at LinkedIn in silicon valley for a couple of years and then don't have enough to sustain yourself without additional income for a year after that then your lifestyle must be quite extravagant.
Sure ! To clarify, that's also my assumption, but I was wondering if he specifically decided to save money to prepare for the "writing" period ; or he if "accidentally" ended up with enough money to spare a year of full-time employment.
In any case, good for him, of course, no jalousy implied !
(Also, as for the "your lifetime must be quite extravagant"... Again, "fair enough", but apparently the whole "FIRE"[1] movement might beg to differ ;) )
An advance probably isn't going to be much more than beer money. It's not unreasonable to imagine though that a West Coast developer could have some savings.
That said, given his comments about finances (which are spot-on), it does seem like sort of a leap to take 1+ year off. Nothing wrong with taking some extended time off, but most wouldn't use it to write a book full-time. Of course, going in he may have had unreasonable expectations which were indeed met.
* just took a few weeks of part time work, mainly just organizing blog posts
* Leanpub pays much higher royalties (80%)
Books are a great way to learn more about the topic and help others. It makes training and employee onboarding a lot easier. You can tell folks to read a chapter and then review.
Books aren't a great way to make money, but they're fun to write and a great way to give back to the programming community.
They're my blog posts and that's a good point. I can generally write a blog post in a few hours.
Martin's book is clearly a masterpiece and mine isn't. Just though I'd chime in and let folks know that writing a book doesn't have to be a 2.5 year full-time commitment.
The first book I wrote incorporated a lot of existing blog posts. There was still a lot of glue to write, holes to patch, and various updates/fixups.
Another book was from scratch and I did spend a fair number of work hours on it--with the OK of management--supplemented by some (but not outrageous) nights and weekends. It probably ended up being like a part-time job for about 6 months plus additional time spent back and forth with the editor--which wasn't actually a lot.
I don't use leanpub to create my book, but I still put it on both leanpub and gumroad. In case you aren't aware, gumroad [0] gives better returns and holds your payment for 1-2 weeks instead of 45-75 days on leanpub.
He kind of touches upon it, but there is a lot of value in being able to go into an interview and literally being able to say about a topic "I wrote the book on it." It's a tremendous signal to have overcome the hurdles of getting a publisher to accept you and print your book with your name on it.
I used to have several guys on my team that had published books- and they were great, and were constantly getting contacted about other jobs, and even to write other books.
They all said the actual book itself made them no money beyond their initial (small-hardly five figure) advance, and in terms of dollars per hour they probably would have been better off getting a fast food job, but it opened up a lot of doors and made them at least a little bit "internet famous."
Just having a book that you've written on any topic listed somewhere on your resume is nearly always a positive. It is kind of like having a college degree in that it shows you can start something and finish it.
way more people finish college than publish a book though. It's a higher-level signal IMO, even a self-published book is a massive accomplishment that shows huge dedication.
another good way to become a little bit "internet famous" is to create and maintain a useful open-source project.
IMHO, this is more future proof in the technology space since you can gradually evolve a project but a book can become obsolete if it focuses on a specific technology rather than fundamentals.
Meh, I expected this was true. However, after 6(?) years of maintaining a moderately popular project (~10k stars), it hasn't amounted to much real external value. It has never come up in interviews, it has never led to any job offers, it's mostly just a thing I work on for free which people happen to like.
It’s your job to highlight your relevant skills and experience during interviews. It’s especially important to be proactive about unusual experience that canned questions won’t hit, like an OSS project you run or a book you wrote. Remember that having something good is NEVER enough. You HAVE to tell people about it.
Case in point - you don’t even link the project in your comment! I can’t even begin to give you specific advice because I don’t know anything about your project beyond its age and basic popularity tier. Maybe it’s super relevant to me and I would benefit from bringing you in for some consulting. We’ll never know because you didn’t mention the crucial details.
Here are some generic things you can try:
- Don’t be afraid to mention your specific project in relevant settings, like this forum or an interview.
- Use examples from your project to answer questions (“Sure I know about X, I considered using that when my project needed Y, and my benchmarking eventually suggested Z was better in that instance”)
- List the OSS project on your resume like a job (“Primary Maintainer, MyLibrary, 2012-. Designed, Implemented and Maintained a library with 12,000 github stars. Reviewed and merged 300 community pull requests. Implemented CI/CD...”)
- Identify corporate users of your OSS and proactively offering consulting
- Speak at conferences/meetups focused on your programming language/ framework /industry
- Blog about the project and your experiences with it
>It's a tremendous signal to have overcome the hurdles of getting a publisher to accept you and print your book with your name on it.
And I'd add that this is the real value IMO of going with a name publisher--which is otherwise a bit of a mixed bag. Fairly or not a lot of people mentally make at least a bit of mental deduction for a book published independently.
This would be nice if it were actually true. My credentials are pretty top-notch (including writing one book, and editing another) but I still get asked to invert binary trees.
I love writing (and I’m working on another book), but other than maybe getting you in the door, you’ll still have to deal with typical tech interview nonsense.
I haven't switched companies since I've written books (and am not a developer anyway) so I can't say about technical interviews. But it's definitely helped me in other ways within my company, with partner companies, etc.
I'm pretty sure if I showed up to a performance engineering job interview and said "I wrote the book on performance," as though that was what mattered most, I'd be shown the door. In my opinion it would be horrendously arrogant. In fact, I interviewed at Google while I was writing Systems Performance for Prentice Hall, and I never mentioned it in the interviews for that reason. In such interviews I'm focused on what value I can bring to the company -- what problems I can help them solve in the future. I'm not there to coast on my prior reputation.
Also, regarding "overcome the hurdles": those hurdles are now practically non-existent with various publishers. This results in books on the topic that should never have been published.
I could explain in more detail, but there's a lot of negative connotations with technical book authorship, which I work to overcome in such interviews and in roles. Does the author care more about working on their reputation than working for the company? Did the author only write the book to make an exaggerated name for themselves for the benefit of job interviews? (As you suggested in your opening sentence :-) I personally only write books when I'm already the expert on the topic, and it's a way to share my expertise.
Another interview I had years ago, after telling them about my first book, the interviewer said "so you know the theory, but can you put it in practice?" The assumption being "those that can do, those that can't write books." I was in a worse position for letting them know about it.
And of course, there can be positives for writing books. You are showing a willingness to share your knowledge with others. (You can do that in blog posts as well.)
Sounds to me like a good way to weed out bad employers. If they think of a book as a negative, they probably have a few chips on their shoulders. Also, you sound overly modest to me.
This was my reaction as well. Absolutely no offense to the parent comment, but this sounds like a combination of being overly modest + getting bitten by dumb behaviors by bad companies.
There's also a big difference between:
- Strut into the interview. Drop a copy of your book on the table. "I literally wrote the book - hire me"
And
- "Tell me about yourself" ... "Well, I'm bla bla bla, passionate about xyz, oh, and passionate to the point that I wrote a book about xyz if you're interested in the details"
If you're an arrogant ass, yeah, the book is a liability. But unless you really dislike the thing you wrote and want to squash it, the fact that you wrote a book at all, much less the subject, says something about you as a person. Others in this thread have talked about the positive signals this sends so I won't re-hash those here.
Right; the person saying "I literally wrote the book - hire me" is saying it matters most, and I think that approach is likely to backfire.
There are multiple problems with that attitude, including: 1) You probably aren't hired to write books, so what matters most is other things you'll be doing. 2) There are really good books and really bad books, so saying you wrote _a_ book doesn't carry the weight you may think. Was it good?
I think the problem is for most technical areas and for most technical books the writer has not literally written THE book on the subject, they have at best written A book on the subject - of people who have written the book on the subject I can think of, off the top of my head:
Donald Knuth
Harold Abelson and the Sussmans
- a few others but you get the picture, most subjects do not have a definitive book.
> You probably aren't hired to write books, so what matters most is other things you'll be doing.
This is true, but some employers will allow you to write on company time. As Kleppman notes, value created by books squirts everywhere, only some of it onto the author, which can be distinct from value landing on their employers.
I've been working on Knative in Action for the last year because Pivotal (now VMware) liked the idea that it would happen under their flag.
The main difference is the reason that a senior engineer or VP gets hired.
It is not to write code by themselves. It is to help other people do it.
For this, being a walking encyclopedia certainly helps. Of course, there's probably a correlation with being able to solve the programming puzzles in such a situation, too.
I don't know either. His history shows some extensive knowledge about the types of things I'd expect readers of hacker news to know. Or course there are a lot of beginners, but the goal is to discuss things people like him are interested in. I aspire to write posts as helpful and detailed as his comment history shows.
He's a programmer with a Wikipedia page. There's like what? Maybe 60 of those?
I've long ago accepted I'd never make that list. If it ever happened I'd probably commit myself to an asylum immediately because it'd be 1000x more likely I had actually finally cracked and started hallucinating things.
Actually let's be real. Being a famous programmer is probably within my reach. I lack the discipline, focus, and dedication to spend the right amount of time on the right parts of the right projects. If this is possible for me to fundamentally address and within my capacity (still questionable) than doing things of deep impact is probably feasible. Even if it isn't, I should do it anyway.
I avoided children and marriage so I'd never have to choose safety over taking risks. So, take, more, risks. Now is the only time there ever will be.
I should print out those last 2 paragraphs and read it aloud in front of my bathroom mirror every day.
If someone has a problem they probably are seeking you out because you wrote the book, in which case you already have the job (unless HR discovers something bad) and the purpose of the interview is to convince you to take the job not the other way round! They already know you wrote the book and are hoping your pay isn't too much. This is the most valuable reason to write a book for most authors (there are other good reasons to write a book, but the rest typically don't produce $$$).
When the above doesn't apply you still need them to know you wrote the book because sometimes they will look up the book and a good book will overcome your bad interview.
The exception to the above is when you are bored of the topic and are interviewing for something completely different. In that case you hide it because they might assume you will leave for a better job in your field latter - after all you wrote the book in something else so you must be valuable.
> Also, regarding "overcome the hurdles": those hurdles are now practically non-existent with various publishers. This results in books on the topic that should never have been published.
This is a real problem. People writing some really bad quality tech books from certain publishers. I'm not going to trash the publishers because some of the authors care about writing good books (rather than being able to say they wrote something) and do it with little editorial help. They produce something which would have been better in other circumstances.
I think you have some problem of low self esteem or have been brainwashed by the anti-intelectual crowd. Of course writing a book is not a magical think, but it shows that you have technical knowledge about the subject (if the book is any good). Any reasonable employer would be glad to have this kind of people. If they don't, I would suspect that it is a sweatshop.
> Another interview I had years ago, after telling them about my first book, the interviewer said "so you know the theory, but can you put it in practice?" The assumption being "those that can do, those that can't write books." I was in a worse position for letting them know about it.
I am routinely amazed at the arrogance shown by interviewers. Even people that are usual humble and great to work with get in that position of authority and judgment and suddenly act different. It's a very disappointing aspect of human nature.
>I'm pretty sure if I showed up to a performance engineering job and said "I wrote the book on performance," as though that was what mattered most, I'd be shown the door. In my opinion it would be horrendously arrogant.
Heh- you are quite accomplished I see from some googling. And I have to be honest, I fail to see how having an Addison Wesley book under your name in any context could be seen as a negative- the guys I was referring to were writing "Learn the MEAN stack in 21 days" type of books. But yeah I of course agree that you don't slam a copy down in the opening of the interview and try to use the fact that your name is on it as your primary selling point- its really more to get you in the door and have people reach out to you about interesting opportunities you might otherwise not have found out about.
You might just be running in much more intense circles than I am, but the number of people who have written a technical book is small enough that I have ran across only a handful in my career and my reaction was much more about surprise and delight than worrying about the motives behind it, but YMMV I guess.
The problem is encountering a hiring manager who treats book writing as a red flag: perhaps the candidate is more interested in self promotion and vanity projects than doing real work; perhaps they are too "academic" and don't have real experience; perhaps their book is one of these trash books that is nothing more than the open source docs (that the author didn't write) hastily thrown together; etc. That's not to say the candidate won't get the job, but that they get grilled harder in the interview to overcome these suspicions.
I only mentioned this in the first place as a counterpoint to the idea that books may have a lot of value in an interview. I think it has value in _getting_ the interview, but you might find the interview is now a little bit harder. And thinking that your book matters most may sound too arrogant.
I have recommended that people write books over the years (I'm not anti-book!): I just wouldn't list the interview as a perk. A big perk is getting to help people worldwide (my books have been translated into other languages), including those who don't have access to bay area conferences or other local experts. Another perk is assembling a technical review team of fellow experts and working on the draft with them, listing to their feedback and learning from their experiences to improve the book.
I attended a talk you gave at AWS Re:Invent 2019. You need some serious, serious help.
No company should ever be speaking to you like that. You should be showing companies the door, not the other way around.
Early on in my career I learned most tech companies are absolute garbage and are not worth working for. You're worth a lot more than they are, brother.
For what it's worth, your name alone has become quite famous in the performance world, and that's due to your blog posts and books. I would be a bit shocked if an interviewer for that field didn't know you.
On the flip side, be careful when claiming skills on your resume. You may just encounter an interviewer who wrote the book on that topic who decides to ask you a few questions about it...
At least you caught a lie, which at least to me is a red flag that the interview is over and I know to look for excuses to downgrade the score I give to HR, thus ensuring no offer is made no matter how many people we need to hire.
We hired this guy who wrote a book on the thing the team he was hired for managed. He was a nightmare. He was just insufferable. People would ask questions and he would suggest they read his book. He would mention his book in every meeting. He would tell people they couldn't do things they'd already done and then back-peddle that it wasn't possible when he'd written his book. It was just a huge drag. He managed to also be terrible in other ways and has since been canned. I pity any future applicants that come into an interview with the managers that had to deal with that guy planning to lean on their book during the interview. There's a good 50 people in the company with a real bad taste in their mouths from him.
Okay, well I guess that’s a bad experience. I don’t think it invalidates the fact the usually book authors should be somewhat knowledgable - of course it doesn’t automatically
mean that all of them is good to work with.
Yes, but... unless you are hiring an absolute EXPERT on that topic and that was the purpose of hiring the person.. I bet that could turn out very poorly.
I mean it's in general like if you hire a PhD into a role that needs to cover a lot of areas, can't be super detailed in anything, and needs to get stuff done as opposed to pure research.. that can turn out poorly.
Similar experience here. We interviewed a guy who kept referring to his book on the subject, experience he gained during writing the book, and so on. We took the bait.
> He would tell people they couldn't do things they'd already done and then back-peddle that it wasn't possible when he'd written his book
This was the core problem: Modern technologies and frameworks move fast. His book was about the state of the art five years ago, but it was woefully out of date for what we were doing. That didn't stop him from trying to exert superiority over the more knowledgeable team members.
Some of us read his book. It wasn't even a great resource on the topic. Re-reading the Amazon reviews, I have to believe most of the positive reviews were bought or fabricated.
Since then, I'm cautious about hiring anyone who tries to portray themselves as an expert in the field. And if you're hiring an author, at least read part of their book during the interview phase.
A former co-worker of mine recounted an experience with a person hired by his previous company who had written a book on software development methodology, Scrum or something. Evidently the way the author's employment worked is the company got the reputation benefit from having a famous expert on staff. In exchange he gave talks but didn't have to do any actual work for the company, and the company didn't have to follow his methodological orthodoxies.
And that's how you end up with speakers saying ridiculous things that don't work in practice. Because they come up with some idea (or more likely, a very minor tweak to an existing idea) but because nobody has to actually do it, and all their time is spent speaking, nobody uncovers the critical flaws.
Super side note - I'm rereading Harry Potter and the Chamber of Secrets (2nd one in series) for fun right now, and this guys sounds exactly like Gilderoy Lockhart.
At my last employer there was a similar story. The candidate mentioned he had written a book on Flask. So the dev in the interview took that as an invitation to skip the warm ups and go on a deep dive into Flask internals. The author got extremely flustered and couldn’t answer.
I don't think this matters. If he strongly claims he is an expert on Flask, and I knew Flask, then I would test the depth of that knowledge. You can't validate every detail on their resume, but if you find they misled about this one fact, odds are they mislead on other facts you are not capable of validating.
I am sure this is mostly seen as a positive but this can also backfire in an interview, and later, at work (I see a sibling comment addresses this). If a person leads with saying he has written a book on a topic, and then is unable to provide adequate responses to basic questions, the panel opinion goes south very soon. I have seen this happen.
Think of it as when a candidate claims she knows a language X well, but then is unable to answer reasonable questions around X. Saying you have written a book is like this claim, except dialing up expectations to the max.
Not saying advertising a book is a bad idea, but be aware of the expectations you are setting up.
> It's a tremendous signal to have overcome the hurdles of getting a publisher to accept you and print your book with your name on it.
That would seem to depend on the publisher, and the business arrangement, as to whether it really signals anything (though I suspect that often hiring managers might not know enough to correctly interpret the signal.) Obviously, if the book is a success and widely-known for its technical merit, that's a positive signal, but that's different than just getting a book published.
Even where getting over the hurdles to get a book published signals something, there's a question of whether it signals something relevant to the job you are hiring for. The hurdles of getting a book published (where they exist at all, e.g., outside of what is essentially vanity publishing or a close approximation) aren't particularly similar hurdles to those encountered in most technical jobs even when the book is on a subject close to the job duties.
> He kind of touches upon it, but there is a lot of value in being able to go into an interview and literally being able to say about a topic "I wrote the book on it."
A lot of it depends on the publisher. If it is for example OReilly, I would be impressed. If it is Packt, I would not be impressed at all. Some publishers do a much better job of screening and providing editorial support and technical reviews so that if an author is published by them, I can have confidence that the author is a subject matter expert. Some publishers are little more than self-publishing and so I would not have confidence that the author was an expert.
> because the income that this work has generated is in the same ballpark as the Silicon Valley software engineering salary (including stock and benefits) I could have received in the same time if I hadn’t quit LinkedIn in 2014 to work on the book
I think he’s underestimating his salary and stock value.
Most Silicon Valley engineers at his level would make more than $200,000 a year with stock and salary.
I'm on my third. It's definitely worth it, but it's also, if done well, a long, hard haul.
I think it's probably good to go into the project with an idea of why you're doing this. Are you creating what's basically an extended business card? Are you trying to help a particular kind of person that you know very well? Or are you chasing the goal of matching up a slice of knowledge with an eager audience?
There are other goals. For instance, a lot of disparate experiences in your career can come together to help on a certain section you're working on. This allows you to personally gain some synthesis from your experiences you might not otherwise. You can find new depth in ancillary areas as you go through and footnote, adding more depth to the things you're talking about both for yourself and the reader.
It's good to have those goals, even if you end up delivering a different kind of book than you had planned, because as a sole author something's got to keep you motivated for years. This isn't a software project, a job, or even a romantic commitment. Whatever you write, if it's worth writing, becomes a part of you. Like one of the other commenters says, if you have people on your team with published books they're likely to be busy responding to and helping folks interested in those areas. That doesn't go away simply because you move on.
Probably the best advice I can give for new authors is that it should be a lot of work, and once you finish each phase you'll say to yourself, "Now comes the hard part". This essay writer gave 50 presentations. Wow! That number of public appearances alone is a non-trivial amount of work. Don't forget contacting bloggers, podcasts, tech publishers, and so on. No matter where you are in the process, next up is the hard part.
None of that is any reason not to do it, of course. You just should be aware that if you're going to do a good job it's a major commitment. Prepare your outlook accordingly.
> It would be interesting to compare it to working on open source software, another activity that can have significant positive impact but is difficult to get paid for. I don’t have a strong opinion on this at the moment.
Does anyone have views from having tried to do both - book and open source project?
It's been noted before that these highly specific niche titles can do very well.
You need a topic where the people who work in it are well paid, even by SV standards, and you can save them a lot of time and effort by condensing the state of the art into actionable information and examples.
So this is not "writing a book" - this is writing a book for a niche market that will pay well for non-obvious high-value technical content.
Something like "Xcode for Beginners" will not be nearly as successful - especially not now that app dev is so established.
Even though Xcode has a lot of quirks, the features and the build process aren't too much of a mystery and most people in the industry will be able to work out the essentials for themselves.
For the last two years, I was able to make ends meet writing books, even though the Czech market is rather small (10 million speakers).
The key was having my own e-shop and a set of readers who come to read the blog. Once people buy directly from you, the whole balance shifts. Normally, distributors and bookshops take a large cut before sharing a slice of profit with you. Avoid them and the whole thing turns profitable.
298 comments
[ 0.19 ms ] story [ 401 ms ] threadAs far as I'm concerned, that's the only purpose dead-tree books serve anymore.
I did a reading group at work a couple of years ago (for Designing Data Intensive Applications as it turns out!), and half the group looked at me like I had 3 heads when I offered to buy them hard copies and the other half was insulted if I didn't offer them hard copies
Honestly, the best technical book I’ve ever owned.
https://henrikwarne.com/2019/07/27/book-review-designing-dat...
Second-best, second only to Aurélien Géron’s machine learning book. ;)
Its a practical overview of a difficult and modern topic. That in itself would make the book good, but for me, it is that the book goes deeper into the research and algorithms than most O'Reilly books -- but it does this without becoming a Science textbook.
It is easy to tell the people working in big data that haven't read the book, just from the mistakes they make.
Anyway, some reasons:
* Draws together a wealth of material on databases and distributed systems that wasn't explained in a systematic, accessible way anywhere else. It provides a map to someone coming to this hard-to-navigate area for the first time.
* Great balance between being conversant with the academic research (without being too abstract) and being practically applicable (without being too tied to details of particular technologies)
* Shows underlying unity and concepts of very different data technologies, e.g. why classic relational database write-ahead logs and replication are very similar to streaming platforms like Kafka
* Subjective, but it is very clear, accessible, and well-written. This is very very hard to do and quite rare in technical books.
It's my favorite technical book of the decade and my first recommendation to anyone who asks me how to really "level up" as a senior engineer.
Yes, of course you can’t level up just by reading a book; experience is the only way. The key thing - as you know, if you like the book - is that this book provides a coherent framework for thinking about data systems that engineers can fit their particular experience into. That “weird race condition” becomes less mysterious when it’s framed in terms of concepts like write skew or phantoms; joining two streams together becomes a problem about time and ordering. And so on. In fact the reason it’s such a great book is that you can read it with not much experience or background beyond basic database knowledge, absorb a lot of the ideas, and then keep coming back to it as your experience grows and you encounter new kinds of scenarios in your day to day work.
where:
- if Expectation > Perception then your experience is +ve (e.g. surprise);
- if Expectation < Perception then you experience is -ve (e.g. disappointment).
So the question I'd ask you is this: what were your expectations when you picked up a copy of DDIA?
I think the author nailed it with, "I strongly recommend that you estimate the value of your future royalties to be close to zero."
Do it as a way to give back / contribute to a topic you are passionate about, do it for the amazing learning experience, do it for the challenge. And then if you also make some money off it, that's just icing on the cake.
https://quoteinvestigator.com/2014/10/18/on-writing/
For me, I do like writing, it's just... really really difficult. That's part of what makes it so worthwhile.
One piece of feedback I got from someone I respect very much is, "read less and write more." So far that's been limited to quality documentation and Tufte style presentations, but I can definitely see the appeal of writing a book even if I don't make a penny off it.
The greater context of the above was dealing with procrastination: Since procrastination is a message from our natural willpower via low motivation, the cure is changing the environment, or one’s profession, by selecting one in which one does not have to fight one’s impulses.
Not having written a book I don't know what the scars are about writing one that make the process very painful,I don't know if it's the writing itself, or the editing and getting feedback that makes it painful. But maybe procrastination does play a role, especially when one reflects on how much time they've wasted.
So to stop procrastinating, change your environment or profession to one where you don't fight your natural impulses. Easier said than done in this world though.
> How to be a 10x engineer: help ten other engineers be twice as good. Producing high-quality educational materials enables you to be a 300x engineer.
The PM meeting was not a status reporting meeting. It had no management beyond the PMs (that is, no supervisors proper). The entire purpose was to facilitate sharing information across project boundaries (technical, procedural, or even just a chance to vent). I considered it to have "paid for itself" after two PMs discovered that another PM had already solved a procedural problem (how to get something done, not a technical problem) that they'd been stumbling over for months. That was also the day the PMs stopped complaining about the (non-mandatory) meeting that I'd set up for them. Another time, a PM discovered that another project had exactly the test capabilities they needed (but because of physical separation was totally unaware of this test lab tucked into a corner). Saved a lot of time and money that day, and the project ended up ahead of schedule in that aspect (not sure if they kept that lead, I left shortly after).
I wish I'd been able to get the technical meeting going, but management wasn't willing to give people the hour I asked for and "lunch & learn" only works for the motivated when you aren't getting paid and you aren't getting training credits towards some certification.
At my last office, I set up something very similar for our org with similar success. Your PM procedural problem case is a perfect example down to the complaining about having to attend a meeting they weren't required to attend.
Enter new management. After 8 weeks of ice-breaking meetings in triplicate and taking cues from all the wrong people, the first concrete thing they did that touched me was cancel that meeting. I found new employment shortly thereafter.
It's now an essential part of my repertoire. For technical people? Well that's mostly my team. We have a Trello board where anyone on team can drop RFC cards. Members of my team meet every couple weeks to review and discuss. It's visible to the whole org if anyone else is interested. (Generally, they aren't.)
In the end, I quit before I could realize that, and what did happen (after I left) was more like you describe. Several teams basically did what you describe and set up their own internal learning and instruction approaches. But that doesn't help across the org, the bad teams are still bad. And the problem, mostly, wasn't the people but the time. They needed an opportunity to step back and think, and the firefighting they'd gotten stuck in was neverending. An hour every couple of weeks to hear and learn from others would've benefited them greatly.
I mean take someone like Martin Fowler who wrote a number of highly influential book and a great website. Every time you look for him, you'll find his company or employer, ThoughtWorks. He and his work have put that company on the map as one of the top consultancy firms; he and his work educate everyone that works for that company, they follow his teachings and mindset, and become "10x" because of it.
Companies would be DESPERATE to hire him. Maybe not the kind of employers you think of, no, and maybe you wouldn't hire him for his 'output', but that's a very superficial way to look at it.
And you'd be able to call yourself an author, how cool is that?
I wrote a book about React and after that didn't get asked stupid interview questions anymore.
I don't mean any disrespect to yours at all (since I've never read any book on React, so I can say with certainty not your (unshared name) book on React) but anyone can write a bad book and start selling (or rather, 'offering for sale') PDFs/ePubs on their website (I've thought about doing it!) that shouldn't make them an automatic authority on the titular topic though.
I don't think that's a good reason to do it, because well-regarded authors didn't become so by writing any old book - they either already were, or they wrote a bloody good one.
That said, put a self-published book on your site and someone can tell pretty quickly from a few minutes with the PDF if it's obviously bad. (Honestly, if I'm doing a book primarily for reputational purposes and I self-publish, I will (and have) just given it away for free.
> Hi, I wrote a book about X.
> Hi, I wrote a good book about X.
A the difference is abysmal.
This has been the real value of writing books--especially through a known publisher--for me. (I'm updating one at the moment.) Even if you're not a consultant, publishing a book on some topic still can give you cachet--and, in fact, because of the research you did, you probably are pretty expert on the topic even if you weren't before.
I agree that the expected future value of royalties isn't much--but there are other ways to earn money related to a book.
I second. If you can't explain it, you don't understand it well enough. I'm the author of a YouTube course "Dynamic Programming for Beginners" [0]. Helping people to better understand the topic is a pure joy by itself, but it's also extremely rewardable for an author in terms personal growth. If you want to understand something, start teaching, you won't regret.
[0] https://www.youtube.com/playlist?list=PLVrpF4r7WIhTT1hJqZmjP...
-- Arthur Schopenhauer, "On Authorship"
https://en.wikisource.org/wiki/On_Authorship
For professionals in technical fields where skills-assessment itself is expensive and uncertain, a book serves at a minimum as a signifier of one's own skill and ability. In exceptional circumstances, a book can lead to the author becoming part of both the skill-generating and certifying mechanism. Writing "the book" on a topic, and the teaching, lecturing, training, or technical leadership roles availed ... may ... prove worthwhile. Others then display their copies or familiarity of the book as evidence of their own ability. (Knuth, Gang of Four, Kernighan & Ritchie, etc.)
It's critical to realise that this signalling capability, as with attention, is a fundamentally rivalrous and finite space (perhaps not fully zero-sum), such that there can only be one truly leading authority or reference at a time. Though if like Martin Kleppmann you hit that spot, it can prove rewarding.
But the skill remains in competition with all other skills --- some specialisation or specialisations must shrink for another to grow.
With a century of universal compulsory education, US adult literacy rates have difficulty cracking 91%.[1] That's about 10 million people with no effective English literacy. (Some are literate in other languages.) Some other industrialised countries see similar results, though most fall at 98% or higher by UNESCO rankings.[2] And even basic literacy expresses a minimal language and cognitive capability.
Skill itself is finite. Over half the population, and over 2/3 in most surveyed industrialised countries, have poor, "below poor", or no computer skills at all, by an OECD survey.
https://www.nngroup.com/articles/computer-skill-levels/
The population with the demonstrated capacity to aquire any advanced computer skills seems to be about 5--10%, and this competes with all other high-skill, technical, or professional occupations. Increasingly it's a prerequisite for them, possibly shrinking that pool.
Again, the larger point is that attention, a key component of skills acquisition, is rivalrous, in both individuals and populations
________________________________
Notes:
1. NCES reports 4% "could not participate", 4.1% "below level 1', and 12.9% "level 1", or 21% "low English literacy" ages 16--65, in 2012 and 2014, a level insufficient "to complete tasks that require comparing and contrasting information, paraphrasing, or making low-level inferences".
https://nces.ed.gov/datapoints/2019179.asp
2. Rankings: https://en.wikipedia.org/wiki/List_of_countries_by_literacy_...
Java applet‘s and a host of other tech is simply not coming back. Which is why experts often become advocates, they want their skills to remain relevant.
Complexity expands to meet all constraint boundaries.
Compared to what or when?
One simple approach is hand people old objective tests for subjects like math under the original rules. If people where simply becoming more competent in all areas then average scores should be higher today, but that’s not what happens.
Measuring complexity more specifically is probably easiest done by using equivalent jobs and compare how long each take to achieve competence. McDonald’s cooks take less time to train now vs the 1970’s, but I am not sure how that compares across industries.
Go back 50 years and people may have been studying geometry but they covered significantly different areas.
Is it more or less complex than 20, 50, and 100 years ago?
How many subspecialisations have groups 9f 50, or 10, or5, or 1, who actually understand them?
At what scale of living practice does knowledge fail to be cultural and become merely transient, lodged for a few years in a few minds, perhaps mouldering for a few decades in a fiche copy of a once-read dissertation?
And, a few moments after writing the above I see:
https://news.ycombinator.com/item?id=24631728
In terms of actually useful mathematics, not much. But, that’s missing the point. 100 years ago people studied chess as hard as they could, without machine assistance they didn’t become as skilled but that doesn’t mean chess somehow became more or less complex. Lawyers are dealing with roughly equivalent legal systems, and so it goes.
Mathematicians may have discovered say more digits of pi through useful tools, but at the core mathematicians are about as intelligent and still working just as hard. We have more mathematicians today in large part because global population has increased 4x in the last hundred years. However, go back 100 years and most people didn’t understand what hyper specialized work was being done.
I drilled into the literacy reports cited by [1], eventually landing at [3]. From those results, the US is not especially anomalous compared to other countries, although breaking down by nativity does suggest that the US has an anomalously large gap between native-born adults and immigrant adults.
The UNESCO rankings and the PIAAC rankings give substantially different results by observing scores. There's a few countries in both: Chile, Cyprus, Estonia, Greece, Italy, Lithuania, Poland, Singapore, Slovakia, Slovenia, Spain, and Turkey. Most of those countries are given >99% literacy rates by UNESCO, but have a few percent classified as "Below Level 1" by PIAAC, indicating that UNESCO has a much looser definition than PIAAC.
I can't tell you which ranking is better correlated to what a naïve observer would think of as "literate," but the two rankings are definitely measuring different things.
[3] https://nces.ed.gov/surveys/piaac/ideuspiaac/report.aspx?p=3...
There are other evidences of persistent barriers to skills and rationality attainment though, with fairly strong evidence.
US high school graduation rates reached a pretty firm plateau in about 1950, having risen from six percent in 1900. Much of the ballyhoo over secondary education (test scores vs. graduation rates) has involved trading one against the other, though improvements in fundamental living standards for the poorest (well mother/baby care, nutrition, housing, environmental contaminants most especially heavy metals, reduced general precarity) have also contributed greatly, as has equality of access. All of these being before pedagogical factors are considered --- raiseing the floor is the most cost-effective way of raising numerous population averages.
Hiher-education attainment similarly shows some resistance to expansion, as well as questions regarding comparability over time. Bachellors, Masters, and PhD inflation seem likely. There are also cases where standards seem to have tightened somewhat: there was a biography of a 19th century American who was admitted to the bar in a Southern state on the basis of a brief interview, but who declined the practived on account of the obviously lax standards evidenced. (Ran across recently via Wikipedia, though the details escape me.)
Back to literacy, the US seems to struggle to achieve ~95% at a minimum, the number I'd initially written above, though by its own measure (assuming all those unable to participate in the assessment are illiterate) as low as 91%.
The UNESCO values strike me as somewhat suspiciously high. I'm not sure that's warranted suspicion, but it suggests investigating methods more deeply.
The second part of that sentence, is not really the same as the first. By his own admission, his book is a real outlier on the high side (second highest in his peer group of O'Reilly books), and it only basically compensated for lost income. This strongly suggests that the median case, is you lose money.
Now, there are lots of other great reasons to write a book. The satisfaction of helping others, the space to focus and expand your thinking on a topic, the increase to your reputation, etc. But, "economically viable" doesn't really equate to "at least one or two people didn't lost money doing it".
(With the most obvious exception being if you're a public figure of some sort.)
I'll also add that he must have one heck of a deal with ORA to get those kind of royalties because the standard ORA contract based on his sales, would not come to anything like that much money.
"that I get 25% of publisher revenue from ebooks, online access, and licensing, 10% of revenue from print sales..."
I'd revise that, and say it's not worth your time and energy if the goal is to make money from it. There may be other goals (e.g. to evangelize and popularize some piece of technology, or maybe to make certain tech more accessible).
Do good once with a connected lawyer, and your name gets passed around.
Tl;dr:
Q: Should I write something if I kinda want to?
A: Write it. Even if it's just for you.
Is it too creepy to wonder how the author sustain himself during the "full-time without income" part ? (Did he start saving earlier on to get a big safety cushion, did he get an advance, etc ?)
In any case, good for him, of course, no jalousy implied !
(Also, as for the "your lifetime must be quite extravagant"... Again, "fair enough", but apparently the whole "FIRE"[1] movement might beg to differ ;) )
[1]: https://www.mrmoneymustache.com/
That said, given his comments about finances (which are spot-on), it does seem like sort of a leap to take 1+ year off. Nothing wrong with taking some extended time off, but most wouldn't use it to write a book full-time. Of course, going in he may have had unreasonable expectations which were indeed met.
My book writing experience was much different:
* just took a few weeks of part time work, mainly just organizing blog posts
* Leanpub pays much higher royalties (80%)
Books are a great way to learn more about the topic and help others. It makes training and employee onboarding a lot easier. You can tell folks to read a chapter and then review.
Books aren't a great way to make money, but they're fun to write and a great way to give back to the programming community.
Were these your own blog posts, or posts from other folks? If the former, you should include that time as time it took to write the book!
Martin's book is clearly a masterpiece and mine isn't. Just though I'd chime in and let folks know that writing a book doesn't have to be a 2.5 year full-time commitment.
Another book was from scratch and I did spend a fair number of work hours on it--with the OK of management--supplemented by some (but not outrageous) nights and weekends. It probably ended up being like a part-time job for about 6 months plus additional time spent back and forth with the editor--which wasn't actually a lot.
I don't use leanpub to create my book, but I still put it on both leanpub and gumroad. In case you aren't aware, gumroad [0] gives better returns and holds your payment for 1-2 weeks instead of 45-75 days on leanpub.
[0] https://gumroad.com/features/pricing
I used to have several guys on my team that had published books- and they were great, and were constantly getting contacted about other jobs, and even to write other books.
They all said the actual book itself made them no money beyond their initial (small-hardly five figure) advance, and in terms of dollars per hour they probably would have been better off getting a fast food job, but it opened up a lot of doors and made them at least a little bit "internet famous."
Which is too bad. I want money!
Case in point - you don’t even link the project in your comment! I can’t even begin to give you specific advice because I don’t know anything about your project beyond its age and basic popularity tier. Maybe it’s super relevant to me and I would benefit from bringing you in for some consulting. We’ll never know because you didn’t mention the crucial details.
Here are some generic things you can try:
- Don’t be afraid to mention your specific project in relevant settings, like this forum or an interview.
- Use examples from your project to answer questions (“Sure I know about X, I considered using that when my project needed Y, and my benchmarking eventually suggested Z was better in that instance”)
- List the OSS project on your resume like a job (“Primary Maintainer, MyLibrary, 2012-. Designed, Implemented and Maintained a library with 12,000 github stars. Reviewed and merged 300 community pull requests. Implemented CI/CD...”)
- Identify corporate users of your OSS and proactively offering consulting
- Speak at conferences/meetups focused on your programming language/ framework /industry
- Blog about the project and your experiences with it
And I'd add that this is the real value IMO of going with a name publisher--which is otherwise a bit of a mixed bag. Fairly or not a lot of people mentally make at least a bit of mental deduction for a book published independently.
I love writing (and I’m working on another book), but other than maybe getting you in the door, you’ll still have to deal with typical tech interview nonsense.
Also, regarding "overcome the hurdles": those hurdles are now practically non-existent with various publishers. This results in books on the topic that should never have been published.
I could explain in more detail, but there's a lot of negative connotations with technical book authorship, which I work to overcome in such interviews and in roles. Does the author care more about working on their reputation than working for the company? Did the author only write the book to make an exaggerated name for themselves for the benefit of job interviews? (As you suggested in your opening sentence :-) I personally only write books when I'm already the expert on the topic, and it's a way to share my expertise.
Another interview I had years ago, after telling them about my first book, the interviewer said "so you know the theory, but can you put it in practice?" The assumption being "those that can do, those that can't write books." I was in a worse position for letting them know about it.
And of course, there can be positives for writing books. You are showing a willingness to share your knowledge with others. (You can do that in blog posts as well.)
Edit: added missing word "interview"
> Also, you sound overly modest to me.
This was my reaction as well. Absolutely no offense to the parent comment, but this sounds like a combination of being overly modest + getting bitten by dumb behaviors by bad companies.
There's also a big difference between:
- Strut into the interview. Drop a copy of your book on the table. "I literally wrote the book - hire me"
And
- "Tell me about yourself" ... "Well, I'm bla bla bla, passionate about xyz, oh, and passionate to the point that I wrote a book about xyz if you're interested in the details"
If you're an arrogant ass, yeah, the book is a liability. But unless you really dislike the thing you wrote and want to squash it, the fact that you wrote a book at all, much less the subject, says something about you as a person. Others in this thread have talked about the positive signals this sends so I won't re-hash those here.
There are multiple problems with that attitude, including: 1) You probably aren't hired to write books, so what matters most is other things you'll be doing. 2) There are really good books and really bad books, so saying you wrote _a_ book doesn't carry the weight you may think. Was it good?
Donald Knuth Harold Abelson and the Sussmans
- a few others but you get the picture, most subjects do not have a definitive book.
This is true, but some employers will allow you to write on company time. As Kleppman notes, value created by books squirts everywhere, only some of it onto the author, which can be distinct from value landing on their employers.
I've been working on Knative in Action for the last year because Pivotal (now VMware) liked the idea that it would happen under their flag.
(Your books are quite excellent, by the way.)
It is not to write code by themselves. It is to help other people do it.
For this, being a walking encyclopedia certainly helps. Of course, there's probably a correlation with being able to solve the programming puzzles in such a situation, too.
There’s nothing HN typical about him :)
I've long ago accepted I'd never make that list. If it ever happened I'd probably commit myself to an asylum immediately because it'd be 1000x more likely I had actually finally cracked and started hallucinating things.
Actually let's be real. Being a famous programmer is probably within my reach. I lack the discipline, focus, and dedication to spend the right amount of time on the right parts of the right projects. If this is possible for me to fundamentally address and within my capacity (still questionable) than doing things of deep impact is probably feasible. Even if it isn't, I should do it anyway.
I avoided children and marriage so I'd never have to choose safety over taking risks. So, take, more, risks. Now is the only time there ever will be.
I should print out those last 2 paragraphs and read it aloud in front of my bathroom mirror every day.
https://news.ycombinator.com/newsguidelines.html
It is listed on my resume, but i don’t mention it at interviews because it was so long ago.
Last year at a job interview, the interviewer told me he still had my book. I got the job.
When the above doesn't apply you still need them to know you wrote the book because sometimes they will look up the book and a good book will overcome your bad interview.
The exception to the above is when you are bored of the topic and are interviewing for something completely different. In that case you hide it because they might assume you will leave for a better job in your field latter - after all you wrote the book in something else so you must be valuable.
This is a real problem. People writing some really bad quality tech books from certain publishers. I'm not going to trash the publishers because some of the authors care about writing good books (rather than being able to say they wrote something) and do it with little editorial help. They produce something which would have been better in other circumstances.
I am routinely amazed at the arrogance shown by interviewers. Even people that are usual humble and great to work with get in that position of authority and judgment and suddenly act different. It's a very disappointing aspect of human nature.
Heh- you are quite accomplished I see from some googling. And I have to be honest, I fail to see how having an Addison Wesley book under your name in any context could be seen as a negative- the guys I was referring to were writing "Learn the MEAN stack in 21 days" type of books. But yeah I of course agree that you don't slam a copy down in the opening of the interview and try to use the fact that your name is on it as your primary selling point- its really more to get you in the door and have people reach out to you about interesting opportunities you might otherwise not have found out about.
You might just be running in much more intense circles than I am, but the number of people who have written a technical book is small enough that I have ran across only a handful in my career and my reaction was much more about surprise and delight than worrying about the motives behind it, but YMMV I guess.
I only mentioned this in the first place as a counterpoint to the idea that books may have a lot of value in an interview. I think it has value in _getting_ the interview, but you might find the interview is now a little bit harder. And thinking that your book matters most may sound too arrogant.
I have recommended that people write books over the years (I'm not anti-book!): I just wouldn't list the interview as a perk. A big perk is getting to help people worldwide (my books have been translated into other languages), including those who don't have access to bay area conferences or other local experts. Another perk is assembling a technical review team of fellow experts and working on the draft with them, listing to their feedback and learning from their experiences to improve the book.
I attended a talk you gave at AWS Re:Invent 2019. You need some serious, serious help.
No company should ever be speaking to you like that. You should be showing companies the door, not the other way around.
Early on in my career I learned most tech companies are absolute garbage and are not worth working for. You're worth a lot more than they are, brother.
Nothing wrong with that. I see it as a conversation starter.
I mean it's in general like if you hire a PhD into a role that needs to cover a lot of areas, can't be super detailed in anything, and needs to get stuff done as opposed to pure research.. that can turn out poorly.
> He would tell people they couldn't do things they'd already done and then back-peddle that it wasn't possible when he'd written his book
This was the core problem: Modern technologies and frameworks move fast. His book was about the state of the art five years ago, but it was woefully out of date for what we were doing. That didn't stop him from trying to exert superiority over the more knowledgeable team members.
Some of us read his book. It wasn't even a great resource on the topic. Re-reading the Amazon reviews, I have to believe most of the positive reviews were bought or fabricated.
Since then, I'm cautious about hiring anyone who tries to portray themselves as an expert in the field. And if you're hiring an author, at least read part of their book during the interview phase.
Think of it as when a candidate claims she knows a language X well, but then is unable to answer reasonable questions around X. Saying you have written a book is like this claim, except dialing up expectations to the max.
Not saying advertising a book is a bad idea, but be aware of the expectations you are setting up.
That would seem to depend on the publisher, and the business arrangement, as to whether it really signals anything (though I suspect that often hiring managers might not know enough to correctly interpret the signal.) Obviously, if the book is a success and widely-known for its technical merit, that's a positive signal, but that's different than just getting a book published.
Even where getting over the hurdles to get a book published signals something, there's a question of whether it signals something relevant to the job you are hiring for. The hurdles of getting a book published (where they exist at all, e.g., outside of what is essentially vanity publishing or a close approximation) aren't particularly similar hurdles to those encountered in most technical jobs even when the book is on a subject close to the job duties.
A lot of it depends on the publisher. If it is for example OReilly, I would be impressed. If it is Packt, I would not be impressed at all. Some publishers do a much better job of screening and providing editorial support and technical reviews so that if an author is published by them, I can have confidence that the author is a subject matter expert. Some publishers are little more than self-publishing and so I would not have confidence that the author was an expert.
I think he’s underestimating his salary and stock value.
Most Silicon Valley engineers at his level would make more than $200,000 a year with stock and salary.
I think it's probably good to go into the project with an idea of why you're doing this. Are you creating what's basically an extended business card? Are you trying to help a particular kind of person that you know very well? Or are you chasing the goal of matching up a slice of knowledge with an eager audience?
There are other goals. For instance, a lot of disparate experiences in your career can come together to help on a certain section you're working on. This allows you to personally gain some synthesis from your experiences you might not otherwise. You can find new depth in ancillary areas as you go through and footnote, adding more depth to the things you're talking about both for yourself and the reader.
It's good to have those goals, even if you end up delivering a different kind of book than you had planned, because as a sole author something's got to keep you motivated for years. This isn't a software project, a job, or even a romantic commitment. Whatever you write, if it's worth writing, becomes a part of you. Like one of the other commenters says, if you have people on your team with published books they're likely to be busy responding to and helping folks interested in those areas. That doesn't go away simply because you move on.
Probably the best advice I can give for new authors is that it should be a lot of work, and once you finish each phase you'll say to yourself, "Now comes the hard part". This essay writer gave 50 presentations. Wow! That number of public appearances alone is a non-trivial amount of work. Don't forget contacting bloggers, podcasts, tech publishers, and so on. No matter where you are in the process, next up is the hard part.
None of that is any reason not to do it, of course. You just should be aware that if you're going to do a good job it's a major commitment. Prepare your outlook accordingly.
Does anyone have views from having tried to do both - book and open source project?
You need a topic where the people who work in it are well paid, even by SV standards, and you can save them a lot of time and effort by condensing the state of the art into actionable information and examples.
So this is not "writing a book" - this is writing a book for a niche market that will pay well for non-obvious high-value technical content.
Something like "Xcode for Beginners" will not be nearly as successful - especially not now that app dev is so established.
Even though Xcode has a lot of quirks, the features and the build process aren't too much of a mystery and most people in the industry will be able to work out the essentials for themselves.
The key was having my own e-shop and a set of readers who come to read the blog. Once people buy directly from you, the whole balance shifts. Normally, distributors and bookshops take a large cut before sharing a slice of profit with you. Avoid them and the whole thing turns profitable.