When a Traditional Publisher Acts Like a Self-Publishing Company

I always enjoy when I get a book recommendation by someone who knows what type of books I like. This happened a couple of months ago when my local librarian showed me a new book that the library just purchased. The book was not yet cataloged nor was it ready to lend, but she said that if I stopped by later that afternoon she would have it prepared for me.

The book was The Internet of Things by Donald Norris. Though I hadn’t read much about IoT, nor anything by Donald Norris, I was still excited about getting the book. The subtitle of the book got me even more excited since I am a fan of the Raspberry Pi and becoming an Arduino aficionado: Do-It-Yourself at Home Projects for Arduino, Raspberry Pi and BeagleBone Black.

PHP Error

Knowing quite a bit of what would be in the front several pages of the book, I decided to skip ahead and start reading at the first thing that might catch my eye. Unfortunately, the first thing that jumped out at me was a poorly formed portion of PHP code on page 25.

I tried running the code and was surprised to find that it worked even though it wasn’t written correctly. Since PHP isn’t a language I know well, I decided to get some help in figuring this out. I sent off a message to my PHP friend and he confirmed that the code was not correct, but explained that the reason it still worked was because there was only one error of that type in the code. The server was smart enough to compensate for the mistake but would have failed had there been another one like that.


The Internet of Things CoverI then continued to scan through the book not thinking that one error was that big of a deal. But I noticed—just 4 pages later—the text gave 2 different names for the same table when talking about setting up a database for a project. That particular section of the book asked the reader to manually create database tables from the command line in MySQL. If that last sentence didn’t make sense to you then you probably understand that this was harder than normal people usually deal with. Yet the book seemed to be written for normal people.

Because there were two different names for the same table, there was no way for the reader to accomplish the task of setting up a working database the way the text expected. This was on page 29 of a 352 page book. If the book had many more errors like this then it would be unusable…

Sticky Notes

At this point I started looking for errors. Since it was a library book, I used sticky notes to mark my findings. From page 25 to 201 (a little more than half the book), I ended up with 46 sticky notes pointing out mistakes that I found. The vast majority of them were editing and formatting errors. Because it is a technical book, many of the errors were not the kind that could be easily caught by a proofreader, but there were a good handful of those too.

It seems like this book skipped a couple of steps before it got sent to the printing press.

Back to the Library

This book is published by TAB, an imprint of McGraw-Hill. A month or so previous to this incident I had pointed out a couple of minor mistakes in another McGraw-Hill/TAB book (Hacking Electronics) to my librarian. Though nothing was too egregious with Hacking Electronics, I told her when I returned the book that I had previously noticed a few mistakes in other TAB books. When I brought The Internet of Things book to show her my findings I also grabbed Hacking Electronics from the shelf.

My librarian was eager to know what I thought about the new book. That is, until she saw that I was also carrying Hacking Electronics. She remembered my complaint about that book and knew immediately that the new book probably had mistakes in it too.

She began flipping through the book to look at my colorful sticky notes. On the first page of the first chapter she saw a style error that I had not even seen. With an average of one mistake every 3.8 pages that I found, it did not surprise me that she caught one immediately.

Contacting the Publisher

I contacted McGraw-Hill and asked if there were any corrections submitted for the book. I was put in touch with a senior editor for the division. He said that nothing had been submitted for the book. Unfortunately, McGraw-Hill does not have a system in place for the public to submit corrections like O’Reilly does.

I told the editor that I had found some mistakes in the material and said I was disappointed in the quality of the book. He was kind (or at least diplomatic), and asked me for some examples of the problems so that he could ask the author about them. My level of disappointment reached a new low at that comment. In my mind, not a single one of the errors I found were author errors.

The way traditional publishing companies work, at least as I understand them, is that the author submits the material and an editor works with them to make the material better. The few frustrations that I had with the author were because of comments like, “I showed you the right way to do this in chapter 2, but I already have this example written this way, so you modify my code to do it the right way that I showed you.” That came from page 150 of the book. (Not a direct quote but the same sentiment). While I don’t like that the author said that, an editor is the one who should have slapped the author and said, “Don’t be lazy! Fix it yourself!”

It is an editor’s job to find problems like that and tell the author to do better. Therefore, I still don’t see that as anything that the author should have to fix. He doesn’t know the problem exists. He is too close to the work. An editor is the one who is supposed to catch problems like that.


Sticky notes removed from the book when the book went back to the library.
Sticky notes removed from the book when the book went back to the library.

In response to the editor who said that he would take some examples and pass them along to the author, I told him I didn’t think that the problem were author problems. I was glad to provide some examples, but the examples were more formatting, editing and proofreading errors. I did not give him the example from page 59 where the author told the reader to write their code properly. I wanted to emphasize that, in my opinion, the problem was a McGraw-Hill / TAB problem, not an author problem.

Here are a few examples.

  • flowing line instead of following line (page 125)
  • missing space between sudo and the following word (pages 156 (twice), 166 (5 times), 170, etc.)
  • preceding table instead of following table (page 173)
  • missing colon (page 170)
  • Rasbian instead of Raspbian (pages 155 and 163)
  • MAC address not properly capitalized (page 182)
  • EEPROM not properly capitalized (page 201)

Then there are the many places where formatting is not consistent in the book. The book uses mono spaced text for code examples, but several places there is normal text within the code that will break the code if put into a program. Those lines should be normal text or set off from the code as comments.

What’s Next?

In the whole time I communicated with their editor, I felt like I had a listening ear. However, he kept insisting he would talk to the author about the things I found. Without trying to be too unkind I told the editor that I didn’t think the author was responsible for the majority of the errors, “unless McGraw-Hill/TAB is a self-publishing platform and the author is responsible for doing his own editing and layout work.” After that comment I didn’t hear from the editor for another month until after I sent 2 more emails asking if the line of communication was still open.

Though I only sent the editor about 1/3 of my findings, he didn’t seem to want any more. Of course, I also didn’t want to spend much time doing, for free, the work that McGraw-Hill is already paying their staff to do.

At this point I think I have reached the end of what I can do with my contact at McGraw-Hill. I really want them to continue to put out books on subjects like this. This is the kind of book that gets me excited to go to my library. But, if technical books, from a publishing house that is a major player in textbooks, have so many errors in them that the information is not usable, then I am not sure I want to read them.

I know it sounds like I am being nit-picky about the book, but I really never even fully read it and I found all these mistakes. I only skimmed through looking for things that caught my eye or sounded interesting to read. There were huge sections of code that I completely overlooked because they were in languages that I didn’t know. So unless I was actually trying to do the project, I didn’t need to try to understand how it worked.

The thing that bothers me most about all of this is that my library has been given no assurance that they can confidently buy a McGraw-Hill / TAB book that will be better edited in the future (an assurance I asked the editor to give me on several occasions). I also don’t feel like I got anywhere with the publisher. As I said, the editor I talked to was kind, but his responses were very political. There was no commitment to assuring me that this was a one-time case.

My hope is that there will be an improvement in their process and that I can confidently enjoy books by publishers like McGraw-Hill. But when traditional publishers begin to act like the self-publishing companies they seem to detest, they lose their authoritative position in the market through laziness.

“You Should Try More Fiction”

I really like our new public library and have always enjoyed the workers there (as opposed to the other local library where I have never heard anyone say anything nice about the workers). Of course our conversation is always about books we’ve read, are reading, or want to read. Admittedly I probably read more non-fiction than the average person. Knowing that the ladies at the library find some of what I read to be very boring, I intentionally mentioned that I just started reading a 500-page book on how to program computer chips at a low level without the need to load an operating system on them.

That prompted one of the ladies to comment, “You should try to read more fiction. I think you would really enjoy it.” Her comment wasn’t unkind, but it wasn’t in jest either. The implication was that I don’t enjoy reading what I read.

Of the 66 books I’ve read so far this year, I did read 1 fiction book. I didn’t enjoy it. It wasn’t poorly written, but it wasn’t the kind of story I like. It was recommended by one of the librarians. She suggested another book to try. I tried. But there was too much raw language in the first few pages that I really didn’t think I wanted to read any more.

While I read quite a bit of non-fiction, I would venture to guess that I still have quite a variety of content. Just scanning quickly through the books I read in the last two years, here are some of the broad topics: Bible, computers (hardware and software), missionary/church ministry, business, communication, adventure, travel, craft/making, self improvement (particularly in areas of brain development), politics, history, electronics, grammar, math, self-defense, Christian growth, creativity and productivity.

While I do read heavily in the business, communications, and technology categories, most fiction readers I know vary their reading tastes by only 2 or 3 genres.

I try not to berate fiction readers, though I really don’t understand why you would put forth the effort if your aren’t going to learn anything; however, I am amazed as to how many of them think that what I read is boring and that I need to “broaden my horizons” in my reading choices.

Though you may not enjoy reading what I read, that doesn’t mean it is boring to me. Who knows, you might find a book by Malcolm Gladwell or Seth Godin to be very enjoyable if you give it a try.

Language Proficiency – What I “Can do”

After returning from a great trip to Peru a couple of weeks ago, I got to thinking about my Spanish language proficiency. And, like many things, I think about stuff more often than I do anything about it. But a couple of days ago I finally did something about my thoughts and took an online assessment of my Spanish language skills.

Peru sign/logoI did a web search for getting started. There were several pages that popped up as possible places to do my assessment, but I chose the one from Lengalia to spend my time on. I chose this one because it looked like a more nicely designed website than many of the others I saw. Though not always an indicator of how careful they are about being accurate, it does seem to be that the better designed sites are also the ones with better information. I may go through tests at other sites later, but this is the only one I’ve taken so far.

Common European Framework of Reference

I scored a B2 on the Common European Framework of Reference scale that Lengalia uses. That puts me in the upper intermediate range on their scale. I don’t completely agree with their assessment because I don’t like the word intermediate, but I will accept it for the moment. I also choose to defend myself in that I was fighting Mr. Sandman when it came to reading some of the longer (i.e., boring) texts towards the end of the test.

To get into the C1 level I needed to have a better understanding of “implied” meaning. That is, I needed to be better at reading between the lines. (Like understanding the Mr. Sandman comment above). I know I did struggle with that a bit. Again, partially based on just trying to stay awake. Maybe I should take the test at 11 in the morning and not 11 at night next time.

Another area where I struggled was the fact that this was a European based test. That means they were testing on Iberian Spanish (mainland Spain) and not Latin American Spanish which is where my vocabulary has been built. There were some words here and there that were totally new to me. However, I resisted the urge to look anything up so that I could get a truer representation of my skills.

In their self-assessment chart I certainly fall into the C1 category on some things and B2 on others. So I guess I would be a B2+.

More Evaluation Options

Graphic of various Spanish dialect regions in PeruThere are many scales to rate your proficiency. Most of them are based on “can do” statements. These are self-assessment items that state at various levels you are able to communicate (or comprehend) certain types of information. These are based on functional proficiency as opposed to static, non-forgiving tests.

This language proficiency scale breaks things down into speaking, reading, and listening. On a speaking level with this scale I am solidly at an S3. Reading I feel like I am at R4+. Listening I am at an L4 level. So that puts me towards a more lower-advanced level as opposed to the dreaded intermediate.

I haven’t gone through the ATFL can do statements yet, but I look forward to seeing where I am on this one. It was a longer document than I wanted to read at the moment. I also want to go through some of the tests at the Language Testing International website. While I don’t know anything about their tests, they do provide a huge amount of information.

An Interesting Find

While looking for more proficiency level charts I found an interesting folder on the State Department’s website.


I wonder if it is really supposed to be hidden since the name “Hidden Folders” is in the URL. The title of the page is “Hidden Documents.”

Really, I’m not a hacker! I just used Google to search for the State Department’s definitions of language proficiency.

I think I am between levels 3 and 4 in Spanish based on their self-assessment page.

Way Too Much Info (But Fun To Read)

And, as always, you can easily get lost in Wikipedia reading interesting articles about various Spanish dialects like this one on Peruvian Ribereño Spanish or Argentine Rioplatense Spanish. These are actually a great source of information and I wish now that I had taken the time to read the Peruvian article before I went there last month.

Maybe before my next trip I will remember to check out my friend Wikipedia.

Airports and Telephone Auto Attendants

I am traveling out of the country and needed to call my credit card company to make sure my card did not get frozen while traveling. I called the 800 number on the back of the card and intentionally did not want to speak any of my responses if not necessary. People are sitting around me. Unlike the man who planned a surprise retirement party while yelling into his phone, I didn’t want other people to hear my conversation. It is amazing how much private information people shout into their phones when they are in public.

Receptionist phoneAnyway.

When I sat down at this end of the airport an hour ago, no one was around and no planes were boarding near me. Therefore, there really weren’t any announcements that would interfere with my phone call.

I got through the initial parts of the call to the bank just fine. But when the auto attendant was asking me specifically what I was calling for and was about to wait for my response an announcement came over the speakers. The auto attendant waited patiently for me to stop talking.

The announcement finished and Mrs. Auto Attendant began speaking. She wasn’t but a couple of words into her apology for not understanding my request when another announcement started. She patiently waited again and when the announcement paused Mrs. Attendant said that she would transfer me to a real person who could better help me with my request.

Other than having to wait through the announcements, that was probably the fastest I have ever gotten a real person when calling a bank since the scourge of the auto attendant began.