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 Development. Nate Abele
Search
fwdays
November 18, 2014
Programming
0
670
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
1.9k
Beyond Testing Михаил Боднарчук
fwdays
0
650
Yii2 - на пути от Alpha до GA. Взгляд с практической стороны Александр Бордун
fwdays
0
1.6k
Laravel 4: простота во всем. Евгений Косинский
fwdays
0
860
Маленькая библиотека для большой компании. Антон Шевчук
fwdays
0
3.7k
Phalcon. Что нового? Александр Торош
fwdays
0
960
Выбираем поисковик умом головы. Андрей Аксенов
fwdays
0
1.2k
Функциональный тулчейн Nix
fwdays
1
380
N2O самый мощный Erlang Web Framework
fwdays
0
4.2k
Other Decks in Programming
See All in Programming
Some Quick Ideas To Improve Your Tests ( #jassttokyo )
teyamagu
PRO
2
2.3k
DDDはなぜ難しいのか / 良いコードの定義と設計能力の壁
pospome
25
7.6k
The Future of C++ Interoperability: Insights from Porting a Game to Swift
teamhimeh
0
290
とにかくHTTP3をライトニングに話す / Anyway, I'll talk to Lightning about HTTP3.
seike460
PRO
0
120
Parallel Socket Communication in Swift
s_shimotori
0
260
実践!RDRAを活用した既存システムの仕様変更 / Specification Changes in Existing Systems Utilizing RDRA
imamotohikaru
0
2.8k
脱・初心者!脱・マネコン!AWS CDKを使ってみませんか!?
har1101
0
180
Understanding Ast By Looking
inouehi
0
120
オブジェクト指向コードレビューの新しいアプローチ
akkie76
3
1.6k
デザインシステムで Tailwind CSSとCSS in JSに分散投資をしたら良かった話
fsubal
14
3.5k
WinUI 3デモ - "CommunityToolkit.Mvvm"NuGetパッケージ編
andrewkeepcoding
0
140
Ruby製社内ツールのGo移行
bgpat
2
270
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
27
6.3k
Fireside Chat
paigeccino
19
2.6k
How to name files
jennybc
62
92k
Code Review Best Practice
trishagee
54
15k
BBQ
matthewcrist
78
8.7k
The Illustrated Children's Guide to Kubernetes
chrisshort
28
46k
The Invisible Customer
myddelton
114
12k
How GitHub (no longer) Works
holman
301
140k
Bash Introduction
62gerente
604
210k
Automating Front-end Workflow
addyosmani
1353
200k
Documentation Writing (for coders)
carmenintech
59
3.8k
Clear Off the Table
cherdarchuk
82
310k
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