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
FR Lithium meetup #1
Search
Mehdi Lahmam B.
October 02, 2012
Programming
2
180
FR Lithium meetup #1
"Unsucking your PHP development with Lithium" talk at the first french Li3 meetup
Mehdi Lahmam B.
October 02, 2012
Tweet
Share
More Decks by Mehdi Lahmam B.
See All by Mehdi Lahmam B.
Possible to measure developer productivity?
mehlah
0
41
PG FDW FTW
mehlah
0
160
Product culture
mehlah
0
62
OpenAPI and AsyncAPI specifications as contracts
mehlah
0
650
Technical Debt
mehlah
1
280
Data informed growth
mehlah
0
220
Serverless Ruby and AWS Lambda
mehlah
0
160
Middleware all the things
mehlah
2
850
Confident refactors
mehlah
1
120
Other Decks in Programming
See All in Programming
MCP連携で加速するAI駆動開発/mcp integration accelerates ai-driven-development
bpstudy
0
220
DynamoDBは怖くない!〜テーブル設計の勘所とテスト戦略〜
hyamazaki
0
150
型で語るカタ
irof
2
910
Advanced Micro Frontends: Multi Version/ Framework Scenarios
manfredsteyer
PRO
0
130
202507_ADKで始めるエージェント開発の基本 〜デモを通じて紹介〜(奥田りさ)The Basics of Agent Development with ADK — A Demo-Focused Introduction
risatube
PRO
6
1.3k
DMMを支える決済基盤の技術的負債にどう立ち向かうか / Addressing Technical Debt in Payment Infrastructure
yoshiyoshifujii
5
700
대규모 트래픽을 처리하는 프론트 개발자의 전략
maryang
0
110
リバースエンジニアリング新時代へ! GhidraとClaude DesktopをMCPで繋ぐ/findy202507
tkmru
6
1.7k
テスターからテストエンジニアへ ~新米テストエンジニアが歩んだ9ヶ月振り返り~
non0113
2
250
DatadogのArchived LogsをSnowflakeで高速に検索する方法(Archive Searchでオワコンにならないことを祈って) / How to search Datadog Archived Logs quickly with Snowflake (hoping Datadog Archive Search doesn’t make this obsolete)
civitaspo
0
100
Gemini CLIの"強み"を知る! Gemini CLIとClaude Codeを比較してみた!
kotahisafuru
3
850
構造化・自動化・ガードレール - Vibe Coding実践記 -
tonegawa07
0
160
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Designing for Performance
lara
610
69k
Being A Developer After 40
akosma
90
590k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building an army of robots
kneath
306
45k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
RailsConf 2023
tenderlove
30
1.2k
Transcript
UNSUCKING YOUR PHP DEVELOPMENT WITH LITHIUM MEHDI LAHMAM B. @mehlah
I’m Mehdi
MVC Architecture Model View Controller
Model Database
Model Database Web API
Model Database Web API Payment
<html> View
<html> View <xml>
<html> View <xml> {json}
<html> View <xml> {json} ...
MVC Architecture Model View Controller
MVC Architecture Model View Controller /books/show/26 Database Browser
Why Lithium ?
Why Lithium ? or any other worthy framework
Why Lithium ? or any other worthy framework THIS IS
NOT A RELIGION* *only awesomeness
Organization Why Lithium ?
A fresh Lithium app
Organization Good Practices Why Lithium ?
Organization Good Practices Tools Why Lithium ?
Organization Good Practices Tools Community Why Lithium ?
Organization Good Practices Tools Community You Why Lithium ?
Getting hands dirty
Sorry slide viewers :( It was a live coding session
We built a basic CRUD app for managing books
None
None
URLs routing http://yourapp.com/books/hello/1 /:controller/:action/:id
http://yourapp.com/books/hello/1 /:controller/:action/:id app/controllers/BooksController.php class BooksController
http://yourapp.com/books/hello/1 /:controller/:action/:id app/views/books/hello.html.php
None
http://lithify.me