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
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
630
楽しく向き合う例外対応
okutsu
0
700
複数のAWSアカウントから横断で 利用する Lambda Authorizer の作り方
tc3jp
0
120
Jakarta EE meets AI
ivargrimstad
0
500
PRレビューのお供にDanger
stoticdev
1
240
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
200
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
280
color-scheme: light dark; を完全に理解する
uhyo
7
500
Bedrock Agentsレスポンス解析によるAgentのOps
licux
3
930
Go 1.24でジェネリックになった型エイリアスの紹介
syumai
2
300
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1.1k
CloudNativePGを布教したい
nnaka2992
0
120
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Embracing the Ebb and Flow
colly
84
4.6k
Designing for Performance
lara
604
68k
Agile that works and the tools we love
rasmusluckow
328
21k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Music & Morning Musume
bryan
46
6.4k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
520
Become a Pro
speakerdeck
PRO
26
5.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Unsuck your backbone
ammeep
669
57k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
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