Managing a Giant Perl Project, by J. T. Smith
J. T. is the mind behind Webgui (quite probably the world most deployed mod_perl application, apparently).
He focused a few interesting points:
* Release early, Release often (because it gets the word out there)
* Publish the standards (but make them something simple, as no one wants to read hundreds of page)
* Decision (there comes a point when you have to make the decision: project, or product?)
* Strategy (once you make your decision, how are you going about it?)
* Pay yourself! (do not spend the company like it's your own; it is, but don't go spending it travelling around the world, or the company will never make it)
* Outsource anything that's not your core business
* "Build yourself out of the system." (things cannot depend on you, or you'll be the botleneck)
* Writing articles and on blogs can also help the marketting of your product
J. T. now has 6 full time employees and some 40 contractors, about 10 of which are practically full time.
Best of luck for the future, J. T.
Get out of technical debt now!, by Andy Lester
Once again, Andy gave a wonderful presentation, explaining how to identify technical debt, how to eliminate it and how to avoid it in the future.
* Signs of debt (lack of documentation, tests, backups, etc)
* Identifying the debts
* Pay off the most profitable (not the easiest; not the most fun; think improvement, not perfection)
* "How do I sell the boss"? Quantify these things (improved turnaround; improved stability; decreased risk)
* Avoid future debt (do not repeat your mistakes; note when you do, anyway)
* Watch the corners; Automate corner watching (fluff, t/pod.t, t/pod-coverage.t, automated tests, vigorous policing, etc)
* Toold: Perl::Critic, App::Fluff
JSAN, AJAX and Perl, by David Rolski
A very interesting talk:
* Enter JSAN (CPAN for JS)
* One big problem: no such thing like Perl's "use" or "require"
* Enter the JSAN.js Library Loader
* Caveat: Some browsers do not respect caching headers when using XHR
* Workaround: JSAN::ServerSide
* What's on JSAN: Test.Simple, DOM.Events, DOM.Ready, File.Basename, Widget.SortableTable, Effect.DropShadow, etc.
* AJAX - Doesn't have to be Assynchronous, doesn't have to be JS and doesn't actually have to be XML, so... only the "A" for "And" is necessary, apparently...
* AJAX problems: Breaks the Back button, can defy expectations, lacks standards for UI Design...
Perl::Critic, by Chris Dolan
Surprisingly powerful, Perl::Critic comes into scene:
% perlcritic PerfectCode.pm
* There are levels of severity
* Configurability (just write a
* Flags to ignore special cases
* Etc... it's a whole world
Check it out: