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 bett...
Search
Sebastian
June 05, 2017
Technology
0
180
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
95
LiveBook all the things
sgoettschkes
0
110
Bullseye: An introduction to Dart
sgoettschkes
1
220
Reallife experience with Dart
sgoettschkes
0
130
Level up your Bot with Watson
sgoettschkes
0
140
Bullseye - An introduction to Dart
sgoettschkes
1
760
Let's automate stuff with Ansible
sgoettschkes
0
460
Let's automate stuff with Ansible
sgoettschkes
1
460
Building cllctr
sgoettschkes
0
180
Other Decks in Technology
See All in Technology
今日から始めるAmazon Bedrock AgentCore
har1101
4
330
Application Performance Optimisation in Practice (60 mins)
stevejgordon
0
110
データ民主化のための LLM 活用状況と課題紹介(IVRy の場合)
wxyzzz
2
620
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
130
Tebiki Engineering Team Deck
tebiki
0
23k
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
950
Vitest Highlights in Angular
rainerhahnekamp
0
130
2人で作ったAIダッシュボードが、開発組織の次の一手を照らした話― Cursor × SpecKit × 可視化の実践 ― Qiita AI Summit
noalisaai
1
350
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.2k
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
370
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
2
1.7k
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
270
Featured
See All Featured
The Language of Interfaces
destraynor
162
26k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
110
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
200
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Side Projects
sachag
455
43k
Documentation Writing (for coders)
carmenintech
77
5.2k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
130
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
370
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
430
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