Application and web app technologies

January, 2006.

[clip]

I have been tasked by me IT department with investigating different
technologies for what will be a total rewrite and major update of our
applications. The problem with Perl is that it seems dowdy and old
fashioned, and that we never really investigate alternatives. We just
fell into Perl because that's what people knew. Also, we have had some
staff changes, and updating Perl code, some of which is years old, has
proved to be a real nightmare. Perl works great! ... but trying to read
and modify someone else's code, or even your own, is pretty darn tough.

A real important part of this is database connectivity. We use a number
of different databases, Access, SQL Server, Datatel (the big University
DB), PostgreSQL (my favorite), MySQL, and a couple of others.

[clip]

We want something that we can use across the board, from web apps to
sys admin (which is why ColdFusion is not a candidate). I'm not
interested in advocacy, but if anyone has experience in and compare
these technologies, we would be grateful for your experiences.

Perl, Python and Ruby can all be used across the board, assuming no huge
performance needs. Like another poster's reply, I don't think it's necessary
to use only one language, but that's your decision.

I've used Perl 5 since 1997. It's wonderful. But not as good as Ruby, IMHO.

Perl has that "many ways to do something" philosophy, which, in my opinion, is
the kiss of death to maintainability in the face of transitioning staff.

Ruby has in my opinion a much less surprising syntax and behavior. Ruby has a
MUCH better OOP implementation, with true encapsulation complete with the
private, protected and public keywords. Ruby's attr_accessor, attr_reader and
attr_writer give you what *looks like* direct access to instance variables,
but really through get and set methods of the same name, so incapsulation is
intact.

C++ has a very complete OOP implementation, but it's often complex and can
throw surprises at the programmer.

Java is Java -- very broad and lots to learn.

Ruby, like Python and Java, has a much shorter debugging phase than Perl or
Java.

I haven't tried Perl6 yet, but I've read about it, and it sounds broad and
complex, and I'm not sure what it would do that Ruby can't.

The one area where Perl wins over Ruby is performance -- others can give you
ideas as to the extent of the performance gap.

HTH

SteveT

Steve Litt

slitt@troubleshooters.com

ยทยทยท

On Monday 02 January 2006 01:27 pm, cartercc@gmail.com wrote: