SlideShare a Scribd company logo
1 of 113
Download to read offline
1
0から学んだ
ポストモダン
Perl
YAPC::Asia Tokyo 2013
グニャラくん
(末永 匡)
Perlについて
ほとんど知らない
この僕が
2
社内用Web
アプリケーション
フレームワークを
作ることになって
3
いろいろ
壁に
ぶち当たりつつも
4
Perl
mongerに
近づけたお話
5
本発表の概要
• 前半
「俺が考えるWebアプリケーションフ
レームワークとは」
• 後半
「酒と泪と俺とPerl」
6
7
自己紹介
8
自己紹介
• グニャラくん
• 「東横イン評論家」
でGoogle検索1位
9
まともに
Perl
書いたこと
なかった
10
Perlのイメージ
11
Perlといえば(1)
12
Perlといえば(2)
13
そんな僕が
いまや
14
GitHub認定?
• Perl monger?
• 単なる
Old style
engineer
15
なぜか?
16
Perlを
使う会社に
転職したから
17
所属
• 株式会社ディー・エヌ・エー
• ソーシャルゲーム開発部門に所属
• 海外向けソーシャルゲーム開発部署に配属
18
ある日
指令が
下った
19
20
国内向けWeb
ソーシャルゲーム
を海外移植せよ
Web S.G.の移植
• DeNA社内Webアプリケーション
フレームワーク MobaSiF
• 2003年から稼働
• たくさんのゲームがMobaSiF上で稼働
21
MobaSiF
• /home/xxxx/以下の固定パス
• Apacheが動作していることが前提
• 職人芸的mod_rewrite
• ゲーム・プラットフォーム・フレーム
ワークが密結合
22
海外向けに
単一のゲームだけ
切り出すのは
面倒だな…
23
さらに
困難な
事情が
24
日本ローカル
• ベトナム人エンジニアに説明しづらい
• What is DoCoMo? / What is Emoji?
• スマフォ向けだから使わないのだが
• コメントや設定ファイルが文字化けし
て破壊される
• ソースコードはEUC、テンプレートはShift-JIS
25
困った
26
27
そういえば
こんな仕事も
やってたな
28
フレームワーク調査
• JSON on HTTPやWeb APIを各言語
でどうやって実装するのか
• http://blog.wktk.co.jp/archives/234
29
よっしゃパパ
Plack上で
MobaSiF互換
層作っちゃうぞー
30
旧GunyaSiF誕生
• Plack上に構築されたMobaSiF互換レ
イヤ
• ソースコード/テンプレートはUTF-8
に移行
• テンプレートはXslate/TTerseに移行
31
旧GunyaSiFの成果
• Mac上でVMなしに開発できるように
• Mobageお手製パッチ済みFlash生成
用Mingライブラリの64bit対応
32
結構簡単に
できた
Plackスゲー
33
そこから
しばらく
ゲーム運用
したあと
34
上長に
呼ばれる
35
36
お前
ゲーム向け
フレームワーク
作れ
フレームワーク作りへ
• 誰かがやらねばならないことだし
• 前職で従事していた「ニコニコ大百
科」というサービスも、フレームワー
ク手作りだったし
37
GunyaSiF
爆誕
38
フレームワークの中身
• Amon2ベース
• 複数アプリケーションをホスト
• 継承できる環境設定ファイル
• 社内の各種APIへの対応
39
どうでもいい
40
もっと
一般的な
話をします
41
Web
アプリケーション
フレームワークに
俺が求める機能
42
実は
43
ほとんどない
44
Plackスゲー
• Plack/PSGIの時点で、ある程度Web
アプリケーションをつくる土台がある
45
こんなのはいらない
• ルーティング
• Router::Simpleでよい
• O/Rマッパー
• Tengでよい
46
アプリケーション
側で
好きなモジュール
使えばいい
47
大事なこと
• 必要な部品はCPAN上にある
• それをいかに組み合わせるか
48
Web
アプリケーション
フレームワーク
を再定義すると
49
50
Web開発に必要な
モジュールセットの提案
と
モジュールを結びつける
グルーコードの実例
WAFの作り方
• 適切なCPANライブラリを選ぶ
• グルーコードを書く
51
グルーコードをどう書くか
• グルーコードはOld Style Perlで十分
• Mouse/Mooなにそれ?
• アクセサが必要なものは汎用的なモジ
ュールくらい
• 追い出したモジュールはCPANにアップロードする
52
blessで
十分!!!
53
54
これが
ポストモダン
Perl
CPANには
多くのWeb向け
モジュールがある
55
ただ
56
57
足りないと思う
モジュールが
いくつかある
足りない
モジュール
その1
58
Plack::App::
phpMyAdmin
59
phpMyAdminスゴイ
• 実用上テーブルビューワは欲しい
• P::A::PHPCGIで動かすのもいいけど
• ファントムファイル表示など、値がフ
ィルターできればなおよい
60
GunyaSiFでは
どうしたか
• スクラッチで書いた
• LDAP認証とか妙に凝った
• 正社員かどうかによってテーブルごとに閲覧権限を設
定できたり
• キモすぎてCPANに上げられない…
61
足りない
モジュール
その2
62
js/css
自動コンパイラ
minifier
63
デザイナーにやさしい
• Sprocketsによるアセットパイプライ
ンとか、Gruntとか
• Sass/SCSSくらいは対応したい
• Coffee/JSXにも対応したい
64
Sass/SCSS
対応
65
Text::Sass
• Text::Sassでイケるじゃん、と夢見て
いたころが僕にもありました
• Filesys::Notify::Simpleと組み合わせ
れば自動コンパイルできるはず
66
67
イケません!!!
README on
Text::Sass
• This is most definitely a work-in-
progress. It only implements a
subset of the specification
• (snip)
• No support for @import of sass
68
うう…
ツラい
69
GunyaSiFでは
どうしたか
• CSSはCompassを採用
• Rubyだけど
• 開発時は、CSSへのHTTPアクセス時に動的にコンパ
イル
• JS MinifyはClosure Compilerを採用
• Javaだけど
70
前半まとめ
71
前半まとめ
• WAF = Web向けCPANモジュールの
集合 + グルーコード
• グルーコードはポストモダンPerlで
• 足りてないモジュールもあるよね
72
73
酒と泪と
俺とPerl
74
Perl
まじめに
さわり始めた
感想
75
…
76
普通じゃん!
77
Perlへの感想
• 普通
• perlbrew/plenv
• cpanm/Carton
• Plack
• 他言語で便利なものがちゃんとある
78
モジュールの管理方法
• GunyaSiF開発時はCarton 1.0前
• Carton採用してたが、carton execめ
んどいのでcpanm化
• Carton.lockからcpanfileを出力するスクリプトを書
いた
• cpanfile.snapshotになったから今は不要…なの?
79
Perlで
ハマったところ
80
Data::Dumper
• 開発中に使うモジュールランキング第
1位(俺調べ)
• Rubyでいうところのpp
• んな大事なモジュールが壊れてるわけ
ない
81
壊れてました…
82
壊れているという惨事
83
id:gfxに泣きついた
• Data::Dumper が壊れているという惨
事
• http://d.hatena.ne.jp/gfx/
20130305/1362496416
• Perl 5.13で導入された
isWORDCHAR()がなかった
84
P::M::MemoryUsage
• Plack::Middleware::MemoryUsage
• packageごとのメモリ使用量
• リクエストを処理する前後の増分
• B::Size2(::Terse)を使ってる
85
壊れてました…
(SEGVする)
86
id:gfxに泣きついた
• B::Size2をデバッグしたときのメモ
• http://d.hatena.ne.jp/gfx/
20130201/1359701228
• SvMAGIC()の中で落ちてた
87
(元)同僚
スゴイ人が多くて
とても助かる
88
なぜ
こんなに
地雷を踏んだか
89
だいたい
Perl 5.10
のせい
90
なぜ
Perl 5.10を
選んだか
91
バージョンの選び方
• CentOS 6系のsystem Perlのバージ
ョンは5.10.1
• 枯れてるからそれ使おう
92
間違い
93
ライブラリは進化する
• CPANライブラリのバージョンも固定
しないんだったら、環境として枯れて
いない
• むしろ、リスクを増大させてしまった
94
バージョン新しくしよう
• 最新のPerlにフォローアップすべし
• セキュリティパッチが提供されている
• ハッシュ衝突攻撃のパッチを当てるのも面倒だった
• 便利機能や性能向上などいろんな恩恵もある
95
そんな
おっちょこちょい
な僕でも
96
CPAN
Authorに
なれました
97
98
CPAN参加への動機
• コミュニティに還元したい
• コミュニティから受けた恩恵は計り知れない
• 設計上の密結合化の防止
• グルーコードはつなぐモジュールがな
いと意味がない!
99
CPANの感想(1)
• 意外とカンタン
• 敷居低くてカジュアルに参加できる
100
CPANの感想(2)
• Minilla普通に便利ですね
• その代わり、隠蔽されている部分について知識がない
と、イレギュラーな場合に死ぬ
101
CPANの感想(3)
• モダンなXSモジュール作成法がよく
分からない
• typester先生のプレゼンはある
• https://speakerdeck.com/typester/xsnimatuwaruhua
• Module::Build::Pluggable::XSUtilはなんかつらかった
• http://blog.wktk.co.jp/archives/331
102
CPANの感想(4)
• Plack::Middleware名前空間のモジュ
ールを上げると、どこかのIRCに通知
が出るらしくコワイ
103
後半まとめ
• Perlは最新版に近いものを使おう
• CPANへの貢献はカジュアルに!
• 機能がかぶろうが、名前空間がちょっとおかしかろう
が、TMTOWTDIの精神で
104
まとめ
105
まとめ
• 汎用的な処理はCPANモジュールとし
て公開することを前提に書こう
• グルーコードを書いて世の中に面白い
Webサービスをどんどん出していこう
106
ご静聴ありがとう
ございます!
107
108
ストーリーから
浮いてる
スライド
(未使用)
109
フレームワークの苦労
• フレームワークだけ書くのつらい
• MobaSiFだって、大百科用フレームワークだって、ア
プリケーションを作りながらフレームワーク書いてい
た
• アプリ開発者のニーズと乖離する
110
C言語でWebApp(1)
• C言語でWebAppの開発に必要なN個
のこと
• http://blog.wktk.co.jp/ja/entry/2013/09/10/
clang-webapp
111
ジョークエントリ
では
ないんです
112
C言語でWebApp(2)
• 前職で作ったフレームワークはいたる
ところにC言語が使われていた
• メンテナンス性が最悪だった
113

More Related Content

What's hot

Hatena::Letの式年遷宮
Hatena::Letの式年遷宮Hatena::Letの式年遷宮
Hatena::Letの式年遷宮Takafumi ONAKA
 
Vue template-parserを作っている話
Vue template-parserを作っている話Vue template-parserを作っている話
Vue template-parserを作っている話Koki Natsume
 
SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分
SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分
SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分松田 千尋
 
Ember コミュニティとわたし
Ember コミュニティとわたしEmber コミュニティとわたし
Ember コミュニティとわたしRyunosuke SATO
 
LaravelとMVCの先へ
LaravelとMVCの先へLaravelとMVCの先へ
LaravelとMVCの先へYuuki Takezawa
 
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビューTakafumi ONAKA
 
Laravelを使ってみた
Laravelを使ってみたLaravelを使ってみた
Laravelを使ってみたJaeseop Jeong
 
Java web application testing
Java web application testingJava web application testing
Java web application testingTokuhiro Matsuno
 
JavaFXとRoboVMを使ってiOS上で動くアプリを試してみた
JavaFXとRoboVMを使ってiOS上で動くアプリを試してみたJavaFXとRoboVMを使ってiOS上で動くアプリを試してみた
JavaFXとRoboVMを使ってiOS上で動くアプリを試してみたSatoshi Takami
 
Web開発の 今までとこれから
Web開発の 今までとこれからWeb開発の 今までとこれから
Web開発の 今までとこれからShinichi Takahashi
 
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)Tokuhiro Matsuno
 
Mojolicious::Liteを使ってみよう
Mojolicious::Liteを使ってみようMojolicious::Liteを使ってみよう
Mojolicious::Liteを使ってみようcharsbar
 
テンプレートエンジンにMixer2を使うとSeleniumでのテストもラクになるかもねという話
テンプレートエンジンにMixer2を使うとSeleniumでのテストもラクになるかもねという話テンプレートエンジンにMixer2を使うとSeleniumでのテストもラクになるかもねという話
テンプレートエンジンにMixer2を使うとSeleniumでのテストもラクになるかもねという話Y Watanabe
 
PHP Application E2E with Capybara
PHP Application E2E with CapybaraPHP Application E2E with Capybara
PHP Application E2E with CapybaraYoshiaki Yoshida
 
iPhoneアプリを Javaで書くよ?
iPhoneアプリを Javaで書くよ?iPhoneアプリを Javaで書くよ?
iPhoneアプリを Javaで書くよ?Toshio Ehara
 
がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7
がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7
がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7Hiroshi Toda
 
Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門Yusuke Wada
 
【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!Sakae Saito
 

What's hot (20)

Hatena::Letの式年遷宮
Hatena::Letの式年遷宮Hatena::Letの式年遷宮
Hatena::Letの式年遷宮
 
Vue template-parserを作っている話
Vue template-parserを作っている話Vue template-parserを作っている話
Vue template-parserを作っている話
 
SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分
SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分
SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分
 
Ember コミュニティとわたし
Ember コミュニティとわたしEmber コミュニティとわたし
Ember コミュニティとわたし
 
LaravelとMVCの先へ
LaravelとMVCの先へLaravelとMVCの先へ
LaravelとMVCの先へ
 
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
 
Laravelを使ってみた
Laravelを使ってみたLaravelを使ってみた
Laravelを使ってみた
 
Java web application testing
Java web application testingJava web application testing
Java web application testing
 
JavaFXとRoboVMを使ってiOS上で動くアプリを試してみた
JavaFXとRoboVMを使ってiOS上で動くアプリを試してみたJavaFXとRoboVMを使ってiOS上で動くアプリを試してみた
JavaFXとRoboVMを使ってiOS上で動くアプリを試してみた
 
♡PHPが恋しい話♡
♡PHPが恋しい話♡♡PHPが恋しい話♡
♡PHPが恋しい話♡
 
Web開発の 今までとこれから
Web開発の 今までとこれからWeb開発の 今までとこれから
Web開発の 今までとこれから
 
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
 
JavaScript 研修
JavaScript 研修JavaScript 研修
JavaScript 研修
 
Mojolicious::Liteを使ってみよう
Mojolicious::Liteを使ってみようMojolicious::Liteを使ってみよう
Mojolicious::Liteを使ってみよう
 
テンプレートエンジンにMixer2を使うとSeleniumでのテストもラクになるかもねという話
テンプレートエンジンにMixer2を使うとSeleniumでのテストもラクになるかもねという話テンプレートエンジンにMixer2を使うとSeleniumでのテストもラクになるかもねという話
テンプレートエンジンにMixer2を使うとSeleniumでのテストもラクになるかもねという話
 
PHP Application E2E with Capybara
PHP Application E2E with CapybaraPHP Application E2E with Capybara
PHP Application E2E with Capybara
 
iPhoneアプリを Javaで書くよ?
iPhoneアプリを Javaで書くよ?iPhoneアプリを Javaで書くよ?
iPhoneアプリを Javaで書くよ?
 
がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7
がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7
がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7
 
Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門
 
【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!
 

Viewers also liked

How to inspect a RUNNING perl process
How to inspect a RUNNING perl processHow to inspect a RUNNING perl process
How to inspect a RUNNING perl processMasaaki HIROSE
 
Perlで次世代ゲーム開発
Perlで次世代ゲーム開発Perlで次世代ゲーム開発
Perlで次世代ゲーム開発keroyonn
 
Perl Hobby Programming - Games::BeLike::EightBIT ターミナルで8ビット風ゲームをつくろう
Perl Hobby Programming - Games::BeLike::EightBIT ターミナルで8ビット風ゲームをつくろうPerl Hobby Programming - Games::BeLike::EightBIT ターミナルで8ビット風ゲームをつくろう
Perl Hobby Programming - Games::BeLike::EightBIT ターミナルで8ビット風ゲームをつくろうkeroyonn
 
中高生向けUnity講座
中高生向けUnity講座中高生向けUnity講座
中高生向けUnity講座MakotoItoh
 
Perl/CGI 入門
Perl/CGI 入門Perl/CGI 入門
Perl/CGI 入門keroyonn
 
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイドYAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイドkeroyonn
 
0528 kanntigai ui_ux
0528 kanntigai ui_ux0528 kanntigai ui_ux
0528 kanntigai ui_uxSaori Matsui
 
大規模Perl初心者研修を支える技術
大規模Perl初心者研修を支える技術大規模Perl初心者研修を支える技術
大規模Perl初心者研修を支える技術Daisuke Tamada
 
女子の心をつかむUIデザインポイント - MERY編 -
女子の心をつかむUIデザインポイント - MERY編 -女子の心をつかむUIデザインポイント - MERY編 -
女子の心をつかむUIデザインポイント - MERY編 -Shoko Tanaka
 

Viewers also liked (9)

How to inspect a RUNNING perl process
How to inspect a RUNNING perl processHow to inspect a RUNNING perl process
How to inspect a RUNNING perl process
 
Perlで次世代ゲーム開発
Perlで次世代ゲーム開発Perlで次世代ゲーム開発
Perlで次世代ゲーム開発
 
Perl Hobby Programming - Games::BeLike::EightBIT ターミナルで8ビット風ゲームをつくろう
Perl Hobby Programming - Games::BeLike::EightBIT ターミナルで8ビット風ゲームをつくろうPerl Hobby Programming - Games::BeLike::EightBIT ターミナルで8ビット風ゲームをつくろう
Perl Hobby Programming - Games::BeLike::EightBIT ターミナルで8ビット風ゲームをつくろう
 
中高生向けUnity講座
中高生向けUnity講座中高生向けUnity講座
中高生向けUnity講座
 
Perl/CGI 入門
Perl/CGI 入門Perl/CGI 入門
Perl/CGI 入門
 
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイドYAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
 
0528 kanntigai ui_ux
0528 kanntigai ui_ux0528 kanntigai ui_ux
0528 kanntigai ui_ux
 
大規模Perl初心者研修を支える技術
大規模Perl初心者研修を支える技術大規模Perl初心者研修を支える技術
大規模Perl初心者研修を支える技術
 
女子の心をつかむUIデザインポイント - MERY編 -
女子の心をつかむUIデザインポイント - MERY編 -女子の心をつかむUIデザインポイント - MERY編 -
女子の心をつかむUIデザインポイント - MERY編 -
 

Similar to 0から学んだポストモダンPerl @ YAPC::Asia Tokyo 2013

とある Perl Monger の働き方
とある Perl Monger の働き方とある Perl Monger の働き方
とある Perl Monger の働き方Yusuke Wada
 
ペアプロはリモートでもできる!
ペアプロはリモートでもできる!ペアプロはリモートでもできる!
ペアプロはリモートでもできる!Tatsuya Deguchi
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMPYusuke Kagata
 
phpstudy_php_to_node
phpstudy_php_to_nodephpstudy_php_to_node
phpstudy_php_to_nodeSuguru Shirai
 
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果やりたいことをプロダクトにねじ込む技術とねじ込んだ結果
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果KayoMiyata
 
コンソールベタ打ち卒業:スクリプトエディタを使おう
コンソールベタ打ち卒業:スクリプトエディタを使おうコンソールベタ打ち卒業:スクリプトエディタを使おう
コンソールベタ打ち卒業:スクリプトエディタを使おうYu Tamura
 
endeworksでのWebAppの作り方
endeworksでのWebAppの作り方endeworksでのWebAppの作り方
endeworksでのWebAppの作り方33rpm
 
Word pressプラグイン入門.key
Word pressプラグイン入門.keyWord pressプラグイン入門.key
Word pressプラグイン入門.keySatoshi Kamigaki
 
趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送る趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送るvolpe_hd28v
 
Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話Tokoroten Nakayama
 
Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話Drecom Co., Ltd.
 
2017年1月24日開催「App Talk Night」発表資料
2017年1月24日開催「App Talk Night」発表資料2017年1月24日開催「App Talk Night」発表資料
2017年1月24日開催「App Talk Night」発表資料LocoPartners
 
はじめる前に知っておきたいAndroidアプリ開発のポイント
はじめる前に知っておきたいAndroidアプリ開発のポイントはじめる前に知っておきたいAndroidアプリ開発のポイント
はじめる前に知っておきたいAndroidアプリ開発のポイントShinobu Okano
 
MF GeeksNight pplogの話
MF GeeksNight pplogの話MF GeeksNight pplogの話
MF GeeksNight pplogの話Naoto Koshikawa
 
自動化について
自動化について自動化について
自動化についてYuma Iwasaki
 
[Android]趣味プログラマーな非エンジニアにアプリ開発を教える
[Android]趣味プログラマーな非エンジニアにアプリ開発を教える[Android]趣味プログラマーな非エンジニアにアプリ開発を教える
[Android]趣味プログラマーな非エンジニアにアプリ開発を教えるichigotake .
 
OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島Tomohiko Himura
 
「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮) 「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮) Taku Yajima
 
これができたらエンジニア|YAPC::Asia 2015 LT rejected
これができたらエンジニア|YAPC::Asia 2015 LT rejectedこれができたらエンジニア|YAPC::Asia 2015 LT rejected
これができたらエンジニア|YAPC::Asia 2015 LT rejectedTakahiro YAMAGUCHI
 

Similar to 0から学んだポストモダンPerl @ YAPC::Asia Tokyo 2013 (20)

とある Perl Monger の働き方
とある Perl Monger の働き方とある Perl Monger の働き方
とある Perl Monger の働き方
 
ペアプロはリモートでもできる!
ペアプロはリモートでもできる!ペアプロはリモートでもできる!
ペアプロはリモートでもできる!
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMP
 
phpstudy_php_to_node
phpstudy_php_to_nodephpstudy_php_to_node
phpstudy_php_to_node
 
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果やりたいことをプロダクトにねじ込む技術とねじ込んだ結果
やりたいことをプロダクトにねじ込む技術とねじ込んだ結果
 
コンソールベタ打ち卒業:スクリプトエディタを使おう
コンソールベタ打ち卒業:スクリプトエディタを使おうコンソールベタ打ち卒業:スクリプトエディタを使おう
コンソールベタ打ち卒業:スクリプトエディタを使おう
 
endeworksでのWebAppの作り方
endeworksでのWebAppの作り方endeworksでのWebAppの作り方
endeworksでのWebAppの作り方
 
Word pressプラグイン入門.key
Word pressプラグイン入門.keyWord pressプラグイン入門.key
Word pressプラグイン入門.key
 
趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送る趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送る
 
Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話
 
Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話
 
2017年1月24日開催「App Talk Night」発表資料
2017年1月24日開催「App Talk Night」発表資料2017年1月24日開催「App Talk Night」発表資料
2017年1月24日開催「App Talk Night」発表資料
 
はじめる前に知っておきたいAndroidアプリ開発のポイント
はじめる前に知っておきたいAndroidアプリ開発のポイントはじめる前に知っておきたいAndroidアプリ開発のポイント
はじめる前に知っておきたいAndroidアプリ開発のポイント
 
MF GeeksNight pplogの話
MF GeeksNight pplogの話MF GeeksNight pplogの話
MF GeeksNight pplogの話
 
自動化について
自動化について自動化について
自動化について
 
[Android]趣味プログラマーな非エンジニアにアプリ開発を教える
[Android]趣味プログラマーな非エンジニアにアプリ開発を教える[Android]趣味プログラマーな非エンジニアにアプリ開発を教える
[Android]趣味プログラマーな非エンジニアにアプリ開発を教える
 
OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島
 
「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮) 「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮)
 
安心Chef開発
安心Chef開発安心Chef開発
安心Chef開発
 
これができたらエンジニア|YAPC::Asia 2015 LT rejected
これができたらエンジニア|YAPC::Asia 2015 LT rejectedこれができたらエンジニア|YAPC::Asia 2015 LT rejected
これができたらエンジニア|YAPC::Asia 2015 LT rejected
 

Recently uploaded

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 

Recently uploaded (9)

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 

0から学んだポストモダンPerl @ YAPC::Asia Tokyo 2013