I read some books in 2022, and have some thoughts about computer science writing
At the start of this year I set out to revive my long dead reading habit. After having kids it fell by the wayside. I’ve read 41 books so far this year. Mostly a mix of science fiction and nonfiction computer science books. Here’s the complete list of everything I’ve read. I’ve got mixed feelings about keeping track and sharing counts of whats been read in a year — it isn’t about quantity, but I do enjoy being able to look back at a log of what I’ve read.
Some notable works:
Record of a Spaceborn Few, by Becky Chambers took my breath away again and again, a book that hooked me right from the start.
I loathed nearly every moment of The Ministry for the Future, by Kim Stanley Robinson.
Madeline Miller’s Circe was one of the most beautiful things I’ve read in a long while.
This is How You Lose the Time War, by Amal El-Mohtar and Max Gladstone was probs my favorite read of the year.
Programming from the Ground Up, by Johnathan Bartlett is one of ’em that I want to revisit because I know I need to pay better attention to it than I did the first time round.
I didn’t set out to read mostly science fiction and computer science books, I sort of fell into them. I’m thinking next year I’ll follow some whims and build some themes to read around; mystery is top of the list.
After engaging in my little tour of computer science flavored books I think most programming books do too much of the wrong thing. Rather than pick a lane and run, they float between a few spaces:
- Tutorials, learning-oriented (teaching someone to cook)
- How-to guides, problem-oriented (a recipe for cooking a specific thing)
- Explanation, understanding-oriented (historical overview of an ingredient’s cultural importance)
- Reference, information-oriented (an encyclopedia article about an ingredient)
I think there is a lot of space for programming books that don’t try to be everything, but pick one of the above and go all in.
I think each of these types maps fairly well to an audience:
- Tutorials are for folks who are totally new to a thing
- How-to guides are a step up from tutorials and help you learn idioms and best practices of a space
- Explanation is useful when needing to convey the value of a thing
- Reference is generally for experts who are cozy doing the thing
Instead, most programming books try to be everything to everyone for every occasion. I think just about all the books I read had a preamble about “who’s this book for” and they’re all basically for the same kind of person according to all those preambles…someone who isn’t necessarily an expert, but familiar with the basic concepts of programming.
…but maybe this is also biased by the sorta books I was picking up?