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
TDD applied Data Cleansing
Search
dproject21
September 08, 2018
Programming
0
1.8k
TDD applied Data Cleansing
XP祭り2018 LT祭り にて発表
TDDもせずに "AI" とは何事だ?
機械学習ではなく、機械学習で用いるデータのクレンジングにTDDを適用した話をしました。
dproject21
September 08, 2018
Tweet
Share
More Decks by dproject21
See All by dproject21
ISTQB/JSTQBシラバスから学ぶAgileTesting / A guide of agile testing based on ISTQB syllabus
dproject21
4
3.4k
JSTQB Advanced Level 模擬問題作成方法 / methodology to questions creation for JSTQB advanced level
dproject21
3
1.4k
試験に絶対出ないJSTQB AL TA,TM問題 / Questions that will never be given on the exam of JSTQB advanced level
dproject21
0
1.4k
The official zip code book is terrible. And what should I do with the address you wrote.
dproject21
0
170
Data preprocessing for MachineLearning/BI by Golang and MySQL UDF
dproject21
1
890
高精度名寄せシステムを支える テキスト処理 (の、ほんのさわり)
dproject21
3
2.5k
ゼロから作るDeepLearning 第7章前半ざっくりまとめ
dproject21
0
1k
ゼロから作るDeepLearning 第5章 誤差逆伝播法による重み更新を追ってみる
dproject21
0
1.1k
ゼロから作るDeepLearning 第6章ざっくりまとめ
dproject21
2
1.3k
Other Decks in Programming
See All in Programming
自力でTTSモデルを作った話
zgock999
0
110
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
160
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1.1k
PRレビューのお供にDanger
stoticdev
1
240
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
250
Jasprが凄い話
hyshu
0
170
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
55
19k
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1.2k
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
310
未経験でSRE、はじめました! 組織を支える役割と軌跡
curekoshimizu
1
160
React 19アップデートのために必要なこと
uhyo
8
1.5k
TCAを用いたAmebaのリアーキテクチャ
dazy
0
200
Featured
See All Featured
Making Projects Easy
brettharned
116
6k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Adopting Sorbet at Scale
ufuk
74
9.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Building Adaptive Systems
keathley
40
2.4k
How to Ace a Technical Interview
jacobian
276
23k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
570
Rails Girls Zürich Keynote
gr2m
94
13k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
Designing Experiences People Love
moore
140
23k
Transcript
1 5%% ͠ͳ͍Ͱ z"*z ͱԿࣄͩ 91ࡇΓ Inspired by @iwaoRd
2 ϓϩϑΟʔϧ ాޱେथ %BJLJ5BOPHVDIJ !EQSPKFDU ϛʔΧϯύχʔגࣜձࣾ (PMBOH0VUTUBOEJOH%BUBFOHJOFFS (0% ྵࡉιϑτϋε 7#/&5
4*FS 8FCαʔϏεاۀ ྲྀ࿘ͷຽ $+BWB ػցֶश *P5τϥΠΞϧࢀը 1ZUIPO (PMBOH લॲཧϥΠϒϥϦ։ൃͳͲ "LJCBHP $PEFGPS+BQBO Ϧʔμʔक़ %FW-07& 1VC 50$G& #PPUDBNQ 8"$"5& ϛʔΧϯύχʔגࣜձࣾ ೖ͙ͬͯ͢ɺϦʔϚϯγϣοΫͰ ֎ʹग़Εͳ͔ͬͨ lड͚z 91ࡇΓॳࢀՃ
3 ϓϩϑΟʔϧ ాޱେथ %BJLJ5BOPHVDIJ !EQSPKFDU ϛʔΧϯύχʔגࣜձࣾ (PMBOH0VUTUBOEJOH%BUBFOHJOFFS (0% ྵࡉιϑτϋε 7#/&5
4*FS 8FCαʔϏεاۀ ྲྀ࿘ͷຽ $+BWB ػցֶश *P5τϥΠΞϧࢀը 1ZUIPO (PMBOH લॲཧϥΠϒϥϦ։ൃͳͲ "LJCBHP $PEFGPS+BQBO Ϧʔμʔक़ %FW-07& 1VC 50$G& #PPUDBNQ 8"$"5& ϛʔΧϯύχʔגࣜձࣾ ೖ͙ͬͯ͢ɺϦʔϚϯγϣοΫͰ ֎ʹग़Εͳ͔ͬͨ lड͚z 91ࡇΓॳࢀՃ ͯ͢ͷόουσʔλΛ ੜ·ΕΔલʹফ͠ڈΓ͍ͨ ͤΊͯ"*#*ʹ৯ΘͤΔલʹ ফ͠ڈΓ͍ͨ ࠷ۙͷϙϦγʔ
mecompany Inc. 4 8 C: % # G+K $/& /0B
-! 8 XVWV WX)Y( ,J'EZSYYSXQ XeQ 3 I ¡A>#¢ P* 9 ¡bci¢ WRVVV W_ 51N?D M6F ldg ean mjg "L@ B" VYS\Z[]S^[]_ VYS\\\]SZ_XX t||y`UUvrpxvyow~Tvr t||y`UU{p}ruTvr t||y`UU{p}ruqo|oTvr t||y`UU{p}ruZvzTvr L@ ?51 U7DU? =2H / / / fl / / ; / 4O?.< kbmdg kbmdgQsxzQhj 2018 9)8( ϓϩϑΟʔϧ
mecompany Inc. 5 ҩྍػؔɾༀہɾհޢࣄۀॴͷࢪઃɾ๏ਓσʔλϕʔε ϥΠηϯεͷൢചɾϝϯςφϯεΛߦ͍ͬͯ·͢ɻ 201898 ϓϩϑΟʔϧ
mecompany Inc. 6 5%% ͠ͳ͍Ͱ z"*z ͱԿࣄͩ 91ࡇΓ ػցֶशͷ ΄΅͠·ͤΜ
mecompany Inc. 7 5%% ͠ͳ͍Ͱ z"*z ͱԿࣄͩ 91ࡇΓ ςετۦಈ։ൃ ͖ͪΜͱಡΜͰ
ͳ͔ͬͨͰ͢ ͍͢·ͤΜ
<3S mecompany Inc. 8 7 > QP#? y!9/w (Az <[R'_Uw4KwF6_HX
Z^\Wkxg* Y^]r`xmoic_ \'_%X y!9/w (Az 'U Cefjt@ ;B.E@ ;3uxbx ;3S MJ O2( SCUEL Projectpxlnx VL $=Ndxqf I8G &G ;wMwOdxqdx wwA 1Dsvoah M0 WEB WEB WEB SCUEL Projectpxlnx kxg58 )+ :T] HP 2018"9-8, ϓϩϑΟʔϧ
2+H mecompany Inc. 9 - 4 FE5 t/'r !7u t/'r
!7u J 9`bem6 18&;6 1+ns\s 1+H B? D*! SCUEL Projectjsghs KA 3C_skb > .= = 1rBrD_sk_s rr7 ):lpi[d B( WEB WEB WEB SCUEL Projectjsghs fsc,. "# 0IW HP 20189%8$ G Z<NYOXV@TUPO fsc]oqaq^VQMRWASNL ϓϩϑΟʔϧ
mecompany Inc. 10 ެతͳެ։ใ͔Β z͑Δzσʔλʹ্ཱͯ͛ͨ ҩྍػؔɾༀہɾհޢࣄۀॴͷࢪઃɾ๏ਓσʔλϕʔε ϥΠηϯεͷൢചɾϝϯςφϯεΛߦ͍ͬͯ·͢ɻ 201898 ϓϩϑΟʔϧ
5-K ࠓͷʜ mecompany Inc. 11 0 7 IH8 r2)p #:s
r2)p #:s "M <abem9 4;(>9 4-nq_q 4-K EB G,# SCUEL Projectjqghq ND 6F`qkb A1@ !@ 4pEpG`qk`q pp: +=loi^d E* WEB WEB WEB SCUEL Projectjqghq fqc.1 $% 3LZ HP 20189'8& J"]?Q\R[Y CWXSR fqc /YTPUZDVQO #*͚ͷ σʔλ ΫϨϯδϯάͷ Ͱ͢
5-K ࠓͷʜ mecompany Inc. 12 0 7 IH8 r2)p #:s
r2)p #:s "M <abem9 4;(>9 4-nq_q 4-K EB G,# SCUEL Projectjqghq ND 6F`qkb A1@ !@ 4pEpG`qk`q pp: +=loi^d E* WEB WEB WEB SCUEL Projectjqghq fqc.1 $% 3LZ HP 20189'8& J"]?Q\R[Y CWXSR fqc /YTPUZDVQO ࣗવݴޠॲཧ دΓͷͰ͢
13 • σʔλͦͷͷͷ࣭Λ Ҿ্͖͛ΔͨΊʹ σʔλΫϨϯδϯάΛ͢Δ • σʔλΫϨϯδϯάΛ ͢ΔͨΊʹϓϩάϥϜΛॻ͘ • σʔλΫϨϯδϯάϓϩάϥϜͷ
࣭Λ୲อ͢ΔͨΊʹ ςετίʔυॻ͘ z͑ΔzσʔλΛཱͯΔͨΊʹ
14 EC UFDITIPXDBTF %ηογϣϯ https://www.db-tech-showcase.com/dbts/tokyo r
$PEF GPS +BQBO 4VNNJU ৽ׁ lόουΦʔϓϯσʔλڙཆࣉz ηογϣϯ https://summit2018.code4japan.org/session/210/ Ͱશ൛ΛΓ·͢
201898 15 σʔλ։ൃͷݱ
mecompany Inc. 16
2018 98 ެతػ͔ؔΒ։ࣔ͞Ε͍ͯΔσʔλ &YDFM $47ͷଞ 1%' 8FCαΠτ ࢴʢཧʣ͕͋Δ ࢴͱઓ͏ͨΊʹ0$3Λͬͨ͋ͱ ޡೝࣝσʔλͱઓΘͳ͚Ε͍͚ͳ͍ɻ σʔλ։ൃͷݱ
mecompany Inc. 17
2018 98 ެతػ͔ؔΒ։ࣔ͞Ε͍ͯΔσʔλ தʹ zόουσʔλz ଘࡏ͢Δ • ޡࣈࣈ • දهΏΕ • ҟମࣈ • ༣ศ൪߸ؒҧ͍ • ి൪߸ ͳ͔ͥ&ϝʔϧΞυϨε • ʙࢢʙ۠ ͷ͕۠ൈ͚͍ͯΔ σʔλ։ൃͷݱ
18 ྫ͑ʜ
201898 19 ॅॴ ۽ຊࢢձொYYY
201898 20 ۽ຊࢢձொ ʹ ྩࢦఆࢢҠߦ
201898 21 ۽ຊࢢձொ ۽ຊࢢೆ۠ձொ ˓ ✕
201898 22 5FMYYZZZ[[[[ʲNBJMYQKVH!FYBNQMFDPNʳ
201898 23 5FMYYZZZ[[[[ʲNBJMYQKVH!FYBNQMFDPNʳ ͳΜͰ ϝʔϧΞυϨε ೖ͍ͬͯΔΜͰ͢ʁ
201898 24 ͖Ε͍ͳσʔλʹ ͯ͋͛͠ͳ͍ͱ ੳਫ਼͕ ্͠ͳ͍
201898 25 ͦ͜Ͱ 5%%Ͱ͢Α
https://www.slideshare.net/t_wada/tdd-agile-samurai-base-camp
σʔλΫϨϯδϯάϓϩάϥϜ ͷ։ൃαΠΫϧ ϚτϞͳσʔλΛߟ͑Δ ϚτϞͳσʔλΛzҙਤͨ͠ܗࣜzʹมͨ͠ ݁ՌΛςετέʔεͱͯ͠Ճ͢Δ ͦͷςετΛ࣮ߦࣦͯ͠ഊͤ͞Δ 3FE lҙਤͨ͠ܗࣜzʹม͢ΔίʔυΛॻ͘ Ͱॻ͍ͨςετΛޭͤ͞Δ
(SFFO ςετ͕௨Δ··ͰϦϑΝΫλϦϯάΛߦ͏ 3FGBDUPS ߥΕͨσʔλΛՃͯ͠ʙΛ܁Γฦ͢
28 import ( "testing" "github.com/stretchr/testify/assert” ) func TestCleansingExample (t *testing.T)
{ var testCases := []struct { desc string in string want string }{ {“ϚτϞͳσʔλ”, “03-1234-5678”, “03-1234-5678”}, {“ϝΞυೖͬͯΔߥΕͨσʔλ”, “TEL:03-1234-9876 email:
[email protected]
”, “03-1234-9876”}, } for _, test := range testCases { assert.Equal(t, Cleansing(test.in), test.want, test.desc) } } ͜͜ʹ lߥΕͨσʔλzͱ l·͍͠σʔλzͷ ςετέʔεΛՃ͑ͯɺ 5%%ͷαΠΫϧΛճ͢
29 https://www.slideshare.net/hironoriwashizaki/ess2018-112258214 2017 σʔλ ΫϨϯδϯά ͜ͷαΠΫϧΛ ճ͢
͜ͷಓͷΓͰσʔλΫϨϯδϯά ϓϩάϥϜΛҭͯͯʜ
ੳͰ͖Δɺ͖Ε͍ͳσʔλ ͜ͷಓͷΓͰߴ͍ਫ਼ͷ σʔληοτΛ࡞Δ
! mecompany Inc. 32 / -0 / -0
" 201898 લॲཧରσʔλ ԯ߲ ʢेສϨίʔυ ºສ߲ʣ %'+.* +.*,.) ࠃ๏ਓ ສϨίʔυ ެతػ͔ؔΒ։ࣔ͞Ε͍ͯΔσʔλΛ౷߹͠ l͑Δzσʔλʹ͢ΔͨΊɺલॲཧ͕ඞཁ #( $& +.*,.) ଞ͔ࣾΒߪೖͨ͠σʔλϕʔε ԯϨίʔυ σʔλ։ൃͷݱ
33 େྔͷσʔλΫϨϯδϯάͰ ॲཧ݁ՌΛ֬ೝ͢ΔͨΊʹ • খ͍͞σʔληοτͰ ϑΟʔυόοΫαΠΫϧΛখ͘͞ճ͢ • ΑΓେ͖͍σʔληοτΛ૬खʹ ؒόονͰ$*Λճ͢ •
l໊دͤzՄࢹԽγεςϜ·ͰσʔλΛ σϦόϦͯ͠ϑΟʔυόοΫαΠΫϧΛ ճ͢
201898 34 σʔλΫϨϯδϯάΛ ͖ͬͪΓΔͱԿ͕ඒຯ͍͔͠ • දهΏΕΛഉআͯ͠NFDBCͰ ͔ͪॻ͖͍͢͠σʔλʹͳΔ • ༨ͳจࣈྻΛഉআͯ͠ɺଞͷ σʔληοτͱܨ͛ΒΕΔ
• ΧςΰϦ͚ϥϕϦϯά͕͖Ε͍ʹ Ͱ͖ͯɺσʔλੳਫ਼্͕͕Δ
201898 35 ػցֶशͰ ਫ਼େࣄ Ͱ͢ΑͶ
36 https://www.slideshare.net/hironoriwashizaki/ess2018-112258214 σʔλͷ࡞ΓࠐΈɺػցֶशͷΠϯϑϥ ैདྷͷΤϯδχΞϦϯά͕
37 https://www.slideshare.net/hironoriwashizaki/ess2018-112258214 ػցֶशϞσϧɺσʔλ ϑΟʔυόοΫΛճͯ͠ҭͯΔ
38 https://www.slideshare.net/hironoriwashizaki/ess2018-112258214 ͜ͷ͋ͨΓͷ lεϚʔτΤεΠʔzΛ ཤम͢Δͱ͍͍ͱࢥ͍·͢ ʢࢲ͕ཤम͍ͨ͠ʣ
mecompany Inc. 39 ެతͳެ։ใ͔Β z͑Δzσʔλʹ্ཱͯ͛ͨ ҩྍػؔɾༀہɾհޢࣄۀॴͷࢪઃɾ๏ਓσʔλϕʔε ϥΠηϯεͷൢചɾϝϯςφϯεΛߦ͍ͬͯ·͢ɻ 201898 σʔλ։ൃͷݱ
40 • σʔλͦͷͷͷ࣭Λ Ҿ্͖͛ΔͨΊʹ σʔλΫϨϯδϯάΛ͢Δ • σʔλΫϨϯδϯάΛ ͢ΔͨΊʹϓϩάϥϜΛॻ͘ • σʔλΫϨϯδϯάϓϩάϥϜͷ
࣭Λ୲อ͢ΔͨΊʹ ςετίʔυॻ͘ z͑ΔzσʔλΛཱͯΔͨΊʹ
41 ۩ମతͳऔΓΈ EC UFDITIPXDBTF %ηογϣϯ lຊൃʂ.Z42-6%'ͱ(PݴޠͰ ࡞ΔϏοάσʔλલॲཧج൫z Ͱ͓͠·͢
https://www.db-tech-showcase.com/dbts/tokyo
42 ۩ମతͳऔΓΈ r $PEF GPS +BQBO 4VNNJU ৽ׁ lόουΦʔϓϯσʔλڙཆࣉz
Ͱ͓͠·͢ https://summit2018.code4japan.org/session/210/ ։ࣔՄೳͳόουσʔλͷߘ ͓͓ͪͯ͠Γ·͢
201898 43 ݁ہͷͱ͜Ζ
201898 44 ػցֶश ΞδϟΠϧ։ൃ ͕zલఏz
45 5%% ͠ͳ͍Ͱ z"*z ͱԿࣄͩ 91ࡇΓ
201898 46 lΞδϟΠϧ։ൃ ·ͩͬͯͳ͍z
201898 47 ͋ͨͬͯ͠ ͍·͞ο
48 91ͱ ιʔγϟϧνΣϯδ Ͱ͋Δ UPCFDPOUJOVFˠ EC UFDITIPXDBTF