Best Books Of 2014
Written by Sue Gee   
Tuesday, 06 January 2015
Article Index
Best Books Of 2014
For Database Developers
Holiday Reading?

The criteria for inclusion in our end-of-the-year round up of titles reviewed during 2014 was that a book was awarded a 5-star rating. This is a significant accolade from any member of the I Programmer team and is awarded very sparingly.

I Programmer takes a real interest in books. We try to keep up with new releases with our daily Book Watch and we run a dozen or more full reviews every month in which members of the team select titles that match their interests. The rating system for books takes into account the intended audience and to achieve a rating of 5 a book has to offer something really worthwhile. Read the truncated reviews to discover which of the books you are interested in and follow the links to the full reviews if you want to know more. Clicking on the book jacket thumbnail in the side panel will take you to Amazon and if there's is a Kindle version (the lower of the two thumbnails) you can generally read the introductory chapter. If you make a book purchase accessing Amazon from a link on I Programmer means that we are credited with a few cents - so thanks to all of you who support us in this way.

A Tour of C++

Author: Bjarne Stroustrup
Publisher: Addison-Wesley
ISBN: 9780321958310
Kindle: B00F8CWGOS
Audience: Intermediate C++ Programmers
Reviewer: Mike James

If you are looking for a leisurely tour of C++, something to ease you into its way of thinking, this is not the book for you. This is a fast-paced tour  based on the first few chapters of The C++ Programming Language, Fourth Edition and if you already have this classic on your shelf you probably don't need this one, but it is a useful summary and at less than 200 pages a good book to have handy when you want a refresher.



Just in case you don't know, the author Bjarne Stroustrup is the original inventor of C++ as an object-oriented language built on top of C. He is now the chief architect of the newer C standards and C++11 in particular. So if you want to read a book written by someone who might just have a rough idea what C++ is all about you couldn't do better than have Stroustrup as its author.

This is a very rapid paced tour of C++ and it goes well beyond the core language and into the standard library and its use. The language is C++ 11 but Stroustrup doesn't spend a lot of time on detailing where each feature came into play. His task is to describe C++ as he currently writes it. A highly recommended book, but if you find it tough going don't be surprised.


The Art of Unit Testing, 2e

Author: Roy Osherove
Publisher: Manning
Pages: 296
ISBN: 9781617290893
Print: 1617290890
Audience: C# users and others using statically typed languages
Reviewer: Alex Armstrong

If you don't already use unit testing, this book is a complete and clear guide to the idea and how to implement it. It consists of  four parts:

Part 1: Getting Started - the basics and a first unit test.

Part 2: Core Techniques - testing and refactoring techniques you need for  real world situations where you encounter dependencies on objects over which you have no control. 

Part 3: The Test Code - covers techniques for managing and organizing unit tests.

Part 4: Design and process - rounds out the book with discussion of some common real world issues




Overall this is a well balanced book. It is highly readable and also gives enough code to be a practical handbook. While the code is in C# readers who use Java or C++, which have similar unit testing frameworks, will find the patterns and antipatterns presented readily transferable.

Recommended to developers who don't already employ unit testing or who haven't yet mastered it.

WPF 4.5 Unleashed

Author: Adam Nathan
Publisher: Sams, 2013
Pages: 864
ISBN: 9780672336973
Print: 0672336979
Kindle: B00DW7PLIE
Audience: Anyone wanting to understand WPF
Reviewer: Mike James

If you work with WPF, which now seems to have an assured future,this is a book you need to know about. It is the latest edition of a well known and well regarded volume on WPF updated to cover WPF 4.5. Full color is used to good effect throughout the book - it not only makes it look good but it is easier to read and understand. The author's style is very readable and clear with plenty of asides that fill in missing detail without being disruptive of the overall flow of the book.


The book has six parts:

Part I  - overview of WPF and introduction to XAML

Part II  - building a WPF application covering the basics of building a UI

Part III - a categorised exploration of the standard controls

Part IV - Features for Professional Developers covers resources, data binding, styles templates, skins and themes

Part V - 2D graphics, 3D graphics, animation, audio, video and speech

Part VI - topics that didn't fit elsewhere in the book including mixing Windows forms controls and ActiveX with WPF and vice versa, building user and custom controls and Custom Layout panels. The final two chapters, on toast notification and on XAML readers and writers, are new in this edition.

It isn't for the complete beginner and it isn't a "how-to" or cookbook - it is about explaining the ideas rather than providing real world examples - but otherwise is highly recommended if you work with WPF.

Introduction to Computation and Programming Using Python

Author: John V Guttag 
Publisher: MIT Press
Pages: 296
ISBN: 9780262525008
Print: 0262525003
Kindle: B00EK6P6RM
Audience: Students wanting a thorough grounding in Computer Science
Reviewer: Mike James

This is a really good book provided you are the right reader. It is not a dummy's book and it isn't exclusively focused on teaching you to code in Python. This is a more general book on the ideas and practice of programming and algorithm construction - it also has a slightly academic feel to it, even though the style is casual and there are lots of encouraging words.

Don't buy this book if you are looking for a primer on Python or something that will show you the tricks of Python or how it is applied. The book uses Python 2 but this is largely irrelevant and the language takes second place to more general ideas.

It is also worth mentioning that this is the text book for the Introduction to Computer Science and Programming Using Python MOOC on edX, which is co-taught by its author John Guttag.




Overall this is a well-written book, but it doesn't make any attempt to drop the intellectual level. You are expected to read and think about what you are being told. Right from the start the focus is on learning Python so that you can get to grips with even more interesting ideas. Don't expect to find anything about writing your first game or graphics for fun. This is serious stuff aimed at the serious student. 

The range of topics explored leans towards the statistics side of the science and it would make a good book for any student studying almost any STEM subject. Expect to learn as much about stats as computing as you progress. 

As long as you are the right reader, this is the right book. Highly Recommended.  

Doing Data Science

Author: Rachel Schutt and Cathy O’Neil
Publisher: O’Reilly
Pages: 408
ISBN: 9781449358655
Print: 1449358659
Kindle: B00FRSNHDC
Audience: People who want to learn more about big data
Reviewer: Kay Ewbank

There’s a lot of hype about big data talked by people who are just using the latest buzz words, but this book is written by people who are actually working with real live big data.

The book is based on Columbia University’s Introduction to Data Science class, and is actually a collection of lectures, each one occupying a chapter, on different aspects of data science. The chapters have extensive contributions from data scientists from companies such as Google, Microsoft, eBay, Yahoo, Kaggle, and Hunch, talking about how they apply data science analysis techniques in their work.


If you’re at all interested in big data, you’ll learn a lot just from the case studies and discussions by the big data practitioners who’ve contributed. If you know some stats and R, you can get another big chunk of usefulness by looking at the exercises, examples and code, but even if you glaze over a bit in those parts, it’s still a fascinating read.

Learn to Program with Scratch

Author: Majed Marji
Publisher: No Starch Press
Pages: 288
ISBN: 9781593275433
Print: 1593275439
Kindle: B00IE94WY4
Audience: Anyone who wants to learn programming as well as about Scratch
Reviewer: Lucy Black


The book's subtitle is also indicative of what to expect - A Visual Introduction to Programming with Games, Art, Science, and Math. Notice the use of the "Math" at the end, which will probably turn some potential readers off big time, and is an indication that this isn't a book that is simply trying to reach the biggest possible market. The cover illustration of a chemistry lab is also designed to appeal to wanabee geeks. You get the message, if you are not wanting to be one of us....  In truth most of the examples are game oriented but this is reasonable given the nature of Scratch. 

The book really does try to explain what you need to know about general programming in terms of this easy-to-use visual language. For example, you learn about recursion, which is something that can make a fool out of even the most experienced programmer, and binary is introduced as a conversion demo program. You even get to learn some basic algorithms - linear search, bubble sort, finding the median and so on. 

This is not a book for dummies, but I can recommend it to anyone wanting to use Scratch as a way to graduate to full programmer status and have a lot of fun on the way.








Last Updated ( Wednesday, 27 February 2019 )