dotNETwork 9th Gathering: Domain Driven Design, ASP.NET MVC, you know, tada tada…


Presentation slides and sample are now available. Please click here to find them!

Poster Yeah, somehow dotNETwork decided to allow me to show all my psychopath about design and implementation in a session with a very weird long title, “Applying Domain Driven Design on ASP.NET MVC”.

Yeah, two unrelated topics. In 2 hours frame, I should be introducing day to day development styles from a different perspective. I had a small talk about the process side of the world. This time we move towards the other areas related to architecture and design.

About the event

dotNETwork is an independent .NET user group in Egypt. They organize a semi-monthly FREE event about various .NET related topics. This is going to be the 9th gathering/event. I have delivered a couple of sessions there before, about Scrum for developers and Design Patterns in C# 3.0.

This time the event will be:

At: Saturday, November 29th, 2008. 12 PM to 4:30 PM

In: CIC Canadian International College

Busses Availability: @ Nady El Sekka, Nasr City (11:00 AM to 11:30 AM)

This is the event agenda, note that session videos will be recorded:

12:00 – 14:00

Applying Domain Driven Design on ASP.NET MVC

Mohamed Meligy
Senior Software Developer,

Information Architecture

Mostafa Mourad
Team Leader,

14:30 – 16:30


Hossam Kamel
Senior Software Enginee,

BizTalk-SharePoint Integration

Hossam El-Deen M. Barakat
Senior Software Developer,

The sessions are all really great. Again, the parallelism hits me once more. I know almost all the speakers, Maybe I don’t know Hossam Kamel that well, but I heard very great things about him from friends. While on the other hand Hossam El-Deen M. Barakat will be giving a session that I attended the smaller version of it in Raya. IT was more than great explaining things I thought were too complex that just happened to be so easy, and … Man, I know I must attend the complete one. But this is special to me because I have hit so many IIS 7 issues before and played with its various interesting features, so, maybe my choice is not the best for you.

The one I really regret to miss is the one Mostafa Murad will be delivering. Once more I’ll have to do much effort to prevent myself from leaving my own session and go attend the session in the other room!!

I expect it to be a super great day.  The session topics and speakers are of a very high quality, yeah yeah, except that white guy in the beginning called Meligy or Something and his weird session :).

About the session topic(s)

Domain Driven Design

Domain Driven Design (DDD) is a thought paradigm. This means it is a set of thoughts to have in your mind when designing software. This usually has its effect on how you organize your layers (and question yourself whether the 3-tire typical model is truly the right answer), and affects also how you write different pieces of functionality in your code (which happens to meet some OOP principles that are not emphasized usually in day to day work). It also introduces some other concepts like Dependency Injection (DI) / Inversion of Control (IoC).


One of the patterns that fit pretty much within DDD style is Model View Controller (MVC) design pattern. The idea of having some way to represent business entities in a way independent from technical operations calling them Models is the shared part, having a core business flow and control in the Controllers, and a dumb View that only gets the model from a controller and knows nothing except how to display it properly. There have been some famous MVC frameworks in the world that were built to make it easy to develop applications applying the MVC style. The one that was highly noticed was one called Ruby on Rails. Microsoft has recently developed its own MVC framework calling it just as it may sound: ASP.NET MVC Framework.

Wrapping Up

So, during this session, I’m going to try to touch the surface of both the concepts and tools and how they all play together. Of course I will not be able to go deeply in any of them because each requires a separate session,but just introducing the mindset and throwing out some names will be something for the session time. My purpose is to get you leaving the session, and opening your favorite search engine looking for more information about the topics.


If you have some time to invest,go see those great guys. If you have sometime to waste, come to my session and lets go crazy together :).

If you decide to attend the gathering,please mark yourselves as attending in the facebook event page, so that the organizers can estimate the number of attendees.

Related Pages:

Share With Friends:

P.S. Please help me out by checking this offer, then look below for a small Thank You.

How did I learn that?

As a bonus for coming here, I'm giving away a free newsletter for web developers that you can sign up for from here.
It's not an anything-and-everything link list. It's thoughtfully collected picks of articles and tools, that focus on Angular 2, ASP.NET 5, and other fullstack developer goodies.

  • http://

    It was really a great session and I am Really thanking you for you time and for sharing your gr8 knowledge

  • Another example of ASP.NET MVC making the case that dynamic languages are a better general purpose language.

  • If I would have taken 30 seconds to look at the code I would have saved both of us time.

  • � con las que se ha encontrado. ,

  • It’s no pay-to-play scheme. ,

  • directory submission

    This is nice post. There accept been some acclaimed MVC frameworks in the apple that were congenital to accomplish it simple to advance applications applying the MVC style. The one that was awful noticed was one alleged Ruby on Rails.