Slide 1

Slide 1 text

Introduction ● I'm Upasana – Working at booking.com – Contribute to some FOSS projects ● Contact me: – [email protected] – upasana on irc.perl.org & irc.freenode.net

Slide 2

Slide 2 text

The culprit!

Slide 3

Slide 3 text

What I am going to present ● Perl is short of newbies – Is it true? – Why? – how can we bring more newbies to Perl?

Slide 4

Slide 4 text

Disclaimer ● While preparing for this talk, I was short of content. ● I asked at various places for people's opinions on this topic. ● I got a very good response from everywhere. ● So, opinions could be of my friends, family, colleagues or may be of some internet trolls.

Slide 5

Slide 5 text

Who's a newbie? ● Someone doing perl programming for 3 or less than 3 years.

Slide 6

Slide 6 text

What made me think of it? ● I've plenty of friends in the perl community – Of various age groups. – Of various experience levels. – But most of them have been doing perl for more than 3 years

Slide 7

Slide 7 text

What made me think of it? ● I came across this repository of implementation of various algorithms in various languages – https://github.com/kennyledet/Algorithm-Implementations ● But Perl was missing! :(

Slide 8

Slide 8 text

What made me think of it? ● A friend shared this – http://raftconsensus.github.io/ – Raft is a consensus algorithm for fault-tolerant distributed systems. ● He also shared the fact that Perl is missing there. ● I didn't know about it until he told me :(.

Slide 9

Slide 9 text

Perl is short of newbies ● When I told this to people, some of them asked me for statistics. ● So, I asked some Perl trainers for statistics. ● Sadly, I can't present the raw data due to privacy issues. ● I extracted statistical trends from that data.

Slide 10

Slide 10 text

Statistics 2004-05 2005-06 2006-07 2007-08 2008-09 2009-10 2010-11 2011-12 2012-13 0 10 20 30 40 50 60 70 80 90 66 62 78 56 76 72 37 20 18 Number of peope attended the course Year

Slide 11

Slide 11 text

Why people left Perl! ● Bad reputation of older perl language – Web development was a pain ● CGI

Slide 12

Slide 12 text

No easy way of doing OOP

Slide 13

Slide 13 text

Why people left perl! ● Documentation & syntax are difficult to understand as compared to other languages. ● Bad reputation of perl community in past.

Slide 14

Slide 14 text

Why people left perl! ● As a result of last two points – People who learnt Perl 10 years ago, moved towards other languages(python, ruby) in past. – They never came back!

Slide 15

Slide 15 text

But now, it has changed ● For web development – Catalyst. – Mojolicious, Dancer, AMON.

Slide 16

Slide 16 text

But now, it has changed! ● For OOP – Moose, Moo, p5-mop. – And yes, p5-mop may go into perl core in future.

Slide 17

Slide 17 text

PERL COMMUNITY IS NOT BAD AT ALL

Slide 18

Slide 18 text

Our good things

Slide 19

Slide 19 text

Our good things ● Great support for text-processing ● ack ● Request Tracker ● Bugzilla

Slide 20

Slide 20 text

Our good things ● CPAN (Comprehensive Perl Archive Network) ● Friendly & helpful community.

Slide 21

Slide 21 text

Our good things ● Multi-purpose language – Web development – System administration – Desktop applications

Slide 22

Slide 22 text

But we've some bad[1] things as well [1] they were awesome when they were invented, but not anymore

Slide 23

Slide 23 text

Our bad things ● Good CMS – blogs.perl.org is a good example of it

Slide 24

Slide 24 text

Our bad things ● Our website – No success stories – Really old look – No REPL

Slide 25

Slide 25 text

Uncategorized perly traits ● TIMTOWTDI (There Is More Than One Way To Do It). – It confuses people

Slide 26

Slide 26 text

Uncategorized perly traits ● Perl one liners. – Everything in one line, seriously? – Not a clean language? – http://c2.com/cgi/wiki?PerlGolf

Slide 27

Slide 27 text

Why there're less newbies! ● Less Massive Open Online Courses for Perl – Only Udemy & Alison have Perl courses – Udacity, CourseEra have courses on Python, Ruby & Scala etc.

Slide 28

Slide 28 text

Why there're less newbies! ● Less participation in internship programs – Perl participated twice in Google Summer of Code. – Perl participated four times in GNOME's Outreach Program for Women. – But we should probably have more of them.

Slide 29

Slide 29 text

Why there're less newbies! ● Companies do not want to train new people – Well! This is a rather general fact, which applies to all languages. – Our company i.e. Booking.com does train new people :)

Slide 30

Slide 30 text

& we are hiring (not only perl developers :)

Slide 31

Slide 31 text

Why there're less newbies! ● We may not have not marketed well. ● People's interests are market driven – Python, PHP, Ruby,... are more popular than Perl in market. – Newbies tend to learn those languages instead of Perl.

Slide 32

Slide 32 text

Why there're less newbies! ● No university teaches perl, they prefer python, SICP,... – Atleast, I've not seen any!

Slide 33

Slide 33 text

Why there're less newbies! ● Less good examples to convince people to use the language

Slide 34

Slide 34 text

Perl events ● OSCON – Started as a Perl conference :) – Now, Wikipedia says that “the amount of Perl content has continued to decline year over year”. ● Yet Another Perl Conference (YAPCs) ● FOSDEM ● Various PM meetups & workshops.

Slide 35

Slide 35 text

Perl newbies at Perl events ● Some people who organize & attend Perl conferences say – We see quite a few newbies every year. – But we see most of them only once. – We don't have a problem attracting newbies. Our problem is with keeping the newbies.

Slide 36

Slide 36 text

Why newbies go to perl conferences only once! ● They may not understand the content of talks! – It's very much possible that content of talks is very advanced. ● They may not like the community! ● I don't get any other reason(s) :(

Slide 37

Slide 37 text

Want newbies in Perl conferences every year! ● Try to make your talks beginner friendly. ● Be friendly with newbies :).

Slide 38

Slide 38 text

How can we bring more newbies to Perl ● By introducing Perl in various MOOCs. ● By organizing internship programs like Google Summer Of Code & GNOME's Outreach Program frequently. ● By talking about Perl at non-perl events – Tell them about advantages of Perl over other languages. – Tell them that Perl is not horrible at all. ● CPAN authors – Please document your modules in a newbie friendly manner!

Slide 39

Slide 39 text

How can we bring more newbies to Perl ● By writing concise Perl tutorials – e.g. Tutorials on perlmaven.com ● By making newbies to stop following old Perl books – learn.perl.org still suggests a book written in 2000

Slide 40

Slide 40 text

If you're a newbie & want to start with perl ● Start with any of these books – Beginning Perl by Curtis Ovid Poe – Modern Perl by Chromatic ● If you want to stay up to date with latest perl happenings – blogs.perl.org ● Many perl programmers post there. – Subscribe to Perl Weekly

Slide 41

Slide 41 text

If you're a newbie (or may be even if you're not a newbie)

Slide 42

Slide 42 text

No content

Slide 43

Slide 43 text

No content

Slide 44

Slide 44 text

Thanks to ● People who shared their opinions with me, a very long list! ● Two perl trainers who shared statistics of their perl courses. ● Chris Prather for reviewing initial versions of talk slides.

Slide 45

Slide 45 text

Thanks for your time!

Slide 46

Slide 46 text

Questions?