When it comes to learning new technologies, I always had my unique way of learning things. I just don’t wanna learn the usage of the technology, but what I do is dig into internals of technology to understand the concepts from its root and try to understand why so and so concept was introduced? What was the problem faced before this concept was introduced. Afterall there is a famous saying “Necessity is the mother of invention”. Once I get into this, I start playing with technology. Then I don’t need to muggup or remember the things, it just comes out of my mind naturally. This small trick helped me to master many technologies. I realized this late, didn’t follow this during my school days or at least during my intermediate course. I would have been in much better position if I would have followed this from beginning. But at least now I am used to this. Out of this I have learned .NET technologies and wanna share the links, resource and books that I followed which exposed internals of technologies. (Note: MSDN is obvious resource that has lots of content on .NET, so I am not mentioning those)
Jon Skeet Site
This site has some very good articles that explains internals of some of the basics and advanced concepts of C#.NET. Jon Skeet, who is maintaining this site, also written one wonderful book “C# IN DEPTH” - http://csharpindepth.com/
Some of other sites I follow are: codeplex, codeproject, scottgu blog, and many more…I will share more in my coming posts.
CLR via C# 3rd Edition by Jeffrey Richter
This book explains the CLR functionality of .NET via C# language. If you want to understand how your C# code is transformed to MS IL code, this is the best book. Not for beginners though, good for advanced programmers
SQL Server 2008 Query Performance Tuning Distilled by Grant Fritchey
As the name suggests, this book is good read if you wanna tune your SQL queries and other performance related suggestions for your SQL server. Must read for advanced users of SQL
Design Patterns for Dummies by Steven Holzner
This book is inspired from “Design Patterns: Elements of Reusable Object-Oriented Software” and patterns coined by Gang of Four (GOF). Though this book uses Java for explaining patterns, it should be easy for C#.NET developers also.
Patterns of Enterprise Application Architecture by Martin Fowler
This is very good reference for developers of experiences more than 4 years. It talks about some of best practices and patterns that can be followed for enterprise applications. It explains some of the design concepts like IOC, DI and then patterns that can be implemented at different layer like presentation layer, business layer, service layer and data access layer.
Microsoft® .NET: Architecting Applications for the Enterprise by Dino Esposito
This is same as the PEAA by Martin Fowler that I mentioned above, but tailor made for .NET audience
The Data Warehouse Toolkit by Ralph Kimball
This is awesome book for BI audience. This is not specific to any technologies, but it takes case studies of different industries like banking, retailers etc and designs the facts dimensions. Also watch out for other books from the same author.
If you wanna learn about MS BI technologies, then Step by Step series books are available from Microsoft for SSIS, SSAS and SSRS
I will continue sharing, in coming posts, about other books, resources that I follow which interests me.