Probably because he has a point. He took issue with my statement about the CAB, being too complex for the job it is supposed to do. Perhaps the thing that I regert the most is that I don't have truly constructive criticism to offer in this subject. I can understand why "I don't think that this is good" can be seen as offensive.
Before I respond to Sam's post, I would like to mention that I do believe that we can have a reasonable discussion without attacking each other, even if I decide to offer criticism. I would admit that not offering a constructive criticism is a problem in this case, but I don't have anything valuable to suggest about improving the product at this time.
In addition to that: I don't like personal attack in response for a technological discussion, and I really wish that the discussion would not stoop to that.
Now, to the part where I try to answer Sam's points. This is addressed specifically to Sam.
Frankly, I am personally tired of hearing all the things you can build in an 1/2 hour Ayende. Why do you constantly have to show how smart you are or your worth?
I am sadden to hear that. I have some snippy remarks to this, but I would try to refrain from that. I would like to mention two things. I do believe that I am not talking empty words. The second is that while Israel and the US may have superficially similar cultures, there are many changes between both culture. Oh, and I am also narcissistic & opinionated jerk.
I could write framework too but I choose to write business value functionality that my business REALLY WANTS instead.
Sigh, why do people assume that I don't deliver business value to my customers? If I wanted to sit in an ivory tower and write frameworks, I could do it. I am pretty sure that I could get paid for it. I hadn't any complaint from any of my customers (or my boss) about using work-time for doing frameworks-in-the-sky.
Why did you pick NHibernate? Shouldn't you write an O/RM in a week as well?
A bare bone OR/M implementation takes about a day to write, Fowler has the basis in PoEA. If that was all an OR/M had to offer, I wouldn't really bother with an existing one. You can check here to find what are the basic requirements for an OR/M. I estimated that as three months for me + 2 good developers to get to a version that other people could start developing on. Of course, that is a fairly rough estimate, so it may take more.
...these kind of posts don't endear you to me or others as they seem quite elitist and seem to advocate "you choose my way or you're dumb" mentality. If you want me (and others) to keep reading, maybe you might want to think about this.
I am sorry if this is the way it came out. I am using this blog as a way to express my thoughts about software and development, not as a way to put down other people. I would try to give it some thought, but I would request the same from you.
Its not worth bothering [with the CAB]? I understand DI and UI patterns and I chose it and bothered with it. What I thought at first was heavyweight is pretty suited to the tasks we have put it towards it. Its pretty testable to us, with 1900+ unit tests in our system, a major chunk of which is in the Presentation area. CAB certainly does
Model-View-Controller or
Model-View-Presenter straight away and we split into
Supervising Controller and
Passive View. We actually don't find CAB that hard anymore and we are able to add UI logic in Iterations fairly quickly (We are on a one week Iteration system).
Again, it is not the patterns that I am objecting to, and I think that the CAB has some good ideas in it. I am delighted to hear that you have been successful in implementing a CAB-based solution, and that it has worked for you.
Nevertheless, "We actually don't find CAB that hard anymore" - that is after over a year of working with it, right? I would say that it would have to be hard to use after that period of time. Incidently, this is not the only reference for about a year to get the CAB.
If you feel that your invensment in the CAB had been worth it, go celebrate it in a pub. I feel differently about the applicability of CAB to my projects, for the reasons that I have already specified, and I have yet to hear something that would change my mind or would actually address the question.
You already know why they can't use OSS stuff in a codebase that could jepordize products like SQL Server.
Ha? I fail to see the connection between the CAB and SQL Server, sorry. You would have to use hand puppets to get that throught for me.