|
||||||||||
|
||||||||||
This is an archive site only. It is no longer maintained.
You can not post comments. You can not make an account. Your email
will not be read. Please read this
page if you have questions. |
||||||||||
The so-called "language wars" have been raging in the computer science community ever since the first Fortran program was written. There seems to be no end in sight, as people grind their favorite axes over garbage collection, strong typing, JIT-compilation, Object Orientation or whatever other passing fashion is currently trendy in the ivory towers of academia.
Meanwhile, in the real world, programmers are choosing the tools that get the job done. In the web community, this means Pearl, or Python. In this article, I will be using my years of experience in the b2c and b2b e-commerce sphere to cast some light on a subject which has been causing controversy for years: In this article, I will be comparing pearl to python to find out which one is best... |
|||||||||||||||
Before deciding whether Python is better than Pearl or vice versa, it is important first to establish what they are are and are not. Unlike compiled languages like Visual Basic, both Python and Pearl are "interpreted languages", meaning every time your computer executes an instruction, it has to recompile its source code on the fly. For some applications, like ICQ, your computer is fast enough to recompile faster than you can generate input, but for most applications, this fact alone is an insurmountable obstacle to using Pearl and Python. Another important consideration when choosing a language is picking the most robust tool for the job. If you read the fine print on your Pearl and Python EULAs, you'll see that neither language is intended for mission-critical development and deployment in nuclear facilities or air-traffic-control centers. You may think your environment is more fault-tolerant than those, but honestly, you can't afford to have your applications constantly crashing either. If you're willing to put up with lost data and incessant periods of downtime, then by all means, go with Python or Pearl. But if you're more sensible, you'll stick with an industry standard like Java. Both Pearl and Python are credited with speeding up application development, but the truth is much less forgiving: anyone can develop "faster", if it means performing less-rigorous testing and diving right in without carefully mapping out his game plan. Pearl and Python developers may be faster at what they do, but any gains in speed are vastly outweighed by the shoddy quality of the end product: would you like it slow and right the first time or fast and habitually wrong? There's really no question about it. Though Python and Pearl have strong followings among inexperienced programmers and Christian fundamentalists, neither has the full backing and support of an actual company. Whereas Microsoft periodically releases bug fixes and security updates for its Visual Basic language and Sun is hard at work improving and releasing new versions of Java, Pearl and Python programmers rely only on the whims of amateur teams of programmers no better than themselves. When choosing a language, it's important to choose a language whose licensing fits your project. Because Pearl and Python are what is known as "free software", all programs written in those languages must also be given away for free. As you can imagine, this severely limits the applications for which these languages are appropriate. Fortune 500 CEOs on the whole do not like to give away "something for nothing" which is why you will never see a pearl program running a top corporate website. Unlike mainstream languages like Java and Visual Basic, both Pearl and Python are only available for Unix operating systems. Although I am fully able to install and use Visual Basic on my Microsoft Intel Personal Computer, I was forced to draw my experience with Pearl and Python entirely from IRC and Usenet postings. Whilst it is possible to get a support contract for most languages, try it with Python and Pearl, and you will soon find yourself in "debate" with a 14-year old basement-dwelling hacker, who will first ridicule you, and then tell you to fix your problems yourself, since "you have access to the source code". Without further ado, onto the comparison:
To conclude. My life as a b2b and b2c entrepreneur is difficult enough in these post dot-bomb times without becoming bogged down in the tedious minutae of programming languages. I find that anything that cannot be done in Java (either with Enterprise JavaBeans or without) is not worth doing. If you find your boss insists you to do some work in either pearl or python, ask yourself one question: "How am I going feed my family, when my work can be given away for free ?".
Jon Erikson - Senior Consultant NPO Technologies. |