 |
| Wrox Book Feedback A forum to submit feedback on Wrox books if other forums on P2P have been unable to address your book-specific needs. IF YOU ARE LOOKING FOR CODE DO NOT ASK "Where can I find the code for this book?" That question is answered here. |
Welcome to the p2p.wrox.com Forums.
You are currently viewing the Wrox Book Feedback section of the Wrox Programmer to Programmer discussions. This is a community of software programmers and website developers including Wrox book authors and readers. New member registration was closed in 2019. New posts were shut off and the site was archived into this static format as of October 1, 2020. If you require technical support for a Wrox book please contact http://hub.wiley.com
|
|
|

May 3rd, 2006, 09:06 AM
|
|
Authorized User
|
|
Join Date: Apr 2006
Posts: 24
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Attempt of genuine critique on wrox publ. practice
Hi,
First of all, as I already knew, I shouldn't buy wrox "Beginning..." books, because so far I have found them useless... I think these titles are very confusing also... The books are clearly not meant for people who want to learn a specific subject, rather the books are meant for people who want to start programming and want to do it with this or that programming language. Sure, towards commerce I don't doubt that this is a gold mine for Wrox, but towards learning and info, this is a disaster...
If I want to read about programming principles ( read 'common sense' really -- have never learnt anything from the programming principles spread out through books like this... ), I will buy a book about programming principles, but if every book about every programming topic tries to hide lack of cohesion and content, by writing about programming principles, it drives me mad! This redundant non-info makes a book a jungle when you want to find something and it takes double the time and concentration to read it.
As for my proposition to wrox, get one good book about "beginning programming", in which you really do an effort to make programming principles interesting, because no doubt they can be. Do some real research in the topic and come with some new material... This could also give some historical background (about how computer science developed) about computer science, which programming languages exist, and why and when (to)/(not to) use them, ... I almost get excited about this as I write, I think a good book like that summing it all up, would be a pleasure to read, even though programming principles are actually coming out of my ears...
Then ask your authors to stick to the subject, and advise people who have never programmed before to read the 'principles' book first.
Also I think about one subject there should only be one book. Everybody (at least I assume so,...) who is learning a certain language, would like to be good at it, not? I don't think there is anybody who wants to learn it half. Also nobody wants to have to read 20 books on the same subject, just to puzzle together this bit that isn't mentioned in the other books and so on... How nice would it be if you needed only one book about one subject, and it would tell you all about it. If some parts would be to difficult for a beginner, you could skip them and come back to it later...
As for now, some of the 'professional' books are this way. Actually there is this little sentence in about all of them in the 'who should read this book' section saying "however, if you are new to ... , this book doesn't completely leave you out..." Translated to plain english this reads: "if you are new to this field, this book is meant for you, and if you aren't, you are in trouble, because you are now reading more than one book on the same subject (eg. your time is being wasted)"
I don't like this way of commerce (as a general living principle, not only because it wastes my time and money), because it takes your readers for fools. I know I'm probably trying to convince you of stopping to make disgraceful profits, which has not a big chance of succes, but maybe you genuinely want to offer good products to happy users... and in that case i wanted to lay my egg...
My impression is also that the beginning books cover not half of the subject (in this case a professional book could pick up where it left of...), but cover half of each chapter, condemning the professional books to repeating everything... This completely nullifies the reason of existence of 'beginning' books...
To resume:
- Separate programming principles from program language syntax
- One book about one subject, covering everything
- Clear and comprehensive titles (eg. not misleading, beginning programming is not the same as beginning assembler programming)
- Book content should be structured, cohesive, contain no redundant text, cover each subject exactly once and complete, and have a good index, so the book can be used as a reference
- If possible, every keyword, or subject should be explained completely in one place, so you can easily find out everything about it by looking it up in this place
- Cut down on screen shots. 95% of the time they are just book fillers. There are some horrible examples from this at wrox also, like "Beginning regular expressions"
To give an example of how bad it can get, I am now reading Beginning Visual C++ 2005 by Ivor Horton, simply because there is no pro book out there on this subject, at least not in the stores in this town, and because I have never programmed C++ before, and because when I tried to use Visual studio for learning java before, i got lost in the mfc classes and the lack of native support for the original sun classes,... so I wanted a book to learn c++ developing for windows. Reasonable book to purchase, wouldn't you think?
Well, I haven't finished the book, but the first chapters are a bit like this:
"If you want to include a new line of code, you can place your cursor at the end of the previous line and press enter..." Not kidding, this is sentence from the book... You couldn't even call that redundant coding principles anymore... I would think this fits in "using word for windows for seniors". Mr Horton, my granny has no ambitions for c++ programming, and in fact people who do shouldn't need info like that.
On the coherence, I give you an other example...
In those first, I think 2 chapters, the author explains in about 3 different places why the main function can be called main() _tmain() or wmain(). Each time he explains about half. Now let me tell you how I read a technical book. I don't remember a thousand page book by just reading it, I remember what can be found in it, and about where it can be found. This kind of writing makes it impossible to use a book as a reference.
On top of that a lot of not so relevant things are mentioned twice or three times, actually making the chapters that I have read much longer than they should be, hence wasting my time and concentration.
Why does all this happen, I wonder, do people at wrox work together in a kind of we are all friends and don't dare to critique each other ( the marketing "only good vibes" attitude ), lowering the standards considerably, but unpunished, because nobody dares to ruin the good atmosphere (just realize that your readers are not bound by this 'keep everybody happy' atmosphere, and that they will be harsh on what you take their money for)? Or does just nobody read through these kind of books before they get published, or do the wrong people do it? Or do the same people always do it, making it a routine job, where they don't notice what it is really about, or don't try out all the code? I think books should be double checked by practice, meaning someone who actually wants to learn this technology should try to learn it by a book and give (harsh) feedback on it.
Am I asking the impossible? I don't think so, lets give a positive example: Professional Javascript for web developers by Nicholas C. Zakas. That's also a wrox book, but what a book.
Javascript is not extremely rich on functionality, unlike maybe c++, but clearly it was also not developed by Ritchie and Thompson, and browsers mishmashing it more, made it seriously complicated. On top of that it is very abstract, meaning you kind of have to write part of the language constructs yourself to get functionality. This doesn't make it a really simple thing to get across and to learn...
Well, it took me exactly a week to go from novice in javascript to do anything imaginable with it, thanks to this book. That's quality. That's inspiring, that's value for money.
The book doesn't contain redundant text, nor coding principles, nor to many screen shots of ide's or other software. Is perfectly suited if you have no experience in javascript, manages to give a completely browser compatibility solution, something i have not seen any other book do, and the code works!
So, in the hope wrox take this critique serious and other readers give their opinion about the subject
sincere greetings,
ufo
|

May 3rd, 2006, 09:21 AM
|
 |
Wrox Staff
Points: 18,059, Level: 58 |
|
|
Join Date: May 2003
Posts: 1,906
Thanks: 62
Thanked 139 Times in 101 Posts
|
|
UFO: Wow, lots of great feedback. Please allow us a little time to digest some of this before we respond. There's a lot here to think about and I don't want to short change the answer.
Jim Minatel
Senior Acquisitions Editor
Wiley Technology Publishing
WROX Press
Blog: http://wroxblog.typepad.com/
Jim's Book of the week: No book this week - Donate to the Red Cross!
|

May 3rd, 2006, 10:18 AM
|
|
Authorized User
|
|
Join Date: Apr 2006
Posts: 24
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Thanx for taking it serious, There's no need for hurry, it's just ideas for the future,
Greetings
|

May 11th, 2006, 03:45 PM
|
|
Registered User
|
|
Join Date: May 2006
Posts: 2
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Quote:
quote:Originally posted by ufo
Hi,
First of all, as I already knew, I shouldn't buy wrox "Beginning..." books, because so far I have found them useless... I think these titles are very confusing also... The books are clearly not meant for people who want to learn a specific subject, rather the books are meant for people who want to start programming and want to do it with this or that programming language. Sure, towards commerce I don't doubt that this is a gold mine for Wrox, but towards learning and info, this is a disaster...
|
I disagree. I think it depends on what you're looking for. Personally, that is *exactly* what I was looking for. I wanted to learn C++ from the ground up, with no assumptions made about prior experience. In which case, Ivor Horton's Beginning Visual C++ 2005 seems to suit my needs just fine (at least so far... :) )
Quote:
quote:Originally posted by ufo
If I want to read about programming principles ( read 'common sense' really -- have never learnt anything from the programming principles spread out through books like this... ), I will buy a book about programming principles, but if every book about every programming topic tries to hide lack of cohesion and content, by writing about programming principles, it drives me mad! This redundant non-info makes a book a jungle when you want to find something and it takes double the time and concentration to read it.
As for my proposition to wrox, get one good book about "beginning programming", in which you really do an effort to make programming principles interesting, because no doubt they can be. Do some real research in the topic and come with some new material... This could also give some historical background (about how computer science developed) about computer science, which programming languages exist, and why and when (to)/(not to) use them, ... I almost get excited about this as I write, I think a good book like that summing it all up, would be a pleasure to read, even though programming principles are actually coming out of my ears...
Then ask your authors to stick to the subject, and advise people who have never programmed before to read the 'principles' book first.
|
I understand the approach you are suggesting, but I personally don't like the idea. Your method would require that a person looking to learn a programming language buy *two* books instead of one. How many people do you think would do that, when the competition offers the same thing in one book?
Also, while there may be some general programming concepts that are language-independant, the fact of the matter is that programming *concepts* are significantly shaped by the language that is used. The general approach to memory management is going to be very different between a managed language vs an unmanaged language, for example. The core concepts would not be identical.
Thus, I think it's perfectly appropriate and correct that each book tackle those concepts individually based upon the features and constraints of that particular language. Otherwise, you're asking for a one-size-fits-all solution, and those tend to be much poorer as a general rule of thumb compared to a custom-tailored solution.
Quote:
quote:Originally posted by ufo
Also I think about one subject there should only be one book. Everybody (at least I assume so,...) who is learning a certain language, would like to be good at it, not? I don't think there is anybody who wants to learn it half. Also nobody wants to have to read 20 books on the same subject, just to puzzle together this bit that isn't mentioned in the other books and so on... How nice would it be if you needed only one book about one subject, and it would tell you all about it. If some parts would be to difficult for a beginner, you could skip them and come back to it later...
|
While I will agree with you that sometimes, books can be better organized and presented, I don't agree that there should always be only one book for each subject. The needs of a person who is an absolute beginner and wants to learn programming in C++ are going to be very different from a person who already knows how to program in C++, but wants to learn the specifics of how to program games.
It is wholly appropriate that the needs of those two people should be found in two seperate books. To integrate them would be a waste, as each described person would most likely have no interest in the other half.
Books should be seperated - but only in intelligent and well-organized ways.
Quote:
quote:Originally posted by ufo
As for now, some of the 'professional' books are this way. Actually there is this little sentence in about all of them in the 'who should read this book' section saying "however, if you are new to ... , this book doesn't completely leave you out..." Translated to plain english this reads: "if you are new to this field, this book is meant for you, and if you aren't, you are in trouble, because you are now reading more than one book on the same subject (eg. your time is being wasted)"
I don't like this way of commerce (as a general living principle, not only because it wastes my time and money), because it takes your readers for fools. I know I'm probably trying to convince you of stopping to make disgraceful profits, which has not a big chance of succes, but maybe you genuinely want to offer good products to happy users... and in that case i wanted to lay my egg...
|
I don't think it takes people for fools. I think that it's telling you *exactly* who the book is intended for - in your example, that would be complete beginners. If that's not you, than this book isn't for you. This doesn't take you as a fool, it's telling you upfront whether this book is designed to meet your needs or not.
Quote:
quote:Originally posted by ufo
My impression is also that the beginning books cover not half of the subject (in this case a professional book could pick up where it left of...), but cover half of each chapter, condemning the professional books to repeating everything... This completely nullifies the reason of existence of 'beginning' books...
To resume:
- Separate programming principles from program language syntax
- One book about one subject, covering everything
- Clear and comprehensive titles (eg. not misleading, beginning programming is not the same as beginning assembler programming)
- Book content should be structured, cohesive, contain no redundant text, cover each subject exactly once and complete, and have a good index, so the book can be used as a reference
- If possible, every keyword, or subject should be explained completely in one place, so you can easily find out everything about it by looking it up in this place
- Cut down on screen shots. 95% of the time they are just book fillers. There are some horrible examples from this at wrox also, like "Beginning regular expressions"
To give an example of how bad it can get, I am now reading Beginning Visual C++ 2005 by Ivor Horton, simply because there is no pro book out there on this subject, at least not in the stores in this town, and because I have never programmed C++ before, and because when I tried to use Visual studio for learning java before, i got lost in the mfc classes and the lack of native support for the original sun classes,... so I wanted a book to learn c++ developing for windows. Reasonable book to purchase, wouldn't you think?
Well, I haven't finished the book, but the first chapters are a bit like this:
"If you want to include a new line of code, you can place your cursor at the end of the previous line and press enter..." Not kidding, this is sentence from the book... You couldn't even call that redundant coding principles anymore... I would think this fits in "using word for windows for seniors". Mr Horton, my granny has no ambitions for c++ programming, and in fact people who do shouldn't need info like that.
On the coherence, I give you an other example...
In those first, I think 2 chapters, the author explains in about 3 different places why the main function can be called main() _tmain() or wmain(). Each time he explains about half. Now let me tell you how I read a technical book. I don't remember a thousand page book by just reading it, I remember what can be found in it, and about where it can be found. This kind of writing makes it impossible to use a book as a reference.
|
Than you missed the point completely. This book is NOT SUPPOSED to be a reference. It's *supposed* to be a tutorial, which is a very different thing.
A reference is designed for people who are simply looking up specific information - which usually means someone who already has a passing familiarity with the general topic at hand.
A tutorial is designed to teach.
With a tutorial-style book, you *DO* want repetition of certain facts, because certain facts are easy to forget and cause a lot of problems for people when that happens. Repetition in this case is designed as *reinforcement*. Not only that, but you *don't* necessarily want everything in one place, because that would overload beginners on things they don't need to learn until much later. The more obscure aspects of programming, or of a particular syntax should *not* be covered while the reader is still trying to grasp the fundamentals.
Simiilarly, screenshots, which you call "unnecessary filler" are *very* helpful in certain contexts. With a book like Ivor Horton's Beginning Visual C++ 2005, you're not just learning the language, you're also learning Microsoft Visual Studio (something that seems to have slipped by you). And when it comes to learning the application, screenshots are absolutely necessary for the purposes of clarity and depiction.
You're reviewing this book, but not as it was intended. You're not reviewing it as a tutorial for beginners, you're reviewing it as a reference for experienced users. Not only that, but you're reviewing it as a book on C++, when it is in actuality a book on C++ *USING* Microsoft Visual Studio. Of course it's not going to give you what you want! You're trying to use this book for something it was not intended!
That's like reviewing a plate for the purpose of being used like a frying pan. If you want to give this book an honest review, than do it from the perspective of the people it was *designed* for.
|
|
 |