際際滷

際際滷Share a Scribd company logo
Perl at Sofia University
giving the Practical Perl Programming lectures
2004-2014
YAPC::EU Lighting Talk
by 'stelf'
Origin
 A voluntary class... and a
voluntary work
 First issue got almost 400
attendees
 Initially quite challenging
 Perl5 only
 a total of 90 hours per semester
Why am I doing it now?
 teaching assistant
 class I'm teaching
 Intro to Programming
 Object Oriented Programming w/C++
 Database Design and Systems
 * Practical Perl Programming
 * Versioning Systems and IDEs
 * Grammars for Generative Art
 * Advanced Javascript
Team
 Marin Marinov (until 2005)
 currently at HP
 Gheorghi Penkov
 Faculty of Math and Informatics at SU
 Petar Pentchev
 currently at StorPool
 Evgeni Kunev - 2011, 2012
 a non-profit intiative
PPP History
 2003, 2004, 2005 - Sofia Unviersity
 2006, 2007 - New Bulgarian University
 2011 to date - Sofia University again
 attended by a total of more than
800 students for the time being
Why would we do it?
 we loved perl... a lot. And we still do.
 we have already used it for some 5 years
 we wanted to try what is it having a class
at the university
 we though we knew some things
better that our professors...
Feedback
 Rumour has it people actually like it
 Though mostly tough geeks make it through to
the end
 Projects submitted implicate a good level of
understanding
 constantly being improved
Some vague statistics
 2003/2004 - some 400ppl
 2004/2005 - some 250ppl
 2005/2006 - some 150ppl
 2011 - 30 something
 2012 - 30 something
 2013 - 20 something
Recent Innovations
 teaching by example while making errors
 using TeamViewer to get people in
 using Moodle for interactive tests
 covering modern stuff like Moo* mops,
IO::Async, DBIC, etc.
Excerpt from the RegEx lecture
Da teeeeesttt sux 1000000 (million) timesssss
^ $
(亠+)
([Ds]+)
.+? (d{5,10}s)
(.*)
i
.*?
s
.*
$1 $2 $3 $4
#!/usr/bin/perl
$a =Da teeeeesttt sux 1000000 (million) timesssss ';
$a =~ /^.+?(e+)([Ds]+)(d{5,10}s)(.*)i.*?s.*$/;
Excerpt from the RegEx lecture
Excerpt from the references lecture
mry
jro
pte
windows linux
beos bsd dos
freebsd sunos vms
A glimpse into
 Examples of examples
 The Schedule
 The end-of-semester projects
 The intermediate tests
Challanges
 People are afraid to use the console debugger
 understanding the context paradigm
 getting used with the vast amount of new syntax
 working with CPAN installations on Windows
 packing / unpacking
 indexing letters in strings
Where is it going
 will probably have to be split in two parts
 needs more help, that is hard to find
 would be great to be completely taped and
uploaded
 will benefit a lot from a automated testing
environment
 eventually move to Perl6 at some point

More Related Content

Similar to YAPC::EU 2014 :: Lighting Talk :: Perl @ Sofia University (20)

Intro_to_ML
Intro_to_MLIntro_to_ML
Intro_to_ML
Marko Velic
Introduction to Clova platform with Machine learning development in practice
Introduction to Clova platform with Machine learning development in practiceIntroduction to Clova platform with Machine learning development in practice
Introduction to Clova platform with Machine learning development in practice
LINE Corporation
Massively Open Online Courses (MOOCs)
Massively Open Online Courses (MOOCs)Massively Open Online Courses (MOOCs)
Massively Open Online Courses (MOOCs)
Charles Severance
DevOps as an emerging university discipline
DevOps as an emerging university disciplineDevOps as an emerging university discipline
DevOps as an emerging university discipline
Nikolay Milovanov
What We've Learned From Building Basie
What We've Learned From Building BasieWhat We've Learned From Building Basie
What We've Learned From Building Basie
Greg Wilson
Perl5 meta programming
Perl5 meta programmingPerl5 meta programming
Perl5 meta programming
karupanerura
AmI 2015 - Course Introduction
AmI 2015 - Course IntroductionAmI 2015 - Course Introduction
AmI 2015 - Course Introduction
Fulvio Corno
Course Possibilities & Architecture
Course Possibilities & ArchitectureCourse Possibilities & Architecture
Course Possibilities & Architecture
Folajimi Fakoya
Becoming an effective tecno pedagogue
Becoming an effective tecno pedagogueBecoming an effective tecno pedagogue
Becoming an effective tecno pedagogue
Ramakanta Mohalik
Stories of-flipping-brunel-2015
Stories of-flipping-brunel-2015Stories of-flipping-brunel-2015
Stories of-flipping-brunel-2015
Alan Dix
Globe a vision for the 21st century
Globe a vision for the 21st centuryGlobe a vision for the 21st century
Globe a vision for the 21st century
Erik Duval
Automatic evaluation of Excel and Word productions in Moodle
Automatic evaluation of Excel and Word productions in MoodleAutomatic evaluation of Excel and Word productions in Moodle
Automatic evaluation of Excel and Word productions in Moodle
Gilles-Philippe Leblanc
ETM Platform
ETM PlatformETM Platform
ETM Platform
Imede
e-Assessment for Recruitment, Training and Testing in Private and Public Sect...
e-Assessment for Recruitment, Training and Testing in Private and Public Sect...e-Assessment for Recruitment, Training and Testing in Private and Public Sect...
e-Assessment for Recruitment, Training and Testing in Private and Public Sect...
Kenji Lamb
Lec 01 introduction
Lec 01   introductionLec 01   introduction
Lec 01 introduction
UmairMuzaffar9
Orchestration of outcome based technology-enhanced learning opportunities
Orchestration of outcome based technology-enhanced learning opportunitiesOrchestration of outcome based technology-enhanced learning opportunities
Orchestration of outcome based technology-enhanced learning opportunities
Michael Derntl
Deep Learning Automated Helpdesk
Deep Learning Automated HelpdeskDeep Learning Automated Helpdesk
Deep Learning Automated Helpdesk
Pranav Sharma
Oak meeting 18/09/2014
Oak meeting 18/09/2014Oak meeting 18/09/2014
Oak meeting 18/09/2014
INRIA-OAK
Javantura v2 - Three Years of Happiness - HUJAK - Branko Mihaljevi et al
Javantura v2 - Three Years of Happiness - HUJAK - Branko Mihaljevi et alJavantura v2 - Three Years of Happiness - HUJAK - Branko Mihaljevi et al
Javantura v2 - Three Years of Happiness - HUJAK - Branko Mihaljevi et al
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
Using SPOCs/MOOCs to transform traditional training in the Language Service I...
Using SPOCs/MOOCs to transform traditional training in the Language Service I...Using SPOCs/MOOCs to transform traditional training in the Language Service I...
Using SPOCs/MOOCs to transform traditional training in the Language Service I...
TAUS - The Language Data Network
Introduction to Clova platform with Machine learning development in practice
Introduction to Clova platform with Machine learning development in practiceIntroduction to Clova platform with Machine learning development in practice
Introduction to Clova platform with Machine learning development in practice
LINE Corporation
Massively Open Online Courses (MOOCs)
Massively Open Online Courses (MOOCs)Massively Open Online Courses (MOOCs)
Massively Open Online Courses (MOOCs)
Charles Severance
DevOps as an emerging university discipline
DevOps as an emerging university disciplineDevOps as an emerging university discipline
DevOps as an emerging university discipline
Nikolay Milovanov
What We've Learned From Building Basie
What We've Learned From Building BasieWhat We've Learned From Building Basie
What We've Learned From Building Basie
Greg Wilson
Perl5 meta programming
Perl5 meta programmingPerl5 meta programming
Perl5 meta programming
karupanerura
AmI 2015 - Course Introduction
AmI 2015 - Course IntroductionAmI 2015 - Course Introduction
AmI 2015 - Course Introduction
Fulvio Corno
Course Possibilities & Architecture
Course Possibilities & ArchitectureCourse Possibilities & Architecture
Course Possibilities & Architecture
Folajimi Fakoya
Becoming an effective tecno pedagogue
Becoming an effective tecno pedagogueBecoming an effective tecno pedagogue
Becoming an effective tecno pedagogue
Ramakanta Mohalik
Stories of-flipping-brunel-2015
Stories of-flipping-brunel-2015Stories of-flipping-brunel-2015
Stories of-flipping-brunel-2015
Alan Dix
Globe a vision for the 21st century
Globe a vision for the 21st centuryGlobe a vision for the 21st century
Globe a vision for the 21st century
Erik Duval
Automatic evaluation of Excel and Word productions in Moodle
Automatic evaluation of Excel and Word productions in MoodleAutomatic evaluation of Excel and Word productions in Moodle
Automatic evaluation of Excel and Word productions in Moodle
Gilles-Philippe Leblanc
ETM Platform
ETM PlatformETM Platform
ETM Platform
Imede
e-Assessment for Recruitment, Training and Testing in Private and Public Sect...
e-Assessment for Recruitment, Training and Testing in Private and Public Sect...e-Assessment for Recruitment, Training and Testing in Private and Public Sect...
e-Assessment for Recruitment, Training and Testing in Private and Public Sect...
Kenji Lamb
Lec 01 introduction
Lec 01   introductionLec 01   introduction
Lec 01 introduction
UmairMuzaffar9
Orchestration of outcome based technology-enhanced learning opportunities
Orchestration of outcome based technology-enhanced learning opportunitiesOrchestration of outcome based technology-enhanced learning opportunities
Orchestration of outcome based technology-enhanced learning opportunities
Michael Derntl
Deep Learning Automated Helpdesk
Deep Learning Automated HelpdeskDeep Learning Automated Helpdesk
Deep Learning Automated Helpdesk
Pranav Sharma
Oak meeting 18/09/2014
Oak meeting 18/09/2014Oak meeting 18/09/2014
Oak meeting 18/09/2014
INRIA-OAK
Using SPOCs/MOOCs to transform traditional training in the Language Service I...
Using SPOCs/MOOCs to transform traditional training in the Language Service I...Using SPOCs/MOOCs to transform traditional training in the Language Service I...
Using SPOCs/MOOCs to transform traditional training in the Language Service I...
TAUS - The Language Data Network

More from stelf (7)

Grammars for Generative Art - Lectures @ Sofia University #6
Grammars for Generative Art - Lectures @ Sofia University #6Grammars for Generative Art - Lectures @ Sofia University #6
Grammars for Generative Art - Lectures @ Sofia University #6
stelf
Grammars for Generative Art - Lectures @ Sofia University #0
Grammars for Generative Art - Lectures @ Sofia University #0Grammars for Generative Art - Lectures @ Sofia University #0
Grammars for Generative Art - Lectures @ Sofia University #0
stelf
Grammars for Generative Art - Lectures @ Sofia University #2
Grammars for Generative Art - Lectures @ Sofia University #2Grammars for Generative Art - Lectures @ Sofia University #2
Grammars for Generative Art - Lectures @ Sofia University #2
stelf
Grammars for Generative Art - Lectures @ Sofia University #3
Grammars for Generative Art - Lectures @ Sofia University #3Grammars for Generative Art - Lectures @ Sofia University #3
Grammars for Generative Art - Lectures @ Sofia University #3
stelf
Grammers for Generative Art - Lectures @ Sofia University #4
Grammers for Generative Art - Lectures @ Sofia University #4Grammers for Generative Art - Lectures @ Sofia University #4
Grammers for Generative Art - Lectures @ Sofia University #4
stelf
Grammars for Generative Art - Lectures @ Sofia University #1
Grammars for Generative Art - Lectures @ Sofia University #1Grammars for Generative Art - Lectures @ Sofia University #1
Grammars for Generative Art - Lectures @ Sofia University #1
stelf
Intro to Mobile Marketing
Intro to  Mobile MarketingIntro to  Mobile Marketing
Intro to Mobile Marketing
stelf
Grammars for Generative Art - Lectures @ Sofia University #6
Grammars for Generative Art - Lectures @ Sofia University #6Grammars for Generative Art - Lectures @ Sofia University #6
Grammars for Generative Art - Lectures @ Sofia University #6
stelf
Grammars for Generative Art - Lectures @ Sofia University #0
Grammars for Generative Art - Lectures @ Sofia University #0Grammars for Generative Art - Lectures @ Sofia University #0
Grammars for Generative Art - Lectures @ Sofia University #0
stelf
Grammars for Generative Art - Lectures @ Sofia University #2
Grammars for Generative Art - Lectures @ Sofia University #2Grammars for Generative Art - Lectures @ Sofia University #2
Grammars for Generative Art - Lectures @ Sofia University #2
stelf
Grammars for Generative Art - Lectures @ Sofia University #3
Grammars for Generative Art - Lectures @ Sofia University #3Grammars for Generative Art - Lectures @ Sofia University #3
Grammars for Generative Art - Lectures @ Sofia University #3
stelf
Grammers for Generative Art - Lectures @ Sofia University #4
Grammers for Generative Art - Lectures @ Sofia University #4Grammers for Generative Art - Lectures @ Sofia University #4
Grammers for Generative Art - Lectures @ Sofia University #4
stelf
Grammars for Generative Art - Lectures @ Sofia University #1
Grammars for Generative Art - Lectures @ Sofia University #1Grammars for Generative Art - Lectures @ Sofia University #1
Grammars for Generative Art - Lectures @ Sofia University #1
stelf
Intro to Mobile Marketing
Intro to  Mobile MarketingIntro to  Mobile Marketing
Intro to Mobile Marketing
stelf

Recently uploaded (20)

Year 10 The Senior Phase Session 3 Term 1.pptx
Year 10 The Senior Phase Session 3 Term 1.pptxYear 10 The Senior Phase Session 3 Term 1.pptx
Year 10 The Senior Phase Session 3 Term 1.pptx
mansk2
TLE 7 - 3rd Topic - Hand Tools, Power Tools, Instruments, and Equipment Used ...
TLE 7 - 3rd Topic - Hand Tools, Power Tools, Instruments, and Equipment Used ...TLE 7 - 3rd Topic - Hand Tools, Power Tools, Instruments, and Equipment Used ...
TLE 7 - 3rd Topic - Hand Tools, Power Tools, Instruments, and Equipment Used ...
RizaBedayo
Research & Research Methods: Basic Concepts and Types.pptx
Research & Research Methods: Basic Concepts and Types.pptxResearch & Research Methods: Basic Concepts and Types.pptx
Research & Research Methods: Basic Concepts and Types.pptx
Dr. Sarita Anand
Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1...
Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1...Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1...
Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1...
pinkdvil200
PUBH1000 Module 3: Public Health Systems
PUBH1000 Module 3: Public Health SystemsPUBH1000 Module 3: Public Health Systems
PUBH1000 Module 3: Public Health Systems
Jonathan Hallett
Kaun TALHA quiz Finals -- El Dorado 2025
Kaun TALHA quiz Finals -- El Dorado 2025Kaun TALHA quiz Finals -- El Dorado 2025
Kaun TALHA quiz Finals -- El Dorado 2025
Conquiztadors- the Quiz Society of Sri Venkateswara College
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Ajaz Hussain
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷sHow to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
Celine George
Mate, a short story by Kate Grenville.pptx
Mate, a short story by Kate Grenville.pptxMate, a short story by Kate Grenville.pptx
Mate, a short story by Kate Grenville.pptx
Liny Jenifer
APM People Interest Network Conference - Oliver Randall & David Bovis - Own Y...
APM People Interest Network Conference - Oliver Randall & David Bovis - Own Y...APM People Interest Network Conference - Oliver Randall & David Bovis - Own Y...
APM People Interest Network Conference - Oliver Randall & David Bovis - Own Y...
Association for Project Management
Digital Tools with AI for e-Content Development.pptx
Digital Tools with AI for e-Content Development.pptxDigital Tools with AI for e-Content Development.pptx
Digital Tools with AI for e-Content Development.pptx
Dr. Sarita Anand
How to use Init Hooks in Odoo 18 - Odoo 際際滷s
How to use Init Hooks in Odoo 18 - Odoo 際際滷sHow to use Init Hooks in Odoo 18 - Odoo 際際滷s
How to use Init Hooks in Odoo 18 - Odoo 際際滷s
Celine George
The Broccoli Dog's inner voice (look A)
The Broccoli Dog's inner voice  (look A)The Broccoli Dog's inner voice  (look A)
The Broccoli Dog's inner voice (look A)
merasan
How to Modify Existing Web Pages in Odoo 18
How to Modify Existing Web Pages in Odoo 18How to Modify Existing Web Pages in Odoo 18
How to Modify Existing Web Pages in Odoo 18
Celine George
How to attach file using upload button Odoo 18
How to attach file using upload button Odoo 18How to attach file using upload button Odoo 18
How to attach file using upload button Odoo 18
Celine George
CBSE Arabic Grammar - Class 10 ppt.pptx
CBSE Arabic Grammar - Class 10   ppt.pptxCBSE Arabic Grammar - Class 10   ppt.pptx
CBSE Arabic Grammar - Class 10 ppt.pptx
suhail849886
QuickBooks Desktop to QuickBooks Online How to Make the Move
QuickBooks Desktop to QuickBooks Online  How to Make the MoveQuickBooks Desktop to QuickBooks Online  How to Make the Move
QuickBooks Desktop to QuickBooks Online How to Make the Move
TechSoup
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptxFESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
DanmarieMuli1
DUBLIN PROGRAM DUBLIN PROGRAM DUBLIN PROGRAM
DUBLIN PROGRAM DUBLIN PROGRAM DUBLIN PROGRAMDUBLIN PROGRAM DUBLIN PROGRAM DUBLIN PROGRAM
DUBLIN PROGRAM DUBLIN PROGRAM DUBLIN PROGRAM
vlckovar
Reordering Rules in Odoo 17 Inventory - Odoo 際際滷s
Reordering Rules in Odoo 17 Inventory - Odoo 際際滷sReordering Rules in Odoo 17 Inventory - Odoo 際際滷s
Reordering Rules in Odoo 17 Inventory - Odoo 際際滷s
Celine George
Year 10 The Senior Phase Session 3 Term 1.pptx
Year 10 The Senior Phase Session 3 Term 1.pptxYear 10 The Senior Phase Session 3 Term 1.pptx
Year 10 The Senior Phase Session 3 Term 1.pptx
mansk2
TLE 7 - 3rd Topic - Hand Tools, Power Tools, Instruments, and Equipment Used ...
TLE 7 - 3rd Topic - Hand Tools, Power Tools, Instruments, and Equipment Used ...TLE 7 - 3rd Topic - Hand Tools, Power Tools, Instruments, and Equipment Used ...
TLE 7 - 3rd Topic - Hand Tools, Power Tools, Instruments, and Equipment Used ...
RizaBedayo
Research & Research Methods: Basic Concepts and Types.pptx
Research & Research Methods: Basic Concepts and Types.pptxResearch & Research Methods: Basic Concepts and Types.pptx
Research & Research Methods: Basic Concepts and Types.pptx
Dr. Sarita Anand
Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1...
Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1...Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1...
Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1...
pinkdvil200
PUBH1000 Module 3: Public Health Systems
PUBH1000 Module 3: Public Health SystemsPUBH1000 Module 3: Public Health Systems
PUBH1000 Module 3: Public Health Systems
Jonathan Hallett
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Ajaz Hussain
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷sHow to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
Celine George
Mate, a short story by Kate Grenville.pptx
Mate, a short story by Kate Grenville.pptxMate, a short story by Kate Grenville.pptx
Mate, a short story by Kate Grenville.pptx
Liny Jenifer
APM People Interest Network Conference - Oliver Randall & David Bovis - Own Y...
APM People Interest Network Conference - Oliver Randall & David Bovis - Own Y...APM People Interest Network Conference - Oliver Randall & David Bovis - Own Y...
APM People Interest Network Conference - Oliver Randall & David Bovis - Own Y...
Association for Project Management
Digital Tools with AI for e-Content Development.pptx
Digital Tools with AI for e-Content Development.pptxDigital Tools with AI for e-Content Development.pptx
Digital Tools with AI for e-Content Development.pptx
Dr. Sarita Anand
How to use Init Hooks in Odoo 18 - Odoo 際際滷s
How to use Init Hooks in Odoo 18 - Odoo 際際滷sHow to use Init Hooks in Odoo 18 - Odoo 際際滷s
How to use Init Hooks in Odoo 18 - Odoo 際際滷s
Celine George
The Broccoli Dog's inner voice (look A)
The Broccoli Dog's inner voice  (look A)The Broccoli Dog's inner voice  (look A)
The Broccoli Dog's inner voice (look A)
merasan
How to Modify Existing Web Pages in Odoo 18
How to Modify Existing Web Pages in Odoo 18How to Modify Existing Web Pages in Odoo 18
How to Modify Existing Web Pages in Odoo 18
Celine George
How to attach file using upload button Odoo 18
How to attach file using upload button Odoo 18How to attach file using upload button Odoo 18
How to attach file using upload button Odoo 18
Celine George
CBSE Arabic Grammar - Class 10 ppt.pptx
CBSE Arabic Grammar - Class 10   ppt.pptxCBSE Arabic Grammar - Class 10   ppt.pptx
CBSE Arabic Grammar - Class 10 ppt.pptx
suhail849886
QuickBooks Desktop to QuickBooks Online How to Make the Move
QuickBooks Desktop to QuickBooks Online  How to Make the MoveQuickBooks Desktop to QuickBooks Online  How to Make the Move
QuickBooks Desktop to QuickBooks Online How to Make the Move
TechSoup
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptxFESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
DanmarieMuli1
DUBLIN PROGRAM DUBLIN PROGRAM DUBLIN PROGRAM
DUBLIN PROGRAM DUBLIN PROGRAM DUBLIN PROGRAMDUBLIN PROGRAM DUBLIN PROGRAM DUBLIN PROGRAM
DUBLIN PROGRAM DUBLIN PROGRAM DUBLIN PROGRAM
vlckovar
Reordering Rules in Odoo 17 Inventory - Odoo 際際滷s
Reordering Rules in Odoo 17 Inventory - Odoo 際際滷sReordering Rules in Odoo 17 Inventory - Odoo 際際滷s
Reordering Rules in Odoo 17 Inventory - Odoo 際際滷s
Celine George

YAPC::EU 2014 :: Lighting Talk :: Perl @ Sofia University

  • 1. Perl at Sofia University giving the Practical Perl Programming lectures 2004-2014 YAPC::EU Lighting Talk by 'stelf'
  • 2. Origin A voluntary class... and a voluntary work First issue got almost 400 attendees Initially quite challenging Perl5 only a total of 90 hours per semester
  • 3. Why am I doing it now? teaching assistant class I'm teaching Intro to Programming Object Oriented Programming w/C++ Database Design and Systems * Practical Perl Programming * Versioning Systems and IDEs * Grammars for Generative Art * Advanced Javascript
  • 4. Team Marin Marinov (until 2005) currently at HP Gheorghi Penkov Faculty of Math and Informatics at SU Petar Pentchev currently at StorPool Evgeni Kunev - 2011, 2012 a non-profit intiative
  • 5. PPP History 2003, 2004, 2005 - Sofia Unviersity 2006, 2007 - New Bulgarian University 2011 to date - Sofia University again attended by a total of more than 800 students for the time being
  • 6. Why would we do it? we loved perl... a lot. And we still do. we have already used it for some 5 years we wanted to try what is it having a class at the university we though we knew some things better that our professors...
  • 7. Feedback Rumour has it people actually like it Though mostly tough geeks make it through to the end Projects submitted implicate a good level of understanding constantly being improved
  • 8. Some vague statistics 2003/2004 - some 400ppl 2004/2005 - some 250ppl 2005/2006 - some 150ppl 2011 - 30 something 2012 - 30 something 2013 - 20 something
  • 9. Recent Innovations teaching by example while making errors using TeamViewer to get people in using Moodle for interactive tests covering modern stuff like Moo* mops, IO::Async, DBIC, etc.
  • 10. Excerpt from the RegEx lecture Da teeeeesttt sux 1000000 (million) timesssss ^ $ (亠+) ([Ds]+) .+? (d{5,10}s) (.*) i .*? s .* $1 $2 $3 $4 #!/usr/bin/perl $a =Da teeeeesttt sux 1000000 (million) timesssss '; $a =~ /^.+?(e+)([Ds]+)(d{5,10}s)(.*)i.*?s.*$/; Excerpt from the RegEx lecture
  • 11. Excerpt from the references lecture mry jro pte windows linux beos bsd dos freebsd sunos vms
  • 12. A glimpse into Examples of examples The Schedule The end-of-semester projects The intermediate tests
  • 13. Challanges People are afraid to use the console debugger understanding the context paradigm getting used with the vast amount of new syntax working with CPAN installations on Windows packing / unpacking indexing letters in strings
  • 14. Where is it going will probably have to be split in two parts needs more help, that is hard to find would be great to be completely taped and uploaded will benefit a lot from a automated testing environment eventually move to Perl6 at some point