Who needs an IDE for Perl anyway?

So I have started to release versions of Padre, the Perl IDE. It is usable but far from being an IDE yet.

Maybe it would be a good time to stop and think a bit about a few questions: Who and why needs an IDE for Perl? Why and in what can Padre be better than the existing tools?

On the web site of Padre I have started to collect links to articles and discussions about Perl development tools. IDEs, debuggers and why people would need or why they should not use one. I even asked on the perl-trainers mailing list what do they use?

Let's try to group people writing Perl code according to their level of experience and Perl projects according to their size.

There are some very experience Perl programmers - mostly those who attend Perl conferences or practicing PerlMonks or participate in Perl Monger meetings or mailing lists - (also known as the Perl community ) who have their own tools (many use vi or emacs) and don't see anything lacking. Even if they do, they rather solve it in their preferred tool than switch to something else.

There are a few hundred or maybe thousand such people in the world. I would really like those to start using Padre as they can be the people adding more features to it but they are not likely to switch, unless the IDE can provide everything they had in the old system and some real advantages. At least in some situations.

Experienced developers new to Perl are usually used to have an IDE in their other languages. I see people from the C++, C# and Java world, when they need to write in Perl they complain a lot about the lack of IDE. They are so used to have one that it is much harder for them to switch to a simple editor. Those of them who are already familiar with Eclipse are lucky as EPIC seems to be quite a nice plug-in to Eclipse. Those who don't know Eclipse yet will still have the learning curve.

Total beginners and people who rarely use Perl might benefit a lot from some of the features of an IDE. These people tend to use Perl for small scripts but they need a lot of hand holding in finding functions, finding and installing modules that might do part of the work. They need lots of help in writing better perl code (e.g. recommend use strict and use warnings if they are not using).

During training we usually don't want to deal with editors people don't know, hence Padre needs to behave as expected from any simple text editor. It just need to have some extra features built in that will help the people with their first steps in Perl.

So I think beginners can benefit a lot from an IDE, the problem is that those who can recommend an IDE - the experienced people - will not use it much unless there are some advantages to it.

So besides providing the features that are needed for beginners it will be important to add advanced feature that might bring some of the advanced Perl programmers over to use Padre. At least in cases where they have to deal with less experienced people.