[Wolves] Perl and CGI Books
sparkes
sparkes at westmids.biz
Mon Nov 29 19:46:01 GMT 2004
Mo Awkati wrote:
> Hi
>
> I bought a "in easy steps" book on PERL and got very
> interested in it. Can anyone recommend some good books
> for a beginner on PERL and CGI? I have noted from
> looking at the reviews on Amazon that some books
> assume you are using windows and others Linux, I
> obviously want Linux! :-)
>
BBBIIIIIIGIGGGGG anti CGI rant from someone who programs cgi and
understands why it's a *very* bad idea for most situations.
while learning Perl is a pretty cool thing to do (I would prefer you
said Python ;-) but Perl will do) unless you already know Perl I
wouldn't suggest writting CGI in it.
In fact I wouldn't recommend writing *any* CGI in *any* language unless
you already know what you are doing. CGI allows you to open some
massive holes in your server and Perl allows you to make those massive
holes very, very useful to naughty people ;-)
If you want to do some web programming and don't already have a strong
language and understand the problems of CGI I would suggest PHP. It's a
nasty hack of a language but mod_php is pretty much defacto in the web
world and won't let you open up quite so many holes (at least not these
days).
It's not a great language for learning programming (but nor is Perl) but
it will allow you learn how to do things without having your site played
with like SCO's was today. In fact I'd go so far as to say it's worse
than BASIC was for teaching programming and I used to teach it ;-) but
it won't allow you to shoot yourself in the foot like CGI, well CGIis
more like offering your gun to anyone on the street and letting them
take potshots at anyone that takes their fancy. Python is probably a
better language to learn programing as it's pretty pure and allows you
learn good habits but as (If I remember correctly) you already know a
little programming you already have your own bad habits and both Perl
and Python will let you keep them as well ;-)
Perl can be programmed very well but most of the examples you see on the
internet are just quick hacks built on top of quicker hacks (this is one
of perls strong points) and won't allow you to learn how to program
well. It will teach you a hell of a lot about unix like systems and
scripting and if you want to maintain a bunch of servers it is still an
excellent language to learn (because not only does it do everything, but
someone has already written the everything script for you and you can
just modify it). So unless you are already a Perl hacker or an admin
who wants to work more efficently (thus leaving more time for irc, games
and updating your bofh excuse file) I would avoid Perl as a pure
learning exercise. That said we have some excellent Perl coders on the
list who can help so you won't be on your own if you follow the path of
the camel (very smelly and not as funny as the way of the python :P )
PHP code examples can be bloody awful. Avoid 99.9% of all /large/
programs you see and look at some of the smaller projects to see how
they work. Hopefully the person who wrote them will have a clue and you
will learn something. PHP programmers are like BASIC programmers in the
70's and 80's, some are very good but most are like dog turd on your
shoe. But it is very safe in a controlled web environment and CGI is
not safe 99.99% of the time.
Python is just cool but the chances are your web host won't support it
and there isn't a lot of small web projects out there to learn from so
if web based stuff is something you want to do leave Python for another
time. If you just want to learn programming diveintopython.org (and
dead tree version) and 'how to think like a computer scientist' python
edition (google will find it) are both excellent intro's to the language
and could be a good start into programming.
So CGI bad, Perl could be good for you, python might be good for you.
PHP won't be good for you but will be your bitch.
one last time.
DON'T DO CGI UNLESS YOU *REALLY* UNDERSTAND IT!
No scratch that
DON'T EVER DO CGI UNLESS OFFERED LOTS OF MONEY TO FIX SOMEONE ELSES
PROBLEMS AND THEN ATTEMPT TO EXTRACT MORE MONEY TO DO IT FROM SCRATCH IN
A MORE SANE WAY,
nope still not right....
DON'T DO CGI! EVER!
that's better ;-)
there are millions of examples of why not to do CGI :-) and not that
many why to do it ;-)
that said it shouldn't matter if it's windows server based or unix
server based Perl is a pretty cross platform language (in most cases,
you can do pretty much anything in perl these days so lots of it isn't
cross platform) and the C in CGI stands for common so it should work the
same on all platforms. At least as far as learning how things work it
will. So which ever book takes your fancy should get you up and running.
> cheers
>
> Mo
>
>
sparkes
--
<davee> "Sparkes, the Pete Best of LugRadio"
More information about the Wolves
mailing list