First a disclaimer: I chose to receive this textbook to review from the Vine program, meaning I got it for free. I am an Electrical Engineer and I like to have references for the different languages I use at work...not having one for MATLAB, I thought this would be nice to try.
Here's my review:
This book is exactly what it claims to be: an introduction to MATLAB. All in all, it appears to be a very well written textbook (I already know MATLAB so I can't say I tried learning with this book, but I did browse through it and read some sections in detail and it was a very good reminder and seemed easy to follow and understand).
The book does a fantastic job of describing the different functions and terms it covers. It also is filled with useful smatterings of actual MATLAB syntax and code including at times alternate methods for achieving the same output. Code examples are good and text explaining them are very easy to read and follow. Well written for what is essentially a programming book!
The table of contents is well organized and descriptive, making it easy to skip around the book looking for specific topics. Index is decent...could stand a tad more detail, but acceptable.
The preface makes a good point - the book seeks to explain both the use of functions and the programming concepts. I can't say it's completely unique to approach MATLAB this way, but it is, in my mind, the preferable way to do it. Using functions alone doesn't leave you much flexibility when you are faced with something more complex and need to actually write useful programs or something not directly correlating to a function. But not knowing the functions really cripples your productivity.
The book also touches briefly on some of the more advanced concepts in MATLAB (even 3D plots, animation, sound and image processing). Not enough to really use these super effectively without another reference, but enough to try at least simple versions and to know that it exists as an option, which for an intro book is quite acceptable and nice that it bothers at all.
I do like the practice features in the text - most of them basically have you pen and paper what you think the output of things will be and then go into MATLAB to check your answers. It seems a little trivial to have to be solving math equations by hand until you realize it's a great way to make sure that you both understand the math and the MATLAB. If they don't agree you did one or the other wrong! I liked this idea quite a lot for both students and myself : Good review of both language and math.
As for the problems in the text, reading them, they seem useful. Some are very easy seeeming and some really do require you to think (the later chapters basically make you write a complete program). I didn't try them honestly, but at least they are clear - I don't have too many questions understanding what they want which is very good for a textbook. Without an answer manual, these aren't as useful to me though since I could do the problem, but not really check my work unless I did it by hand as well (which is why I think the set-up/suggestion in the book for how to do the practice problems is so great).
I did knock it down to four stars for a few things though that made it a little less useful as a reference in my mind (and in my mind any good textbook should be judged this way...even if you buy it for class, you want to be able to turn to it years later as a reference).
First - I understand MATLAB has a VERY good help feature that explains almost any function. But that's only really helpful if you know to bother looking for the function in the first place. One of the most useful things any programming book can have for me is a library/list of all the functions with a brief explanation of any variables. Then when I'm programming I can scan the list looking for, say, anything with "matrix" in it if I know I'm going to be using matrixes. Sometimes just seeing the name of a function is really useful to me to let me know that "hey, the language has a function for this!"
This book doesn't have that. A great deal of the functions are described in the text, but there is no list that I've found in it. If you find one, point it out to me in a comment please, but flipping through it, if there is one I totally overlooked it). In some of the sections, additional functions are mentioned beyond those that are explicitly explained, which is good, but the variables and syntax are not explained which is also too bad...although with MATLAB's help I could figure it out if I need to.
Second - In my courses (I have a Master's in Robotic Controls) I had to use a lot of toolboxes and do in work as well. Toolboxes are basically the MATLAB version of additional software add-ons (kind of like libraries in other languages) which give you additional functions you can call. The basic student edition of MATLAB software doesn't come with any toolboxes (at least it didn't used to) and toolboxes are expensive, but I still find it quite unfortunate that I couldn't find any mention of toolboxes in this book. It would be really nice to get a list of the toolboxes available for MATLAB and a brief description of what each covers (a paragraph or two). In my mind an intro book is a great place to put info like this...it tells you were to turn next if you need to head off in some more detailed direction after you grab the basics.
I'll update the review if I discover more...at this point the reading is as described - looking at the index and table of contents, browse of most most of it, and in depth reading of a few sections (notably the preface, "is" functions, scripts, loops, advanced tops, maxix representation, and sound and image processing)