They tend to be awful and you should never feel obligated to read one. Generally they are written in a formal tone with less emphasis on conveying information in a digestible manner and more on making the author sound smart. There are a few that manage to buck this trend, but even then I do not learn enough to change the way I program without additional practice.
I actually do start tech books all the time and put most of them down after dragging myself through 1 or 2 chapters having learned nothing. I have read exactly 2 tech books from cover to cover because I found the narrative riveting.
I have used many more tech books than those two to learn programming, but never by actually reading them. I'll write a post on how I approach learning from books some other day. Today, though. Today is going to be for actually writing code rather than writing words.
Because I have code in my fingers that needs to get out.