What was the reason behind outsystems decision to build its own ORM?....and not use something like open source Java Hiberate and .NET NHibernate.

There are many reasons for that, but one is obvious:
  • OutSystems Platform was released in 2001 (in .net)
  • Hibernate (java) stated development in 2001
  • NHibernate (.net) first releases dates around 2004-2005

João Rosado

Thank you for your response, ...

It makes clear sense - outsystems' decided to build its own ORM because Hibernate was not mature, it was new, and the it was only for JAVA, the .NET version of hiberate was not available at the time.

This was 12+ years ago, hibernate is now mature and widely used, performance tested and both a JAVA and .NET version are readily available, plus its all free; and open source.

It would be good if outsystems would consider migrating over its own ORM to hibernate and/or implement ODBC drivers so that the platform could internally map outsystems platform entity to other databases such as MySQL, postgresql, etc

Yes, I understand we could use integration studio and map any database to outsystems platform ourself but its much easier and convenient to have this type of feature baked directly into outsystems platform.
Hi Robert.

I can see your point, but it's my believe that whoever that as a product like the Agile Platform, can't rely on a third party tool. At least on a part that plays such an important role in it, like the ORM.

If Hybernate would move in a direction that is not the one that would benefit Agile Platform users, OutSystems would be left with unhappy clients.

Also, you must consider that the evolution of the AP would be constrained by Hybernate's own evolution. Of course one could argue that OutSystems could become one of the top contributors of Hybernate and have the needed influence on Hybernate's life, but that would turn Hybernate into something that it's not. Not fare I would say...

That's my 2 cents...