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
How learning Python/Dart/Clojure made me a better PHP Developer
Search
Sebastian
June 05, 2017
Technology
0
84
How learning Python/Dart/Clojure made me a better PHP Developer
Sebastian
June 05, 2017
Tweet
Share
More Decks by Sebastian
See All by Sebastian
LiveView goes k6
sgoettschkes
0
10
LiveBook all the things
sgoettschkes
0
27
Bullseye: An introduction to Dart
sgoettschkes
1
130
Reallife experience with Dart
sgoettschkes
0
86
Level up your Bot with Watson
sgoettschkes
0
77
Bullseye - An introduction to Dart
sgoettschkes
1
670
Let's automate stuff with Ansible
sgoettschkes
0
260
Let's automate stuff with Ansible
sgoettschkes
1
260
Building cllctr
sgoettschkes
0
88
Other Decks in Technology
See All in Technology
DevIO2024_レガシー運用からの脱却 -クラウド活用の実践事例とベストプラクティス-
jun2882
0
210
簡単に始めるSnowflakeの機械学習
nayuts
1
190
ACRiルーム最新情報とAMD GPUサーバーのご紹介
anjn
0
150
Luupの開発組織におけるインシデントマネジメントの変遷 ver.RoadtoSRENEXT2024
grimoh
1
270
Classmethod流のPlatform Engineering / classmethod-platform-engineering-devio2024
tomoki10
0
470
テスト・設計研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
170
エンジニアの生存戦略 〜クラウド潮流の経験から紐解く技術トレンドのメカニズムと乗りこなし方〜
shimy
9
1.9k
AOAI Dev Day - Opening Session
yoshidashingo
2
440
テストケースの自動生成に生成AIの導入を試みた話と生成AIによる今後の期待
shift_evolve
0
180
20240717_イケコパ代表Copilot_in_Teams会社でこう使ってます
ponponmikankan
2
430
Amazon FSx for NetApp ONTAPのパフォーマンスチューニング要素をまとめてみた #cm_odyssey #devio2024
non97
0
220
【基調講演】変える、今ここから ― IoTとAIで紡ぐ未来
soracom
PRO
0
320
Featured
See All Featured
Docker and Python
trallard
37
2.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
325
21k
5 minutes of I Can Smell Your CMS
philhawksworth
200
19k
Robots, Beer and Maslow
schacon
PRO
157
8.1k
Writing Fast Ruby
sferik
623
60k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
149
45k
Creatively Recalculating Your Daily Design Routine
revolveconf
214
11k
Producing Creativity
orderedlist
PRO
340
39k
How to train your dragon (web standard)
notwaldorf
79
5.5k
The Cult of Friendly URLs
andyhume
75
5.9k
Build your cross-platform service in a week with App Engine
jlugia
227
17k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
Transcript
How learning Python/Dart/Clojure made me a better PHP Developer ViennaPHP
May 2017 @Sgoettschkes https://stocksnap.io/photo/LTB7BB80VH
CODE
CODE (Almost)
None
A developer is born
A developer is born 1. Write crappy PHP “webapp” 2.
Make every mistake possible, including wiping production data without a backup 3. Learn Java 4. Write better PHP
A developer is born <?php // login.php require_once(‘header.php’); // ...
some php ?> <!-- some HTML --> <?php require_once(footer.php’); ?>
A developer is born
A developer is born
A developer is born
Let’s talk languages
PHP from the outside • Javas little brother • Death
by boilerplate
JS from the outside • Callback hell • Many solutions
to one problem • So many small libraries
Python from the outside • Getting things done • BIG
libraries/frameworks
Dart from the outside • Modern (built from scratch) •
Async by default • Small ecosystem
Clojure from the outside • Done is better than perfect
• First “useable” functional language for me • Libraries, not frameworks
Learn from each other
Learn from Python Readability: if variable is not null: doSomething()
else: doSomethingElse()
Learn from Python Readability: with open(file.txt', 'w') as file: file.write(Hello
ViennaPHP!')
Make common tasks easy: // Constructor ClassName(this.var1, this.var2); Learn from
Dart
Make common tasks easy: // Implicit getters/setters print(obj.var1); //this is
not a public property Learn from Dart
Learn from Clojure Immutability: var1 = 15; var1++;
Learn from Clojure Composability: (defn function1 [var1 var2] (str var1
″ - ″ var2))
Learn from Clojure Composability: (defn function2 [var1] (println (function1 ″DEBUG″
var1)))
Learn from Clojure Syntax doesn’t matter: (defn function2 [var1] (println
(function [] {:var1 (function2)})))
Not only languages • Infrastructure (vagrant / docker) • Architecture
(Microservices) • Methodology (Agile/Scrum/Kanban) • ...
Let’s GO Start a pet project
Let’s GO Contribute to Open Source
Let’s GO Use something new for a small project
Let’s GO Small steps get you closer to your goal
None
https://www.dropbox.com/s/6z5aiwa8l09g2pa/86H.jpg