Forum Chat

Mar23,13:31 Johan Marechal
Wees gegroet
Sep20,17:50 Vicente Duque
Kim, Martin, Others :...
Jul07,11:10 Johan Marechal
Jul05,21:13 martin
Fastest in the bush
Jul05,07:48 martin
Jun28,21:16 martin
New domain / new blog!
Jun28,21:11 martin
On posting etiquette
Book Reviews: COM

Creating Lightweight Components with ATL

May 20, 2004
J. Bates, SAMS, 1999
It does have the right mix of content, it's nicely laid out, it's fun to read... until you discover it's untrustworthy. Oh, sh*t, you know. Somewhere in there, Bates dismisses the IDL pointer_default() as having something to do with the default property of a COM object. It doesn't (he's thinking about DISPID_VALUE). It's to do with how the marshaller is to resolve pointers in structures. In one stroke that proved four things to me: the two non-trivial things he didn't know, that he writes without checking and that Sam's (again!) cares nothing for the quality of their books. Even then, the book is a nice read to get things into perspective. But it's very hard to enjoy reading something you deeply mistrust. I found more such blatant errors in the book but got used to them along the way. I also found a lot of places where the "real meat" was simply glossed over or omitted. I did learn one neat little readers' trick though: check the people the author thanks for reviewing the material. Bates' list was pitiful. You know what... save your money and time for something else. Reread The Lord of the Rings, for instance. (No comments yet)

Programming Distributed Applications with COM and VB 6

May 20, 2004
Ted Pattison, MS Press 1998
Surprisingly useful book. It shows what VB can be used for, but even more importantly, what it shouldn't be used for. Since it's supposedly intended for simpler people, the explanations of apartments, remote COM and more are really understandable and made me finally realise a few very important truths. This one was worth its price many times over. (No comments yet)

ATL Internals

May 20, 2004
Rector-Sells, Addison-Wesley, 1999
Tough reading, but incredibly useful. This is the place to read up on the smart pointer types CComBSTR, CComVariant, CComPtr, CComQIPtr, and more. And of the rest of ATL 3.0, of course, but I tend to go back to the smart pointer chapters almost daily. I have about 4 books I'm bound to physically wear out by overuse, and this is one of them. (No comments yet)

COM IDL & Interface Design

May 20, 2004
Al Major, Wrox, 1999
Departing from the IDL as the primary design specification of COM objects is the basic idea of the book, and it's a very powerful idea. An idea I've personally decided to implement to the hilt. This book is pretty good in placing the whole COM thing into the practical perspective. And covers stuff like which parameter types to use, and which interfaces to use, depending on which clients and client languages are targeted. Which, ultimately, is "it" when you try to build n-tier heaps of objects. A must read (for me, you're free to read any damn thing you want to, as far as I'm concerned... <g> ) (No comments yet)

Essential COM

May 20, 2004
Don Box, Addison-Wesley
Widely acclaimed intro to COM. And it's worth it. Except... As Don says in the beginning of the book, there was a choice to be made regarding the use of libraries such as ATL and MFC, and he chose not to base the book on any of them. That may be great, but it also makes the book somewhat less realistic. I, for one, use ATL, since I think life should be more than just learning COM from the ground up. (Where even "up" is a questionable view on the future.) Also, having read Brockschmidt twice, I don't really think I need another one like that, but different. What I mean with all this is that it's a great book full of useful stuff, but it's not the whole story and not sufficient to base your approach to COM on. (No comments yet)

Effective COM

May 20, 2004
Box-Brown-Ewald-Sells, Addison-Wesley
This one, on the other hand, is the one you're supposed to re-browse every two months just to realign yourself with what should and should not be done. You need this one. Get it. Nuff said. (No comments yet)

Inside OLE, 2nd edition

May 20, 2004
Kraig Brockschmidt, Microsoft Press, 1995
This is, ah..., where do I begin... this is the book on COM (don't mind the title). It's so respected, so revered, so holy, it almost burns when you touch it. It's also quite heavy, by the way. Nice paper, too. This book teaches you COM with a bare C++ compiler or a bare C compiler. Or assembler. Actually, I think you could write COM objects by toggling frontpanel bit switches if you know this one down cold. Strangely, it's easier to understand than some of the stuff in "Essential COM", which is more recent by years than good ol' Brockschmidt (1995, ancient by COM standards). And yes, it's about "COM", but they didn't know that when this one was published. Marketing at mickeysoft hadn't changed the name yet. (Note in november 2002: I'm still not giving this one a spiderweb icon. It's not over the hill, IMHO.) (No comments yet)

Professional COM Applications with ATL

May 20, 2004
Li-Economopoulus, Wrox, 1998
Another Wrox hit. So far, the most practical how-to book. From the examples, you can pick up what to do and when. Also does a credible sample application. I've read about the first third of the book, then Amazon delivered in quantity and I lost sight of it, temporarily. Time to schedule it back to the read queue. (No comments yet)

ActiveX Controls Inside Out

May 20, 2004
Adam Denning, Microsoft Press, 1997
Denning is a brit in exile, and it shows in the writing. (That he's a brit, not the exile.) Excellent style, very readable and literate. Is the best source I've seen that goes into the different predetermined interfaces an activeX control must implement to actually be an activeX control. Published in 1997, but it still covers most of what you need. I think. (No comments yet)

Inside Distributed COM

May 20, 2004
Eddon-Eddon, Microsoft Press, 1998
DCOM is the network implementation of COM. It has all these little extra network protocols, wire representations and stuff. It's all in here. What's really useful to understand is how objects are remoted and in how many (many!) roundtrips something gets from here to there. Actually, understanding this a bit makes you look at the interface design in another way. Even though DCOM as such seems to have gone out of favor as all the WAP and SOAP is taking over, nothing of the principles of remoting stuff over the network is much different. So it does in fact remain a very valuable thing to have read. I have. So there. Actually, looking it over again just now, I realized I should read it again. So I will. (No comments yet)

OLE Automation Programmer's Reference

May 20, 2004
Microsoft Press
There was a time when the API references weren't available on the net at the touch of a button like now. That's obvious, else why did they ever print books like this one? On the other hand, there's a sticky post-it in my copy at page 201, where there's a list of VARIANT types and conversions. Was that the reason I bought it? Probably another failed attempt to buy understanding. Something that doesn't have authors probably shouldn't be paid for. (No comments yet)