Another geek post.
I do a lot of work with IBM/Lotus Notes/Domino. That's IBM as in the purchaser of Lotus and Notes as in the core service that also provides Domino web applications. It's been my bread and butter since I graduated from college. I've been looking for alternative technologies that could provide similar services to what I do for a living with this combination for a long time. My criteria is:
- Ease of development- The Notes Designer is unparalleled in its ability to quickly get a secure robust application deployed on the internet -Bar none.
- Ease of integration with existing data sources -Notes can interface with relational data and its getting easier with each release. It's still not as simple as using the native Notes data store, though.
- Substantially lower cost of entry. A Notes server runs somewhere in the $8k range. This is just enough to trigger bells in large enterprises that don't have existing Notes infrastructures and usually beyond the budget of the SMB market I'd like to target more.
- Decreased vendor-dependence.
- Easier component segregation (i.e.: LDAP for security, RDBMS for data, Apache for presentation)
I've looked at several possibilities including:
- IBM Workplace, definitely doesn't lower the cost of entry or equal ease of development yet. I wouldn't be surprised if IBM improves on the product and offers an SMB solution as Workplace matures and gains traction.
- Zope. Pros are it has a rich object extensability and Jon Udell like it. Cons are that its pretty much a web browser development environment, which is a royal pain in this day and age.
- Struts/Tiles/insert "rogue" Java web framework cutesy name here. Aside from Struts, which is showing its age but seems to be the de-facto leader in mindshare for now, there's no standard that everyone can agree upon here. I worry about committing to a possible orphan product. Also, there aren't any acceptable GUI-ish drag and drop development environments for these tools (that I know of)
- J2EE. No way Jose.
- PHP. Cool, but lacks a good IDE. Dreamweaver sorta does PHP, but not really. (IMHO.)
Which leaves me with my current contender for the crown: Java Server Faces. JSF is a JSR standard, which reassures me that it will have acceptance. It's based upon existing JSP technologies, which are NOT J2EE (whew!) and don't require full J2EE software and support (It can be used/mixed with J2EE, though.) JSF has at least one competent drag 'n drop GUI IDE (Suns' Java Studio Creator) with more on the way. In particular, Sun's Java Studio only costs $99/year for developers and the apps are free (as in beer) to deploy. JSF has a component model that should encourage third-party developers to create widgets that can be easily incorporated into any JSF IDE/project. Still to come is better security control inside the development environment and components that utilize the AJAX principle for outstanding application interaction.
WORD OF THE MOMENT: Folksonomy
PREVIOUS WORD OF THE MOMENT: Meme