Bookshelf 3


Designing International SoftwareDeveloping International Software, Second Edition

If you have to add international language support to your windows software system, you need this volume. Covers most of the aspects of making things work and points to the remainder. p

VBScript in a NutshellVBScript in a Nutshell

I tend to stick to javascript when I can as it is a more comfortable language for me and more widely useable. Every now an again I can’t and this little volume helps me find my way through the vbscript thickets.

Programming PythonProgramming Python, Sixth Edition

I’m not a big fan of python, but being able to find my way around has proven useful on occasion. I tend to use perl or javascript if I need an interpreted language and build UI in either C++ or HTML/HTTP.

Inside Visual Studio .NETInside Visual Studio .NET

Bought this a long time ago to find out how to build visual studio extensions. I haven’t seen anything newer that covers this ground and I suspect this may still be the best option for that sort of thing. Never actually needed to build one of these, but I do like having this on my bookshelf so I might be able to should there be need.

Book0511Bug Patterns in Java

After yesterday’s interview and a question about Java issues that I handled less than deftly I dragged this volume off of the shelf to rummage through. I remember being unimpressed with it when I bought it. I was looking for insights into Java that went beyond the usual ‘this is Java’ books that are out there. I found that this book mostly rehashed some pretty generic ‘hanging reference’, thread issues, exception issues items that would apply to many garbage collected environments and even C++ and such. Not a terrible book, but not interesting enough to be a rewarding reread.

RESTful Web ServicesRESTful Web Services

I very much like the RESTful approach to building web services. It leverages the facilites provided by HTTP in a more thoughtful way than SOAP does. It also seems to result in more human readable interactions between client and server.

C++ Template MetaprogrammingC++ Template Metaprogramming

Template metaprogramming is interesting, but I’ve never yet found a need to implement it in a system. A clever way to get the template machinery to do work at compile time, but the end result seems as if it would be hard to debug and hard to read for anyone who is not deeply knowledgeable of such things.

Windows Internals, Fifth EditionWindows Internals, Fifth Edition

I try to keep up with these volumes. This is the last edition of this series that I have as a physical book. The sixth edition is split into two volumes and much less expensive as a kindle book.

Advanced Perl ProgrammingAdvanced Perl Programming

This volume has not been as useful as the camel book. Perhaps it is just that I don’t do complex enough things with Perl (scary thought) but I find that I don’t pull this off the shelf that often (as compared with the camel book which comes down pretty much whenever I use perl for anything more complex than a few lines of text mashing).

Photoshop CS6, The Missing ManualPhotoshop CS6 – The Missing Manual

I do lots of with Photoshop and Lightroom for my photography. Most of my photoshop knowledge before this book came from my time working at Howtek and blind experimentation. Now I’m trying to improve my game here (and not able to justify the monthly payments of CC).

Book0497The Java Language Specification

This is an old edition. I’ve got newer version as electronic documents, but it is nice sometimes to rummage through the paper version.

JPEG Still Image Compression StandardJPEG Still Image Data Compression Standard

Still the most common data compression algorithm out there. Bought when I was implementing both lossless and lossy compression for the Howtek medical file scanning software. Still handy on occasion.

And last week my daughter decided she needed something to prop her window open and managed to grab this volume from my book shelf. I think the pink cover attracted her. Fortunately I heard what was going on and got her something more appropriate as a window prop. If I had to pick a book from my library to get rained on, this is hardly the most likely choice.

Geometric Tools for Computer GraphicsGeometric Tools for Computer Graphics

This is the one book for geometric manipulations related to computer graphics. Some of the math is a bit involved, but if you can follow it this book will provide much of what you need to manipulate 2D and 3D systems.

Book0509Effective C++, Third Edition

The best book I’ve ever found for enumerating best practices for C++ development. This isn’t a C++ tutorial it is a list of things to make certain you do and things to avoid with all of the reasons and background to make sense of them. I’ve used this book as a discussion point with the teams at two places I’ve worked in the recent past and it has been very helpful.

Internetworking with TCP/IP, Volume IIIInternetworking with TCP/IP – Volume III, Second Edition

The application programming volume of the set. Wanders through topics around client/server programming and protocols that use TCP and UDP sockets for communication. Somewhat less useful to me than the other volumes. If I want details of the telnet protocol I’d hit the relevant RFCs and I’ve done enough network programming in the past that I don’t need the primer on client/server computing and sockets interfaces.

Internetworking with TCP/IP, Volume IIInternetworking with TCP/IP – Volume II, Third Edition

The implementation book. I’ve come close to needing to implement the low level details of TCP/IP in an embedded system a few times in my career. I’ve never actually wound up getting deep into the implementation, but if I had (for IPv4 at least) this is the book I’d have kept close by. It covers (with code fragments and all the trimmings) the implementation details associated with the IP and TCP layers of IPv4 from one end to the other. It also contains a chunk of information on SNMP though I’d likely go with more focused volumes if I were trying to build an SNMP implementation on top of an existing TCP stack.

A Practical Guide to SplinesA Practical Guide to Splines, Revised Edition

Sometimes you just need a spline to define a smooth path from one point to another. This book brings rigor and detail to the mathematics behind them.

Somewhat of a specialized topic, but they are useful more often than you might think when trying to render smooth looking curves or surfaces to fit an existing data set.

ASP in a NutshellASP in a Nutshell

Learning XSLTLearning XSLT

XSLT promised to be the ‘sed’ of XML, taking in an XML document

OpenSSLNetwork Security with OpenSSL

There have been a number of times that I’ve looked at implementing encrypted network links (though so far never needed to use the OpenSSL library). This book looks like it provides pretty good coverage of the use of the library and its supporting components. Even with the nasty flaw that turned up recently, this is still one of the most widely used and most rugged SSL implementations out there.

Understanding the Linux KernelUnderstanding the Linux Kernel

There is a third edition.

Visual C# 2010 RecipesVisual C# 2010 Recipes

Windows NT Shell ScriptingWindows NT Shell Scripting

Win32 command line scripting isn’t the most flexible environment to work in, nor is it all that pleasant but it is readily available on windows machines and easy to work with, even for non-programmers. This book is one of the few sources for detailed information on writing batch files for windows that I’ve run across.

The C++ Programming LanguageThe C++ Programming Language, Third Edition

Not quite the latest version of the ‘Stroustrup’ book, but recent enough for most purposes and the latest version I have in paper book form. A handy place to go looking for details that don’t get used all that often as a reference and refresher.

The C# Programming LanguageThe C# Programming Language, Second Edition

The Common Language Infrastructure, Annotated StandardThe Common Language Infrastructure Annotated Standard

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.