SlideShare a Scribd company logo
PHP RENAISSANCEPHP RENAISSANCE
REBIRTH OF A DIVERSE COMMUNITYREBIRTH OF A DIVERSE COMMUNITY
Matt Chapman
Sr. Open Source Platforms Engineer
CARD.com
Los Angeles, CA
1 of 43
DEFINEDDEFINED
Rebirth
Renewal
Cultural Cross-Polination
Unified Diversity
2 of 43
OUTLINEOUTLINE
A Personal Story
A Technical History
A Technical Tour
A Look at our Community
3 of 43
20022002<html>
<head>
PHP just goes in the HTML file next to the javascript. Why not?
<?php
$link = mysql_connect('localhost', 'user', 'pass');
mysql_select_db('testdb', $link);
// Don't worry, register_globals is on by default until April.
mysql_query("SELECT * from members WHERE id = " . $id;");
?>
Still waiting on the content from marketing...
<p>Under construction!</p>
</html>
4 of 43
20062006<?php
function get_data() {
require_once db_config.inc;
$db = new PDO('mysql:host=localhost;dbname=testdb;charset=utf8', $config->username,
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
...
5 of 43
20072007
6 of 43
REAL ESTATEREAL ESTATE
7 of 43
HOME VALUES VS. DEVELOPER INCOMEHOME VALUES VS. DEVELOPER INCOME
8 of 43
DEVELOPER INCOME VS. AVERAGEDEVELOPER INCOME VS. AVERAGE
9 of 43
FOOTNOTEFOOTNOTEResultsnottypical;yourresultsmayvary.Notintendedtotreator
preventanyboringorstressfulcareer.Maycauserectalbleeding.
10 of 43
CHANGED LIVESCHANGED LIVES
11 of 43
INSANITYINSANITY
12 of 43
PHP CIRCA 2007PHP CIRCA 2007
WHAT'S GOOD?WHAT'S GOOD?
Fast development cycle.
Great HTML integration.
Free, Freer, and Freedom.
13 of 43
WHAT'S GOOD ABOUT PHP ISWHAT'S GOOD ABOUT PHP IS
ANYONE CAN DO IT!ANYONE CAN DO IT!
~~
WHAT'S BAD ABOUT PHP ISWHAT'S BAD ABOUT PHP IS
ANYONEANYONE CAN DO IT....CAN DO IT....
14 of 43
TERRIBLE CODETERRIBLE CODE<?php
namespace Money;
class Bitcoin {
const BITCOIN_NODE = '50.00.00.00';
static private $pending = array();
public static function update() {
// update all nodes
$list = DB::DAO('Money_Bitcoin_Host')->search(null);
foreach($list as $bean) {
$bean->Last_Update = DB::i()->now();
$client = Controller::Driver('Bitcoin', $bean->Money_Bitcoin_Host__);
if (!$client->isValid()) continue;
$info = $client->getInfo();
15 of 43
PEARPEAR
PHP Extension and Application Repository
Founded 2000 on the "new" PHP 4
Required root to use properly (WTF?)
Complex process for adding packages
Easy to get wrong
16 of 43
SO HOW DOES THIS WORK?SO HOW DOES THIS WORK?
Where do I find code? PEAR and, um, forums?
How do I get code? Paste into your project (or have root)
How do I load your code? Manual includes
How do I load everyone's code? Lots of manual includes
How can I collaborate on code? Sourceforge?
Can I exchange code? LOLz
17 of 43
THIS IS WHY WE CAN'TTHIS IS WHY WE CAN'T
HAVE NICE THINGSHAVE NICE THINGS
-Larry Garfield, PHP-FIG, Drupal.
It was hard to share, so everyone built their own.
So we didn't get the open-source leverage effect.
And 90% of everything is crap anyway.
18 of 43
19 of 43
20 of 43
"The average PHP programmer has written
2.5 frameworks in his career, and afterward,
still doesn't know if needle or haystack comes first."
— Urban legend statistics
21 of 43
GO PHP5.GO PHP5.
22 of 43
SO WHAT'S CHANGED?SO WHAT'S CHANGED?
PHP IN 2014PHP IN 2014
23 of 43
GITHUBGITHUB
24 of 43
COMPOSERCOMPOSER
PHP packaging system backed by Packagist.org and
Github.com
25 of 43
HIPHOPHIPHOP
Facebook's Open Sourtime Runtime alternative
also runs HACK, a backward compatible lanaguge that add
optional typing, etc.
26 of 43
PERFORMANCEPERFORMANCE
27 of 43
PHP-FIG.ORGPHP-FIG.ORG
Framewok Interoperability Group
28 of 43
WHAT ELSE IS HOT?WHAT ELSE IS HOT?
29 of 43
SYMFONY 2SYMFONY 2
Application Framework
PHP on Rails
30 of 43
SILEX, LARAVEL, KOHANASILEX, LARAVEL, KOHANA
Lighter
Higher or lower level
31 of 43
PHALCONPHALCON
Framework in C.
32 of 43
AURAAURA
No, really, really decoupled.
33 of 43
REACTPHPREACTPHP
Event Driven Programming
Inspired by NodeJS & Twisted
(Not to be confused with ReactJS from FB
34 of 43
DRUPAL 8 & BACKDROPDRUPAL 8 & BACKDROP
Drupal started in 2001
Content Management System
2013 Fork by active community members
It's not about OOP
35 of 43
COMMUNITYCOMMUNITY
What do we want?
36 of 43
ENTERPRISE?ENTERPRISE?
Red Hat vs Linspire
37 of 43
START-UPS?START-UPS?
38 of 43
DIVERSITYDIVERSITY
39 of 43
CAREERCAREER
40 of 43
LOS ANGELES IS THE FASTEST GROWINGLOS ANGELES IS THE FASTEST GROWING
MARKET FOR TECH JOBS IN THE COUNTRY.MARKET FOR TECH JOBS IN THE COUNTRY.
-Some guy I know.
41 of 43
CARD.COMCARD.COM
42 of 43
DEFINEDDEFINED
Rebirth
Renewal
Cultural Cross-Polination
Unified Diversity
43 of 43

More Related Content

PDF
TAKING PHP SERIOUSLY - Keith Adams
PDF
PHP 7.1 : elegance of our legacy
PDF
Practical PowerShell Programming for Professional People
PPT
Php training100%placement-in-mumbai
PDF
Php 7 compliance workshop singapore
PPTX
Welcome to hack
PDF
Advanced PHP: Design Patterns - Dennis-Jan Broerse
 
PPTX
Php Vs Phyton
TAKING PHP SERIOUSLY - Keith Adams
PHP 7.1 : elegance of our legacy
Practical PowerShell Programming for Professional People
Php training100%placement-in-mumbai
Php 7 compliance workshop singapore
Welcome to hack
Advanced PHP: Design Patterns - Dennis-Jan Broerse
 
Php Vs Phyton

What's hot (19)

PDF
Practical PowerShell Programming for Professional People - Extended Edition
PPT
PHP - Introduction to PHP Fundamentals
DOC
PHP, PHP Developer, Hire PHP Developer, PHP Web Development, Hire PHP Program...
PDF
Mixing Plone and Django for explosive results
PDF
Practical PowerShell Programming for Professional People - DerbyCon 4
PPT
Introduction to PHP - SDPHP
PDF
Introduction to php
PDF
Gray Hat PowerShell - ShowMeCon 2015
PDF
Variety of automated tests
PDF
PHP Doesn't Suck
ODP
IPC 2013 - High Performance PHP with HipHop
PDF
Slicing, Dicing, And Linting OpenAPI
PDF
How to really obfuscate your pdf malware
PDF
Introduction to mobile reversing
PPT
Packer Genetics: The selfish code
PDF
Natural Language Processing sample code by Aiden
PDF
ShaREing Is Caring
PDF
NLP using JavaScript Natural Library
Practical PowerShell Programming for Professional People - Extended Edition
PHP - Introduction to PHP Fundamentals
PHP, PHP Developer, Hire PHP Developer, PHP Web Development, Hire PHP Program...
Mixing Plone and Django for explosive results
Practical PowerShell Programming for Professional People - DerbyCon 4
Introduction to PHP - SDPHP
Introduction to php
Gray Hat PowerShell - ShowMeCon 2015
Variety of automated tests
PHP Doesn't Suck
IPC 2013 - High Performance PHP with HipHop
Slicing, Dicing, And Linting OpenAPI
How to really obfuscate your pdf malware
Introduction to mobile reversing
Packer Genetics: The selfish code
Natural Language Processing sample code by Aiden
ShaREing Is Caring
NLP using JavaScript Natural Library
Ad

Viewers also liked (20)

PPTX
Considerations for Operating an OpenStack Cloud
PPTX
Great Artists (Designers) Steal
PDF
Clojure: Simple By Design
PPTX
JavaScript and Internet Controlled Hardware Prototyping
PDF
HTML for the Mobile Web, Firefox OS
PPTX
All Things Open Opening Keynote
PDF
Lessons Learned with Distributed Systems at Bitly
PDF
Open Source & The Internet of Things
PDF
Open Data + Open Government = Open Goodness
PDF
Battle of the Stacks
PDF
What Does Big Data Really Mean for Your Business?
PDF
Trademarks and Your Free and Open Source Software Project
PPTX
Sustainable Open Data Markets
PPT
Open Sourcing the Public Library
PDF
Version Control and Git - GitHub Workshop
PDF
The Anti-Henry Ford: How 200 hour discoveries revolutionized the way we do bu...
PDF
Women in Open Source
PDF
Choosing a Javascript Framework
PDF
Building the iRODS Consortium
PDF
Open Source in Healthcare
Considerations for Operating an OpenStack Cloud
Great Artists (Designers) Steal
Clojure: Simple By Design
JavaScript and Internet Controlled Hardware Prototyping
HTML for the Mobile Web, Firefox OS
All Things Open Opening Keynote
Lessons Learned with Distributed Systems at Bitly
Open Source & The Internet of Things
Open Data + Open Government = Open Goodness
Battle of the Stacks
What Does Big Data Really Mean for Your Business?
Trademarks and Your Free and Open Source Software Project
Sustainable Open Data Markets
Open Sourcing the Public Library
Version Control and Git - GitHub Workshop
The Anti-Henry Ford: How 200 hour discoveries revolutionized the way we do bu...
Women in Open Source
Choosing a Javascript Framework
Building the iRODS Consortium
Open Source in Healthcare
Ad

Similar to The PHP Renaissance (20)

PDF
Php performance-talk
PDF
PHP Ecosystem and Best Practices
PDF
Introduction to PHP (SDPHP)
PDF
Php through the eyes of a hoster
PDF
The why and how of moving to php 8
PDF
Php through the eyes of a hoster phpbnl11
PDF
Current state-of-php
PDF
PDF
501 - PHP MYSQL.pdf
KEY
Ein Stall voller Trüffelschweine - (PHP-)Profiling-Tools im Überblick
PPSX
Setting advanced PHP development environment
PPTX
Orange@php conf
PPTX
Security in PHP - 那些在滲透測試的小技巧
PDF
PHP-FIG: how the PHP world got off their islands (DrupalCamp Vienna 2015)
PDF
2013 - Dustin whittle - Escalando PHP en la vida real
PDF
Php through the eyes of a hoster confoo
PDF
50 shades of PHP
PDF
More about PHP
PPTX
Webdevcon pierrejoye-php54-and-other
PDF
Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at eZ Con...
Php performance-talk
PHP Ecosystem and Best Practices
Introduction to PHP (SDPHP)
Php through the eyes of a hoster
The why and how of moving to php 8
Php through the eyes of a hoster phpbnl11
Current state-of-php
501 - PHP MYSQL.pdf
Ein Stall voller Trüffelschweine - (PHP-)Profiling-Tools im Überblick
Setting advanced PHP development environment
Orange@php conf
Security in PHP - 那些在滲透測試的小技巧
PHP-FIG: how the PHP world got off their islands (DrupalCamp Vienna 2015)
2013 - Dustin whittle - Escalando PHP en la vida real
Php through the eyes of a hoster confoo
50 shades of PHP
More about PHP
Webdevcon pierrejoye-php54-and-other
Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at eZ Con...

More from All Things Open (20)

PDF
Agentic AI for Developers and Data Scientists Build an AI Agent in 10 Lines o...
PPTX
Big Data on a Small Budget: Scalable Data Visualization for the Rest of Us - ...
PDF
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
PDF
Let's Create a GitHub Copilot Extension! - Nick Taylor, Pomerium
PDF
Leveraging Pre-Trained Transformer Models for Protein Function Prediction - T...
PDF
Gen AI: AI Agents - Making LLMs work together in an organized way - Brent Las...
PDF
You Don't Need an AI Strategy, But You Do Need to Be Strategic About AI - Jes...
PPTX
DON’T PANIC: AI IS COMING – The Hitchhiker’s Guide to AI - Mark Hinkle, Perip...
PDF
Fine-Tuning Large Language Models with Declarative ML Orchestration - Shivay ...
PDF
Leveraging Knowledge Graphs for RAG: A Smarter Approach to Contextual AI Appl...
PPTX
Artificial Intelligence Needs Community Intelligence - Sriram Raghavan, IBM R...
PDF
Don't just talk to AI, do more with AI: how to improve productivity with AI a...
PPTX
Open-Source GenAI vs. Enterprise GenAI: Navigating the Future of AI Innovatio...
PDF
The Death of the Browser - Rachel-Lee Nabors, AgentQL
PDF
Making Operating System updates fast, easy, and safe
PDF
Reshaping the landscape of belonging to transform community
PDF
The Unseen, Underappreciated Security Work Your Maintainers May (or may not) ...
PDF
Integrating Diversity, Equity, and Inclusion into Product Design
PDF
The Open Source Ecosystem for eBPF in Kubernetes
PDF
Open Source Privacy-Preserving Metrics - Sarah Gran & Brandon Pitman
Agentic AI for Developers and Data Scientists Build an AI Agent in 10 Lines o...
Big Data on a Small Budget: Scalable Data Visualization for the Rest of Us - ...
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
Let's Create a GitHub Copilot Extension! - Nick Taylor, Pomerium
Leveraging Pre-Trained Transformer Models for Protein Function Prediction - T...
Gen AI: AI Agents - Making LLMs work together in an organized way - Brent Las...
You Don't Need an AI Strategy, But You Do Need to Be Strategic About AI - Jes...
DON’T PANIC: AI IS COMING – The Hitchhiker’s Guide to AI - Mark Hinkle, Perip...
Fine-Tuning Large Language Models with Declarative ML Orchestration - Shivay ...
Leveraging Knowledge Graphs for RAG: A Smarter Approach to Contextual AI Appl...
Artificial Intelligence Needs Community Intelligence - Sriram Raghavan, IBM R...
Don't just talk to AI, do more with AI: how to improve productivity with AI a...
Open-Source GenAI vs. Enterprise GenAI: Navigating the Future of AI Innovatio...
The Death of the Browser - Rachel-Lee Nabors, AgentQL
Making Operating System updates fast, easy, and safe
Reshaping the landscape of belonging to transform community
The Unseen, Underappreciated Security Work Your Maintainers May (or may not) ...
Integrating Diversity, Equity, and Inclusion into Product Design
The Open Source Ecosystem for eBPF in Kubernetes
Open Source Privacy-Preserving Metrics - Sarah Gran & Brandon Pitman

Recently uploaded (20)

PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Machine learning based COVID-19 study performance prediction
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
Tartificialntelligence_presentation.pptx
PDF
A comparative analysis of optical character recognition models for extracting...
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PPTX
1. Introduction to Computer Programming.pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
cuic standard and advanced reporting.pdf
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Getting Started with Data Integration: FME Form 101
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Programs and apps: productivity, graphics, security and other tools
Machine learning based COVID-19 study performance prediction
“AI and Expert System Decision Support & Business Intelligence Systems”
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Assigned Numbers - 2025 - Bluetooth® Document
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Spectral efficient network and resource selection model in 5G networks
Diabetes mellitus diagnosis method based random forest with bat algorithm
Tartificialntelligence_presentation.pptx
A comparative analysis of optical character recognition models for extracting...
SOPHOS-XG Firewall Administrator PPT.pptx
1. Introduction to Computer Programming.pptx
Encapsulation_ Review paper, used for researhc scholars
Advanced methodologies resolving dimensionality complications for autism neur...
cuic standard and advanced reporting.pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Getting Started with Data Integration: FME Form 101
The Rise and Fall of 3GPP – Time for a Sabbatical?

The PHP Renaissance