Oren Eini

CEO of RavenDB

a NoSQL Open Source Document Database

Get in touch with me:

oren@ravendb.net +972 52-548-6969

Posts: 7,502
Comments: 51,090
Privacy Policy · Terms
filter by tags archive
time to read 1 min | 63 words

After a heoric struggle, I managed to get the local development story against MS CRM working. This means that I can use the normal semantics of develop locally and then deploy, instead of centralized development.

That said, there is something very wrong in a solution that requires me to take action in the TCP stack level to get a normal development story going.

time to read 2 min | 363 words

Yes, this is another response to Sam's post, and this time is has nothing to do with the CAB or P&P. This is about a few things in Sam's post that really bothered me:

  • Let's leave out the fact that three of my best friends in the world designed and implemented CAB. That's just the personal stuff. My problem is simply that many of the assumptions and things they wrote are patently false. They don't know these people, they don't know CAB at all.
  • But what I object most is how they are targeting the wrong team in Microsoft! The P&P teams are one of the ONLY if not the ONLY team(s) in Microsoft that do Agile XP.
  • Here's a group trying to spread the good news of Design Patterns/Fowler, TDD, Agile and Iterations, etc and you have to stick it to them?

So, let me rephrase that.


They are your friends and they are doing agile, TDD, XP, etc.


I must not criticise what they are doing, even if I think that they are doing something wrong.

I am all for Agile and TDD, and I love to see people using them, but I don't think that this makes them automatically successful, or that they will choose the best approach. And I am certainly not going to let the fact that someone is doing Agile or Open Source, or something else that I also believe in, to stop me from telling them that they are wrong.

I think that the P&P team is going in the wrong direction, I can see why but that is not relevant to the discussion, that they are agile (or Sam's friends) is not an issue, I still think they are wrong.

time to read 6 min | 1052 words

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.

time to read 1 min | 78 words

I was asked if I could interface to an existing database, so I took a look*:

(Image from clipboard).png

Somehow I do not think that I can make it interface with NHibernate.

* To be fair, this is a client side ajax solution (think CD-ROM, not web), so this is actually a clever idea for the problem they were trying to solve.


No future posts left, oh my!


  1. re (33):
    28 May 2024 - Secure Drop protocol
  2. Recording (13):
    05 Mar 2024 - Technology & Friends - Oren Eini on the Corax Search Engine
  3. Meta Blog (2):
    23 Jan 2024 - I'm a JS Developer now
  4. Production postmortem (51):
    12 Dec 2023 - The Spawn of Denial of Service
  5. Challenge (74):
    13 Oct 2023 - Fastest node selection metastable error state–answer
View all series


Main feed Feed Stats
Comments feed   Comments Feed Stats