views:

35

answers:

3

At my institution, we have a small library with 150 books and 50 users. We would like to use a simple online management system that displays the books, lets users search and enter when they get and return a book. (There is no librarian, the books are just in an otherwise empty room.)

I'm not familiar with modern web content management systems. In the old days, I would have just implemented a quick Perl/CGI script, but I think there are better options nowadays?

What would be the simplest way to get/implement such a system? Django? Ruby on Rails? Ideally, I'd like to just run it in my user account without having to install database support etc.

Is it possible to do everything on one dynamic HTML page? What role does AJAX play in such a system?

A: 

If you want a quick and easy solution, you might want to consider using SQLite as the database backend, since it does not require any configuration or setup (except for the tables, of course).

If you have a machine standing around there, you could take a look at Qt/C++ or PyQt to create a simple user interface.

Pylons (there are lots of alternatives!) or any other web framework might do the job as well, but I guess it would be more work to create a web application than a quick and simple desktop application for this job.

BastiBense
+3  A: 

I suggest take a look at the available open source tools for libraries before deciding to build one from scratch:

http://www.libsuccess.org/index.php?title=Open_Source_Software#Great_Free.2FOpen_Source_Tools_for_Libraries

 

Another good resource in your research: http://www.oss4lib.org/

 

If you find an existing tool that fits the bill (or enough to make it worth extending), that will be important in guiding what platform/language/framework and techniques will be best to use.

micahwittman
A: 

This is quite a complicated question doesn't have a simple answer. The best I can do is point you in the direction of some resources to get you started:

Framework/CMS

Unfortunately, most frameworks require at least some minimal kind of db interaction. While this is not true for all, it would probably be easiest to steer clear of a framework, you probably don't need that much overhead anyway.

Javascript/AJAX

If you want things to happen without any seperate pageloads, then sure, you can use some ajax. However, you probably don't need anything this sophisiticated

How I Would Do It

If you really trusted your students enough to be diligent about checking in/out books, I think it would be easiest to just have a form on a webpage somewhere that they could enter the number of the book they are checking in/out. Then store the state of each book in a text file somewhere (you said you didn't want to use any db's), or even look into sqlite.

Again, you probably don't need all the overhead of a full framework/CMS. It would be fairly trivial to, as you said, write a quick script to handle the ISDN, ID, Title, Whatever of the book they are checking in/out.

Also, there are significantly easier languages to write scripts in these days than Perl and CGI. Try PHP, Ruby, or Java

contagious