SlideShare a Scribd company logo
YAPC Europe ~ Lisboa 2009 cosimo streppone  <cosimo@cpan.org> H õ w  Õ p é r ã  us é s P é rl
Geek company We make a browser, but not only Engineering-driven Most of Opera employees still work in Eng Very smart people I am an exception Opera Software
Opera browser C++, huge number of platforms Opera Mini client - server J2ME, C++, Pike maybe you have it on your phone Opera Turbo C++, Pike, speed up page loading Opera products
C++ Kingdom Perl Republic Python Dictatorship Pike Islands
PRL
Opera Intranet Integrated with company-wide LDAP directory BCD Opera browser Build scripts Composer, to assemble custom versions Distribute, publish on the download system Statistics Browser downloads Opera Mini stats, hundreds of servers worldwide …  hundreds of systems ... Internal systems
www.opera.com Company institutional website my.opera.com Opera Community, browser add-ons, skins Support forums, photo albums, blogs, etc... dev.opera.com Technical in-depth articles Web Standards Curriculum labs.opera.com Public web sites } DML = XML + XSLT
 
Auth.opera.com Central authentication system, user profiles, (soon) single-sign on Auto update Serves component updates Site-check Fraud, malware, phishing protection ASD (Alien service discovery) Opera Unite related, tracks logged in users Connects them together Browser integration systems
Opera Link Recently added Perlbal. Cut  90%  load. In 1 day. Browser integration systems
ok, great, but...
Very few people, but very  noisy Usually  young  people Experienced developers don't care Tendency to  generalize  about Perl and Perl folks... Perl “bashing”...
 
Python getting more and more popular “ They just know Perl, that's why they stick to it” “ Perl is not suited for large applications” “ Perl is a write-only language” (ever heard this?) “ Perl sucks” “ No interesting jobs” Perception
We know what the reality is: Perl  runs everywhere  (and I mean everywhere) Large  or small-scale applications … Python code can be horrible too... Python projects can fail too... Reality
Understand better how Perl is  really perceived and possibly why Expected 10 answers  and some boos Got  lots  of answers (and  some boos ) Survey: Perl in Opera Software
Survey: Perl in Opera Software Most common reason for “Perl is awful” Syntax is too complicated Most common reason for “Perl is great” Syntax is flexible Make it an expressive language
Survey: Perl in Opera Software Most people that  complain about syntax have  none or very little experience  in Perl
Survey: Perl in Opera Software 70% CPAN is an extremely valuable resource
Survey: Perl in Opera Software 1% Strawberry Perl users
Varies greatly “ Legacy” systems We're trying to build a “Quality Culture” Prepare to be shocked... :) Quality of Perl work in Opera
 
We are the Perl Community! Aim for the  highest quality Set documentation and coding  guidelines  in your team Respect them! No  quick & dirty  please We can make a difference...
More CPAN Munin realtime statistics Storage subsystem Opera-core foundation classes More “modern” Perl Migrate majority of systems to 5.10.x More Catalyst? More Moose? Future of Perl at Opera
 
Strive for  high quality Write about Perl. Go, Ironman! Get your company (more) on  CPAN Hire  unexperienced young  developers. Train  them. Perl is  never  the problem. Call to action!
obrigado! ¿perguntas?
opera.com/jobs jobs.perl.org

More Related Content

Similar to YAPC::EU::2009 - How Opera Software uses Perl

Cross Device Accessibility
Cross Device AccessibilityCross Device Accessibility
Cross Device Accessibility
Chris Mills
 
Workshop Trends In Open Source Tech 1 20 10
Workshop Trends In Open Source Tech 1 20 10Workshop Trends In Open Source Tech 1 20 10
Workshop Trends In Open Source Tech 1 20 10
NuRelm
 
2019-03 PHP without PHP Architecture @ Confoo
2019-03 PHP without PHP Architecture @ Confoo2019-03 PHP without PHP Architecture @ Confoo
2019-03 PHP without PHP Architecture @ Confoo
terry chay
 
Minimal reason to learn Perl
Minimal reason  to learn PerlMinimal reason  to learn Perl
Minimal reason to learn Perl
Sanjeev Kumar Jaiswal
 
Puppet for SysAdmins
Puppet for SysAdminsPuppet for SysAdmins
Puppet for SysAdmins
Puppet
 
Jared Whitlock Open Source In The Enterprise Plone @ Novell
Jared Whitlock   Open Source In The Enterprise    Plone @ NovellJared Whitlock   Open Source In The Enterprise    Plone @ Novell
Jared Whitlock Open Source In The Enterprise Plone @ Novell
Vincenzo Barone
 
Python overview
Python overviewPython overview
Python overview
Haroon Karim
 
Enterprise Perl
Enterprise PerlEnterprise Perl
Enterprise Perl
Dave Cross
 
Python
PythonPython
Python
GAnkitgupta
 
Lamp presentation
Lamp presentationLamp presentation
Lamp presentation
sathyancegonsoft
 
Dean4j@Njug5
Dean4j@Njug5Dean4j@Njug5
Technology trends and the skills you should learn
Technology trends and the skills you should learnTechnology trends and the skills you should learn
Technology trends and the skills you should learn
Orange and Bronze Software Labs
 
Federico Feroldi Php In Yahoo
Federico Feroldi Php In YahooFederico Feroldi Php In Yahoo
Federico Feroldi Php In Yahoo
Federico Feroldi
 
Phoenix for Rubyists
Phoenix for RubyistsPhoenix for Rubyists
Phoenix for Rubyists
Doug Goldie
 
Dégraissons le mammouth ou Darwin a encore frappé - La théorie de l'évolution...
Dégraissons le mammouth ou Darwin a encore frappé - La théorie de l'évolution...Dégraissons le mammouth ou Darwin a encore frappé - La théorie de l'évolution...
Dégraissons le mammouth ou Darwin a encore frappé - La théorie de l'évolution...
Arnauld Loyer
 
NPR API: Create Once Publish Everywhere
NPR API: Create Once Publish EverywhereNPR API: Create Once Publish Everywhere
NPR API: Create Once Publish Everywhere
zachbrand
 
Ed. Technology Council Open Source Presentation
Ed. Technology Council Open Source PresentationEd. Technology Council Open Source Presentation
Ed. Technology Council Open Source Presentation
Hillside Community School
 
Perl Myths 200802 with notes (OUTDATED, see 200909)
Perl Myths 200802 with notes (OUTDATED, see 200909)Perl Myths 200802 with notes (OUTDATED, see 200909)
Perl Myths 200802 with notes (OUTDATED, see 200909)
Tim Bunce
 
LAMP certification course in Coimbatore|LAMP Learning Center Coimbatore|LAMP ...
LAMP certification course in Coimbatore|LAMP Learning Center Coimbatore|LAMP ...LAMP certification course in Coimbatore|LAMP Learning Center Coimbatore|LAMP ...
LAMP certification course in Coimbatore|LAMP Learning Center Coimbatore|LAMP ...
sathyancegon
 
Lamp courses Coimbatore
Lamp courses CoimbatoreLamp courses Coimbatore
Lamp courses Coimbatore
sathyancegon
 

Similar to YAPC::EU::2009 - How Opera Software uses Perl (20)

Cross Device Accessibility
Cross Device AccessibilityCross Device Accessibility
Cross Device Accessibility
 
Workshop Trends In Open Source Tech 1 20 10
Workshop Trends In Open Source Tech 1 20 10Workshop Trends In Open Source Tech 1 20 10
Workshop Trends In Open Source Tech 1 20 10
 
2019-03 PHP without PHP Architecture @ Confoo
2019-03 PHP without PHP Architecture @ Confoo2019-03 PHP without PHP Architecture @ Confoo
2019-03 PHP without PHP Architecture @ Confoo
 
Minimal reason to learn Perl
Minimal reason  to learn PerlMinimal reason  to learn Perl
Minimal reason to learn Perl
 
Puppet for SysAdmins
Puppet for SysAdminsPuppet for SysAdmins
Puppet for SysAdmins
 
Jared Whitlock Open Source In The Enterprise Plone @ Novell
Jared Whitlock   Open Source In The Enterprise    Plone @ NovellJared Whitlock   Open Source In The Enterprise    Plone @ Novell
Jared Whitlock Open Source In The Enterprise Plone @ Novell
 
Python overview
Python overviewPython overview
Python overview
 
Enterprise Perl
Enterprise PerlEnterprise Perl
Enterprise Perl
 
Python
PythonPython
Python
 
Lamp presentation
Lamp presentationLamp presentation
Lamp presentation
 
Dean4j@Njug5
Dean4j@Njug5Dean4j@Njug5
Dean4j@Njug5
 
Technology trends and the skills you should learn
Technology trends and the skills you should learnTechnology trends and the skills you should learn
Technology trends and the skills you should learn
 
Federico Feroldi Php In Yahoo
Federico Feroldi Php In YahooFederico Feroldi Php In Yahoo
Federico Feroldi Php In Yahoo
 
Phoenix for Rubyists
Phoenix for RubyistsPhoenix for Rubyists
Phoenix for Rubyists
 
Dégraissons le mammouth ou Darwin a encore frappé - La théorie de l'évolution...
Dégraissons le mammouth ou Darwin a encore frappé - La théorie de l'évolution...Dégraissons le mammouth ou Darwin a encore frappé - La théorie de l'évolution...
Dégraissons le mammouth ou Darwin a encore frappé - La théorie de l'évolution...
 
NPR API: Create Once Publish Everywhere
NPR API: Create Once Publish EverywhereNPR API: Create Once Publish Everywhere
NPR API: Create Once Publish Everywhere
 
Ed. Technology Council Open Source Presentation
Ed. Technology Council Open Source PresentationEd. Technology Council Open Source Presentation
Ed. Technology Council Open Source Presentation
 
Perl Myths 200802 with notes (OUTDATED, see 200909)
Perl Myths 200802 with notes (OUTDATED, see 200909)Perl Myths 200802 with notes (OUTDATED, see 200909)
Perl Myths 200802 with notes (OUTDATED, see 200909)
 
LAMP certification course in Coimbatore|LAMP Learning Center Coimbatore|LAMP ...
LAMP certification course in Coimbatore|LAMP Learning Center Coimbatore|LAMP ...LAMP certification course in Coimbatore|LAMP Learning Center Coimbatore|LAMP ...
LAMP certification course in Coimbatore|LAMP Learning Center Coimbatore|LAMP ...
 
Lamp courses Coimbatore
Lamp courses CoimbatoreLamp courses Coimbatore
Lamp courses Coimbatore
 

More from Cosimo Streppone

How we use and deploy Varnish at Opera
How we use and deploy Varnish at OperaHow we use and deploy Varnish at Opera
How we use and deploy Varnish at Opera
Cosimo Streppone
 
Puppet at Opera Sofware - PuppetCamp Oslo 2013
Puppet at Opera Sofware - PuppetCamp Oslo 2013Puppet at Opera Sofware - PuppetCamp Oslo 2013
Puppet at Opera Sofware - PuppetCamp Oslo 2013
Cosimo Streppone
 
Velocity 2012 - Learning WebOps the Hard Way
Velocity 2012 - Learning WebOps the Hard WayVelocity 2012 - Learning WebOps the Hard Way
Velocity 2012 - Learning WebOps the Hard Way
Cosimo Streppone
 
Italian, do you speak it?
Italian, do you speak it?Italian, do you speak it?
Italian, do you speak it?
Cosimo Streppone
 
VUG5: Varnish at Opera Software
VUG5: Varnish at Opera SoftwareVUG5: Varnish at Opera Software
VUG5: Varnish at Opera Software
Cosimo Streppone
 
Velocity 2011 - Our first DDoS attack
Velocity 2011 - Our first DDoS attackVelocity 2011 - Our first DDoS attack
Velocity 2011 - Our first DDoS attack
Cosimo Streppone
 
Mojolicious: what works and what doesn't
Mojolicious: what works and what doesn'tMojolicious: what works and what doesn't
Mojolicious: what works and what doesn't
Cosimo Streppone
 
Surge 2010 - from disaster to stability - scaling my.opera.com
Surge 2010 - from disaster to stability - scaling my.opera.comSurge 2010 - from disaster to stability - scaling my.opera.com
Surge 2010 - from disaster to stability - scaling my.opera.com
Cosimo Streppone
 
My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009
Cosimo Streppone
 
NPW2009 - my.opera.com scalability v2.0
NPW2009 - my.opera.com scalability v2.0NPW2009 - my.opera.com scalability v2.0
NPW2009 - my.opera.com scalability v2.0
Cosimo Streppone
 
IPW2008 - my.opera.com scalability
IPW2008 - my.opera.com scalabilityIPW2008 - my.opera.com scalability
IPW2008 - my.opera.com scalability
Cosimo Streppone
 

More from Cosimo Streppone (11)

How we use and deploy Varnish at Opera
How we use and deploy Varnish at OperaHow we use and deploy Varnish at Opera
How we use and deploy Varnish at Opera
 
Puppet at Opera Sofware - PuppetCamp Oslo 2013
Puppet at Opera Sofware - PuppetCamp Oslo 2013Puppet at Opera Sofware - PuppetCamp Oslo 2013
Puppet at Opera Sofware - PuppetCamp Oslo 2013
 
Velocity 2012 - Learning WebOps the Hard Way
Velocity 2012 - Learning WebOps the Hard WayVelocity 2012 - Learning WebOps the Hard Way
Velocity 2012 - Learning WebOps the Hard Way
 
Italian, do you speak it?
Italian, do you speak it?Italian, do you speak it?
Italian, do you speak it?
 
VUG5: Varnish at Opera Software
VUG5: Varnish at Opera SoftwareVUG5: Varnish at Opera Software
VUG5: Varnish at Opera Software
 
Velocity 2011 - Our first DDoS attack
Velocity 2011 - Our first DDoS attackVelocity 2011 - Our first DDoS attack
Velocity 2011 - Our first DDoS attack
 
Mojolicious: what works and what doesn't
Mojolicious: what works and what doesn'tMojolicious: what works and what doesn't
Mojolicious: what works and what doesn't
 
Surge 2010 - from disaster to stability - scaling my.opera.com
Surge 2010 - from disaster to stability - scaling my.opera.comSurge 2010 - from disaster to stability - scaling my.opera.com
Surge 2010 - from disaster to stability - scaling my.opera.com
 
My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009
 
NPW2009 - my.opera.com scalability v2.0
NPW2009 - my.opera.com scalability v2.0NPW2009 - my.opera.com scalability v2.0
NPW2009 - my.opera.com scalability v2.0
 
IPW2008 - my.opera.com scalability
IPW2008 - my.opera.com scalabilityIPW2008 - my.opera.com scalability
IPW2008 - my.opera.com scalability
 

Recently uploaded

HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
GDSC PJATK
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Jeffrey Haguewood
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 

Recently uploaded (20)

HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 

YAPC::EU::2009 - How Opera Software uses Perl

  • 1. YAPC Europe ~ Lisboa 2009 cosimo streppone <cosimo@cpan.org> H õ w Õ p é r ã us é s P é rl
  • 2. Geek company We make a browser, but not only Engineering-driven Most of Opera employees still work in Eng Very smart people I am an exception Opera Software
  • 3. Opera browser C++, huge number of platforms Opera Mini client - server J2ME, C++, Pike maybe you have it on your phone Opera Turbo C++, Pike, speed up page loading Opera products
  • 4. C++ Kingdom Perl Republic Python Dictatorship Pike Islands
  • 5. PRL
  • 6. Opera Intranet Integrated with company-wide LDAP directory BCD Opera browser Build scripts Composer, to assemble custom versions Distribute, publish on the download system Statistics Browser downloads Opera Mini stats, hundreds of servers worldwide … hundreds of systems ... Internal systems
  • 7. www.opera.com Company institutional website my.opera.com Opera Community, browser add-ons, skins Support forums, photo albums, blogs, etc... dev.opera.com Technical in-depth articles Web Standards Curriculum labs.opera.com Public web sites } DML = XML + XSLT
  • 8.  
  • 9. Auth.opera.com Central authentication system, user profiles, (soon) single-sign on Auto update Serves component updates Site-check Fraud, malware, phishing protection ASD (Alien service discovery) Opera Unite related, tracks logged in users Connects them together Browser integration systems
  • 10. Opera Link Recently added Perlbal. Cut 90% load. In 1 day. Browser integration systems
  • 12. Very few people, but very noisy Usually young people Experienced developers don't care Tendency to generalize about Perl and Perl folks... Perl “bashing”...
  • 13.  
  • 14. Python getting more and more popular “ They just know Perl, that's why they stick to it” “ Perl is not suited for large applications” “ Perl is a write-only language” (ever heard this?) “ Perl sucks” “ No interesting jobs” Perception
  • 15. We know what the reality is: Perl runs everywhere (and I mean everywhere) Large or small-scale applications … Python code can be horrible too... Python projects can fail too... Reality
  • 16. Understand better how Perl is really perceived and possibly why Expected 10 answers and some boos Got lots of answers (and some boos ) Survey: Perl in Opera Software
  • 17. Survey: Perl in Opera Software Most common reason for “Perl is awful” Syntax is too complicated Most common reason for “Perl is great” Syntax is flexible Make it an expressive language
  • 18. Survey: Perl in Opera Software Most people that complain about syntax have none or very little experience in Perl
  • 19. Survey: Perl in Opera Software 70% CPAN is an extremely valuable resource
  • 20. Survey: Perl in Opera Software 1% Strawberry Perl users
  • 21. Varies greatly “ Legacy” systems We're trying to build a “Quality Culture” Prepare to be shocked... :) Quality of Perl work in Opera
  • 22.  
  • 23. We are the Perl Community! Aim for the highest quality Set documentation and coding guidelines in your team Respect them! No quick & dirty please We can make a difference...
  • 24. More CPAN Munin realtime statistics Storage subsystem Opera-core foundation classes More “modern” Perl Migrate majority of systems to 5.10.x More Catalyst? More Moose? Future of Perl at Opera
  • 25.  
  • 26. Strive for high quality Write about Perl. Go, Ironman! Get your company (more) on CPAN Hire unexperienced young developers. Train them. Perl is never the problem. Call to action!