Posts Tagged ‘C++’

Art of Concurrency

Monday, January 4th, 2010

book coverThe Art of Concurrency / Clay Breshears, O’Reilly, 2009

All programmers will want to read this. 300 pages.

1 – Want to go Faster? Raise Your Hands if You Want to go Faster!
2 – Concurrent or not Concurrent?
3 – Proving Correctness and Measuring Performance
4 – Eight Simple Rules for Designing Multithreaded Applications
5 – Threading Libraries
6 – Parallel Sum and Prefix Scan
7 – Mapreduce
8 – Sorting
9 – Searching
10 – Graph Algorithms
11 – Threading Tools

Get it here at OPL

Elements of Programming

Wednesday, November 25th, 2009

book coverElements of Programming / Alexander Stepanov, Addison-Wesley, 2009

An advanced book on software design, with examples in C++. It is highly recommended by Bjarne Stroustrup. 250 pages, hardcover.

Get it here at OPL

The algorithm design manual

Tuesday, June 16th, 2009

The algorithm design manual / Steven S. Skiena, Springer, 2008

“This is the most approachable book on algorithms that I have” — Megan Squire. Examples in C, 700 pages, hardcover

Get it here from OPL

The art of multiprocessor programming

Wednesday, May 27th, 2009

The art of multiprocessor programming / Maurice Herlihy, Nir Shavit, Elsevier/Morgan Kaufmann, 2008

This book is destined to become a classic, and is required reading for all Java and C++ programmers.  It covers the principles and practice of programming `multicore` computers. 500 pages.

Get it here from OPL

Code quality

Wednesday, May 20th, 2009

Code quality : the open source perspective / Diomidis Spinellis, Addison-Wesley, 2006

Here is an excellent book for Java and C++ programmers. It is the sequel to ‘Code Reading’. 500 pages. “It’s a very dense book, with something to think about in every sentence. If you carefully absorb everything it has to say and manage to implement it, you will be a programming wizard.” — Elizabeth Zwicky

Get it here at OPL

Expert MySQL

Saturday, May 16th, 2009

Expert MySQL / Charles A. Bell, APress, 2007

Here is a book on the internals of MySQL, which will be useful when you want to improve or extend it. The book should also be interesting to you if you are planning to create a complex server app like MySQL. Or maybe you want to embed MySQL? I like this book, though the text is repetitive in places. 500 pages.

Get it here at OPL

The art of debugging with GDB, DDD, and Eclipse

Monday, March 30th, 2009

The art of debugging with GDB, DDD, and Eclipse / by Norman Matloff, No Starch Press, 2008

This book is important reading for anyone programming on Linux in C++, Java, Perl, or Python. It is very readable with 250 pages.

Get it here at OPL

How to think about algorithms

Saturday, March 28th, 2009

How to think about algorithms / Jeff Edmonds, Cambridge University Press, 2008

Here is a CS textbook for advanced undergraduate courses which is more readable than most. Apply its concepts to make your programs correct and fast.  450 pages.

Get it here at OPL

Cocoa programming for Mac OS X for dummies

Saturday, March 28th, 2009

Cocoa programming for Mac OS X for dummies / by Erick Tejkowski, Wiley, 2009

Here is GUI application programming for the MAC. Learn the Cocoa IDE and a bit about programming in Objective C. The author gives lots of practical advice and some code examples in 375 pages.

Get it here at OPL

GNU/Linux application programming

Tuesday, March 17th, 2009

GNU/Linux application programming / M. Tim Jones, Charles River Media, 2008

This is about programming using bash, awk, lex, Python, and similar languages. It also covers automake, gdb, gprof, networking and virtualization. It also explains the use of multiple processes and threads with pthreads and IPC. It is very readable. This is a thick book, and covers a lot of topics. It steers clear of the kernel and drivers.

Get it here at OPL