Walter Joseph wrote:
I developed a clipper app years ago, and am considering updating it. I'm
considering Ruby on Rails for this project, but would like advice before
jumping in regarding the capabilities of Ruby.
First, Ruby is the language, while Rails is a framework for building web
applications. If you intend to build your new project as a web app then
ruby and rails might be a good fit. If you simply want a client server
n-tier app without having to go through the htt protocol then ruby is
fine but rails may not be the route to take. You may just want to pull
in ActiveRecord and drop the rest (pardon the pun).
1. Would Mysql be a good replacement for a xbase database?
Rails does not force you to use MySQL. Depending on the application's
data size, even SQLite3 might be a good replacement database for your
purpose. The backend DBMS selected has more to do with how big the data
set is and how many users you expect to be hitting the data store.
Besides MySQL, you can use PostgreSQL, SQLite3 and a variety of others.
2. Can I build pick lists on the fly from data?
Yes, but the implementation details are left as an exercise for the
user. If you go down the web app route then there are javascript
libraries and rails plugins available to accomplish this in the browser.
I expect similar tools exist for straight Ruby apps but I do not know of
any.
3. Can i develop a networked data entry system with Ruby
You can do almost anything with Ruby that can be done in any other
language, often faster. However, you probably want to research how much
of the structure you can get from frameworks. Again, Rails is meant for
web apps and expects the GUI to exist inside one of the popular web
browsers.
4. Is there a graphical library for Ruby that can generate line drawings
with postscript text to screen and print?
Whatever graphical libraries exist for C have been or can be wrapped for
access through ruby.
5. Is there report writing programs for Ruby and Mysql?
Ruby is a language. There are extensions / plugins for Ruby / Rails
that assist in producing some forms of output, PDFWrite for instance, or
RuPorts. But you have to write the programs yourself.
For stand alone reporting from different DBMS there are no doubt a
number of OS projects and commercial products to choose from, Crystal
Reports for instance. But whether these are suitable depends upon what
form of networked application you are talking about.