Linux system programming / Robert Love, O’Reilly, c2007
If you are writing the next universal db converter or such in C on Linux, this book is for you. Linux has many improvements over Unix, and this book is an easily read manual for them. It covers IO, process and memory management, signals, and time. No networking or pthreads.
Advanced programming in the Unix environment / W. Richard Stevens, Stephen A. Rago, Addison-Wesley, 2005
If you are doing systems programming in C on Unix, this book is indispensable. It is slightly dated, and does not cover the latest improvements in Linux.
Holub on patterns : learning design patterns by looking at code / Allen Holub. Apress, 2004
An opinionated look at design patterns. If you are using a language not known for rapid development then you want to choose the right patterns in advance so you won’t be refactoring too much. This book discusses which patterns are most useful, with examples in Java. Not recently written, but worth reading.
Building powerful and robust websites with Drupal 6 : build your own professional blog, forum, portal or community website with Drupal 6 / David Mercer. Packt Publishing, 2008
Yet another book for the non-programmer about how to configure a CMS.
Programming interviews exposed : secrets to landing your next job / John Mongan, Noah Suojanen, Eric Giguère. Wiley Pub., 2007
If you work in technology, whether programming or similar, you probably need to look for new work now and then. This book is the best I have seen for advice on how to interview, negotiate pay, and prepare your resume. Useful to hiring managers too.
There is another way to approach this book. More than half of the book is programming algorithms that you would learn in undergrad CS, and you can read it to refresh your knowledge.
Linux firewalls : attack detection and response with iptables, psad, and fwsnort / by Michael Rash, No Starch Press, 2007
Here is a good introduction to iptables and related tools, with script examples. Make good use of this book, and there is a good chance you and your company will never get hacked.
Security data visualization : graphical techniques for network analysis / Greg Conti, No Starch Press, 2007
How do you analyze the logs from your firewalls, IDS’s, and web servers? They are large, and many people don’t have time to even peek at them. This book discusses ways to use graphical tools to display patterns gleaned from the logs so you can visualize the problem. Several open source projects are discussed.
Access denied : the practice and policy of global Internet filtering / edited by Ronald Deibert, MIT Press, 2008
This is an important book about freedom of internet access worldwide. The authors are academic leading lights. It reports a detailed survey of counties around the world: what do they attempt to control, how do they do it, and how effective are they. Further, when Google, Yahoo and other companies do business in controlled countries, how should they handle this issue.
Programming Microsoft Composite UI Application Block and Smart Client Software Factory / David S. Platt. Microsoft Press, 2008
For programmers of rich client apps using Microsoft’s CAB and SCSF and WPF frameworks. Concepts are explained. There are some code examples, but no ‘Hello World’. It reminds me of Eclipse RCP without the portability or clarity.
The new school of information security / Adam Shostack, Addison-Wesley, 2008, hard cover
The economics of security. This is not a large book, but it is very readable and full of insight, suggesting a new approach to security. One of the best books I have read this year.