While I was planning to write about the same topic and have the draft ready in my Windows Live Writer waiting to complete, I found an interesting question in StackOVerflow and couldn’t just resist to answer:
The question starts with:
I’m starting a new project and I’m looking around for either a very good ORM or for a non-SQL-based persistence layer.
Then follows up with a REALLY GOOD summary of what he believes about each known ORM he knew out of his own findings and search. I advice you to go read it.
However, all this investigation didn’t get him to a single choice answer. And I can’t blame him. This is one fo the questions that will remain for so long without a single answer, or maybe having the popular “It depends” answer.
I have had a LONG research in this topic as well. I have read for so long (and watched videos/casts) to make sure of the best usage of many ORMs and then used them sometimes in test projects sometimes in production, and I wanted to share my thoughts based on this. I posted a long answer there on the question in StackOverflow, and I want to share this answer with you here. I may also have a second part of this post based on my existing Windows Live Writer draft, but, based on my previous times, I think I won’t!
Read the full post ... (1189 words, 3 images, estimated 4:45 mins reading time)
.NET, .NET FAQ, ALT.NET, Domain Driven Design, Entity Framework, FAQ, LINQ, LINQ To SQL, LLBLGen, NHibernate, ORM
This was originally an email I sent to .NET team in my company, then decided to share as a blog post.
The problem:
- Let’s say you have a complex application, and this application (or part of it) runs very slowly. No bug s in results, no errors or exceptions, but it just so slow! Now you want to know which part of your code is the reason, which method(s) you need to go and modify., which methods take so long to execute or consume so much memory/CPU. How would you know that?
- Let’s say you want to improve the performance of your application in general (say add caching or such), so, you want to identify which parts of your code deserve your attention and will really make difference (so that you don’t waste your time on optimizing something that will not have big effect in performance), for example, you might want to identify which methods are called more than others from different parts of your code. How would you do that?
Read the full post ... (822 words, 21 images, estimated 3:17 mins reading time)
.NET, .NET FAQ, ALT.NET, Architecture, ASP.NET, ASP.NET 2.0, Link List, Miscellaneous, Visual Studio
Emad Ashi (
@splashup on twitter) interviewed me in the 5th episode of his first Arabic podcast series
DotNetArabi to talk about Object Relational Mapping in .NET in Arabic.
السلام عليكم
أصدقائي العرب ممن يتابعون هذه المدونة.. يسعدني أن أعلن عن أول حديث لي على الانترنت – و كذلك أول حديث لي على الانترنت بالعربية، عن الـ Object Relational Mappers – ORMs
الحلقة 5: محمد مليجي يتكلم عن الـ ORM (Object Relational Mapping)
محمد مليجي تكلم عن الـ ORM (Object Relational Mapping) و هي برامج مساعدة تستطيع من خلالها نقل المعلومات و تحويلها من طبيعة قاعدة البيانات إلى طبيعة البرامج المبنية بأسلوب الـ Object Oriented. حلقة غنية بالتفاصيل و المعلومات القيمة جدا.
Read the full post ... (374 words, 2 images, estimated 1:30 mins reading time)
.NET, ALT.NET, DotNetArabi, General News, LINQ, Local Events, ORM
Here’s another email from the internal mailing list of Injazat .NET Ninjas (Ninjazat, AKA as we call ourselves), that I’m sharing with blog readers as well.
Just a place holder, until I move one of my 18 (just discovered the number now – terrifying!) drafts in my Windows Live Writer into a published post, or delete them all!
Subject: [Learning] Some very interesting videos
Some videos from NDC 2009 event (Norwegian Developers Conference 2009) – about software design and related issues:
· NDC Video – Robert Martin – S.O.L.I.D Principles of OO class design
· NDC Video – Robert Martin – Craftsmanship and Ethics
· NDC Video – Robert Martin – Component Principles
· NDC Video – Robert Martin – Clean Code III – Functions
· NDC Video – Michael Feathers – Working Effectively with Legacy Code
· NDC Video – Jeremy D. Miller – Convention Over Configuration
· NDC Video – Michael Feathers – Seven Blind Alleys in Software Design
· NDC Video – Ted Neward – WCF Patterns
· NDC Video: Michael Feathers – Design Sense
For the complete list of videos from this event check videos from:
Read the full post ... (255 words, 2 images, estimated 1:01 mins reading time)
.NET, ALT.NET, Architecture, Code Reading, Link List, Miscellaneous, OOP, Patterns, WCF
The Useless Introduction You Used To :)
This post has taken so long to be started in writing. I’ve been busy with many events in my life lately. Suffering from frequent limited internet access lately, and, all this moving between companies thing has been eating me. And yes, I admit, I’ have been as tired and more honestly lazy as you expected me to be!
Hey, there’s a little warning. This post is not exactly for my usual audience. I’m sorry, but introducing Domain Driven Design is not one of the goals for this post. There’re many interesting resources and books (even FREE: InfoQ, Domain Driven Design Quickly) on the topic. However, if you leave me a comment telling me to make a write-up on the topic, of course I will :) :).
One more thing. Another reason I’m working on this is that I’m preparing for an internal session here in Raya about Practical Lightweight Domain Driven Design. This session is truly internal yet. It should be recorded though but I’m not sure whether it’ll be possible to publish the videos (Yeah, I will see how we can have our public sessions of possible sure!). If you have a user group and would like me to give this session in a group meeting, I’ll be glad to do.
Read the full post ... (1517 words, 2 images, estimated 6:04 mins reading time)
.NET, ADO.NET, Agile, ALT.NET, Architecture, Domain Driven Design, Patterns, RAYA