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
emojoy
Search
kazuki19992
March 25, 2021
Programming
0
75
emojoy
kazuki19992
March 25, 2021
Tweet
Share
More Decks by kazuki19992
See All by kazuki19992
PiyoConf2021 オープニング
kazuki19992
0
67
動くNASを作ってコンテスト優勝して大学から一足早いサンタさんが訪れた話
kazuki19992
0
37
水城市について
kazuki19992
0
30
LT会に出ないか?
kazuki19992
0
320
お前観察日記 (Chromeちゃんはみとるぞ)
kazuki19992
0
140
LaLiMa
kazuki19992
0
56
1on1面談イベント完全版3月.pdf
kazuki19992
0
45
つくったもの一覧
kazuki19992
0
32
#stdout2020オープニング資料
kazuki19992
1
1.4k
Other Decks in Programming
See All in Programming
Rubyと自由とAIと
yotii23
6
1.7k
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
17
4k
5分で理解する SOLID 原則 #phpcon_nagoya
shogogg
1
300
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
380
Rails アプリ地図考 Flush Cut
makicamel
1
130
PRレビューのお供にDanger
stoticdev
1
230
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
510
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
150
もう僕は OpenAPI を書きたくない
sgash708
5
1.9k
CDK開発におけるコーディング規約の運用
yamanashi_ren01
2
250
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
8
1.3k
機能が複雑化しても 頼りになる FactoryBotの話
tamikof
0
140
Featured
See All Featured
Making Projects Easy
brettharned
116
6k
Building Adaptive Systems
keathley
40
2.4k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
GraphQLとの向き合い方2022年版
quramy
44
14k
Navigating Team Friction
lara
183
15k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Git: the NoSQL Database
bkeepers
PRO
427
65k
Designing for Performance
lara
604
68k
Transcript
emojoy 安心やきそば: { “member”: “カズ之助(Nihon-Univ.)”, “member”: “ちよこ(Nihon-Univ.)” }
皆さんへ いつもの日常に慣れていませんか? たまには日常を投げ出して、ちょっとだけハッピーになりませんか? emojoyは、そんな『ハッピー』をおてつだいするChrome拡張機能です。 すこしだけテンションを上げて、機能を有効化してみてください。 きっと、今までとは少しだけ違った世界が見えることでしょう。
カズ之助 Nihon-Univ. B3 櫛田 一樹 Tw: @Tech_Kazu - Twitter担当大臣 -
情報見つける担当大臣 - ゆるふわ実装担当大臣 - 高速化担当大臣 - 幼女担当大臣(JSを書いたので) ちよこ Nihon-Univ. B3 - アイデア担当大臣 - JSON読み込み担当大臣 - 絵文字表示担当大臣 - ベンチマーク担当大臣 メンバー
emojoyのごあんない #サマーハッカソン Team:安心やきそば
縛りプレイ 我々はひとつだけ縛りプレイをしていました。 その縛りとは 「決して役に立たないムダ開発をすること」 です。 せっかくなので真面目にムダ開発をするのも楽しいだろうなと…
できたもの Webページ中に表示されている単語の後ろに適切な絵文字をくっつけ る(迷惑な)Chrome拡張機能 開会式で草原大草原さんの名前を見て思いつきました(ちよこ) ↑ 「草」を草の絵文字とかwに変換するやつ作ったら面白くね、 というところから
使用技術 - JavaScript - jQuery (文字列の置換に使用) - TinySegmenter (形態素解析) -
emoji-ja (日本語と絵文字の対応付けJSON)
導入時の問題 ページの読み込みが極端に遅くなった →ひらがな1文字の場合は処理をスキップ →キャッシュ空間を作成すれば良くなるんじゃね? キャッシュ用の配列を作成 →LRU(最後に参照してからの時間が長いものから追い出される方式 ) を実装 →体感そんなに変わらんかったわw
実際の動き 動作の詳細については後述 - いくつかの文字を置き換えます - 例: ”草”→”w”, “大草原”→”wwwwwwwww”, “研究室”→”🗡🌳🐮つ” -
形態素解析を用いて単語ごとに絵文字がヒットすれば追加します - 例: ”日本”→”日本🎋🏯”, “プライバシー”→”プライバシー🔐” - ページのロードをめちゃくちゃ遅くします - ロード中にコーヒーをいれることもできるかも☕やったね!
実際の動き Googleトップページ リロード時間 未導入時:0.65sec 導入時:8.54sec 約1214%の低速化に成功。忙しいあなたに休息の機会を与えます。
実際の動き Wikipedia 通常時 導入時 数多くの絵文字を挿入することで見た目に楽しさをプラス
つかいかた 1. リリースページからダウンロード 2. ダウンロードした.crxファイルをChromeで読み込もう 3. 有効化後に任意のページで再読み込みをしてみよう! 4. ロードに時間がかかって絵文字が出れば成功だ! 5.
うれしいね。
今後の課題と完走した感想 ・絵文字挿入のさらなる高速化 ・絵文字の選択精度の向上 感想 ・たのしかった!!!またやりたい!! ・アウトプット大事! ・作り終わったのでアンインストールします
ご清聴ありがとうございました #サマーハッカソン Team: 安心やきそば リリースページ →