As a former Omnis developer, the thing I appreciate most about Servoy is that like Omnis, it is a friendly, self-contained development environment that minimizes the amount of code I need to deal with. Like with Omnis, in order to achieve this ease of development, there is proprietary technology involved, but like with Omnis, there's a huge payoff in terms of developer productivity.
Where Servoy betters Omnis by a long shot is in its deployment architecture . It is 100% geared towards developing and deploying zero-install apps that can run over the web, intranets, lans, wans, etc. Currently, its strength lies in the creation of java applications, but with the new version coming out soon the same ease of development will apply to HTML applications as well. (There is also a third flavor called the "Servoy headless client" which allows you to use Servoy as the business logic layer for JSP-based applications, but I haven't worked with that yet.)
Several months ago I wrote a note to the Omnis list server that sort of compared Omnis to Servoy. I have copied an excerpt from that below. I am mainly comparing Servoy to Omnis Classic here, not Omnis Studio, as I don't have much experience with Studio, but from what I have heard and read, most of this applies to Studio as well. I hope this helps.
Adrian McGilly
www.mcgilly.com
What I like about Servoy compared to Omnis.
- Like Omnis, the IDE is well thought out and easy to use.
- I can create Java apps with rich UIs without having to learn a single line of Java.
- Soon, I will be able to create HTML apps from the same forms I used to create the Java apps (I can do it now with beta software from Servoy)
- I don't have to install anything on the client machines for these apps to run.
- The only scripting language I have to learn is JavaScript and a little HTML. Neither of these is too tough to learn, and I like that they have applications outside of Servoy.
- Servoy takes care of most of the data management (selects, inserts, updates, deletes, maintaining referential integrity, etc.) that I used to have to code myself in Omnis.
- it's extendable through plugins, beans, applets and in-line java
- connects to any jdbc-compliant db, eliminating the need for middleware (i.e. Omnis DAMs) and comes bundled with SQL Anywhere, and hides the differences between different back ends so that apps are truly database-independent
- Includes Servoy Application Server which manages all aspects of deploying and managing the app, and is very easy to administer.
- decent debugger (though Omnis' is more advanced), good version control, built-in support for internationalization
- The Servoy community is big (over 10,000 developers, and over 1,000 customers, according to Servoy) and very welcoming to newbies - their online forum has been exceedingly helpful, (just like this one!). The development team monitors/responds on the online forum constantly.
- Servoy Inc. provides online tutorials, helpful sample apps, an online magazine full of helpful tips & examples, regular online training webinars, an annual conference, a few user groups here and there and regular class-based training through partners.
Where Servoy lags behind (or alongside) Omnis:
- Servoy does a lot for you, but you have to learn to work with its particular toys in its particular sandbox. Once you're there, you appreciate what you have, but it takes some patience to get there. The documentation and sample apps are good, but they could use a "recipe book" type of document to help newbies get around.
- There are things I can do interface-wise in Omnis (Classic & Studio) that I can't yet do in the current version of Servoy. The reverse is also true.
- like all development environments, it's got bugs here and there, but the development team turns these around very quickly.
- JavaScript is powerful but also thornier than Omnis Classic's scripting language. (Probably comparable to Omnis Studio's). Takes some getting used to.
- Being extendible through plugins is good, but when your commandset is distributed among a bunch of plugins it makes for a disjointed programming language (at least, compared to Omnis Classic's scripting language. Again, probably comparable to Studio).