Wow, it’s been a busy year. Last month I passed the foundation exam for my Microsoft Certified Technology Specialist exam and started on the second module. You only need two modules to get the certification: the hefty foundation exam and then a choice from WPF, WinForms, ASP.NET, WCF and a few more. I haven’t done much WPF but thought this would be a fine chance to learn and aim to hit full qualification by the end of February.
The foundation course covers the fundamentals which every .net developer ought to know: threading, appdomains, file access and streams, events, permissions, deployment and so on. Pretty basic stuff but covered in depth. It’s a shame that many developers are still cynical about these types of certification, but I think it’s an easy way to demonstrate a base level of skill. And the exams are apparently a lot harder now than they used to be. Still, if you do know your stuff I don’t think it’s too much hard work and it won’t take an age to complete. It’s possible to study for the exam purely by reading and completing the exercises in the textbook and without paying for expensive courses. It took me a couple of hours each weekend for about six weeks and then two days of cramming before the exam.
While I’m on the subject of learning, I’d also recommend this SQL Server book. We build a lot of data intensive apps and tend to do most of the data processing on the SQL Server to reduce latency. This makes query performance a likely bottleneck and concurrency a likely issue. Unfortunately SQL seems to be one of those languages like VBA and Javascript that developers just pick up on the job and learn by the Google Method. If you want to know how to safely and efficiently execute dynamic SQL, use transactions, prevent locking and generate efficient execution plans, then this book is a good place to start.