dotnet falcon

Blogging about .NET and software development - from my bird's eye view

Teaching

Implementing the IFormatter interface

Implementing the IFormatter interface

Feb 28, 2019
One of the courses I teach is the standard Microsoft 70-483 exam preparation course. For some reason, the exam still has questions about how the BinaryFormatter and SoapFormatter components work (I'm not even going to try to guess why), so the training material also discusses the related concepts in detail.
Awesome Northwind

Awesome Northwind

Feb 5, 2019
Whenever I give a talk at a meetup or teach at a course or just want to try a demo about a data driven technology, my biggest problem (and the biggest nag) is always to get some real(istic) sample data. Thankfully there are sample databases available on the internet
Memento design pattern done (almost) right

Memento design pattern done (almost) right

Nov 13, 2018
I regularly teach courses on basic object-oriented design patterns. Over the years I have come to realize that not every pattern is equally useful or equally well-thought out. One of the most common examples of patterns that have become more like anti-patterns over the years is the Singleton pattern. But
Deserialize into interface

Deserialize into interface

Jun 12, 2018
Not long ago I was teaching a Programming in C# exam prep course. One of the modules involved serialization and a student asked me a question that was quite intriguing: Given the serialized form of an object, is it possible to deserialize it into an object if we only have
Adding bytes in C#

Adding bytes in C#

Nov 20, 2017
What happens if you run this little piece of code? More specifically, what's the type of the variable 'x'? byte b1=1; byte b2=1; var x=b1+b2; Console.WriteLine(x.GetType()); Well, if you guessed byte, you were wrong. This will actually result in an int. This was
Danger zone: true, false or...

Danger zone: true, false or...

Nov 1, 2017
As an MCT I regularly teach courses of different levels. And I have to say, I love teaching — that's the most efficient way to learn :) A participant at one of my advanced courses brought me this little 'problem' (of course, this is not a 'real' line-of-business problem, just something to
Back to the basics: Overload resolution in C#

Back to the basics: Overload resolution in C#

Oct 21, 2017
During one of my courses, and interesting question came up. Let's say you have a class definition like this: public class Test { public void Method(T parameter) {} public void Method(int parameter) {} } // ... // Test object = new Test(); // object.Method(7); So, as you can probably guess, the question was about
Want to become a meetup speaker? Here's what you need!

Want to become a meetup speaker? Here's what you need!

Aug 17, 2017
I'm not just a software engineer, I'm also a teacher of software engineering. I feel obligated to share my knowledge with anyone who's in need of it, and, in the process, furthering my own understanding of technology and software engineering. That's why I became and MCT, that's why I'm on