OK so I’ve had some awesome questions from Software Engineers about the importance of SOLID principles and the one that is most common is how can I find out about and learn SOLID principles? There’s a lot of great articles and really good videos on the subject but I still think the single best starting point is a most awesome podcast from Scott Hanselman where he interviews SOLIDs author Bob Martin. It’s a great detailed explanation of how SOLID works and I think you’ll find that the practical aspects are really useful in trying to implement SOLID on a day to day basis.
I came across this excellent article recently and while the target audience is Software Architects, in my view this is a great book list for anyone who is looking to grow their software engineering skills in general. I often talk to software engineers about reading books as part of their professional development plan (I’ll over this is in a post soon).
What I really like about this list is that it is actually planned with an approach of building on previous books. So you don’t have to follow this exact list, but what you might think about is the importance/value of having a planned set of books/references to build upon rather than just have a random set of books to read.“
I particularly like the approach of introducing the DDD books later in the path.The foundational aspects of the initial books sets up DDD really well.
I’d classify/tag this as off-topic but the reality over the quarter of a century in my professional life in IT, I’ve worked out one thing – you are working/coding better when you are happy. This is about the best video I’ve come across on the subject. I actually found it on c-sharpcorner.com for the record.
Good for young coders:
This is just gold. For any newbie touching C# please read this document – covers some really simple yet very important guidelines:
I really wish I had seen this earlier – only 3 days to get an application in for any women interested in this rare opportunity:
I am presenting a session on Career development for software engineers on – so for any UC students interested in some advice on career planing come along. Similar to one I ran a month ago at ANU.
I’ve been blogging about this for a while and I guess eventually when you are in this subject area you will come across a great article. This is one of them. Don’t get me wrong there are a lot of good articles on “How to be a successful Software Engineer”. This article is special, very special:
Nice and simple and well structured and focussed on the type of things that I have seen great engineers focus on in their career. This is a gem of an article for young and not so-young aspiring developers.
It’s all java but the principles are all the same for C# – contains quite a few really good examples of refactoring/refining code.