SlideShare a Scribd company logo
1 of 26
Download to read offline
Exploring 
FuelPHP 
Why 
on 
earth 
would 
you 
do 
that?
Eeeeewwww 
you 
use 
PHP? 
• Isn’t 
PHP 
like… 
ancient? 
• Who 
writes 
PHP? 
You 
know 
it’s 
2012, 
right?
We 
do! 
• PeoplePerHour 
does 
• Facebook 
does 
• Mailchimp 
does
Why 
PHP 
• Well 
established 
language 
• Huge 
community 
• Great 
support 
by 
hosting 
providers, 
docs, 
libraries, 
open 
source 
projects, 
frameworks
What 
is 
FuelPHP? 
• (H)MVC 
PHP 
Framework 
• PHP 
5.3+ 
up 
• 100+ 
Contributors 
• Best 
developers 
from 
CodeIgniter 
and 
others
Aren’t 
there 
more 
than 
enough 
frameworks? 
many 
others…
Why 
is 
it 
different 
• Best 
ideas 
from 
all 
PHP 
frameworks 
combined 
• Fresh 
and 
up 
to 
date 
• Brings 
new 
ideas 
to 
the 
table
Idea 
#1 
• Out 
of 
the 
box 
support 
for 
NoSQL 
– Mongo 
– Redis
Idea 
#2 
• Unified 
static 
method 
for 
getting 
a 
class 
singleton 
//example:! 
return View::forge('home/index');!
Idea 
#3 
• Utilize 
PHP 
namespaces 
so 
that 
the 
classes 
can 
have 
human 
readable 
names 
echo Form::button('name', 'value’);!
Idea 
#4 
• 
H-­‐MVC 
Requests: 
Controllers 
can 
be 
loaded 
by 
controllers 
as 
widgets 
if((Request::main() === Request::active()) {! 
!// this is the main request! 
} else {! 
// this is a HMVC request! 
}!
Idea 
#5 
• Routers 
inside 
controllers
Idea 
#6 
• ViewModels: 
Even 
less 
logic 
inside 
views
Idea 
#7 
• Provide 
various 
types 
of 
controllers 
for 
templating: 
– Base 
– Rest 
– Template 
• Support 
a 
load 
of 
template 
engines 
through 
Parser 
package: 
(Mustache, 
Markdown, 
Smarty, 
Twig, 
Haml, 
Jade, 
Dwoo)
Idea 
#8 
• Extremely 
easy 
installation 
(copy/paste 
2 
commands)
Idea 
#9 
• Heavily 
utilize 
Git(hub) 
– From 
installation 
to 
packages
Why 
I 
like 
it 
• No 
camelCase 
allowed 
(surprise) 
• Super 
fast 
to 
learn 
• I 
like 
the 
guys 
that 
are 
working 
on 
it
So, 
is 
it 
the 
best 
framework? 
• No.
Which 
PHP 
framework 
is 
the 
best? 
• None
Exhibit 
A: 
Codeigniter 
• Project 
I 
worked 
on: 
As 
a 
mobile 
app 
I 
would 
like 
to 
send 
request 
to 
a 
REST 
API 
and 
get 
JSON 
– Only 
3 
things 
used: 
Database, 
Memcache, 
JSON
Exhibit 
B: 
FuelPHP 
• Project 
I’m 
working 
on: 
As 
a 
developer 
I 
would 
like 
to 
have 
a 
playground 
project 
that 
has 
no 
actual 
use 
and 
scope, 
so 
I 
can 
torture 
myself 
during 
the 
weekends
Choosing 
a 
framework 
is 
a 
matter 
of 
taste 
• Choose 
any 
framework 
you 
want, 
seriously 
• Doesn’t 
mind 
which 
one 
as 
long 
as 
it 
provides 
the 
right 
tools 
for 
the 
job 
and 
you’re 
building 
something 
awesome
But 
the 
benchmarks… 
• Screw 
the 
benchmarks 
• It’s 
not 
all 
about 
how 
many 
requests 
per 
second 
a 
framework 
can 
handle 
• MVC 
is 
slower 
than 
plain 
PHP 
anyway
Where 
can 
I 
find 
more 
info? 
• fuelphp.org 
– @fuelphp 
• Phil 
Sturgeon 
– philsturgeon.co.uk 
-­‐ 
@philsturgeon 
• Dan 
Horrigan 
– dh.io 
-­‐ 
@dhorrigan 
• Jelmer 
Schreuder 
– jelmerschreuder.nl 
-­‐ 
@jelmer_fuel
Questions 
• Go!
What 
is 
your 
weapon 
of 
choice? 
• Thanks

More Related Content

What's hot

Continuous Integration Is for Teams: Moving past buzzword driven development
Continuous Integration Is for Teams: Moving past buzzword driven development Continuous Integration Is for Teams: Moving past buzzword driven development
Continuous Integration Is for Teams: Moving past buzzword driven development Pantheon
 
Desktop Apps with PHP and Titanium (ZendCon 2010)
Desktop Apps with PHP and Titanium (ZendCon 2010)Desktop Apps with PHP and Titanium (ZendCon 2010)
Desktop Apps with PHP and Titanium (ZendCon 2010)Ben Ramsey
 
How to outsource the pain of drupal translation to smartling from loparev
How to outsource the pain of drupal translation to smartling from loparevHow to outsource the pain of drupal translation to smartling from loparev
How to outsource the pain of drupal translation to smartling from loparevOleksii Bogush
 
Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)Paul Jones
 
[drupalday2017] - DevOps: strumenti di automazione per Drupal8
[drupalday2017] - DevOps: strumenti di automazione per Drupal8[drupalday2017] - DevOps: strumenti di automazione per Drupal8
[drupalday2017] - DevOps: strumenti di automazione per Drupal8DrupalDay
 
Practical PHP Deployment with Jenkins
Practical PHP Deployment with JenkinsPractical PHP Deployment with Jenkins
Practical PHP Deployment with JenkinsAdam Culp
 
To infinity and Beyond with Plone 5!
To infinity and Beyond with Plone 5!To infinity and Beyond with Plone 5!
To infinity and Beyond with Plone 5!Rikupekka Oksanen
 
Golang #5: To Go or not to Go
Golang #5: To Go or not to GoGolang #5: To Go or not to Go
Golang #5: To Go or not to GoOliver N
 
Scaling php - Intercon php
Scaling php - Intercon phpScaling php - Intercon php
Scaling php - Intercon phpHandrus Nogueira
 
Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...
Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...
Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...Pantheon
 
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ PublishContent Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ PublishJani Tarvainen
 
Testing Your Code as Part of an Industrial Grade Workflow
Testing Your Code as Part of an Industrial Grade WorkflowTesting Your Code as Part of an Industrial Grade Workflow
Testing Your Code as Part of an Industrial Grade WorkflowPantheon
 
Untangling fall2017 week1
Untangling fall2017 week1Untangling fall2017 week1
Untangling fall2017 week1Derek Jacoby
 
[drupalday2017] - Devel - D8 release party
[drupalday2017] - Devel - D8 release party[drupalday2017] - Devel - D8 release party
[drupalday2017] - Devel - D8 release partyDrupalDay
 

What's hot (20)

Continuous Integration Is for Teams: Moving past buzzword driven development
Continuous Integration Is for Teams: Moving past buzzword driven development Continuous Integration Is for Teams: Moving past buzzword driven development
Continuous Integration Is for Teams: Moving past buzzword driven development
 
Desktop Apps with PHP and Titanium (ZendCon 2010)
Desktop Apps with PHP and Titanium (ZendCon 2010)Desktop Apps with PHP and Titanium (ZendCon 2010)
Desktop Apps with PHP and Titanium (ZendCon 2010)
 
How to outsource the pain of drupal translation to smartling from loparev
How to outsource the pain of drupal translation to smartling from loparevHow to outsource the pain of drupal translation to smartling from loparev
How to outsource the pain of drupal translation to smartling from loparev
 
Becoming A Php Ninja
Becoming A Php NinjaBecoming A Php Ninja
Becoming A Php Ninja
 
Developing better PHP projects
Developing better PHP projectsDeveloping better PHP projects
Developing better PHP projects
 
The future of templating and frameworks
The future of templating and frameworksThe future of templating and frameworks
The future of templating and frameworks
 
Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)
 
Whats next in templating
Whats next in templatingWhats next in templating
Whats next in templating
 
Enterprise PHP
Enterprise PHPEnterprise PHP
Enterprise PHP
 
[drupalday2017] - DevOps: strumenti di automazione per Drupal8
[drupalday2017] - DevOps: strumenti di automazione per Drupal8[drupalday2017] - DevOps: strumenti di automazione per Drupal8
[drupalday2017] - DevOps: strumenti di automazione per Drupal8
 
Practical PHP Deployment with Jenkins
Practical PHP Deployment with JenkinsPractical PHP Deployment with Jenkins
Practical PHP Deployment with Jenkins
 
To infinity and Beyond with Plone 5!
To infinity and Beyond with Plone 5!To infinity and Beyond with Plone 5!
To infinity and Beyond with Plone 5!
 
Golang #5: To Go or not to Go
Golang #5: To Go or not to GoGolang #5: To Go or not to Go
Golang #5: To Go or not to Go
 
Untangling4
Untangling4Untangling4
Untangling4
 
Scaling php - Intercon php
Scaling php - Intercon phpScaling php - Intercon php
Scaling php - Intercon php
 
Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...
Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...
Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...
 
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ PublishContent Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
 
Testing Your Code as Part of an Industrial Grade Workflow
Testing Your Code as Part of an Industrial Grade WorkflowTesting Your Code as Part of an Industrial Grade Workflow
Testing Your Code as Part of an Industrial Grade Workflow
 
Untangling fall2017 week1
Untangling fall2017 week1Untangling fall2017 week1
Untangling fall2017 week1
 
[drupalday2017] - Devel - D8 release party
[drupalday2017] - Devel - D8 release party[drupalday2017] - Devel - D8 release party
[drupalday2017] - Devel - D8 release party
 

Similar to FuelPHP presentation - PeoplePerHour workshop

Untangling spring week11
Untangling spring week11Untangling spring week11
Untangling spring week11Derek Jacoby
 
PHP Frameworks Review - Mar 19 2015
PHP Frameworks Review - Mar 19 2015PHP Frameworks Review - Mar 19 2015
PHP Frameworks Review - Mar 19 2015kyphpug
 
OpenShift with Eclipse Tooling - EclipseCon 2012
OpenShift with Eclipse Tooling - EclipseCon 2012OpenShift with Eclipse Tooling - EclipseCon 2012
OpenShift with Eclipse Tooling - EclipseCon 2012Steven Pousty
 
Untangling the web11
Untangling the web11Untangling the web11
Untangling the web11Derek Jacoby
 
PHP - Programming language war, does it matter
PHP - Programming language war, does it matterPHP - Programming language war, does it matter
PHP - Programming language war, does it matterMizno Kruge
 
Free Mongo on OpenShift
Free Mongo on OpenShiftFree Mongo on OpenShift
Free Mongo on OpenShiftSteven Pousty
 
Am\I\Doing\It\Right? Struktura plików w PHP
Am\I\Doing\It\Right? Struktura plików w PHPAm\I\Doing\It\Right? Struktura plików w PHP
Am\I\Doing\It\Right? Struktura plików w PHPThe Software House
 
Phpworks enterprise-php-1227605806710884-9
Phpworks enterprise-php-1227605806710884-9Phpworks enterprise-php-1227605806710884-9
Phpworks enterprise-php-1227605806710884-9PrinceGuru MS
 
Untangling spring week1
Untangling spring week1Untangling spring week1
Untangling spring week1Derek Jacoby
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building ProductsHayden Bleasel
 
Php internal architecture
Php internal architecturePhp internal architecture
Php internal architectureElizabeth Smith
 
Prototyping like it is 2022
Prototyping like it is 2022 Prototyping like it is 2022
Prototyping like it is 2022 Michael Yagudaev
 
Introduction to PHP - SDPHP
Introduction to PHP - SDPHPIntroduction to PHP - SDPHP
Introduction to PHP - SDPHPEric Johnson
 
What's the "right" PHP Framework?
What's the "right" PHP Framework?What's the "right" PHP Framework?
What's the "right" PHP Framework?Barry Jones
 
Presentation 1 Web--dev
Presentation 1 Web--devPresentation 1 Web--dev
Presentation 1 Web--devaltsav
 
Enterprise PHP (Zend UK Business Conference)
Enterprise PHP (Zend UK Business Conference)Enterprise PHP (Zend UK Business Conference)
Enterprise PHP (Zend UK Business Conference)Ivo Jansch
 

Similar to FuelPHP presentation - PeoplePerHour workshop (20)

Untangling spring week11
Untangling spring week11Untangling spring week11
Untangling spring week11
 
PHP Frameworks Review - Mar 19 2015
PHP Frameworks Review - Mar 19 2015PHP Frameworks Review - Mar 19 2015
PHP Frameworks Review - Mar 19 2015
 
OpenShift with Eclipse Tooling - EclipseCon 2012
OpenShift with Eclipse Tooling - EclipseCon 2012OpenShift with Eclipse Tooling - EclipseCon 2012
OpenShift with Eclipse Tooling - EclipseCon 2012
 
Untangling the web11
Untangling the web11Untangling the web11
Untangling the web11
 
PHP - Programming language war, does it matter
PHP - Programming language war, does it matterPHP - Programming language war, does it matter
PHP - Programming language war, does it matter
 
Php
PhpPhp
Php
 
Free Mongo on OpenShift
Free Mongo on OpenShiftFree Mongo on OpenShift
Free Mongo on OpenShift
 
Am\I\Doing\It\Right? Struktura plików w PHP
Am\I\Doing\It\Right? Struktura plików w PHPAm\I\Doing\It\Right? Struktura plików w PHP
Am\I\Doing\It\Right? Struktura plików w PHP
 
Phpworks enterprise-php-1227605806710884-9
Phpworks enterprise-php-1227605806710884-9Phpworks enterprise-php-1227605806710884-9
Phpworks enterprise-php-1227605806710884-9
 
Untangling spring week1
Untangling spring week1Untangling spring week1
Untangling spring week1
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building Products
 
Php internal architecture
Php internal architecturePhp internal architecture
Php internal architecture
 
Prototyping like it is 2022
Prototyping like it is 2022 Prototyping like it is 2022
Prototyping like it is 2022
 
Introduction to PHP - SDPHP
Introduction to PHP - SDPHPIntroduction to PHP - SDPHP
Introduction to PHP - SDPHP
 
Beginning PHP
Beginning PHPBeginning PHP
Beginning PHP
 
What's the "right" PHP Framework?
What's the "right" PHP Framework?What's the "right" PHP Framework?
What's the "right" PHP Framework?
 
Presentation 1 Web--dev
Presentation 1 Web--devPresentation 1 Web--dev
Presentation 1 Web--dev
 
Enterprise PHP (Zend UK Business Conference)
Enterprise PHP (Zend UK Business Conference)Enterprise PHP (Zend UK Business Conference)
Enterprise PHP (Zend UK Business Conference)
 
Performance Tuning with XHProf
Performance Tuning with XHProfPerformance Tuning with XHProf
Performance Tuning with XHProf
 
Php unit i
Php unit i Php unit i
Php unit i
 

Recently uploaded

Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 

Recently uploaded (20)

Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 

FuelPHP presentation - PeoplePerHour workshop

  • 1. Exploring FuelPHP Why on earth would you do that?
  • 2. Eeeeewwww you use PHP? • Isn’t PHP like… ancient? • Who writes PHP? You know it’s 2012, right?
  • 3. We do! • PeoplePerHour does • Facebook does • Mailchimp does
  • 4. Why PHP • Well established language • Huge community • Great support by hosting providers, docs, libraries, open source projects, frameworks
  • 5. What is FuelPHP? • (H)MVC PHP Framework • PHP 5.3+ up • 100+ Contributors • Best developers from CodeIgniter and others
  • 6. Aren’t there more than enough frameworks? many others…
  • 7. Why is it different • Best ideas from all PHP frameworks combined • Fresh and up to date • Brings new ideas to the table
  • 8. Idea #1 • Out of the box support for NoSQL – Mongo – Redis
  • 9. Idea #2 • Unified static method for getting a class singleton //example:! return View::forge('home/index');!
  • 10. Idea #3 • Utilize PHP namespaces so that the classes can have human readable names echo Form::button('name', 'value’);!
  • 11. Idea #4 • H-­‐MVC Requests: Controllers can be loaded by controllers as widgets if((Request::main() === Request::active()) {! !// this is the main request! } else {! // this is a HMVC request! }!
  • 12. Idea #5 • Routers inside controllers
  • 13. Idea #6 • ViewModels: Even less logic inside views
  • 14. Idea #7 • Provide various types of controllers for templating: – Base – Rest – Template • Support a load of template engines through Parser package: (Mustache, Markdown, Smarty, Twig, Haml, Jade, Dwoo)
  • 15. Idea #8 • Extremely easy installation (copy/paste 2 commands)
  • 16. Idea #9 • Heavily utilize Git(hub) – From installation to packages
  • 17. Why I like it • No camelCase allowed (surprise) • Super fast to learn • I like the guys that are working on it
  • 18. So, is it the best framework? • No.
  • 19. Which PHP framework is the best? • None
  • 20. Exhibit A: Codeigniter • Project I worked on: As a mobile app I would like to send request to a REST API and get JSON – Only 3 things used: Database, Memcache, JSON
  • 21. Exhibit B: FuelPHP • Project I’m working on: As a developer I would like to have a playground project that has no actual use and scope, so I can torture myself during the weekends
  • 22. Choosing a framework is a matter of taste • Choose any framework you want, seriously • Doesn’t mind which one as long as it provides the right tools for the job and you’re building something awesome
  • 23. But the benchmarks… • Screw the benchmarks • It’s not all about how many requests per second a framework can handle • MVC is slower than plain PHP anyway
  • 24. Where can I find more info? • fuelphp.org – @fuelphp • Phil Sturgeon – philsturgeon.co.uk -­‐ @philsturgeon • Dan Horrigan – dh.io -­‐ @dhorrigan • Jelmer Schreuder – jelmerschreuder.nl -­‐ @jelmer_fuel
  • 26. What is your weapon of choice? • Thanks