英文難易度の低いニュースを集めたwebアプリ twien
DESCRIPTION
yokohama.pm #10 のLTスライドTRANSCRIPT
![Page 1: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/1.jpg)
英文難易度の低いニュースを集めた Web アプリ - Twien
Yokohama.pm #10@dokechin
![Page 2: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/2.jpg)
自己紹介 (dokechin)• たくさんの人を喜ばす( Web )アプリを作りたい人。
( @masuidrive さんの wri.pe のようなもの)• 勉強会の懇親会費くらいはマネタイズしたいと願ってい
る
![Page 3: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/3.jpg)
自己紹介 (dokechin)
![Page 4: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/4.jpg)
Twien とは( What ? )
![Page 5: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/5.jpg)
http://twien.dokechin.com
アメリカ、カナダ、イギリス、オーストラリアのニュースサイトから英文難易度の低い順に、128の記事を厳選表示するキュレーションサイト
![Page 6: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/6.jpg)
どうやって作った( How?)
![Page 7: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/7.jpg)
動作の仕組みURL収集
• ツイッターストリーム• ニュースサイトの RSS
解析
• コンテンツの英文難易度を算出
表示
• 1 日 1 回集計(128記事を選ぶ)
• Mojolicious + Embedly API
![Page 8: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/8.jpg)
AnyEvent::TwitterStream
XML::FeedData::Deduper
Qudo::Parallel::ManagerHTML::ExtractContent
Lingua::EN::FathomTeng
使用 CPAN モジュール
MojoliciousTeng
![Page 9: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/9.jpg)
ノウハウ1ロードアベレージ問題
![Page 10: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/10.jpg)
ロードアベレージ問題• ワーカープロセスを起動後しばらくすると、ロードアベ
レージが上昇。
![Page 11: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/11.jpg)
Devel::NYTProf• Qudo のワーカープロセス起動時に
• CTRL+C で停止させたあとに、解析。
• HTML::ExtractContent::extract の処理がブロッキングされていた• ログをみたところ、 HTML::ExtractContent にバイナリ( jpg な
ど)を食わせていた
![Page 12: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/12.jpg)
ノウハウ2Mojolicious で国際化
Mojolicious::Plugin::I18N
![Page 13: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/13.jpg)
Web.pmpackage Twien::Web;use Mojo::Base 'Mojolicious';use Mojolicious::Plugin::I18N;
sub startup { my $self = shift; $self->plugin(I18N => {namespace => 'Twien::I18N'}); ・・・ }
![Page 14: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/14.jpg)
![Page 15: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/15.jpg)
ja.pmpackage Twien::I18N::ja;use base 'Twien::I18N';use utf8;
our %Lexicon = ( 'Title' => 'Twien - 中学 3 年生以下の難易度の英文ニュースを集めたサイト (1 日 1 回更新 )',);
1;
![Page 16: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/16.jpg)
テンプレートファイル% layout 'bootstrap';% title l 'Title';<h1><%=l 'Title' %></h1>
![Page 17: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/17.jpg)
ノウハウ3アプリ認知の問題
![Page 18: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/18.jpg)
プレスリリースに挑戦ゆーすけべーさんのブログを参考に、 IT メディア 20 社程度に電子メールを送る
![Page 19: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/19.jpg)
見に来てくれている
メールを送った日
![Page 20: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/20.jpg)
1 社も取り上げられない• インパクトの UX を提供できていない(客観的評価)
![Page 21: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/21.jpg)
学んだこと、思うこと・広大な CPAN モジュールと Perl のアウトブット文化のおかげで割と簡単に Web アプリをつくることができる(感謝)・ Web アプリは作っても、それだけでは、認知されない。プレスリリースなどは必須。・99 , 9%は失敗かもしれないが、ノウハウは残るのでヒットするまで諦めない(次回開発は加速される)
![Page 22: 英文難易度の低いニュースを集めたWebアプリ twien](https://reader036.vdocuments.site/reader036/viewer/2022081413/5499d3ecac795959288b5b06/html5/thumbnails/22.jpg)
ご清聴ありがとうございました