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
Perlの生きのこり - YAPC::Fukuoka 2025
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kenta Kobayashi
November 15, 2025
Technology
0
1.7k
Perlの生きのこり - YAPC::Fukuoka 2025
Kenta Kobayashi
November 15, 2025
Tweet
Share
More Decks by Kenta Kobayashi
See All by Kenta Kobayashi
プロジェクトの空気を読んで開発してくれるPerlのAIツールがほしい
kfly8
2
670
Perlの生きのこり - エンジニアがこの先生きのこるためのカンファレンス2025
kfly8
4
2.9k
Tシャツに書かれたコードを読む
kfly8
0
1.4k
Introduce Sub::Meta
kfly8
0
92
研修はイベントでなくコミュニティ作り
kfly8
0
2.1k
明日からできる新人のオンボーディングガイド
kfly8
0
870
メンター成長のためのふりかえり会
kfly8
0
1.4k
Interfaces in Perl5 at The Perl Conference 2019 in Pittsburgh
kfly8
0
3.2k
経験から効率よく学習する
kfly8
0
460
Other Decks in Technology
See All in Technology
22nd ACRi Webinar - ChipTip Technology Eric-san's slide
nao_sumikawa
0
100
OpenShiftでllm-dを動かそう!
jpishikawa
0
140
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
850
Cosmos World Foundation Model Platform for Physical AI
takmin
0
980
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
200
AWS Network Firewall Proxyを触ってみた
nagisa53
1
250
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
780
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
680
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.7k
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
190
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
420
私たち準委任PdEは2つのプロダクトに挑戦する ~ソフトウェア、開発支援という”二重”のプロダクトエンジニアリングの実践~ / 20260212 Naoki Takahashi
shift_evolve
PRO
2
210
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
460
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.7k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
140
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Producing Creativity
orderedlist
PRO
348
40k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
110
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
89
Fireside Chat
paigeccino
41
3.8k
Making Projects Easy
brettharned
120
6.6k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
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