Slide 1

Slide 1 text

։ൃࢧԉͱ͍͏࢓ࣄ !OBPLJBJOPZB 3FDSVJU.BSLFUJOH1BSUOFSTDP MUE

Slide 2

Slide 2 text

w BJOPZB w dNJYJ w dOPXSFDSVJU w ΠϯϑϥͱΞϓϦ։ൃ͕
 ŧŔŕŪũƄŝſΤϯδχΞ BJOPZBJP

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

γϯϓϧͳϏϧυύΠϓϥΠϯπʔϧXBMUFSΛϦϦʔε͠·ͨ͠c"EWBODFE5FDIOPMPHZ-BC IUUQBUMSFDSVJUUFDIDPKQCMPH 8BMUFSWCFUBΛϦϦʔε͠·ͨ͠c"EWBODFE5FDIOPMPHZ-BC IUUQBUMSFDSVJUUFDIDPKQCMPH

Slide 5

Slide 5 text

)PXUPQMBZ4DBMBPOEPDLFSJ[FEJOGSBTUSVDUVSF4QFBLFS%FDL IUUQTTQFBLFSEFDLDPNBJOPZBIPXUPQMBZTDBMBPOEPDLFSJ[FEJOGSBTUSVDUVSF

Slide 6

Slide 6 text

IUUQTFJHPTBQVSJKQ

Slide 7

Slide 7 text

ΪϦΪϦ6OEFS ͋ͱ̑ϲ݄Ͱ͍̏͞Ͱ͕͢ ͕Μ͹Γ·͢

Slide 8

Slide 8 text

ࠓ΍͍ͬͯΔ͜ͱ

Slide 9

Slide 9 text

l։ൃࢧԉz

Slide 10

Slide 10 text

4JUF3FMJBCJMJUZ&OHJOFFSJOH %FWFMPQFS1SPEVDUJWJUZ&OHJOFFSJOH ηΩϡϦςΟରԠ ΤϯδχΞ࠾༻ɾਓࣄɾ૊৫׆ੑ ࣾ಺*5 FUDʜ

Slide 11

Slide 11 text

ࢧԉର৅ ฐࣾ಺੡։ൃ૊৫಺ͷ ෳ਺ϓϩμΫτ܈

Slide 12

Slide 12 text

l։ൃΛՃ଎ͤ͞ΔͨΊͷ։ൃz ͳΒ ͳΜͰ΋΍Δ

Slide 13

Slide 13 text

ͳͥ΍Δͷ͔ʁ

Slide 14

Slide 14 text

ΤϯδχΞʹ σΟʔϓɾϫʔΫ ͯ͠΋Β͏ͨΊ

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

େࣄͳ͜ͱʹूத͢Δ  ϢʔβʹՁ஋Λಧ͚Δ͜ͱ ͨͩҰ఺ʹूதͰ͖Δ ؀ڥͷͨΊʹ

Slide 17

Slide 17 text

ϢʔβʹՁ஋Λಧ͚ΔͨΊʹ ຊ࣭తͰͳ͍ɺෆཁͳ ίετɾ࣌ؒɾ࣌ؒΛ࡟Δ  γϟϩʔϫʔΫΛۃখԽ͢Δͷ͕໨త

Slide 18

Slide 18 text

ྫ͑͹

Slide 19

Slide 19 text

ϋΠύϫʔ$*ϚγϯಋೖͰ Ϗϧυ࣌ؒ୹ॖ

Slide 20

Slide 20 text

Ϗϧυ࣌ؒͷ ୹ॖ 4DBMBϓϩδΣΫτͷ ίϯύΠϧ ʴ ςετ ʴ EPDLFSJNBHFੜ੒ ࣌ؒΛʹ

Slide 21

Slide 21 text

Ϗϧυ࣌ؒͷ୹ॖ ʹ ࣌ؒ͸ۚͰങ͑Δ ʢ͔͔ͨͩ̎̌ສͰ

Slide 22

Slide 22 text

ͱ͸͍͑ɺ ͓ۚͷແବݣ͍͸

Slide 23

Slide 23 text

ྫ͑͹ɺ2"

Slide 24

Slide 24 text

Ͱςελʔ͞ΜΛूΊͯ ࿑ಇू໿తʹςετ

Slide 25

Slide 25 text

େྔͷςετ߲໨Λ ख࡞ۀͰ࣮ࢪ ϦϦʔε·Ͱ੾Ӌ٧·͍ͬͯΔͱ͋Γ͕ͪ

Slide 26

Slide 26 text

ఆٛʹैͬͯػցతʹ ͜ͳͤΔ΋ͷ͸ ࣗಈԽ͢Δ΂͖

Slide 27

Slide 27 text

ςελʔ͞Μʹ͸ ਓؒͰͳ͍ͱൃݟ͕ ೉͍͠όάΛ୳͢͜ͱʹ ूதͯ͠΄͍͠

Slide 28

Slide 28 text

εϚϗΞϓϦͷςετ ࣗಈԽج൫ͷಋೖ

Slide 29

Slide 29 text

0QFO45'ͷ ಋೖ ݕূ୺຤ͷςετϑΝʔϜߏங αΠόʔ͞Μ͓ੈ࿩ʹͳͬͯ·͢

Slide 30

Slide 30 text

0QFO45'ͷ ಋೖ ϦϞʔτϫʔΫ࣌΋ ݕূ୺຤ར༻͕༰қʹ

Slide 31

Slide 31 text

"QQJVNʹΑΔ ࣮ػFFςετ ݕূɾಋೖ 0QFO45'4BVDFMBCTΛ ςετϑΝʔϜͱͯ͠ ࣗಈԽج൫Λߏங <3.1Y2VJQQFSNFFUVQ>։ൃͷͨΊͷ։ൃdεϚϗΞϓϦ޲͚FFςετͷݕূಋೖࣄྫΛ௨ͯ͡d4QFBLFS%FDL IUUQTTQFBLFSEFDLDPNBJOPZBSNQYRVJQQFSNFFUVQOVNCFSLBJGBGBMTFUBNFGBMTFLBJGBTVNBIPBQVSJYJBOHLFFFUFTVUPGBMTFKJBO[IFOHEBPSVTIJMJXPUPOH[JUF

Slide 32

Slide 32 text

"QQJVNʹΑΔ ࣮ػFFςετ ςετ࣮ߦͷ࢓૊ΈΛ ੔͑ͨ <3.1Y2VJQQFSNFFUVQ>։ൃͷͨΊͷ։ൃdεϚϗΞϓϦ޲͚FFςετͷݕূಋೖࣄྫΛ௨ͯ͡d4QFBLFS%FDL IUUQTTQFBLFSEFDLDPNBJOPZBSNQYRVJQQFSNFFUVQOVNCFSLBJGBGBMTFUBNFGBMTFLBJGBTVNBIPBQVSJYJBOHLFFFUFTVUPGBMTFKJBO[IFOHEBPSVTIJMJXPUPOH[JUF

Slide 33

Slide 33 text

"QQJVNʹΑΔ ࣮ػFFςετ $IBMMFOHJOHͳ औΓ૊Έ΋ Perceptual diffsʹΑΔσάϨͷݕग़཰ڧԽ
 https://github.com/uber/image-diff <3.1Y2VJQQFSNFFUVQ>։ൃͷͨΊͷ։ൃdεϚϗΞϓϦ޲͚FFςετͷݕূಋೖࣄྫΛ௨ͯ͡d4QFBLFS%FDL IUUQTTQFBLFSEFDLDPNBJOPZBSNQYRVJQQFSNFFUVQOVNCFSLBJGBGBMTFUBNFGBMTFLBJGBTVNBIPBQVSJYJBOHLFFFUFTVUPGBMTFKJBO[IFOHEBPSVTIJMJXPUPOH[JUF

Slide 34

Slide 34 text

ࣗಈԽʹΑΔ࡟ݮ ͚ͩͰͳ͘ʜ

Slide 35

Slide 35 text

2"σΟϨΫγϣϯͷ ෛՙ࡟ݮ  σΟϨΫλʔͷ γϟϩʔϫʔΫ࡟ݮ

Slide 36

Slide 36 text

σΟϨΫλʔҎ֎ʹ΋ʜ ΤϯδχΞ୲౰֎ͷ࢓ࣄ γϟϩʔϫʔΫͩΒ͚

Slide 37

Slide 37 text

ྫ͑͹ ϚʔέςΟϯά୲౰ σʔλूܭۀ຿

Slide 38

Slide 38 text

ڪΔ΂͖ ਓྗεΫϨΠ ϐϯά ച্ूܭγεςϜ σʔλग़ྗ"1*΍ σʔλμϯϓػೳ͕ͳ͔ͬͨ ػೳ௥Ճͷ໨ॲ΋ͨͨͳ͍  ˣ ଞࣾ؅ཧԼͷച্ूܭը໘Λ ̍ϖʔδͣͭΊͬͯ͘ &YDFMʹసࣸʜ

Slide 39

Slide 39 text

4DSBQZʹΑΔ ͓खܰ εΫϨΠϐϯά ਓखͰ͸࣮ݱෆՄೳͩͬͨ ස౓Ͱͷച্ܭଌ͕ Ͱ͖ΔΑ͏ʹ

Slide 40

Slide 40 text

4DSBQZʹΑΔ ͓खܰ εΫϨΠϐϯά 4DSBQZΫϩʔϥ޲͚ ϑϨʔϜϫʔΫ ਺ेߦॻ͚͹ͦͦ͜͜ಈ͘
 Ϋϩʔϥ͕ͭ͘ΕΔ
 ͓͢͢Ί http://asheesh.org/pub/scrapy-talk/#1

Slide 41

Slide 41 text

ϧʔνϯϫʔΫ ଞʹ΋·ͩ·ͩͨ͘͞Μ͋Δ

Slide 42

Slide 42 text

ձٞࣨ༧໿

Slide 43

Slide 43 text

શࣾඪ४ͷձٞࣨ༧໿γεςϜ ͋ΒΏΔ*5Ϧςϥγɾۀ຿ܗଶͷશࣾһ ਺ສਓن໛ ͕ ౳͘͠࢖͑Δ΂͘࡞ΒΕͨݹͷγεςϜ

Slide 44

Slide 44 text

ՄೳͳݶΓ࢖͍΍͘͢ ม͑Δ͜ͱ͕೉͍͠΋ͷΛ ࣗ෼͕ͨͪม͑ΒΕΔൣғͰม͍͑ͯ͘ ձٞࣨ༧໿ΞϓϦΛ ձٞࣨલʹઃஔ 4MBDLJOUFHSBUJPO

Slide 45

Slide 45 text

ଞʹ΋͍Ζ͍Ζ ίπίπࣗಈԽ

Slide 46

Slide 46 text

w ϝʔϧͰ͔͠ల։͞Εͳ͍৘ใڞ༗ɻΤϯδχΞ औΓ͜΅͢
 4MBDLʹྲྀ͢࢓૊Έ࣮૷ .JDSPTPGUqPXΛར༻  w QSJWBUFͳTMBDLDIBOOFMͷQVCMJDԽ
 DIBOOFMͷΞʔΧΠϒɾϦωʔϜͱ৽ن࡞੒Λ
 ߦ͏CPU࣮૷ w ۀ຿πʔϧ܈ͷΞΧ΢ϯτਃ੥ɾ؅ཧ
 (PPHMF'PSN 4MBDLͰDIBUPQTͳ෷͍ग़͠

Slide 47

Slide 47 text

γϟϩʔϫʔΫ͸ΤϯδχΞ͔Β ௚઀ݟ͑ͳ͍ͱ͜Ζʹ΋ ࢁ΄Ͳ͋Δ

Slide 48

Slide 48 text

ίετͱ࣌ؒ͸ ͪΓͭ΋ࣜʹ૿͑ͯ ϦϦʔε଎౓Λ஗ͤ͘͞Δ

Slide 49

Slide 49 text

–Tom DeMarco, দݪ ༑෉༁ ʮϐʔϓϧ΢ΣΞʯ lձࣾͷϧʔνϯϫʔΫ͸ɺबۀ࣌ؒʹݟ߹͏ͱ ͜Ζ·Ͱ๲ு͢Δ܏޲͕͋Δz

Slide 50

Slide 50 text

ΤϯδχΞྲྀͷղܾ๏Ͱ γϟϩʔϫʔΫΛ ௵͍͖ͯ͠·͠ΐ͏

Slide 51

Slide 51 text

(4ͷهࣄ IUUQTXXXUFDIOPMPHZSFWJFXKQTBTHPMENBOFNCSBDFTBVUPNBUJPOFWFOUIFNBTUFSTPGUIFVOJWFSTFBSFUISFBUFOFE

Slide 52

Slide 52 text

–Joel Spolsky ੨໦ ༃༁ ʮMore Joel on Softwareʯ l͝Έ͋Δͱ͜Ζʹۚ͸͋Δz

Slide 53

Slide 53 text

–Eric Sink, ੨໦ ༃༁ ʮֵ৽తιϑτ΢ΣΞاۀͷ࡞Γํʯ lιϑτ΢ΣΞ։ൃऀ͸ձࣾͷதͰࣗ෼͕࠷΋ॏཁͳਓؒͩͱࢥ͍ ࠐΉ܏޲͕͋Δɻ͍͋ʹ͘ͱ͜ͷଚେ͞ʹ͸͍ͬ΃Μͷਅ࣮͕͋Γɺ ։ൃऀ͕ଞͷਓͨͪͱ͏·͘ંΓ߹͏ͷΛ೉͍ͯ͘͠͠ΔɻͦΕͰ ΋ࢲͷओு͸มΘΒͳ͍ɻ։ൃऀͷεΩϧ͸ίʔσΟϯάҎ֎ͷ͞ ·͟·ͳλεΫʹ΋ద༻Մೳͳͷͩɻ ɾΧελϚαʔϏε୲౰ͱͯ͠ɺ੡඼ͷ࢓૊ΈΛཧղ͍ͯ͠Δ ։ൃऀ͸໰୊ΛΑΓૣ͘ݟ͚ͭΔ͜ͱ͕Ͱ͖Δ ɾηʔϧεΨΠͱͯ͠ɺ੡඼ͷ࢓૊ΈΛཧղ͍ͯ͠Δ։ൃऀ͸ ͦΕͰԿ͕Ͱ͖Δͷ͔ͱ͍͏࣭໰ʹ༰қʹ౴͑Δ͜ͱ͕Ͱ͖Δɻ ɾϚʔέςΟϯά୲౰ͱͯ͠ɺ։ൃऀ͸ϚʔέοτઓུʹӨڹ͢Δ ٕज़తͳબ୒͕͔͔ΘΔܾஅʹ໾ཱͭ͜ͱ͕Ͱ͖Δɻ اۀ͸͸։ൃऀ͕ιϑτ΢ΣΞߏஙҎ֎ͷ׆ಈʹ͔͔ΘΔ͜ͱΛ ڪΕΔ΂͖Ͱ͸ͳ͍ɻz