Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Past, Present, and Future: The Evolution of PHP...
Search
fwdays
November 18, 2014
Programming
850
0
Share
Past, Present, and Future: The Evolution of PHP Development. Nate Abele
fwdays
November 18, 2014
More Decks by fwdays
See All by fwdays
Symfony best practices и не только Олег Зинченко
fwdays
0
2.1k
Beyond Testing Михаил Боднарчук
fwdays
0
850
Yii2 - на пути от Alpha до GA. Взгляд с практической стороны Александр Бордун
fwdays
0
1.9k
Laravel 4: простота во всем. Евгений Косинский
fwdays
0
1k
Маленькая библиотека для большой компании. Антон Шевчук
fwdays
0
3.9k
Phalcon. Что нового? Александр Торош
fwdays
0
1.2k
Выбираем поисковик умом головы. Андрей Аксенов
fwdays
0
1.5k
Функциональный тулчейн Nix
fwdays
1
500
N2O самый мощный Erlang Web Framework
fwdays
0
4.5k
Other Decks in Programming
See All in Programming
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
140
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
750
要はバランスからの卒業 #yumemi_grow
kajitack
0
200
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
310
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.2k
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
220
横断組織出身のQAEがインプロセスQAEでつまずいたこと・活かせたこと
ty89
0
460
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
11
3k
GitHub Copilot CLIのいいところ
htkym
2
1.2k
Oxlintはいかにしてtsgolintのlint ruleを呼び出しているのか
syumai
2
1k
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.2k
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
100
Featured
See All Featured
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
540
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
330
4 Signs Your Business is Dying
shpigford
187
22k
Bash Introduction
62gerente
615
210k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
520
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
420
Heart Work Chapter 1 - Part 1
lfama
PRO
7
36k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2k
Six Lessons from altMBA
skipperchong
29
4.3k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
Past, Present, and Future The Evolution of PHP Development November
15th — Kyiv, Ukraine Nate Abele Radify, Inc @nateabele
[email protected]
The Vanity Slide • Former lead developer, CakePHP • Founder,
Li3 (a.k.a. Lithium) • Member, AngularUI team • Lead Developer, AngularUI Router • Architect-in-Chief, Radify • Highly opinionated, sometimes right • @nateabele /
[email protected]
Consulting · Training · Development http://radify.io
“It’s difficult to make predictions, especially about the future.” —
Niels Bohr
“Americans have no past and no future. They live in
an extended present.” — Alexis de Tocqueville
“Americans have no past and no future. They live in
an extended present.” — Alexis de Tocqueville Programmers
Why study the past?
2000 — 2004 • Smarty • PEAR • Web Application
Component Toolkit
2005 — 2008 • CakePHP • …etc.
2009 — 2012 • Li3 (Lithium) • Symfony 2 /
Symfony Components • Composer / Packagist
2011 — 2013 • AngularJS • EmberJS • BackboneJS •
etc.
2013 — 2014 • HackLang • ReactPHP / Ratchet
Trends • Real-time • Mobile • Apps: mobile + web
+ desktop • More all the things
Back to basics
Back to basics • What makes PHP great? • How
do we do our jobs?
PHP • Simple, get moving quickly • Large community /
talent pool • Mature, good resources • Many high-quality tools
Our Jobs http://blog.ircmaxell.com/search/label/Beyond
Our Jobs Data Data Data Data Data UI UI UI
UI UI
Our Jobs Data Data Data Data Data UI UI UI
UI UI PHP
Our Jobs Data Data Data Data Data UI UI UI
UI UI PHP
Our Jobs Data Data Data Data Data UI UI UI
UI UI PHP
Architecture vs. Engineering
How should we code? • One part of one problem
How should we code? • One part of one problem
• Composable • Clean boundaries
https://destroyallsoftware.com/talks/boundaries
Frameworks?
https://www.youtube.com/watch?v=WpkDN78P884
• Libraries • Design conventions Frameworks?
• Libraries • Design conventions Frameworks?
Where to go from here? • Better tools for working
efficiently with large datasets • Better tools for designing hypermedia systems • Functional programming concepts
Thanks! •
[email protected]
• @nateabele
Bonus
Programming is not math!?!?
x2 + 10x = 39 vs. http://worrydream.com/MediaForThinkingTheUnthinkable/ Programming is not
math!?!?
“Language is a user interface for ideas.”
Writing unit tests sucks
Set Theory: Domains { Set } => f(x) => {
Domain }
Set Theory: Domains { Internet } => OpenSSL(x) => {
… … }
Set Theory: Domains { Internet } => Bash(x) => {
… … }
Thanks! •
[email protected]
• @nateabele