website development and maintenance, using Perl. Please help!

Discussion in 'Perl Misc' started by Andrew, Sep 30, 2005.

  1. Andrew

    Andrew Guest

    Dear Perl gurus and enthusiasts

    I appeal to you because I seem to be at a significant crossroads as a
    web developer and consultant for a nonprofit educational institution
    who has been, for several years, kindly entrusting me with developing
    web-based database applications, and I have been fairly accommodating,
    with Perl CGI scripts and mostly MySQL backend (sometimes illiciting
    "wow!"s with the power and agility of Perl), and other goodies
    available with Linux and OSS.

    Currently, however, there is mounting discussion and pressure in the
    organization to produce a "serious" and comprehensive website, with
    robust and modular design, consistent look and feel, as well as an
    efficient maintenance scheme.

    Having mainly focused on database apps, i don't seem to be up-to-date
    on what the latest and greatest web-development strategies implementing
    Perl/OSS are.

    The organization is vaguely considering ColdFusion. I dread the idea,
    for several reasons (won't elaborate on them here, for brevity's sake)

    Is there a Perl/OSS alternative to ColdFusion? What is the best way to
    "templatize" web-page creation, with non-redundant (yet, possibly,
    user-identity-sensitive) header/footer/navigation bars/etc.?
    (Server-side includes? Or is that yesteryear?) Being more or less
    comfortable with database backends (rectangular tables as well as
    trees), I think I can build any data component we would need myself, to
    plug into whatever is suggested. I also have enough web tools for
    web-based database maintenance (by others)... so, essentially, what's
    missing, is efficient maintenance of static and quasi-static
    (template-merged) web pages, by non-programmers.

    What is the best way to involve a team of, say, 10 content developers,
    in maintaining static pages?

    I am apt at creating custom solutions/algorithms, by means of Linux +
    Perl + [whatever interlocking OSS component] Back in 1997, still a
    Perl novice, I wrote and implemented my own website-generating Perl
    script that merged a tree database of content with an HTML template, to
    "spontaneously generate" an entire website in a few seconds (with
    things like breadcrumb trails on each page, etc). Except, that does not
    seem to suffice for involving a team of content maintainers and a
    variety of dynamic components. I love to create and/or express
    complex and powerful algorithms - most of all in Perl (I haven't found
    anything that beats Perl's thorough, comprehensive and coherent
    syntax), so suggestions entailing extra perl coding and innovation on
    my part are welcome.

    A little devil of a detail: ColdFusion server offers embedded http
    login and session variables - don't know how to produce the equivalent
    with OSS (an apache and/or perl module?)

    Also, why this craze over PHP? To me PHP seems to be an inferior
    imposter bullying its way into the sphere of influence, unscrupulously
    shoving aside the real McCoy (Perl) - or did I miss something? (some of
    my colleagues, who may be involved in the said website project, who
    have heard for years that I am a Perl enthusiast, and have witnessed
    Perl's fruitfulness - just a few days ago "slapped me in the face" by
    producing a list of tools they would like to explore for the job -
    which included PHP but not Perl! ?#$!? )

    TIA

    andrew
     
    Andrew, Sep 30, 2005
    #1
    1. Advertising

  2. "Andrew" <> wrote in news:1128099419.845450.253760
    @f14g2000cwb.googlegroups.com:

    > Dear Perl gurus and enthusiasts


    Oh, please don't.

    > I appeal to you because I seem to be at a significant crossroads as a
    > web developer and consultant for a nonprofit educational institution
    > who has been, for several years, kindly entrusting me with developing
    > web-based database applications, and I have been fairly accommodating,
    > with Perl CGI scripts and mostly MySQL backend (sometimes illiciting


    Hmmmm ...

    > "wow!"s with the power and agility of Perl), and other goodies
    > available with Linux and OSS.
    >
    > Currently, however, there is mounting discussion and pressure in the
    > organization to produce a "serious" and comprehensive website, with
    > robust and modular design, consistent look and feel, as well as an
    > efficient maintenance scheme.
    >
    > Having mainly focused on database apps, i don't seem to be up-to-date
    > on what the latest and greatest web-development strategies implementing
    > Perl/OSS are.


    I think you have put the cart before the horse.

    ....

    > Also, why this craze over PHP? To me PHP seems to be an inferior
    > imposter bullying its way into the sphere of influence, unscrupulously
    > shoving aside the real McCoy (Perl) - or did I miss something? (some of
    > my colleagues, who may be involved in the said website project, who
    > have heard for years that I am a Perl enthusiast, and have witnessed
    > Perl's fruitfulness - just a few days ago "slapped me in the face" by
    > producing a list of tools they would like to explore for the job -
    > which included PHP but not Perl! ?#$!? )


    From the long-winded and imprecise description that I have snipped, I see
    no indcation that you (or the others on your team) know what the
    requirements are. You each have a pet issue, and you want to win.

    Search Google for CMS. Search the archive of this newsgroup for CMS.

    See what you come up with.

    Sinan
     
    A. Sinan Unur, Sep 30, 2005
    #2
    1. Advertising

  3. Andrew

    Brian Wakem Guest

    Andrew wrote:

    > Is there a Perl/OSS alternative to ColdFusion? What is the best way to
    > "templatize" web-page creation, with non-redundant (yet, possibly,
    > user-identity-sensitive) header/footer/navigation bars/etc.?
    > (Server-side includes? Or is that yesteryear?) Being more or less
    > comfortable with database backends (rectangular tables as well as
    > trees), I think I can build any data component we would need myself, to
    > plug into whatever is suggested. I also have enough web tools for
    > web-based database maintenance (by others)... so, essentially, what's
    > missing, is efficient maintenance of static and quasi-static
    > (template-merged) web pages, by non-programmers.



    You should use mod_perl rather than plain old cgi/perl if the site is likely
    to get some reasonable traffic.

    I still use SSI's for headers, footer and menus. Can't think of any reason
    not to.


    --
    Brian Wakem
    Email: http://homepage.ntlworld.com/b.wakem/myemail.png
     
    Brian Wakem, Sep 30, 2005
    #3
  4. Andrew

    Andrew Guest

    >"Andrew" <> wrote in news:1128099419.845450.253760
    >@f14g2000cwb.googlegroups.com:
    >
    >> Dear Perl gurus and enthusiasts

    >
    >Oh, please don't.


    Not sure what you mean by the above. If you're not an enthusiast at
    least, then my post wasn't addressed to you and you could have
    abstained from your dampening cynicism. If you feel I am in some way
    mischaracterizing this newsgroup, then say so. I have advocated Perl
    for years, to people who otherwise had no exposure to Perl. And I have
    done this with utter conviction and enthusiasm about its excellence.
    Not to mention, building things with Perl which made people appreciate
    computer technology... (all the while reminding my colleagues and
    friends about the real geniuses behind it all - Wall, Schwartz,
    Christiansen, and the many others.) And I was expecting allies here in
    this respect.

    >> I appeal to you because I seem to be at a significant crossroads as a
    >> web developer and consultant for a nonprofit educational institution
    >> who has been, for several years, kindly entrusting me with developing
    >> web-based database applications, and I have been fairly accommodating,
    >> with Perl CGI scripts and mostly MySQL backend (sometimes illiciting

    >
    >Hmmmm ...


    a rather meaningless and unhelpful response (ambiguous at best)

    >
    >> Having mainly focused on database apps, i don't seem to be up-to-date
    >> on what the latest and greatest web-development strategies implementing
    >> Perl/OSS are.

    >
    >I think you have put the cart before the horse.


    My organization's priorities have been with data collection. Such were
    the circumstances at that time, that building a website was second
    priority to developing web-based data tools.

    >> Also, why this craze over PHP? To me PHP seems to be an inferior
    >> imposter bullying its way into the sphere of influence, unscrupulously
    >> shoving aside the real McCoy (Perl) - or did I miss something? (some of
    >> my colleagues, who may be involved in the said website project, who
    >> have heard for years that I am a Perl enthusiast, and have witnessed
    >> Perl's fruitfulness - just a few days ago "slapped me in the face" by
    >> producing a list of tools they would like to explore for the job -
    >> which included PHP but not Perl! ?#$!? )

    >
    >From the long-winded and imprecise description that I have snipped, I see
    >no indcation that you (or the others on your team) know what the
    >requirements are.


    I regret the longwindedness. However, apparently, you paid more
    attention to the length of my message than to the details therein: it
    is long precisely because I explain my objectives. And if you think my
    objectives are not viable, then you could have had the curtesy to tell
    me how/why they are not.

    >You each have a pet issue, and you want to win.


    Oh, please don't.

    >Search Google for CMS. Search the archive of this newsgroup for CMS.
    >
    >See what you come up with.

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    Verbose statement, superfluous to the previous one.

    andrew
     
    Andrew, Sep 30, 2005
    #4
  5. "Andrew" <> writes:

    > Is there a Perl/OSS alternative to ColdFusion?


    There isn't a Perl application server like
    ColdFusion, JBoss, etc. You can use Apache/mod_perl
    for the foundation, and then, depending on how much
    abstraction you want, build on that with modules.
    As usual, Perl lets you decide what you need.

    Template Toolkit[1] is PHP-done-right. If you want
    more maintainable, MVC applications, check out
    Maypole[2]. It amalgamates Class::DBI[3] and TT
    into a J2EE/Rails-ish framework.

    Footnotes:
    [1] http://www.template-toolkit.org/

    [2] http://maypole.perl.org/

    [3] http://www.perl.com/pub/a/2002/11/27/classdbi.html

    --
    Andrew Raines <>
     
    Andrew Raines, Sep 30, 2005
    #5
  6. Andrew Raines <> wrote

    > Template Toolkit[1] is PHP-done-right. If you want
    > more maintainable, MVC applications, check out
    > Maypole[2]. It amalgamates Class::DBI[3] and TT
    > into a J2EE/Rails-ish framework.


    I'd add http://dev.catalyst.perl.org/ to the list.

    hth, p

    --
    The eternal mistake of mankind is to set up an attainable ideal.
    -- Aleister Crowley
     
    Robert Sedlacek, Sep 30, 2005
    #6
  7. Andrew

    Dr.Ruud Guest

  8. "Andrew" <> writes:

    > I was expecting allies here in this respect.


    Perl is just a tool, nothing more nor less. If you're expecting allies on
    some sort of religious crusade, I think you're going to be disappointed.

    > I regret the longwindedness. However, apparently, you paid more
    > attention to the length of my message than to the details therein: it
    > is long precisely because I explain my objectives.


    Your objectives are quite clear: You want to use Perl.

    But your organization's objectives are not at all clearly defined, at least
    in your message here. Without knowing *what* it is you hope to accomplish,
    there's no way to know if Perl is even the right tool for the job, much less
    what the right way to use it might be.

    >>You each have a pet issue, and you want to win.

    >
    > Oh, please don't.


    That was my take on the situation as well. You prefer Perl, your coworker
    likes PHP, and someone has mentioned ColdFusion. Have any of you objectively
    assessed the capabilities of each platform, and comparee them to the require-
    ments of the project? What about the relative short- and long-term costs of
    each? What about the political situation within your org - does the ColdFusion
    advocate have enough pull to push his agenda, and if so could disagreeing with
    him have repercussions that might come back to haunt you?

    There's a *lot* more to this kind of decision than simplistic "Perl's number
    one, rah, rah" cheerleading. If that's not what you're doing, you need to
    clarify your message, because that's what your message sounds like.

    sherm--

    --
    Cocoa programming in Perl: http://camelbones.sourceforge.net
    Hire me! My resume: http://www.dot-app.org
     
    Sherm Pendley, Sep 30, 2005
    #8
  9. I haven't read any other replies here, so I apologise in advance for
    repetition.

    A templating system is essential for a maintainable website.
    HTML::Template is the one I use, there are others. Templating means that
    there is no HTML in the code. This alone simplifies maintenance tenfold.

    Make a database abstraction layer and stick to it. I can't stress how much
    I wish this had been a feature of my website from the word go. When (not
    if) you have to migrate you will know why. OO can help here. My app is a
    hybrid - the best bits are the objects :)

    Get to know CSS and use it. Ban all tag attributes apart from class and
    style ;-) CSS is absolutely, positively the best way to enforce a
    consistent look and feel. It's what it was designed for. You still need
    developers who are sympathetic, but CSS is an essential link in the chain.
    Don't use SSI or frames. I firmly believe that if you can't do everything
    with SSI, don't do anything with it.

    Persistent logins are easy to manage. You set a cookie on login, you read
    it on all subsequent requests. You use it to initialise a user context
    from your database.

    As a final note, I'd like to sing the praises of Apache + mod_perl. It
    *is* old, but it just works.

    Rich

    --
    "If God was a villain, he'd be me."
     
    Richard Gration, Oct 1, 2005
    #9
  10. On Sat, 1 Oct 2005, Richard Gration wrote, offtopic:

    > Get to know CSS and use it. Ban all tag attributes apart from class
    > and style ;-)


    a good philosophy, and increasingly tenable...

    > CSS is absolutely, positively the best way to enforce a
    > consistent look and feel.


    "force" doesn't work on the WWW, and CSS is, by design, optional.

    A "consistent look and feel" on (let's say) Mozilla, IBM HPR (or other
    speaking browser), a brailler, and Lynx, would not be useful or
    desirable. So I agree with your advice, but for the exact opposite
    reason than you give: CSS (properly used) can be usefully applied when
    it's helpful, and harmlessly disregarded when it isn't. The problem
    with frames, table-based layout and all the other crud that went with
    presentational quasi-HTML is that it's hard to disregard it when it's
    causing difficulties (how *do* you render frames in a speaking
    browser?).

    > Persistent logins are easy to manage.


    ....and, judging from the many cookies that get hurled at me by random
    web sites, unannounced by the site - and consistently refused by me,
    unless and until the site offers some convincing explanation of what
    benefit they are going to be to *me* - they are attempted far more
    often than they're ever really needed. With negative consequences for
    cacheability.

    But if we're going to discuss any of these points, let's do it
    somewhere where it's on-topic.

    regards
     
    Alan J. Flavell, Oct 1, 2005
    #10
  11. Andrew

    ChrisO Guest

    Andrew wrote:
    > [much impassioned verbage snipped]
    >
    > Is there a Perl/OSS alternative to ColdFusion?


    I'll throw in my 2 cents and let anyone that wants to have at it. I'll
    give some credence to your obvious partiality to Perl since I suspect
    that others here while attempting to provide you and guide you toward a
    more "objective view" are themselves somewhat partial to Perl and
    somewhat discriminating of other solutions such as PHP... :)

    As another Andrew stated, there is no Perl application server like
    ColdFusion. This being the case, you can and should draw up a list of
    approaches in the Perl world and map these solutions to your problem.
    You'll need to do this for a couple of reasons:

    (1) A lot of people involved in "buy in" decisions at the upper level
    aren't familiar with Perl or robust Perl solutions. Their impression of
    it may be that it's a "toy" and not suitable for serious web solutions
    development. They will point the fact that there is no "wrapped
    solution" like PHP or ColdFusion (or .Net or J2EE, etc.) In this regard
    they appear to be "right" unless you've already ironed out your
    requirements and mapped out a clear solution using a Perl approach.
    Your superiors are going to be looking for this and with the many
    approaches you could take using Perl, so you owe it to yourself to do
    this. I'm only pointing out an approach I feel you are going to have to
    take to win a Perl crusade. :) (And I see nothing wrong with a Perl
    crusade as long as a cursory glance doesn't prove it to be pointless to
    undertake based on requirements.)

    (2) BECAUSE there is no "packaged solution" in Perl -- and I count this
    as axiomatic in the Perl world no matter what level of development, even
    a simple single script -- you HAVE to pin yourself down to a consistent
    method of development and approach when using it. The "blessing" of
    Perl (no pun intended) can also be it's curse. It's like a good
    survivalist knife: You can do much more than simply survive with it, but
    if you don't know how to use it properly, you can get into some rather
    large messes or find yourself morooned. (I see a whole lot more Perl
    messes than I do proper uses personally.) So in your case, mapping out
    a solution not only provides your decision making counter-parts with
    something they can compare with other solutions (which they are bound to
    do), it also proves you, if that solution is chosen, with a development
    road map, which, it appears from your earlier description, is EXACTLY
    why the question was raised in the first place.

    Many of the Perlish solution paths have already been thrown at you:

    * Maypole
    * mod_perl (a HUGE percentage of the world's commercial web sites run
    using mod_perl; many, many more than most people would imagine)
    * Mason (has not been mentioned yet, I don't think; maybe as close to a
    PHP counterpart as you can get in Perl?)
    * Template Toolkit
    * HTML::Template
    * CGI::Application (has not been mentioned)
    * CGI::Session (has not been mentioned)

    But again, a lot out of that list needs to be mapped out farther and a
    real solution and approach mapped out because those are all just tools
    to help you to some end. I see a PHP or ColdFusion solution to be not
    much different (eg. how would you do templating under PHP for instance?
    Smarty? Other solutions?), but unfortunately the perception of PHP or
    ColdFusion is that it's more "packaged" when in reality it's no
    different insofar as approach goes. (How many managers and decision
    makers feel into this trap with Windows, IIS and ASP as another example?
    How many sites ran Windows classic ASP solutions? There wasn't even a
    templating solution with classic ASP and *still* isn't. It's no
    different...)

    I personally built my own framework that is very much like
    CGI::Application, and use HTML::Template for the presentation layer and
    Class::DBI for the backend connect. HTML::Template, with a little
    instruction, allows presentation layer people (designers and HTML
    coders) do their work separate and apart from backend development for
    the most part. This is my own personal approach. I do some freelancing
    in mod_perl. One large international and very well known French company
    I consult for uses a mod_perl/Text::Templating solution. You have to
    map out and settle on your own approach in Perl and then market that as
    a wrapped solution is the bottom line.

    There are also case studies out there on Perl solutions and approaches
    companies have used. You can go to the mod_perl web site and read about
    some companies that have used mod_perl and even a list of WHAT companies
    are using it. Maypole and Mason may have something similar.

    -ceo
     
    ChrisO, Oct 2, 2005
    #11
  12. Andrew

    phal Guest

    Hi ChrisO

    Thank very much for your essay ChrisO, myself also very new to Perl, I
    had learned Perl basic, and now I do my project with Perl, it is going
    well, and everything very organize.
    I do not have any experience in Scripting language, but I feel Perl can
    fulfil me lots of tasks. I have also few questions with Perl. I had
    read though essay PhP Vs Perl.

    Does Google/Hotmail/Yahoo using Perl RegExp for search engine? Does it
    use Perl?

    As I know from the forum, google mostly using javascript, and yahoo
    likes Php, hotmail marry Asp. It is true, isn't it? Explan if you know
    why they use that langauge?

    Sorry if my questions out of topic, but I am very serious about the
    Powerful RegExp in Perl, and even C/C++ can not fulfil RegExp as Perl
    does.

    Thank

    Phal
     
    phal, Oct 3, 2005
    #12
  13. On Sat, 01 Oct 2005 11:20:42 +0100, Alan J. Flavell wrote:
    > On Sat, 1 Oct 2005, Richard Gration wrote, offtopic:
    > But if we're going to discuss any of these points, let's do it
    > somewhere where it's on-topic.


    Fair enough, but I stand by what I said:

    CSS is a very good way to give a website consistent presentation.

    For a website where users login with a username and password, placing a
    cookie is reasonable. Persistent logins are easily managed this way. I
    agree with you about unnecessary cookies, however some are necessary.
     
    Richard Gration, Oct 3, 2005
    #13
  14. Andrew

    Andrew Guest

    Thank you, guys; your responses are superb. Exactly the guidance i was
    looking for, to define the scope of my research and begin road-mapping.


    ChrisO's discussion of ColdFusion, PHP, .NET, etc., as _perceived_
    "wrapped solutions" is quite keen and does, indeed, reflect the reality
    i am facing here at work. Although mod_perl was already on my
    to-implement list, i shall now move it up to the very top...

    It's now a race against time for me.

    As an aside, I wonder how the CPAN search engine could be improved a
    bit, in terms of relevance scoring. Searching for "website development"
    turns up thousands of entries, but I don't see any of the modules
    suggested in this thread among the first hundred. (Perhaps deliberate
    key words, entered by the modules' authors...)

    Andrew
     
    Andrew, Oct 3, 2005
    #14
  15. "Andrew" <> wrote in news:1128358120.914294.99040
    @o13g2000cwo.googlegroups.com:


    > Searching for "website development" turns up thousands of entries,
    > but I don't see any of the modules suggested in this thread among
    > the first hundred. (Perhaps deliberate key words, entered by the
    > modules' authors...)


    Are you really accusing CPAN authors of spamming CPAN?

    My guess is your organization will adopt PHP.

    Maybe, instead of searching, you should go to http://search.cpan.org/ and
    explore by category.

    Sinan
    --
    A. Sinan Unur <>
    (reverse each component and remove .invalid for email address)

    comp.lang.perl.misc guidelines on the WWW:
    http://mail.augustmail.com/~tadmc/clpmisc/clpmisc_guidelines.html
     
    A. Sinan Unur, Oct 3, 2005
    #15
  16. Andrew

    Andrew Guest

    >> Searching for "website development" turns up thousands of entries,
    >> but I don't see any of the modules suggested in this thread among
    >> the first hundred. (Perhaps deliberate key words, entered by the
    >> modules' authors...)

    >
    >Are you really accusing CPAN authors of spamming CPAN?


    No. I'm very thankful to all who have contributed to CPAN.

    >My guess is your organization will adopt PHP.


    That would, indeed, be sad.

    >Maybe, instead of searching, you should go to http://search.cpan.org/ and
    >explore by category.


    I was trying to be constructive in my comment - to make a great thing
    even better. If this is not the place to make such suggestions, i do
    apologize.

    andrew
     
    Andrew, Oct 3, 2005
    #16
  17. "Andrew" <> wrote in
    news::

    >>> Searching for "website development" turns up thousands of entries,
    >>> but I don't see any of the modules suggested in this thread among
    >>> the first hundred. (Perhaps deliberate key words, entered by the
    >>> modules' authors...)

    >>
    >>Are you really accusing CPAN authors of spamming CPAN?

    >
    > No. I'm very thankful to all who have contributed to CPAN.


    Well, I must have misunderstood. I don't know how else to read that
    last sentence though.

    >> Maybe, instead of searching, you should go to http://search.cpan.org/
    >> and explore by category.

    >
    > I was trying to be constructive in my comment - to make a great thing
    > even better. If this is not the place to make such suggestions, i do
    > apologize.


    CPAN search works best when you search by module name. Or, by words
    can conceivably appear in the module name.

    The words website and development are unlikely to occur in such places.
    They are too generic. You would not expect Google to return anything
    useful from such a generic query as

    http://www.google.com/search?q=perl website development

    On the other hand, you could do:

    http://www.google.com/search?as_q=website development&as_sitesearch=cpan.org

    which should provide some more useful hits.

    Still, website development is too generic to be useful.

    Sinan
    --
    A. Sinan Unur <>
    (reverse each component and remove .invalid for email address)

    comp.lang.perl.misc guidelines on the WWW:
    http://mail.augustmail.com/~tadmc/clpmisc/clpmisc_guidelines.html
     
    A. Sinan Unur, Oct 3, 2005
    #17
  18. On Mon, 3 Oct 2005, Richard Gration wrote, still off-topically but
    moving the goalposts far enough that I felt bound to respond:

    > but I stand by what I said:
    >
    > CSS is a very good way to give a website consistent presentation.


    Er, no, what you *said* was:

    || CSS is absolutely, positively the best way to
    || enforce a consistent look and feel.
    ^^^^^^^ ^^^^^^^^^^^^^

    to which I still think it was not unreasonable to respond as I did:

    | "force" doesn't work on the WWW, and CSS is, by design, optional.

    *If* you were pointing to the benefit of CSS from the point of view of
    promoting consistency across pages on the same *web site*, then I
    could agree with you.

    But what you said could equally be interpreted (as indeed all too many
    folk - present company, one hopes, excepted - want to interpret it) as
    claiming that CSS will enforce the same "look and feel" on all
    browsers. Which is neither true in fact - nor was it ever an aim of
    the WWW, whose whole motivation was to make the same content available
    to a range of fundamentally different presentation situations.

    And *that*, indeed, is where CSS rates to bring additional benefits,
    if well applied.

    Apologies for the OT, but IMHO there was an important principle here.
     
    Alan J. Flavell, Oct 3, 2005
    #18
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Matt
    Replies:
    29
    Views:
    2,928
    Roedy Green
    Jun 29, 2004
  2. Replies:
    124
    Views:
    2,034
    Robert C. Martin
    Nov 12, 2005
  3. Replies:
    131
    Views:
    2,189
    Robert C. Martin
    Nov 12, 2005
  4. Replies:
    134
    Views:
    1,889
    Robert C. Martin
    Nov 12, 2005
  5. Gennady Bystritsky
    Replies:
    0
    Views:
    115
    Gennady Bystritsky
    Apr 13, 2009
Loading...

Share This Page