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
A State of PHP in 2020
Search
Konrad Alfaro
February 12, 2020
Programming
0
450
A State of PHP in 2020
Konrad Alfaro
February 12, 2020
Tweet
Share
More Decks by Konrad Alfaro
See All by Konrad Alfaro
Finding lost features - How NOT to build mazes and complexity
radnok
0
240
Tablice zostawmy Mojżeszowi - czyli o strukturach danych w PHPie
radnok
0
270
Sylius as an Infrastructure
radnok
0
170
Tablice zostawmy Mojżeszowi
radnok
1
340
Framework Agnostic
radnok
0
470
PHP & GraphQL - Will it blend?
radnok
0
190
Other Decks in Programming
See All in Programming
What is Parser
yui_knk
9
4.1k
[DroidKaigi 2024] Android ViewからJetpack Composeへ 〜Jetpack Compose移行のすゝめ〜 / From Android View to Jetpack Compose: A Guide to Migration
syarihu
1
550
XStateでReactに秩序を与えたい
gizm000
0
730
Architecture Decision Record (ADR)
nearme_tech
PRO
1
680
GraphQLの魅力を引き出すAndroidクライアント実装
morux2
3
540
Go Code Generation at newmo / 2024-08-27 #newmo_layerx_go
genkey6
0
560
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
270
Rubyとクリエイティブコーディングの輪の広がり / The Growing Circle of Ruby and Creative Coding
chobishiba
1
270
実践!難読化ガイド
mitchan
0
160
仮想ファイルシステムを導入して開発環境のストレージ課題を解消する
segadevtech
2
540
Using Livebook to build and deploy internal tools @ ElixirConf 2024
hugobarauna
0
250
Prolog入門
qnighy
4
1k
Featured
See All Featured
Designing the Hi-DPI Web
ddemaree
278
34k
Ruby is Unlike a Banana
tanoku
96
11k
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
Making Projects Easy
brettharned
113
5.8k
How GitHub (no longer) Works
holman
310
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
24
610
KATA
mclloyd
27
13k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
89
16k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
The World Runs on Bad Software
bkeepers
PRO
64
11k
Adopting Sorbet at Scale
ufuk
73
8.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
1
48
Transcript
A state of PHP in 2020 BetterCollective Ciasteczka #4 -
Dev Meetup
Konrad Alfaro Software Developer @ BetterCollective
None
None
Thank you! github.com/RadnoK twitter.com/RadnoK_ radnok.com
None
Jokes aside
The (sad) past
Low entry level PHP
None
None
None
~ Już na pewno NIE mój kolega
None
None
None
github.com/google/tink/issues/104#issuecomment-417512050
None
It’s simple!
None
None
None
roots.io
None
< 7.0
Versioning
None
OOP, Dynamic types only…
Current problems
Standard PHP Library functions
Standard PHP Library functions SPL for short*
Standard PHP Library functions SPL for short*
array_map( callable $callback, array $array1 [, array $... ] )
: array array_filter( array $array [, callable $callback [, int $flag = 0 ]] ): array
array_map( callable $callback, array $array1 [, array $... ] )
: array array_filter( array $array [, callable $callback [, int $flag = 0 ]] ): array
phpsadness.com
Modern times
Language itself
PHP 7.x
None
Fancy and cool features
Type-hints / Return types!
None
None
Arrow functions!
None
None
Null coalescing assignment operator
Array spread operator
And many more…
Yes, we know that others have it for a long
time…
But we are getting there, too!
Dependencies
None
Ich LIBe Dich
None
None
None
None
composer.json composer.lock
None
Frameworks
None
None
❤
There is something slightly similar…
None
•Both like Annotations, YAMLs •Use separate fully-featured ORM •Is based
on Components
But it’s (not) a full-stack framework!
None
None
But wait! There is something similar…
None
•Model View Controller (MVC) •ActiveRecord pattern for ORM •Authorization out
of the box •Full-stack framework •Magic…
None
And others…
None
None
None
But we’ve got more!
eCommerce world
⚡
None
Tools
None
blog.jetbrains.com/phpstorm/category/ php-annotated-monthly/
None
None
None
Libraries
Static Code Analysis
Yup, we do that
github.com/exakat/php-static-analysis-tools
Event-Driven in PHP?
Yup, we do that
reactphp.org
Serverless?
Yup, we do that
github.com/brefphp/bref
Tests?
Yeah, we do that too!
None
None
Event Sourcing, CQRS etc.
I’ve got a Prooph
github.com/prooph
Machine Learning?
Yup, even that
github.com/php-ai/php-ml
⭐ Standards?
Hell, YES!
None
None
None
None
None
PHP around us
None
None
None
None
Well, no longer…
None
gist.github.com/nikcub/3833406
None
Well, no longer…
HHVM & Hack
HipHop Virtual Machine
<?hh Hack Language
None
Implemented in PHP! Implemented in PHP!
Implemented in PHP! We are still waiting… Implemented in PHP!
PHP 7.4 kicks in!
None
None
None
Community
Meet-ups
None
None
None
❤
None
None
Conferences
2019… and more…
confs.tech/php
Online
None
None
None
None
Last thoughts
twitter.com/akrabat/status/1223214852191268865
PHP is just a tool. Like any other tool, it
can be used in a bad or a good way.
Thank you! github.com/RadnoK twitter.com/RadnoK_ radnok.com
PS. Rekrutujemy BetterCollective bettercollective.com/career