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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
fwdays
November 18, 2014
Programming
0
820
Past, Present, and Future: The Evolution of PHP Development. Nate Abele
fwdays
November 18, 2014
Tweet
Share
More Decks by fwdays
See All by fwdays
Symfony best practices и не только Олег Зинченко
fwdays
0
2.1k
Beyond Testing Михаил Боднарчук
fwdays
0
820
Yii2 - на пути от Alpha до GA. Взгляд с практической стороны Александр Бордун
fwdays
0
1.9k
Laravel 4: простота во всем. Евгений Косинский
fwdays
0
1k
Маленькая библиотека для большой компании. Антон Шевчук
fwdays
0
3.8k
Phalcon. Что нового? Александр Торош
fwdays
0
1.2k
Выбираем поисковик умом головы. Андрей Аксенов
fwdays
0
1.5k
Функциональный тулчейн Nix
fwdays
1
490
N2O самый мощный Erlang Web Framework
fwdays
0
4.5k
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
490
AIに任せる範囲を安全に広げるためにやっていること
fukucheee
0
130
Unity6.3 AudioUpdate
cova8bitdots
0
120
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
15
3k
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
940
最初からAWS CDKで技術検証してもいいんじゃない?
akihisaikeda
4
130
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
2
550
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
810
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
150
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
390
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
730
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
210
Featured
See All Featured
Balancing Empowerment & Direction
lara
5
940
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Color Theory Basics | Prateek | Gurzu
gurzu
0
240
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Raft: Consensus for Rubyists
vanstee
141
7.4k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Facilitating Awesome Meetings
lara
57
6.8k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
530
Rails Girls Zürich Keynote
gr2m
96
14k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
GraphQLの誤解/rethinking-graphql
sonatard
75
11k
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