Choose the right technology
by jcf. Average Reading Time: less than a minute.
I have a “filler project” coming up and I need to choose the right tools to get the job done.
There’s a bit of infrastructure in place: MS SQL Server, IIS and a couple of databases on the SQL server.
I need to write a web enabled front end for those, containing two forms to enter information. Also I need to be able to create reports from the database (also in HTML).
Somebody else did the bidding and estimation so there is a lot less time than I’d like to have to spend on this project.
Luckily I can select the technology to use – but what should I choose?
Notes/Domino is out of the question. Looking at my choices I see the following options:
- ASP
- PHP
- Perl CGI
- Python
I have seen ASP and it looks a lot like LotusScript, so I’m confident I can tackle that. I have played a bit with PHP, should be rather easy to learn. Perl – I have written some simple database related CGI stuff in my last project, so there is some familiarity. Python – I’m playing with the language and like what I see.
What would you choose in my situation?

Note of course that ASP isn’t a language per se, it’s a set of objects for doing CGI-like code under IIS. With ASP your safest languages choices are VBScript or JScript, which of course ship with the system. These are safest because they generally work with no weirdness, and can use ADO which you would probably use to get at your DBs.
I did a prototype for a site in ASP with Python once, and I got it up and going much, much faster than with VBScript, and with better code organization to boot.
I have a small-to-medium sized Python CGI site, a hobby site, and the code there is structured much better than any of the ASP work I’ve done; with “classic” ASP languages the only code organization technique you have is raw file #includes. You can’t even do C style include guards, so you end up having to make sure your .asp page doesn’t do any nested includes.
Having modules in Python is much, much better, and I suspect that Perl modules would be better too, though I prefer Python to Perl at this point.
I’d go with ASP-with-Python or Python CGI, depending on what level of other COM objects you need to be able to use in this system. I haven’t played around with Python specific DB access modules for MS SQL, though I did get ADO working adequately under Python.