As a life simplification step, I'm discarding several
programming books that have been collecting dust on my
self for years now. I read them all, and some
were even relevant to my work for awhile. Here is
a nod to each book...
Applying C++
It's a text book on C++ plain and simple. It's not
even one I used personally. I believe a friend gave
it to me when he gave up on the idea of learning to
code.
Why you might want it:
You want to learn C++ and you enjoy the tactile
sensation of real pages.
3D Game Programming with C++
I bought this one way back in the 90s when I first
started coding in C++. Naturally it's more fun to
dream about building games than business software, and
this book gives a good overview of the latest
technology and techniques available in 1997.
Why you might
want it:
Modern game engines now abstract away many of the gory
details of game programming, leaving modern coders
working at a much higher level. But this is a
great reference for the game programmer who wants to go
a bit deeper. Or who wants to build the next
Wolfenstein 3D.
CGI Programming in C and Perl
My first web programming book. Because it
covers standard technologies that are still
supported, like the HTTP protocol and HTML, it's
not totally irrelevant.
Why you might
want it:
Fun trip in the wayback machine. Also you might
learn some details that are not often addressed by
higher level web frameworks. (This book is
probably more instructive than, say, the Programming
Java Servlets book below.) Or maybe you need to support
a really, really old website running off CGI scripts.
System Analysis and Design Methods
A detailed look at modeling techniques that were
popular during the 90s. I haven't cracked it in
years but I seem to recall a focus on
CASE tools. In my real-world experience, CASE
tools were never used, except for Rational Rose which
was lightly used during my tenure with Visional
Corporation. I suspect these tools were popular
with managers who then gave up on them once they
realized that providing all of the detail required to
make the tools generate software was more work than
just writing the software.
Why you might
want it:
You want to understand the mindset of 1990's technical
managers.
Eclipse Rich
Client Platform
Do you have the desire to customize or productize
Eclipse for your own purposes? This book gives
the lowdown.
Eclipse has had a relatively long shelf-life. I
used it for Java development back at Visionael and at
Vetsource, and still use variants for RoR and Django
debugging.
Eclipse has been the foundation of the ADT (Android
Developer Plugin) for years. The ADT is a good
example of the kind of plugin programming this book
addresses and I would not be surprised if the Google
developers who built the ADT read this very book.
It should be noted that Google is no longer actively
developing ADT, and is moving toward Android Studio
built on IntelliJ, yet another JAVA IDE.
Open Source ESBs
in Action
All of the JAVA-based service bus implementations I
worked with were bloaded, configuration-heavy headaches.
But the promise of a Service Bus is compelling to
many managers, and they remain in service today at many
enterprise companies. I'm personally not a fan as I
prefer lean, best-technology-for-the-job integrations over
cross-platform try-to-be-everything-to-everybody
ones.
Developing Java Servlets
This is one of the two ways we developed web content with
JAVA way back when, the other being those ASP wannabes,
JSPs.
I liked this simplicity of the Servlet abstraction.
Let's model a web request as just that, a request.
Let's process the input arguments and then output a
response. Very straight forward. Java Servlets
didn't exactly go away, as they are still buried at the
bottom of the JAVA web stack. Peel back enough layers
of code and you will likely find a servlet if you are
running a JAVA based web server or service.
I'm guessing though, as I haven't done a deep dive into a
JAVA stack for at least five years now. (Well, there
was that integration with VISA, yes, the credit card
company. Talk about a challenging integration...so
many layers of security, so secretive about the function of
their APIs.)
Programming Amazon Web Services
O'Reily books are fantastic and most will stay on my shelf.
But the information in this book is better found on
the web. It's grown pretty far out of date too.
Programming Flex
2
Even though a beloved O'Reiley book, this Flex 2
reference needs to be burned along with everything else
related to Flex 2. I still get job offers because
I have experience building apps with Flex 2.
Never again. Not for any amount of money.
(Hmm...I will for one billion dollars.)
Web 2.0 Heroes
The title has "Web 2.0" in it. Enough said.
Actually these are great little stories about some
startups you know and some which have already been
forgotten. It was a good read.
Managing Raid on Linux
With the advent of "the cloud" I have been able to free
up any synapses utilized for storing information about
Raid. No more striping. No more thinking
about which level gives me the best speed and
redundancy. I'm letting Amazon handle it from now
on.
Programming in
Python
This book weighs 48 lbs. Or at least it seems to.
I love Python but haven't cracked this reference
in years. The information is all online anymore.
No need to carry around a 48 lb trophy.
ModSecurity
2.5
A book dedicated to an Apache security module. I
may never know the luxury of working for a company
where my one and only job description is "secure the
Apache webserver". This book was theoretically
relevant when I worked for a prepaid debit card
processing company. Probably an interesting read
though if you use Apache and want to research security
techniques.
Google Web
Toolkit
I love Google. I have loved them for a long time.
However, not everything they invent is awesome.
The GWT created object-oriented libraries that
wrap standard web protocols and languages. I
always found it easier to work directly with the web
protocols and languages than to get wrapped up so deep
in a framework that you are writing at least as much
code as you would using the standards based code.
Plus, I never write web content using JAVA, which
I believe was the main point of building this library.
For the record, JAVA is the absolute worst choice for
writing web applications. (Who me?
Opinionated?)
UML Distilled
Third Edition
During my nine and a half years at Visional, there was
much talk about modeling languages. There was
much experimentation with modeling languages. I
mentioned Rational Rose above. There was this
dream that we would be able to create models that
described software, and then those models would compile
down to actual code. The reality was that the
level of effort to actually accomplish this using a
tool like Rational Rose was prohibitively expensive.
For those who don't know, the leading modeling
languages of the day were unified to create the one
true modeling language, UML. It was thought (at
Visionael) that UML would help state-side technical
managers communicate detailed requirements to offshore
developers more efficiently. But in my
experience, the offshore developers were struggling to
keep up with the programming languages, the cultural
differences between our countries, communication
styles etc. and the last thing on their mind was
learning UML. So in fact, I'm sad to say that my
substantial investment into learning the ins-and-outs
of all of the UML modeling techniques were wasted, as
I've never once worked with another developer who
wanted to communicate ideas this way.
Well, not wasted per se, as any thinking spent on
software engineering helped make me a more well rounded
developer. One figures.
I'm down to the last four and needing to wrap this up,
so here comes the short versions.
RHCE
For a minute there I thought that getting my RHCE would
be a nice feather in my hat. But before getting
through the process I determined that I'd rather focus
on Debian. Then Ubuntu. And why did I need
a certification anyway? Story of my life.
Spring In Action
ESBs and JAVA configuration frameworks were in vogue
when I worked at Vetsource. I think I already
mentioned that I didn't love them. (Can we get back
to programming already?)
JBoss at Work
JBoss at Work? I'd rather not. Regal
eagle or no. As mentioned, I grew fatigued with JAVA
frameworks during this era. In fact I did a pivot
soon after completing this book, started working with
Django, and have been using Python or Ruby to build web
systems ever since.
Success with C++
It's a primer from a class I took at TCC. I actually
quite liked this book, or maybe it was just the C++
language that I liked so much. I'm still nostalgic
for C++ programming. I still occasionally contribute
C++ code to open-source projects to scratch that
itch.
So where did the books end up? I donated them at the
local Goodwill drop station. So if you see anything
you want, and if you live in the Tulsa area, you might be
able to find them at a local Goodwill store!