I’ve been meaning to mention this addition to my bookshelf but I hadn’t gotten around to posting it here – been spending more time working on SharpMT than I have adding new Rants I guess… I have been reading a few different tech books lately to keep my skills up for interviews, though and this has been one of them. A one line review for Pocket PC Network Programming is simple: go buy it.
I’ve been reading Steve’s stuff for a while, actually, first with a beginners book for Windows CE, then through magazine articles, and most recently through his blog but this particular reference, his second tech book, has stood out for a few reasons. One is that it starts with a “refresher” on networks and it’s extremely well done: it doesn’t scare off newbies and it doesn’t insult seasoned veterans – this is no easy task and I don’t think an “introduction to networks” section could be left out entirely. After all, ya have to know what a network is before you can effectively use it; the intro makes sure that every reader starts out on the same page. Funny thing, too: I’ve been working with networks for over a decade, and Windows CE since 1996, and I still saw some stuff in there that I hadn’t seen before. Proof that you can never know everything about something – also proves the value of a book like this.
Then there’s the content that flows throughout the book. In the distant past I’ve bought a number of tech references over the years but over the last couple I’ve cut way back. Am I that good a programmer now? Hah! Not really. Technology changes, new platforms come out, API’s grow… you always need to run just to keep up with technology, yet recently I’ve bought fewer books… over the years, the books have become just a hard copy of the documentation that comes with SDK’s. I’ve found myself reading the MSDN web site online for API references so why would I need a hard copy? I haven’t, so I stopped buying the books. The documentation and examples are usually the same anyway and MSDN is free and search-able. Besides, the examples in books like these are usually either a) outdated or b) incorrect and uncompilable – Windows CE documentation is usually the worst of the lot, with missing parameters and undocumented functions being a remarkable norm.
In this way, Makofsky’s book offers something that a number of other tech books don’t offer: completeness. The examples are nearly always code complete and bug free. There’s parameters, options, and functions that aren’t documented well – if at all – in the supplied SDK based help system and that makes for an invaluable reference. There’s also a large amount of explanations for complex topics which is also missing for many things on the MSDN help system. The fact that the book addresses extremely under-documented topics like the Phone Edition of the Pocket PC only proves how far this book goes to offer coverage for all facets of the Pocket PC platform.
If you’re a programmer that is working on a network enabled application this book is a must have. The techniques that are detailed in this book are geared to the Pocket PC platform but they are applicable to Windows PC’s as well – there aren’t a lot of network books that offer this level of help for developers and this one helps to fill a void. It’s a keeper!