C# in Depth

Published 9/9/2008 by Adam Wolf in Book Reviews | c# | Development | LINQ
Tags:
c# in depth
Title: C# in Depth
Author: John Skeet
Publisher: Manning Publishing
ISBN: 1933988363
Copyright: 2008
Rating: Good

In C# in Depth, John Skeet takes the willing C# enthusiast on an intellectual journey into the heart of one of the most popular languages on the .Net platform. I must admit, I read this book like I was reading a murder mystery. I started by reading the ending first and then finished with the beginning. The book is organized by the major releases of the C# language with the most current version last; hence, the reason for me reading the ending first. 

C# 3.0

The book does a good job of covering all of the new features and language enhancements in the 3.0 release of the C# language. Coverage of the new smart compiler, along with the new features that make LINQ possible, is covered to astonishing depths. The author slowly, but methodically, takes the reader down the knowledge rabbit hole of Lambda expressions until your brain is wrapped around type inference and overload resolution. I read that chapter twice, and I might have to again.  

C# 2.0 1.0

I have been developing in C# from the very beginning and this book had some nice surprises even for me. I was especially impressed with the excellent coverage of delegates, annonymous methods, covariance and contravariance. Even if you are a season developer, C# in Depth will teach you something new about the C# language.

Conclusion

Either way you read this book, you are going to get something out of it. John has taken a very technical subject and has distilled it into usable and manageable pieces that are easy to read and understand. This book truly has depth that no other C# language book can touch. If C# is your tool of choice, then this book will help make it sharper and more useful.


Twoggaling : verb. 1. Twoggaling is the act of mixing Twitter messages and blogging.

Twoggal : noun. 1. A inferior form of a blog post.

What is a Twoggal

A twoggal post is a narrowly focused blog post on a single topic that contains little or no source code and has a limited value. You might have guessed I am not a fan of the new blogging style of twoggaling. This new style has become more and more popular in recent months with some of the more popular technical bloggers, and as a result, their blogs have become more noise than substance. I do not know the exact reason for this new trend in blogging but this blog will not be following this trend.

Today, after reading a couple of twoggal posts in a series on the same topic by the same author posted on the same day, I think I have a greater understanding why it has become more popular. Simple and smaller posts are easier to create and satisfy the bloggers need to be prolific in their writing. More blog posts translate into greater visibility and increased blog readership. The increase in blog readership will translate into increased revenue from blog post advertising. I do not know the exact reason for this new trend, but I hope it is only a short phase.

Increasing My Blogs Quality

Focus, Focus, Focus

Writing blog post on large technical topics like Domain Driven Design is not a good idea. I am still struggling with how to cover this topic for my long overdue series on the ORM Smack-Down. Finding the correct balance of length and depth of a single blog is the most challenging part of writing a technical blog. I do not know if I will ever finish the series, but I will not make the same mistake again.

Show Me the Code

To make each post more useful, I will be adding a zipped folder containing all of the code and data used in the blog post. This download will enable readers to work with the code and concepts without having to retype the post. To make the code covered in this blog more usable and accessible, I will be utilizing Microsoft Visual Studio Express and or the Visual Studio Shell where applicable.

Conclusion

To twoggal or not to twoggal is not the question. The correct question is, why do you blog? I blog for two reasons: one is to learn and the other is to showcase my skills. I am a big believer in Joseph Joubert's quote "To Teach is to Learn Twice." I know when I research a topic and put it to words to teach someone, I understand the topic at a deeper level. If blogging is teaching, then what is twoggaling?

Do you think small or micro blogs are valuable? What would you suggest to increase the quality of technical blog posts?

Links

Non Twoggaling Blogger's


Adam J Wolf

The Intersection of the Arts and Crafts Esthetic and Programming