Friday, May 22, 2009

Of Ant, Python and Shell Scripts

I am working on a project where people are building Weblogic domains using a mixture of Ant, Python (for WLST) and Unix Shell Scripts. It's very difficult to maintain.

Problem 1: some variables are retrieved directly from property files, some are passed as parameters with really cumbersome code. Hard to read and to debug

Problem 2: Ant allows little or no flow control, and limited variable manipulation. I recommend using the ant-contrib project, which at least provides you with if and foreach statements, which are really the basis for any intelligent coding. Also, using the scripting (beanshell) capability of Ant could help

Problem 3: Python is a scripting language, which means no compilation, no debugger etc.

Problem 4: Unix scripting is basically impossible to unittest, and difficult to debug, forget about refactoring

On the whole, a more general issue: so far, Administration Guys had to rely on a series of terrible technologies, which kill productivity. When I have Java and Eclipse, why should I code in XML (Ant) or in Python or in Unix Shell? I can be 10 times more productive using the right tools and languages.... so, why? There is a huge technology gap here waiting to be filled by a new smart standard.

No comments: