[Bast-commits] r9629 - ironman

idn at dev.catalyst.perl.org idn at dev.catalyst.perl.org
Thu Jul 8 20:44:06 GMT 2010


Author: idn
Date: 2010-07-08 21:44:06 +0100 (Thu, 08 Jul 2010)
New Revision: 9629

Added:
   ironman/overview.pod
Log:
Adding an overview document for the IronMan project.  First cut

Added: ironman/overview.pod
===================================================================
--- ironman/overview.pod	                        (rev 0)
+++ ironman/overview.pod	2010-07-08 20:44:06 UTC (rev 9629)
@@ -0,0 +1,166 @@
+=head1 IronMan blog agregation and archives.
+
+For The Enlightened Perl Organisation and the Perl Community.
+
+=head2 Service outline - what is IronMan.
+
+(Taken from http://www.enlightenedperl.org/ironman.html)
+
+In order to promote the Perl language, and encourage more people within the
+Perl community to promote the language to the world outside the Perl
+echo-chamber, Enlightened Perl is pleased to announce the Iron Man Perl
+Blogging Challenge.
+
+The rules are very simple: you blog, about Perl. Any aspect of Perl you like.
+Long, short, funny, serious, advanced, basic: it doesn't matter. It doesn't
+have to be in English, either, if that's not your native language. To stay in
+the Iron Man Challenge, you must maintain a rolling frequency of 4 posts every
+32 days, with no more than 10 days between posts.
+
+Your blogs will be aggregated on the Iron Man Planet at
+http://ironman.enlightenedperl.org/.
+
+Everybody starts off as Paper Man (or Woman). Manage four posts, week on week,
+and you get to be Stone Man. Get further and you get to be Bronze Man. Six
+months of straight posting qualifies you as Iron Man. And don't worry if you
+fail - there's no losing this competition, you just go back to Paper Man (and
+there'll be a consolation prize while you work your way back up). For each
+level there will be a corresponding badge for your blog.
+
+There will be a post of the month competition: a committee of good Perl writers
+and bloggers, who will look over the posts and pick one out to be honoured each
+month. The winner will get a limited edition T-shirt, and possibly other prizes
+from sponsors.
+
+Better still, the post of the month committee members are all going to be
+available to critique your posts, if you want them to. These people all know
+how hard it is to write well and they're all willing to try and help you write
+better if you're interested.
+
+On top of that, there's an extra incentive: Enlightened Perl board member Matt
+Trout, whose idea this was, will be be blogging as well. Obviously as the
+organizer, he's not eligible for a prize, but...
+
+If he misses a post once anyone has got to Iron Man, the people who have got
+there get to choose a talk title and a colour. And Matt will submit a talk of
+that title to YAPC::EU and YAPC::NA the next time there's a CFP, and he will
+give that talk with his hair dyed the colour that's been chosen. (If he can't
+find hair dye of that colour that's semi-permanent, he gets the option to spend
+the entire conference wearing clothes of that colour instead.)
+
+So... get blogging!
+
+Register your blog at http://ironman.enlightenedperl.org/new_feed/
+
+Start posting now.
+
+=head2 Architecture - how does it do this?
+
+The IronMan project as a whole breaks down into three seperate Perl Modules.
+
+=begin html
+
+<img src="architecture-diagram.png" alt="Architecture diagram">
+
+=end html
+
+=head3 The L<IronMan::Schema> module.
+
+The L<IronMan::Schema> module does nothing more than represent the database
+structure that we use to store:
+
+=over
+
+=item * A table of feeds, one row per feed
+
+=item * A table of posts, one row per post
+
+=back
+
+Additional ResultSets are defined within the schema to ease the production
+of the archive views for the web interface.
+
+=head3 The L<Perlanet::IronMan> module.
+
+Most of the work for the IronMan project happens within L<Perlanet> and
+L<Perlanet::IronMan>.
+
+L<Perlanet> by Dave Cross is a feed aggregation tool that collects posts from
+feeds and stores them.
+
+Perlanet::IronMan extends this module to add:
+
+=over
+
+=item * Storage of feeds and posts in a database via the L<IronMan::Schema>.
+
+=item * Post filtering to only retrieve posts with the right keywords or tags.
+
+=item * Duplication checking prior to insertion of retrieved posts.
+
+=item * Specific L<HTML::Tidy> rules for the IronMan project.
+
+=back
+
+Extensive work has been done to rewrite both L<Perlanet> and
+L<Perlanet::IronMan> but at this time these efforts are not complete.
+
+=head3 The L<IronMan::Web> module.
+
+Once the data has been collected and stored, the Catalyst based L<IronMan::Web>
+displays the stored posts data for the world to read.
+
+This web interface also permits browsing of the archives for posts retrieved
+for the IronMan project.
+
+=head2 Development lifecycle.
+
+The source code for all of the above can be found within the IronMan project
+subversion repository at http://dev.catalyst.perl.org/repos/bast/ironman/
+
+For each of the above listed modules, a directory exists containing the
+following tree structure.
+
+=head3 module/branches/dev
+
+The current development version of the module will be within this directory.
+
+When development is ready to be staged, it is merged into ironboy.
+
+When supplying patches, please work within these directories.
+
+=head3 module/branches/ironboy
+
+The current staged version of the module will be within this directory.
+This is a live, deployed, staged deployment directory.
+
+This area should never be committed to, changes must be applied from the bottom
+of the development cycle and come through to here.
+
+Once the staged deployment to ironboy is satisfactory, it is merged into trunk.
+
+=head3 module/trunk
+
+The current live deployed service will be within this directory.
+
+This area should never be committed to, changes must be applied from the bottom
+of the development cycle and come through to here.
+
+On deployment, this directory is copied to tags.
+
+=head3 module/tags
+
+The tags directory contains previous deployed versions of the code base.
+
+This area should never be committed to, changes must be applied from the bottom
+of the development cycle and come through to here.
+
+=head2 Deployment considerations
+
+=head3 local::lib
+
+
+
+
+
+=cut




More information about the Bast-commits mailing list