Category Archives: .NET

Connect IoT Devices by using RabbitMQ and MQTT.

There is a growing change in the software world these days, due to increase of IoT devices. We live in a world where real time information is important, and one of the challenges that software projects dealing with is how … Continue reading

Posted in .NET, .NET 4.5, C# 6, MQTT, RabbitMQ | Leave a comment

Async programming and scalability with C# 5

What is Scalability? Scalability is the ability of a system to expand to meet your business needs. You scale a system by adding extra hardware or by upgrading the existing hardware without changing much of the application. In the context … Continue reading

Posted in .NET, .NET 4.5, C# 5 | Leave a comment

Prism vs Caliburn.Micro

After several years of work with Prism (, I introduced Caliburn.Micro framework ( for building MVVM applications. In this post I’m going to explore the Caliburn.Micro features over Prism features. What are the advantages and disadvantages of each framework, and … Continue reading

Posted in .NET | Leave a comment

Closures in c#

As a c# developers we write a lot of lambda expressions. And with lambda expressions we can access variables outside the expression block. For Example: class Program { static Func<int,int> Add; static void Main(string[] args) { int x = 5; … Continue reading

Posted in .NET, .NET 4.5, C# 5 | Tagged | Leave a comment

What’s the difference between Task.ContinueWith and await?

In the .NET there are many ways to implement asynchronous programs. We can use the Task, Task<T> or await keyword to write asynchronous programs. For Example: Task<IPAddress[]> addresses = Dns.GetHostAddressAsync(“”); addresses.ContinueWith(parameter =>      { IPAddress[] ipAddresses = addresses.Result; }); As … Continue reading

Posted in .NET, .NET 4.5, C# 5 | Leave a comment

WPF and DataAnotations

A few weeks ago I took MVC 3 course at E4D with Eyal Vardi. One of the subjects we learned is how to validate Object or property-using validation attributes. First thing I thought about is why WPF does not … Continue reading

Posted in .NET, WPF | Leave a comment