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
79
emojoy
kazuki19992
March 25, 2021
Tweet
Share
More Decks by kazuki19992
See All by kazuki19992
PiyoConf2021 オープニング
kazuki19992
0
68
動くNASを作ってコンテスト優勝して大学から一足早いサンタさんが訪れた話
kazuki19992
0
37
水城市について
kazuki19992
0
34
LT会に出ないか?
kazuki19992
0
330
お前観察日記 (Chromeちゃんはみとるぞ)
kazuki19992
0
140
LaLiMa
kazuki19992
0
60
1on1面談イベント完全版3月.pdf
kazuki19992
0
48
つくったもの一覧
kazuki19992
0
35
#stdout2020オープニング資料
kazuki19992
1
1.5k
Other Decks in Programming
See All in Programming
PHPer's Guide to Daemon Crafting Taming and Summoning
uzulla
2
1.1k
PsySHから紐解くREPLの仕組み
muno92
PRO
1
520
英語文法から学ぶ、クリーンな設計の秘訣
newnomad
1
270
なぜselectはselectではないのか
taiyow
2
310
DomainException と Result 型で作る型安全なエラーハンドリング
karszawa
0
150
家族・子育て重視/沖縄在住を維持しながらエンジニアとしてのキャリアをどのように育てていくか?
ug
0
240
ミリしらMCP勉強会
watany
2
420
Fluent UI Blazor 5 (alpha)の紹介
tomokusaba
0
140
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
0
340
コンテナでLambdaをデプロイするときに知っておきたかったこと
_takahash
0
150
私の愛したLaravel 〜レールを超えたその先へ〜
kentaroutakeda
12
3.6k
PHPUnit 高速化テクニック / PHPUnit Speedup Techniques
pinkumohikan
1
1.2k
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
12
610
Being A Developer After 40
akosma
90
590k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.5k
Building Applications with DynamoDB
mza
94
6.3k
RailsConf 2023
tenderlove
29
1k
Practical Orchestrator
shlominoach
187
10k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
30k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
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: 安心やきそば リリースページ →