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
81
emojoy
kazuki19992
March 25, 2021
Tweet
Share
More Decks by kazuki19992
See All by kazuki19992
PiyoConf2021 オープニング
kazuki19992
0
69
動くNASを作ってコンテスト優勝して大学から一足早いサンタさんが訪れた話
kazuki19992
0
42
水城市について
kazuki19992
0
36
LT会に出ないか?
kazuki19992
0
340
お前観察日記 (Chromeちゃんはみとるぞ)
kazuki19992
0
140
LaLiMa
kazuki19992
0
63
1on1面談イベント完全版3月.pdf
kazuki19992
0
51
つくったもの一覧
kazuki19992
0
35
#stdout2020オープニング資料
kazuki19992
1
1.5k
Other Decks in Programming
See All in Programming
AIネイティブなプロダクトをGolangで挑む取り組み
nmatsumoto4
0
120
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
320
C++20 射影変換
faithandbrave
0
500
すべてのコンテキストを、 ユーザー価値に変える
applism118
2
490
ASP.NETアプリケーションのモダナイズ インフラ編
tomokusaba
1
400
GoのWebAssembly活用パターン紹介
syumai
3
10k
エラーって何種類あるの?
kajitack
5
280
Claude Codeの使い方
ttnyt8701
1
130
XP, Testing and ninja testing
m_seki
2
150
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
290
LINEヤフー データグループ紹介
lycorp_recruit_jp
0
770
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
100
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Optimizing for Happiness
mojombo
379
70k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Agile that works and the tools we love
rasmusluckow
329
21k
Site-Speed That Sticks
csswizardry
10
650
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.8k
Code Review Best Practice
trishagee
68
18k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
KATA
mclloyd
29
14k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Being A Developer After 40
akosma
90
590k
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: 安心やきそば リリースページ →