REVIEW - Fluent C♯


Fluent C♯


Rebecca Riordan


Sams Publishing (2011)




Adam Petersen


April 2014



Reviewed: November 2012

Let me state right up front that I’m not in the intended audience for this book. Fluent C# is a book for beginners to programming. Although I do feel like one from time to time, I’ve spent the better parts of my adult life hacking together software systems of all scales. Reviewing a book for novices is hard. My view will be quite different. A reader with little programming experience is likely to focus on other aspects and will probably face different problems. So why did I opt to review it? Well, this book claims to be different. It’s based on principles of cognitive science and instructional design. Both topics I have an interest in. From that perspective parts of the book provide an interesting read. To a beginner interested in learning C#, the technical inaccuracies are likely to become an obstacle.

Superficially, Fluent C# is similar to the well-known Head-First books. Perhaps this is of little surprise since they both draw their educational principles from the same basic research. The learning concept is based on activating multiple senses. The book is littered with graphics, dialogues and attempts to provide the big picture early on. The details are filled-in as we read along. Whereas I’m a big fan of the Head-First concept, Fluent C# doesn’t work as well. The most striking problem is the layout. All pages are set in a soft, brown tone that becomes strenuous to read. The layout definitely has to be fixed in future editions.

As far as the technical content goes, Jon Skeet has published a +60 pages document on Fluent C# . The document contains notes and an unofficial errata for the book. The errors range from ambiguous language, syntax errors, and all the way down to the curious case of code in a different language than the C# promised in the title (in this case some VB code got included in one example). Some amount of errors is inevitable; I mean, even Knuth makes them. But in a book aimed at beginners, the number of errors and omissions has to be considered a serious flaw. If we look beyond the errors to the actual content, we see that the bulk of the book is about writing applications with the Windows Presentation Foundation (WPF). The actual C# introduction is quite rudimentary. A lot of later additions like implicit typing and LINQ are skipped. Instead the author attempts to mix in some high-level design discussions. I find it hard to see how a novice programmer could benefit from these brief discussions on architectural design patterns. A pattern like Model View Presenter (MVP) is non-trivial in its details and requires experience beyond what Fluent C# provides.

I took on this book with high expectations. Far too many introductory books take a narrow, technical perspective. Programming is hard enough as it is. We need books like this, designed to actually learn from. I do hope future editions address the present problems. In its current state I cannot recommend the book.

Book cover image courtesy of Open Library.

Your Privacy

By clicking "Accept Non-Essential Cookies" you agree ACCU can store non-essential cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

Current Setting: Non-Essential Cookies REJECTED

By clicking "Include Third Party Content" you agree ACCU can forward your IP address to third-party sites (such as YouTube) to enhance the information presented on this site, and that third-party sites may store cookies on your device.

Current Setting: Third Party Content EXCLUDED

Settings can be changed at any time from the Cookie Policy page.