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
Scala目的で入社した人間が、如何にして「はてなブックマーク」のフロントエンド改善活動を行う...
Search
lunastera
January 27, 2022
Programming
0
1.6k
Scala目的で入社した人間が、如何にして「はてなブックマーク」のフロントエンド改善活動を行うようになったのか
Hatena Engineer Seminar #18
https://hatena.connpass.com/event/235821/
lunastera
January 27, 2022
Tweet
Share
More Decks by lunastera
See All by lunastera
生成AI×マルチテナントSaaSな新規事業を立ち上げる上でテックリードとして気を使った点の紹介
lunastera
0
970
ブックマークチームでアクセシビリティを広める際に直面した問題と、如何にして立て直していったか
lunastera
0
910
Other Decks in Programming
See All in Programming
Claude Agent SDK を使ってみよう
hyshu
0
1.2k
What's new in Spring Modulith?
olivergierke
1
160
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
280
釣り地図SNSにおける有料機能の実装
nokonoko1203
0
170
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
270
Software Architecture
hschwentner
6
2.3k
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
3
660
開発生産性を上げるための生成AI活用術
starfish719
3
1.4k
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
860
AI駆動で0→1をやって見えた光と伸びしろ
passion0102
1
480
CSC305 Lecture 05
javiergs
PRO
0
220
Go言語はstack overflowの夢を見るか?
logica0419
0
430
Featured
See All Featured
How GitHub (no longer) Works
holman
315
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Unsuck your backbone
ammeep
671
58k
Facilitating Awesome Meetings
lara
56
6.6k
A better future with KSS
kneath
239
18k
How to Think Like a Performance Engineer
csswizardry
27
2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
600
Git: the NoSQL Database
bkeepers
PRO
431
66k
Optimizing for Happiness
mojombo
379
70k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
910
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Transcript
2022/01/26 Hatena Engineer Seminar #18
ࣗݾհ id: lunasteraʢ͑Βʣ ͯͳϒοΫϚʔΫνʔϜ Scala͕͖
ԿΛ͍ͯ͠Δͷ ϑϩϯτΤϯυɺͬͯ·͢ Scala.jsͰͳ͍Ͱ͢
ScalaతͰೖࣾͨ͠ਓ͕ؒ Կʹͯ͠ʮͯͳϒοΫϚʔΫʯͷ ϑϩϯτΤϯυվળ׆ಈΛߦ͏Α͏ʹͳͬͨͷ͔
ͯͳϒοΫϚʔΫ
QSPYZ ΞʔΩςΫνϟ $PSF"1* #'' NJDSP TFSWJDFT ྨٛޠݕࡧ ʜ ʜ
ΠϯλʔϯͷՌ $PSF"1* NJDSP TFSWJDFT ྨٛޠݕࡧ ʜ ʜ
ೖࣾ·Ͱ ࣮͜ͷ࣌ͰϑϩϯτΤϯυʹۤखҙ͕ࣝ͋ͬͨ Πϯλʔϯ ΞϧόΠτ ೖࣾ ։ൃମݧྑ
ࣗԿ͕Ͱ͖Δ͔ ରԠൣғΛ͛Δ׆ಈ 4DBMBʁ ϑϩϯτʁ Πϯϑϥʁ σʔλج൫ʁ
ϑϩϯτΤϯυͷᬍ • ͋·ΓϞμϯͳײ͡Ͱͳ͍ • όοΫΤϯυ͕ڧ͍ਓ͕ଟ͍ όοΫΤϯυ ϑϩϯτΤϯυ ࣗͰʜʁ
ࣗൃతͳվળ׆ಈ • ௐࠪ / ݕূ -> վળҊ • ScrapboxʹվળΛྻڍ •
ؒҧ͍ͬͯΔ͔ͱ͍͏ෆ҆ • ৽ଔͱ͍͏६Λར༻ͯ͠ͱΓ͋͑ͣઓ
վળఏҊྫ • tscon fi g ͷ target / module Λదͳʹ
• ෆཁʹͳͬͨpoly fi llΛফ͢ • ඇਪύοέʔδͷҠߦ • lodashग़ • ग़ͷͨΊͷରԠදͳͲ࡞ • Ϗϧυ࣌ؒ / όϯυϧαΠζվળ • ͲͷఔͷޮՌ͕ظͰ͖Δͷ͔
WebΤϯδχΞձ • WebΤϯδχΞ͕ٞΛ࣋ͪدͬͯٞ • ϑϩϯτΤϯυվળҊΛ͍࣋ͬͯͬͨ ʹཱͯͨʂ
վળҊͷ࣮ߦ • ͋͘·ͰεϓϦϯτλεΫ༏ઌ • ࡉ͔͍ۭ͖࣌ؒʹগͣͭ͠ • όϯυϧαΠζ 1/2ɺϏϧυ࣌ؒ 1/3 •
੩తϑΝΠϧϏϧυͪͷ͕࣌ؒݮʂ
ϑϩϯτΤϯυձ • ϑϩϯτΤϯυใΛڞ༗͢Δձ • ׆ಈΛଓ͚ΔϞνϕʔγϣϯʹ 99νʔϜ ϒΫϚνʔϜ 99νʔϜ
νʔϜͷϑϩϯτΤϯυվળେਉ • ͜Ε·ͰͷܦݧͰࣗ৴͕͍ͭͨ • ੵۃతʹϝϯς͢Δ͜ͱΛܾҙ • ޭମݧ͕ϑϩϯτΤϯυͷۤखҙࣝΛม͑ͨ
·ͱΊ • ઓ͢Δେ͞ • ❌ ৽ଔ͔ͩΒઓ͠ͳ͍ • ⭕ ৽ଔ͔ͩΒͦ͜ઓ͢Δ •
Γ͍ͨ͜ͱΛ໌֬ʹ • ԿނΓ͍ͨͷ͔ / ԿނͦΕ͕ඞཁͳͷ͔