Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Perlの生きのこり - YAPC::Fukuoka 2025
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kenta Kobayashi
November 15, 2025
Technology
2.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Perlの生きのこり - YAPC::Fukuoka 2025
Kenta Kobayashi
November 15, 2025
More Decks by Kenta Kobayashi
See All by Kenta Kobayashi
プロジェクトの空気を読んで開発してくれるPerlのAIツールがほしい
kfly8
2
1.1k
Perlの生きのこり - エンジニアがこの先生きのこるためのカンファレンス2025
kfly8
4
3.3k
Tシャツに書かれたコードを読む
kfly8
0
1.5k
Introduce Sub::Meta
kfly8
0
110
研修はイベントでなくコミュニティ作り
kfly8
0
2.3k
明日からできる新人のオンボーディングガイド
kfly8
0
930
メンター成長のためのふりかえり会
kfly8
0
1.5k
Interfaces in Perl5 at The Perl Conference 2019 in Pittsburgh
kfly8
0
3.4k
経験から効率よく学習する
kfly8
0
490
Other Decks in Technology
See All in Technology
EventBridge に「合流」はない ― サーバーレスのワークフローを育てるということ / No Join in EventBridge
yusukeshimizu
2
550
技術的負債から考える、AI時代のエンジニアリング投資 — ビズリーチの技術的負債と向き合った経験から、変更し続けられるソフトウェアを考える/ technical-debt-con2026
visional_engineering_and_design
4
3.8k
手を動かして実感する、Kiro が変える開発体験
inariku
0
320
サーバーレスをどこまで使う? WebRTC対戦ゲームで選んだVPSとの共存設計
kaidouji85
0
440
ボードゲームの遊び相手をFoundation Modelsで作る / iOSDC Japan 2026
genda
0
190
【ゲームメーカーズスクランブル2026】『Shadowverse: Worlds Beyond』UIとアニメーションで実現する最高のユーザー体験を叶えるプロトタイピング
cygames
PRO
1
480
Kiro Meetup #8 Kiro アップデート (2026/3/21〜2026/9/24)
katzueno
1
230
Hermes Agentで、AIが調べて記事を書くブログを作った話
blueb
0
110
AgentCore Runtime上にAgentic Coding基盤を構築・展開する際の設計ポイントと限界点 / Design considerations and limitations when building an agentic coding platform on AgentCore Runtime
har1101
6
760
AWS FinOps Agent 結局何が得意なの?
siromi
0
170
3人で1000GPU超を統合運用する?マルチクラウド&オンプレを跨ぐ、構築と運用のリアル!
kazukun0716
1
140
品質と信頼性を地続きにする
grimoh
2
1k
Featured
See All Featured
It's Worth the Effort
3n
188
29k
The SEO Collaboration Effect
kristinabergwall1
1
570
Unsuck your backbone
ammeep
672
58k
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
Deep Space Network (abreviated)
tonyrice
0
320
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
530
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Paper Plane
katiecoart
PRO
4
53k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
WCS-LA-2024
lcolladotor
0
830
Transcript
Perlの⽣きのこり YAPC::Fukuoka 2025 1
本発表の楽しみ⽅ 「懐かしい〜」「そんなことがあったのか〜」とコメント。 各時代で変化した事よりも、そのキッカケや背景に注⽬ 2
キリ番Get お題は BBS 3
令和最新Perl製BBSはコチラ👇 https://yapc-fukuoka-bbs.kobaken.co 記念カキコ! 4
⾃⼰紹介 • わいとん - @ytnobody • 最近のようす ◦ YAPC::Hakodate 2024
実⾏委員⻑ ◦ YAYAPC::Hiroshima 2024 司会 ◦ NT函館にて某仮装⼤賞の審査員⽤ボタンや 某⽶国横断クイズ番組のオマージュ品を展⽰ • 普段のようす ◦ 合同会社Y.pmの代表。4期⽬、やってます。 ◦ バックエンドエンジニアもやってます。 5
⾃⼰紹介 • kobaken a.k.a @kfly8 • 経歴 ◦ YAPC::Hiroshima 2024
実⾏委員⻑ ◦ YAYAPC::Hiroshima スポンサー ◦ 元Japan Perl Association理事 ◦ 元エンジニア組織開発責任者 • 現在 ◦ 個⼈事業主 ◦ 9歳と1歳の娘の⽗ 6
1990年頃 CGI 7
1990年頃 ‒ CGI • リクエスト受け、プロセス起動 ◦ 必要な時だけリソースを利⽤ ◦ ある種、今どき ◦
AWS Lambda, Cloudflare Workers • デプロイ簡単 ◦ ftpでファイルを置く ◦ 実⾏権限つける • すごく⼿軽 8
書籍もたくさん。⼤流⾏。 9
2000年初期 mod_perl 10
CGI リクエスト時にプロセス起動 複雑な要件🙅 mod_perl プロセスを常駐化しリクエストを待つ 複雑な要件🙆 11
Webアプリケーションフレームワークが続々と 課題 • 複雑なルーティング • データベース処理 • テンプレート • 認証認可
• Catalyst • Jifty • Ruby on Rails (2005) 12
Webサーバーも続々と‧‧ • Apache • lighttpd • nginx • … 13
乱⽴するフレームワークとサーバー Catalyst CGI::Application フレームワーク Jifty Mojo Apache lighttpd nginx HTTP::Server::Simple
サーバー 14
2009年ころ PSGI/Plack 15
PSGI/Plack • PSGI=Perl Web Server Gateway Interface • Plack =
PSGIの実装 • WSGI (Python )/Rack (Ruby) の後発 • フレームワーク、サーバーが PSGIを満たせば、⼊れ替え可 • →秩序を保ち、多様性を持てる Catalyst CGI::Application フレームワーク Jifty Mojo Apache lighttpd nginx HTTP::Server::Simple サーバー PSGI 16
現代っぽくなった 17
時は遡り、2005年 18
プロダクトはより複雑に。⾔葉にならない問題。 「⾃分の環境だと再現しない…」 「デプロイしたら、壊れた…」 「この処理どうなってるの?」 「この機能使いにくいらしい…」 19
問題の発⾒。⾔語化。 • 環境構築 → 依存モジュール管理、コンテナ化 • 未然の問題検知 → ⾃動テスト、CI、静的解析 •
プロダクトの複雑化 →コードの責務分割、宣⾔的に ◦ ⇒SOLID原則、OOP、関数型ドメインモデリング • ユーザー体験、インタフェース設計、アクセシビリティ • ⇒プログラミング⾔語限らず今も私達が向き合ってる問題 20
「あの時に戻ったら何を開発するか?」 21
2011年初頭 Carton 22
Carton • 依存モジュールの管理 ◦ 同⼀環境作りやすく ◦ バージョンが不意に変わって壊れない • 多⾔語なら ◦
Bundler(Ruby), Go Modules(Go), Cargo (Rust) ◦ 今は⾔語標準でつく時代 • 今でこそ、当たり前 23
@miyagawa • ロックスター • 今の当たり前を作ってる • カッコイイ 24
感想‧質問どうぞ👇 https://yapc-fukuoka-bbs.kobaken.co キリ番Get 前半パートおしまい 25
複雑化するプロダクトに Perlはどう⽴ち向かってる? 26
• プログラミング⾔語⾃⾝も変化する ◦ 例:ES5の”use strict” ◦ 例:ES6のclass構⽂導⼊。プロトタイプが隠蔽 • プラクティスも変化する ◦
var → let, const ◦ 例:可変な変数より不変な変数 • 「変化のための痛みは⽌む得ないのか?」 27
複雑化するプロダクトにPerlはどう⽴ち向かってる? ⾼い後⽅互換性を保ちつつ、変化できる柔軟性 “Historically, we've held ourselves to a far higher
standard than backward-compatibility -- bugward-compatibility.” 28
Perlの変化例: オブジェクト指向プログラミング Perlは、OOPをあとづけ。 ⼤昔:リファレンスとパッケージを紐づける bless→素朴だが、多重継承, 中⾝を触れる 昔:MooseなどのMeta Object Programmingに対応したOOPライブラリを 活⽤
今:builtin class。単⼀継承, 中⾝を触れら れないなど現代のOOPに 29
令和最新Perlの変化の背景 • builtin class、try/catch、isaなど続々拡張。 • その背景は、keyword plugin ◦ コンパイルフェーズでキーワードにフック。OPツリーを書き換える術 ◦
PEVANS⽒らによる v5.12 (2010年)での仕込み ◦ Corinnaでデザイン ⇒ Object::Pad でPoC。⇒ builtin class • →互換性を保ちつつ現代的なプラクティスを検証、実装 30
杜甫々 “実はフレームワークに頼るのはあまり好きじゃなくて。なにか を使っていてもすぐに陳腐化したり、依存パッケージが多過ぎて サポートが切れるものが出てきたり。あとは、バージョンアップ の追従にコストがかかったりとか、なかなかちょっと⼤変なの で、シンプルなものだったら、あまり使わなくてもいいんじゃな いのかなというところもあります。 そもそもOSSのサポート期間が短いと思うんですよね。これは 「endoflife.date」というサイトで、いろいろなOSSのサポート 状況が⾒ることができるんですが、短いといっても若いみなさん
からの2、3年は⻑いんですが、私らから⾒た2、3年はメチャク チャ短いので。” YAPC::Hiroshima 2024 キーノートより 31
2007 iPhone 32
市場きっかけの変化 • 2007年 iPhone 販売開始(国内は2008年) • 2010年 国内4G開始 • →
UXUI要求が⼤きく変化 ◦ サーバープログラミングでは、インタラクション困難 ◦ モバイルクライアントが⼤規模化。クライアント、サーバの境界定義 33
2022年11⽉30⽇ ChatGPT 34
今後はどうなるだろうか? • 2022年11⽉ ChatGPT • ⽣成AIで、⽣活は様変わり • 今、⾔葉にできていない問題は? ◦ ⇒
話しましょう!技術コミュニティの価値のひとつ • Perlであれば ◦ 新旧様々な書き⽅をLLMsは学習 ⇒良し悪しは? 35
⾃分たちができることは? PEVANS “Perlをもっとよくしていくには、公開されている機能をギ リギリまで使い倒して、できる⼈たちに『そんな無茶なやり ⽅よりもっといい⽅法がある』と⾔わせるといい” London Perl Workshop 2016 /
Charsbar::Note より 36
まとめ‧感想 • Perlを軸としつつ、1990年代からの変化を辿りました ◦ CGI → すごく⼿軽 ◦ PSGI/Plack →
秩序を保ちつつ、多様性を持てる ◦ Perlの⽂法拡張 →互換性を保ったまま⾔語拡張する仕組み • 要求レベル、重⼼の変化はあれど、変更を容易に、スケー ル、UXUI、チーム開発など引き続きやっていき! 37
感想‧質問‧ベストトークの投票待ってます。 https://yapc-fukuoka-bbs.kobaken.co このスレッドは1000を超えました。 38