Managing Modules Without Going Crazy (NPW 2007)

3,752 views
3,690 views

Published on

How to be the maintainer of many modules without killing yourself, being divorced, or eaten by starved house cats

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,752
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Managing Modules Without Going Crazy (NPW 2007)

  1. 1. Managing Modules Without Going Crazy brian d foy Nordic Perl Workshop 2007
  2. 2. Just Get Work Done
  3. 3. Less time maintaining modules Fewer complaints More time doing anything else Learn to live with “Good Enough” Have a life
  4. 4. ß
  5. 5. Just be yourself Don’t follow the leader (not even me) Finished work is the priority Playing with new tools is not the goal
  6. 6. Maintain modules Don’t spend time maintaining maintenance Avoid sysadmin monkey work Make reports, do meta-checks Script releases Use developer releases
  7. 7. Use old tools New OS’s / distros are nice, but generally a waste of time Same with new tools Don’t upgrade until you need to Don’t get rid of something that works
  8. 8. Avoid non-module work Don’t spend your time being a sysadmin Schemas come later Tolerate shaggy yaks Feeling good vs. useful work
  9. 9. Don’t let others host it Individuals, that is Avoid single points of failure Use Sourceforge, Google Project Hosting, et alia
  10. 10. Makemaker Module::Build has some problems Module::Build is not core Most people don’t need anything fancy Who cares what Schwern says? :) Unfortunately, Makemaker breaks a lot now
  11. 11. Avoid dependencies Code re-use is good You can go to far, e.g. Class:: If When dependencies break, so do your modules
  12. 12. Delete old versions Keep old versions out of user’s reach http://pause.perl.org Everything kept on BackPAN (backpan.cpan.org)
  13. 13. Scripted checks Automatically monitor module health Periodic smoke tests Nightly reports
  14. 14. Scripted releases Do everything the same way Check for common problems Have a consistent process
  15. 15. Module::Release • Won’t release anything until all checks pass • Checks... • test, disttest • kwalitee • VCS status • anything else you like • Uploads to right places
  16. 16. Developer releases $VERSION ends in /_d+z/ PAUSE won’t index CPAN tools won’t install Still in CPAN Search (http://search.cpan.org)
  17. 17. Changes files Avoid questions from users New features Fixes to bugs Should I upgrade?
  18. 18. CPAN Testers http://testers.cpan.org Almost every platform / Perl version Sometimes broken, but don’t sweat it
  19. 19. RT rt.cpan.org A pain, but adequate Collect all comments in one place Mention ticket numbers in Changes
  20. 20. The End

×