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
ファッションを扱うサービスのために、Elasticsearchのユーザー辞書とシノニム辞書...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
sinamon129
April 26, 2016
Programming
7.4k
14
Share
ファッションを扱うサービスのために、Elasticsearchのユーザー辞書とシノニム辞書を作った話
ファッションを扱うサービスのために、Elasticsearchのユーザー辞書とシノニム辞書を作ったときの具体的な話
sinamon129
April 26, 2016
More Decks by sinamon129
See All by sinamon129
ガチスタートアップ1人目のバックエンドエンジニアのリアルな戦略と奮闘 #railsdm2019 #railsdm2019b @sinamon129
sinamon129
14
6.8k
システム障害との向き合い方 @sinamon129 #tokyogirlsrb
sinamon129
23
28k
生活発表@大江戸Ruby会議07
sinamon129
2
4.9k
よしなの話
sinamon129
1
300
バス因子が自分で バス因子を脱するための方法
sinamon129
26
13k
フリルのキーワード検索の精度改善
sinamon129
9
5.2k
Other Decks in Programming
See All in Programming
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1.3k
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.4k
Oxlintのカスタムルールの現況
syumai
5
930
Zod v4 Codec でスキーマに型変換を埋め込む REST API 設計 #TSKaigi2026
ryutaro_yako
0
180
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.2k
Talking to terminals (and how they talk back) (KotlinConf 2026)
jakewharton
PRO
1
170
Lessons from Spec-Driven Development
simas
PRO
0
110
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
330
TSKaigi2026-静的解析への投資がAI時代のコード品質を支える ── カスタムESLintルールの設計と運用
hayatokudou
7
1.3k
Claspは野良GASの夢をみるか
takter00
0
150
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
110
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
110
Featured
See All Featured
Mind Mapping
helmedeiros
PRO
1
220
Statistics for Hackers
jakevdp
799
230k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
130
Navigating Weather and Climate Data
rabernat
0
200
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
300
4 Signs Your Business is Dying
shpigford
187
22k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
830
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
150
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Skip the Path - Find Your Career Trail
mkilby
1
130
Transcript
ϑΝογϣϯΛѻ͏αʔϏεͷݕࡧվળͷͨΊʹɺ &MBTUJDTFBSDIͷϢʔβʔࣙॻͱγϊχϜࣙॻΛ ࡞ͬͨ גࣜձࣾ'BCMJD ยࢁɹைඒ
ࣗݾհ w ยࢁɹைඒ!TJOBNPO w גࣜձࣾ'BCMJDɹαʔόαΠυΤϯδχΞ w 3VCZPO3BJMT "1*ɾཧը໘ ɾ&MBTUJDTFBSDI FUD
ࠓͷ ϑϦϧͷݕࡧվળͷͨΊʹɺ &MBTJUDTFBSDIͷϢʔβʔࣙॻͱγϊχϜࣙॻΛ ߏஙͨ࣌͠ͷͱͬͯ۩ମతͳ
None
"#065'3*- ϑΝογϣϯϑϦϚΞϓϦ ޙʙલ͙Β͍ͷঁੑͷϢʔβʔ͕ଟ͍
ͷΩʔϫʔυݕࡧ ݕࡧͷ͙Β͍Ωʔϫʔυؚ͕·ΕΔ Ωʔϫʔυݕࡧ؊
Ͳ͏͍͏σʔλ͕ݕࡧ͞ΕΔ͔ Ͳ͏͍͏ΩʔϫʔυͰݕࡧ͞ΕΔ͔
ΩʔϫʔυݕࡧͷରͱͳΔσʔλ Ϣʔβ͞Μ͕ࣗ༝ʹॻ͘ Ϛελʔσʔλܥ λΠτϧɾઆ໌ ঢ়ଶɾܗঢ়ɾηʔϧεϙΠϯτ ུশɾදهΏΕͦͦ͋͜͜Δ ΧςΰϦ ɹ֊͕ͯ͢ର ϒϥϯυ
ɹӳࣈͱΧφ͕ର
Ͳ͏͍͏ΩʔϫʔυͰݕࡧ͞ΕΔ͔ͷྫ εφΠσϧɾ$)"/&-ʢϒϥϯυʣ ϫϯϐʔεɾτϨϯνίʔτʢΧςΰϦʹ͋Δʣ J1IPOFέʔεɾηοτΞοϓɾ."ɾελϯεϛεɹɹɹɹɹɹ ϨʔεΞοϓγϡʔζɾηʔϥʔϜʔϯʢΧςΰϦʹͳ͍ʣ όοΫʢදهؒҧ͍ʣ ϩϯάΧʔσɾΦϑγϣϧɾγϟπϫϯϐʢུশ FUDʜ
վળલͷΩʔϫʔυݕࡧ w VOJ(SBN w ࠶ݱ͕ߴͯ͘ద߹͕͍ঢ়ଶ w རɿϫϯϐͰݕࡧͯ͠ϫϯϐʔε͕ݕࡧͰ͖Δ w ͯ·ΔͷͰ͖Δ͚ͩଟ͘ग़ͯ͋͛͠Δ΄͏͕͍͍ w
Α͘ͳ͍ɿϑΝʔͰݕࡧͨ͠ͱ͖ʹϩʔϑΝʔ͕ग़Δ w Ωʔϫʔυʹରͯ͠ਖ਼͍͕͠ݕࡧ݁ՌͰຒΕ͍ͯΔ ͱӾཡ͕͍
None
͜͏͍ͨ͠ w Ͱ͖Δ͚ͩ࠶ݱͱద߹͕ߴ͍ঢ়ଶ w ϑΝʔͰݕࡧͨ͠ͱ͖ʹɺϩʔϑΝʔϩʔϦʔζ ϑΝʔϜ͕ೖ͕ͬͨग़ͳ͍Ͱ΄͍͠ w ϫϯϐͰݕࡧͨ࣌͠ʹϫϯϐʔε͕Ͱͯ΄͍͠ w ͞ΒʹനͰݕࡧͨ͠ΒϗϫΠτͰͯ΄͍͠
͜͏͢Δ͜ͱʹͨ͠ w &MBTUJDTFBSDIͷUPLFOJ[FSΛVOJ(SBN͔Β LVSPNPKJ w ϢʔβʔࣙॻՃ w γϊχϜࣙॻՃ
ϦϦʔε݅ w VOJ(SBNͷ࣌ͱൺֱͯ͠ɺݕࡧ্Ґϫʔυͷ ώοτ͕େ෯ʹݮΒͳ͚ΕΑ͠ w ώοτ͕େ෯ʹݮΔ߹ w ώοτͯ͠μϝͳͷ͕ࢁώοτ͍ͯͨ͠ͷ͕ਖ਼͞Εͨ w VOJ(SBNͩͱΧόʔͰ͖͍ͯͨলུܗͷྨٛޠొ͕Γͳ͍
w Ϣʔβʔࣙॻ͕Γͳ͍PS͓͔͍͠
ϢʔβʔࣙॻͷՃ &MBTUJDTFBSDIͷJORVJTJUPSϓϥάΠϯͰ֬ೝ ˠΧφΛௐͯৼͬͯࣙॻʹొʜ ຊ൪%# ݱߦ൛&TJOEFY มߋ൛&TJOEFY VOJ(SBN LVSPNPKJ ࣙॻ
͋Δఔ؆қతʹࣙॻߏங͢Δ w ϑϦΨφͷ͍ͭͨϑΝογϣϯͷσʔλ͕ͳ ͔ͬͨ w ࣗࣾͰ࣋ͬͯΔϒϥϯυϚελʔΛՃ w ࣗࣾͷݕࡧϩάΛNFDBCJQBEJDOFPMPHE Ͱղͯ͠ɺΧφ͕͋Δ໊ࢺσʔλΛՃ
ྨٛޠͷొ w VOJ(SBNͰग़དྷ͍ͯͨ෦Λ༏ઌతʹ w ॖܗʲΦϑγϣϧμʔʳʲΦϑγϣϧʳ w ݕࡧ͕ଟ͍ͷ͔Β Ћ w Ϟσϧ͞ΜͷѪশʲ౻ాχίϧʳʲʹ͜ΔΜʳ
w ʲനʳͱʲϗϫΠτʳ
্Ґ֓೦ԼҐ֓೦ΛͲ͏ొ͢Δ͔
αϯμϧ αϯμϧͰݕࡧͨ͠ͱ͖ IJUͯ͠΄͍͠ αϯμϧͰݕࡧͨ͠ͱ͖ IJUͯ͠΄͘͠ͳ͍ wϏʔναϯμϧ wίϯϑΥʔταϯμϧ wΤοδιʔϧαϯμϧ wαϘαϯμϧ
wαϯμϧου αϯμϧ
্Ґ֓೦ԼҐ֓೦ͷొΛͰ͖Δ͚ͩ͠ͳ͍ w େମʲࣙॻʹొͰ͖Δޠ ্Ґ֓೦ͷޠʳ w ⚪⚪αϯμϧɺʲαϯμϧʳͱʲ⚪⚪ʳΛొ w ⚪⚪͕ొͨ͘͠ͳ͍ޠͷ߹Λআ͘ w αϯμϧουʢαϯμϧͰͳ͍ʣผ్ొ
දه༳ΕΛͲ͏͢Δ͔ w ݕࡧ͕ଟ͍ͷྨٛޠొͨ͠ w ʲόοΫʳʲόοάʳʲεΣʔυʳʲεΤʔυʳ w ϒϥϯυ༳ΕͷొΛ͠ͳ͍ w ݕࡧ࣌ͷ༳ΕΩʔϫʔυαδΣετͰରԠ w
ͷλΠτϧৄࡉΑΓϚελʔ͕ਖ਼͍͠
ࡉʑͱͨ͠ઃఆͷͨΊʹཧը໘Λ࡞ͬͨ w ը૾షΓషΓ TOJEFM TOJEFM εφΠσϧ ϒϥϯυ ΧʔΩ ΧʔΩ
ΧʔΩ ৭ ͙Ͱͨ· ͙Ͱͨ· άσλϚ ΩϟϥΫλʔ αϯμϧου αϯμϧου αϯμϧου ΧελϜ໊ࢺ Φϑγϣϧ Φϑγϣϧ Φϑγϣϧ ΧελϜ໊ࢺ Φϑγϣϧμʔ Φϑγϣϧμʔ Φϑγϣϧμʔ ΧελϜ໊ࢺ αϩϖ αϩϖ αϩϖ ΧελϜ໊ࢺ αϩϖοτ αϩϖοτ αϩϖοτ ΧελϜ໊ࢺ Φϑγϣϧμʔ Φϑγϣϧ αϩϖοτ αϩϖ όοά όοΫ ന ϗϫΠτ ۺԼ ͭͨ͘͠ ιοΫε Ϗʔναϯμϧ Ϗʔαϯ εΤʔυ εΣʔυ ౻ాχίϧ ౻ాχίϧ ʹ͜ΔΜ Ϣʔβʔࣙॻ γϊχϜࣙॻ
Կ͕ࠔ͔ͩͬͨ w ࡞Γํͷใ͕͋·Γͳ͍ w ࢼߦࡨޡɾஅยతͳใ͔ΒͬͯΈΔ͔͠ͳ͍ w Ͱ͖Δ͚ͩݕࡧͷརศੑΛߴͯ͘͠ɺ࡞ۀί ετ͕͍ํ๏WTࢿݯͱͯ͠ͷਖ਼͠͞ w Կ͕ਖ਼͍͠ͷ͔
໘ന͔ͬͨ͜ͱ w ϑΝογϣϯ͕େ͖ͳͷͰແݶʹ༸ͷจ ࣈྻσʔλΛோΊΔͷָ͕͔ͬͨ͠ w ݕࡧ݁Ռ͕͍͍ײ͡ʹͳΔͷΛχϠχϠ͠ͳ ͕ΒݟΔ͜ͱ w ݕࡧͷͨΊͷࣙॻ͡Όͳ͘ɺαʔϏεͷݴ ޠࢿݯͱͯ͠׆༻͢ΔʹͲ͏͢Ε͍͍ͷ
͔Λߟ͑ΔΑ͏ʹͳͬͨ͜ͱ
ϙΤϜ w αʔϏε༻ͷࣙॻͱ͔ݴޠࢿݯΛͭͬͨ͘ͱ ͖ʹಘͨݟΛͬͱΓ͍ͨˍڞ༗͍ͨ͠ w ৄ͍͠ํʑ͕ݟͯɺͲ͏ࢥ͏͔ɺͲ͏ͨ͠Β͍͍ͱ ࢥ͏͔ͳͲͷҙݟΛͱͬͯฉ͖͍ͨͰ͢ w αʔϏεͰूΊͨ୯ޠΛ͍ΖΜͳͱ͜ΖͰ ͑ΔΑ͏ʹձࣾͷ֎ʹग़͍͚ͯ͠Δͱ͍͍ͳ