I learned Perl in parallel on Win32 (work) and FreeBSD/Linux (personal stuff). Given the nature of what I do for work and for "play", I've been attacking different problems on different platforms, and have climbed different learning curves on each platform. Depending on what you're setting out to do, the differences between the platforms can either be insignificant or daunting. In my case they weren't that significant.

If all you're going to be doing is text manipulation and reporting (e.g., desecting web server logs and spitting out HTML reports), then there are few practical differences between the two platforms.

If you're going to be writing CGIs that connect to databases, the differences between the two platforms are minor. Both platforms support CGIs (thought the details differ a small bit between IIS/PWS and Apache). Both platforms support DBI, though you might choose ODBC for Win32. As AgentM mentions above, you do have to worry about file ownership and permissions on *nix. (Oh, and no flock() on Win95/98.)

Simple network programming is pretty much the same on both platforms, with some minor (but irritating) differences (e.g., no reliable Alarm on Win32).

It's a bit harder to install CPAN packages on Win23, though ActiveState has many packages available for download via PPM.

The differences between the platforms are more apparent when you starting writing servers, particularly when they need to fork. Perl doesn't yet have a reliable fork() simulation on Win32. It is possible to write multiplexed servers on both platforms (Lincoln Stein's book "Network Programming with Perl" works through this in some detail), but it takes a bit of work.

Bottom line: If you're stuck on Win32, that needn't be an obstacle to learning Perl. It might not make much difference at all, depending on what you need to do with Perl.


In reply to Re: Linux vs. Windows for Learning Perl by dws
in thread Linux vs. Windows for Learning Perl by OzzyOsbourne

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.