With this "I have an idea" series, I try to explain some ideas that cross my mind. Sometimes they will be crazy, or boring, or interesting.
The first idea title: "PSR - Perl Specification Request". Last years, we are experimenting a slow and progressive descrease of Perl-enterpise use. Other platforms like JEE and .NET are growing. We need to improve our presence in this scenario, but how? Perhaps we can pay attention to success projects in this area, and create or improve similar things in our environment. For example, I like the EJB3 model in JEE to build enterprise applications, covering topics like scalability, security, transactions, etc. There is a set of specifications for EJB3, and many providers have built their products according with them.
Perl6 introduced a new concept in our world: specification. Rakudo is one implementation of that one. This is a very important thing, we should use. Why not create a PSR group? His job will be create the specification of hot topic areas, like web objects, persistence, rules, busines process model, validation, etc. The each group of people will implement their own solution. The PSR could propose a test-suite in order to ensure the implementation is correct.
This is a simple idea, but with a big amount of work to do:
- Organizative, in order to identify the specification areas, the specification propossal procedure, the interfaces between specifications, the work plan and scheduled tasks
- Technical, with two levels: first the specification group, which makes the interface definition, defines the funcionality and build the test suite. Second, the workgroup that implements the specification
I think we need to improve in a organizated way, and perhaps this idea may be a good starting point in order to define a scenario in which we will feel confortable. Rakudo will be probably released next spring, and this will be a good starting point. The specification model I have proposed may be the main concept to build CPAN 2.0.
What do you think?