Expectations for an introductory programming book
After I published my last blog post requesting technical reviews of my Go book, I received quite a few responses from the Go community. Thanks to all who came forward to review the book.
Let me give some context before getting into the details of the subject of this blog post. I started working on my book around mid of 2015. However, I couldn’t continue to work on it for a long time. I had decided to self-publish my book from the beginning. I made the book available through Gumroad at a small price in PDF format. Few have bought the book so far. I usually update the book whenever I make some progress.
As I continue to work on the book, the question I ponder these days is about the expectations of a reader for an introductory programming book. I would like to hear your thoughts on the same. You can write your thoughts on your blog, comment anywhere where I share this post, or you can write to me via email: firstname.lastname@example.org
Okay, let me rephrase the question:
As a reader who is beginning with programming and software development, what are the expectations you will have when buying an introductory programming book?
Now let me share some of my observations on the topic. These are some of the things I am trying to fulfill in my book. Some of the revelations are very recent, so you will not see it reflected in the current work.
- Few are expecting a realistic project unfolded throughout the book. So far I have used frivolous standalone examples everywhere in the book. Probably I can go for a hybrid approach — present one problem in the exercises section which keeps developing from the 3rd or 4th chapter and continues till the end.
- Use practical compact examples. As I mentioned in the previous point, many of the current examples are silly. Using realistic examples are a hard thing to do; I do not want to lose focus when explaining a concept with details of the problem at hand.
- Whenever a new feature is getting introduced, compare it with a similar feature in another programming language. I have intentionally tried to avoid any comparison, though it has crept in few places. I am still skeptical about this idea.
- Focus on “why” and not the syntax. I need to do more work on this issue. I should explain why certain features exist while explaining the syntax and semantics.
- The book should be available in many formats including EPUB, MOBI, PDF, and paperback. One of the challenges I am facing is typesetting the book so that it will look good in all forms.
Now it’s your turn, think about the original question and write about it! I will look forward to your thoughts on the expectations for an introductory programming book.
Book website: https://golang.muthukadan.net
Credits: The ladder picture used in the book cover and in this blog is taken from Wikimedia Commons (By Mykl Roventine [CC BY 2.0 ], via Wikimedia Commons)