This week I tried reading the book Data Structures and Algorithms in Java by Robert Lafore. But I gave up on it halfway through. I will try to explain why if you won’t quit on this article like I did on that book.
It’s Not Horrible
Don’t get the wrong idea: I did not stop reading Data Structures and Algorithms in Java (DSAJ) because it is a terrible book. It discusses a wide variety of practical structures and algorithms that programmers encounter in ‘real’ work. And it does not skip many details, weighing in at over five-hundred pages.
The reason I quit reading the book is because it bored me. I should quickly add that I am the type of person who enjoys reading about algorithms and other aspects of computer programming that some programmers themselves consider boring. But DSAJ is so bland in its presentation that it could not hold my interest.
I have heard programmers complain about the verbosity of the Java language for years and years. This book does the language no favors in that regard, filling example code with comments like
} // end class and placing this between every method:
Most examples are already bloated by being shoe-horned into the object-oriented nature of Java, by necessity of the language itself. The naming and formatting of the code exacerbates that bloat and all the related problems. Seeing repeated examples of simple and concise concepts, such as a linked list, explode into pages of code like napalm makes the book tedious and boring. Trying to help visualize the behavior of the code by fitting them into applets is a nice idea, but I felt like it did not work in the book’s favor.
However, the author does discuss a lot of useful subjects and does so thoroughly—at least what all I read. If Java is the only programming language you know then this could be a good book if you want to learn about the common data structures and algorithms out there. But I would still be more tempted to recommend that a person learn another programming language and read another book instead. “Algorithms in C++” by Robert Sedgewick comes to mind.
Next Book of the Week
Recently I’ve been considering using other shells for scripting purposes as an alternative to GNU Bash, which is what I’ve used for years. But before I permanently jump ship to something else I want to make sure I know everything I can get out of Bash, which is why next I am reading The bash Cookbook by Carl Albing, JP Vossen, and Cameron Newham.