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
39
水城市について
kazuki19992
0
34
LT会に出ないか?
kazuki19992
0
340
お前観察日記 (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
設計の本質:コード、システム、そして組織へ / The Essence of Design: To Code, Systems, and Organizations
nrslib
4
480
自分のために作ったアプリが、グローバルに使われるまで / Indie App Development Lunch LT
pixyzehn
1
160
AIコーディングエージェントを 「使いこなす」ための実践知と現在地 in ログラス / How to Use AI Coding Agent in Loglass
rkaga
0
100
SwiftUI API Design Lessons
niw
1
290
PHP で学ぶ OAuth 入門
azuki
1
200
Strategic Design (DDD)for the Frontend @DDD Meetup Stuttgart
manfredsteyer
PRO
0
150
Making TCPSocket.new "Happy"!
coe401_
1
1.3k
AIコーディングワークフローの試行 〜AIエージェント×ワークフローでの自動化を目指して〜
rkaga
3
3.7k
メモリウォールを超えて:キャッシュメモリ技術の進歩
kawayu
0
1.9k
[NG India] Event-Based State Management with NgRx SignalStore
markostanimirovic
1
160
状態と共に暮らす:ステートフルへの挑戦
ypresto
1
520
タイムゾーンの奥地は思ったよりも闇深いかもしれない
suguruooki
1
660
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
49
7.7k
Adopting Sorbet at Scale
ufuk
76
9.3k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Gamification - CAS2011
davidbonilla
81
5.2k
Being A Developer After 40
akosma
91
590k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
29
5.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
520
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
9
750
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: 安心やきそば リリースページ →