I am contemplating a project, and I have a question:
What components would you use to build a business application in Ruby?
Suppose, you were asked to write a business application. Typical,
no-thrills business app. Reasonably small database, few dozen users (all
internal), some reporting functionality, couple of batch interfaces,
nothing fancy. To give an example, think about sales / stock control
system for a wholesale trader of electronic goods. Or vehicle tracking
system in a truck company. Or something similar.
Naturally enough, one would want to do it in Ruby
But for a job like this, you need a certain set of technologies, namely:
1. A database
Java world: Oracle, MySQL or another relational DB of your choice
2. Some way to persist domain objects and manage transactions
Java world: entity EJBs, JDO, hand-coded DAOs, O/R <censored> mappers,
3. An RPC (remote procedure call) mechanism for communication between
the front-end and the back-end (assuming that the front-end is a thick
Java world: session EJBs, servlets
4. A thick GUI
Java world: Swing
5. A Web GUI
Java world: JSP, XSLT, XMLC and all the other stuff
6. An asynchronous communications infrastructure
Java world: message-driven EJBs
Doing the whole thing in Ruby is already experimental enough, so the
choice is limited to mature, production-grade stuff.
What would you use?
If this has been discussed before, I am sorry. Please point me to a
relevant thread in the archives.