Upcoming Meetings
Latest News
2/21/13 10:14 AM
Checkout Adobe Days!!!
read more ...
9/18/12 8:16 AM
Digital Publishing Suite Customer Showcase
read more ...
9/10/12 8:52 AM
Adobe Developer Connection Update
read more ...
11/28/11 3:19 PM
IU Web & Multimedia Community launches Mobile User Group with Presentation by Adobe’s Greg Rewis
read more ...
7/9/10 10:14 AM
A slew of reviews
read more ...
6/3/10 9:56 AM
Learn about Open Source Media Framework
read more ...
3/25/10 9:57 AM
Get an early look at CS5!
read more ...
3/22/10 2:35 PM
ColdFusion Builder, Flash Builder 4 available
read more ...
3/12/10 3:55 PM
IndianaUploaded.com Animation Competition
read more ...
3/3/10 11:22 AM
March 5 meeting canceled
read more ...
3/2/10 10:09 AM
Catch up on web accessibility at IU
read more ...
2/24/10 10:51 AM
Recording from IU Knowledge Commons meeting available
read more ...
2/2/10 10:28 AM
Don't become the next victim
read more ...
Book Review: Real World Functional Programming: With Examples in F# and C#
Author: Shashikant Penamurthy
Category: Development/Programming
Title: Real World Functional Programming: With Examples in F# and C#
Author: Tomas Petricek and Jon Skeet
Publisher: Manning Publications; (January 22, 2010)
ISBN: 9781933988924
List Price: $49.99
SUMMARY
As an experienced programmer that has encountered functional concepts before in Javascript, Ruby or Python, I found this book slow and impractical. However, if you never took a Comp Sci class using a functional language and are now looking to fill that gap, or if you are looking to get a deep understanding of F#'s design rationale, you'll love it.
BACKGROUND
I am an experienced programmer in C#, Java, Python and Javascript and I bought this book to get started with F#. I am writing this review because I promised to write one in return for a free copy of this book, which I got via a book review program where I work. I worked through the examples in the book using Visual Studio and experimented with variations of the examples to understand things better, so you could say I studied the content well. I picked this book over other F# books only because I had read Jon Skeet's *outstanding* C# in Depth cover to cover and expected the same level of quality and detail.
THE GOOD
The book definitely delivers on both fronts. There is a solid discussion of F# syntax, what it does, how it supports a functional way of thinking and how you can improve C# code to benefit from these ideas. I will be re-reading and experimenting with variations of examples in this book for months. In other words, you get a *lot* for your money.
THE STRANGE
I found this book a little strange and difficult to read for the following reasons:
1) It explains functional programming concepts as if the reader is completely new to it. I found myself skimming through lots of text that I felt was obvious from the F# code snippet.
2) It spends way too much time talking about applying functional thinking to C# code. I found this unnecessary because F# and C# are different tools for different applications - I'll use F# when I think a functional approach is right. A couple of lines of text that describe roughly what one would have had to do in C# to achieve the same effect (plus perhaps C# snippets in an appendix) would have been sufficient.
3) The flow of the book wasn't right for me because I like to get the syntax out of the way before tackling everything else. A small chapter at the beginning that offered a "crash course on F# syntax" would have greatly improved the book for me.
But I don't think that is the kind of book the authors set out to write.
WHY READ IT?
This book won't get you up to speed with F# quickly. The examples aren't from the real world. You cannot use this as a reference book. Strictly speaking, it's not even a book about functional programming.
This is a book about functional *thinking*, written for those who know your typical C, C++, Java or PHP. A better title for this book might have been "Functional Thinking for OOP/Imperative Programmers: From C# to F#". It is a functional programming book for those who haven't taken a CS class using a functional language.
If you are looking for a book that will help you add F# to your language toolset, this is not it. But if you're the type that often writes a line of code and wonders why the language looks the way it does, it doesn't get any better. This is a timeless book that I will refer to whenever I write a line of F# and wonder: "why does it do that?"








