|Keep It Simple, Stupid|
Re^3: want a job?by Steve_p (Priest)
|on Dec 06, 2006 at 15:34 UTC||Need Help??|
And do you want a job in our support department telling our thousands of Windows users how to install a C compiler, nmake, configure CPAN, and install the necessary modules they need/want?
Who said anything about giving a C compiler to a user. I was suggesting one for you. Why would I give a customer a compiler when I can simply build a solution for them? This reminds me of a quote from elsewhere...
Perhaps you have forgotten that this is an engineering discipline, not some sort of black magic.
ActiveState, much like all *nix will not provide all of CPAN for download as a package. It simply isn't practical. You can, however, make it easier on yourself by providing your customers a Perl with several hundred extra modules out of the box.
But what is the solution for the modules that you don't provide or ActiveState doesn't build PPMs for? In the case of dedicated hosting customers on Windows, the answer is rather simple. Host your own PPM repository for them.
Here's how it works. Hosting customer calls up with a request for a module to have a PPM built. A level two support person attempts to build the PPM for them in something closer to a development box. Certain modules could be automatically declined like PDL, which requires a Fortran compiler, or modules that require special licensing like DBD::Oracle or DBD::DB2. If it can be built, you add it to your repository. If not, you let the customer know that it is not available at this time, and give them a solution for how you can resolve it through licensing or other means. For modules you can build, you add it to a custom build script of modules to watch CPAN for, so if a new version is released, it just pulls it down and create a new PPM.
As time goes on, you will probably want to make the process more automated, like eliminating the support person from the process, unless problems occur in the build. My guess is that you could even put a web front end on this and let customer request the modules be added by themselves.