i would really appreciate it if you guys, those of you whom have read it, can comment on the following books. i would especially like to hear from software developers and engineers whom have read them and have found them usefull or useless. and if you dont agree with them could you perhaps say why and suggest alternatives.

1. UML 2.0 in a nutshell by Dan Pilone
2. Design Patters by Erich Gamma
3. Object Oriented Modeling and Design by Rambaugh

Let me give some background info just to make the picture clearer. I am a reasonably competent programmer and can do most programming tasks. To this end i have finnished a number of smaller projects well. Then i got a bigger one. I did my usual design ( i now realize that it was not very good. and no UML since i did not know any) and started coding. Result? Individual pieces of code which works quite well on their own but the bigger system just dont work because of various nuances and issues. So i decided to learn both UML and some software design skills so that future projects dont end up like this one. I have gone over lists of books to see what would be good. i have these in mind.

Basically i am reasonably sure of UML 2.0 in a nutshell. the review gives the impression that it is not for learning UML or software design, more for reference, but i am reasonably sure that i can learn UML from it. and learning how to design object oriented software is where Object oriented modeling and design comes in. Design patterns i am not sure of but i suspect that it might be usefull.

What i am looking for is where UML meet object oriented software design without diluting either which is what i fear if i buy one book which tries to cover all. hence three books.

So can you guys that know please give a comment on this? Please tell me why you think they are good or bad either in general or for me after you have read the above background to the situation.

first 2 (and especially the second, which is the standard work on the topic) are good as references, they're NOT tutorials in any way.
Rely on them only and you're bound to end up making LOTS of very expensive mistakes.

The third I don't know.

Get yourself the following:
Head First Object Oriented Analysis and Design
Head First Design Patterns
In addition to the GoF book (Gamma's).
Also get yourself Robert Martin's classic "Agile Software Development. Principles, Patterns, and Practices" (which is available in 2 versions, the original which uses mainly C++ and Java, and a new edition which uses C# and is thicker, I've only read the original).

I can also heartily recommend you get your boss to sign you up for some quality training on OO design. Sun has an excellent course in their OO-226 offering. Not cheap but well worth the money (and comes with good courseware). Getting in person instruction by an expert is worth every dollar spent on it.