280 likes | 293 Views
Discover how Perl is more than just a scripting language, explore its community, CPAN, and positive impact on programming. Let's spread the word on Perl's excellence!
E N D
Dave Cross dave@mag-sol.com Magnum Solutions Ltd http://mag-sol.com/ YAPC::Europe 15th August 2008 Proud To Use Perl
An Apology • I was last at a YAPC in Birmingham in 2006 • I gave a talk called “Perl and Programming Languages” • It was all a bit negative • And a little bit ranty • Sorry about that • This is more positive • But it addresses many of the same points
Perceptions of Perl • “Perl is dead” • “No-one uses Perl any more” • “Ruby is much better” • etc... • Do people really say things like that?
Ask Twitter • http://search.twitter.com/ • Previously summize.com • Search Twitter • Set up a web feed • I subscribed to a feed of all mentions of Perl • A lot of noise • A bot called PerlNews • But there are real people too
Real Tweets About Perl • “Been struggling with Perl all day. People try to tell me that Perl is like Marmite, you love it or hate it. I like Marmite, I hate Perl.” • “The trick is to read a Perl book first. Then Ruby seems a lot better.” • “So, it looks like I would need to write a PERL script. Great. Might as well ask me to learn Chinese.”
Real Tweets About Perl • “Ack! Just had breakfast at OSCON with a couple of guys who write Perl for a living. On purpose, no less.” • “struggling with PERL.....” • “going to have to write perl code... euggh” • “damn you perl! do what I say!” • “You don't need grep or sed. All you need is perl.” • “Perl sucks!”
Real Tweets About Perl • Somebody please pull me out of Perl hell... it hurts. :( • LAMP is fine as long as the P != Perl. That's when you're in trouble. :-) • Perl is from Mars, Ruby is from Venus • I love Perl! • i don't care what anyone says. Perl is awesome. • Every language looks better after reading Perl.
Real Perceptions of Perl • So, yes, people do say those things about Perl • Why do they think that? • What can we do to change their minds • Doom and gloom • Oops, this is supposed to be a positive talk
That's Positive Isn't It? • Perl is the language for getting things done when your big plans falls apart • Well positive-ish • That is a common (and good) use of Perl • But Perl is so much more than that
What is Perl? • Perl can bend steel bars and move mountains. Perl can turn back the hands of time. Perl is good for the goose and for the gander. Perl can beat up Mike Tyson with one hand tied behind its back. Perl can make a rock so heavy it can't lift it.Perl has saved the rainforests, It has been to the moon And it has cured all major diseases. It has exceeded all known bounds. It has mapped the universe and created an exact duplicate.Perl has danced with angels and dined with Shakespeare. • Miguel Cruz (comp.lang.perl.misc)
What is Perl? • Some of that might be poetic licence • But Perl isn't just a “scripting language” • Not just for quick hacks • It's a powerful and flexible programming language • We all know that • Why don't other people don't know it? • We don't tell them
The Echo Chamber • The Perl community is vibrant and loud • We like to shout about our successes • But we only shout to each other • We have relatively little communication with people outside the community • We need to break out of the echo chamber • Tell people how wonderful Perl is • Tell people how it has changed since Perl 4
Proud To Use Perl • The Perl community has much to be proud of • Let's not keep it to ourselves • Tell people how wonderful we are • Here are some things to be proud of • In case you didn't already know • Feel free to add your own ideas
CPAN • Perl's killer app • Over 12,000 distributions • That's a lot of code • All of it free • Most of it of high quality • A single, known point of access • If it's not on CPAN, it doesn't exist • Few other languages have anything like this
More About CPAN • It's not just the code • There's the infrastructure • Standardised distribution format • Standardised installation methods • Not policed, but followed anyway • Peer pressure to conform
CPAN Ecosystem • CPAN ratings • CPAN testers • CPANTS • AnnoCPAN • CPAN Forum • CPAN Dependencies • etc
Perl Monks • My experience of other language support forums has been patchy • “Kingdom of the Blind” • Perl Monks is different • Some of the world's best Perl programmers • Helping you with your problem • Any time of the day • For free
perl.org • Runs many web sites • And dozens of mailing lists • Small volunteer group • Donated hardware • You rarely notice it • Which is a sign of good network infrastructure
YAPC • Many languages run grass roots conferences • But not many spread to other countries • Or other continents • Or grow into OSDC • Or spawn one-day workshops • Organising conferences is hard • Doing it in a small volunteer team is harder
Damian Conway • More from Twitter • “Damian Conway amused the hell out of OSCON. Turns out that Perl programmers *are* good for something.” • Damian shows people what Perl is capable of • May be a double-edged sword
More Things To Be Proud Of • Perl 5.10 • Catalyst • Perl Mongers • Template Toolkit • OSCON • perldoc • TAP • etc
Break Out Of The Echo Chamber • Don't just write on use.perl • Talk about Perl on general IT sites • Offer Perl articles to other sites • Don't just go to Perl conferences • Get out and talk to other geeks • Go to their technical meetings • You might learn something interesting • Go to their social meetings • Show them how to drink!
Proud To Use Perl • proudtouseperl.org • Listing Perl's achievements • Run on Movable Type • Frequent new articles • The more Perl blogs the better • Coming soon • “Proud to use Perl” buttons • T-Shirts • Volunteers welcome
Norwegian Blue • Perl is not a dead parrot • It's alive and well • We just need to prove that to the outside world • Tim Bunce - “Perl Myths” • Michael Schwern - “Perl is Undead”
A Final Word From Twitter • OSCON 2008 • “Perl. I know NOTHING about it. But I hear people talking about it like it came back from the dead.” • That's got to be a good thing • We need more people thinking like this