$30 off During Our Annual Pro Sale. View Details »

"Social Coding", It's Not Unusual in ESM

"Social Coding", It's Not Unusual in ESM

札幌Ruby会議スポンサーセッションでの発表スライドです。

Kenichi Takahashi

September 14, 2012
Tweet

More Decks by Kenichi Takahashi

Other Decks in Programming

Transcript

  1. ג
    Ӭ࿨γεςϜϚωδϝϯτ
    ∁ڮ݈Ұ
    LFOUBLBIBTIJ!FTNDPKQ
    IUUQTIVDSFBNOFU

    4BQQPSP3VCZ,BJHJ
    ;ͭ͏ͷιʔγϟϧ
    ίʔσΟϯά
    Social Coding, It's Not Unusual in ESM

    View Slide

  2. View Slide

  3. 5",")"4)*,FOJDIJ

    View Slide

  4. IUUQTBQQPSPSVCZLBJHJPSHFOTQPOTPSTIUNM

    View Slide

  5. IUUQGBDFCPPLDPNFTNDPKQ

    View Slide

  6. View Slide

  7. View Slide

  8. ࠓ೔ͷ͓͸ͳ͠
    Ӭ࿨γεςϜϚωδϝϯ
    τͰ;ͭ͏ͷιʔγϟϧ
    ίʔσΟϯάΛҰॹʹ
    ΍ͬͯ͘ΕΔ஥ؒΛ୳͠
    ͍ͯ·͢

    View Slide

  9. ;ͭ͏ͷιʔγϟϧίʔσΟϯά

    View Slide

  10. ࠓ೔͓࿩͠͠ͳ͍͜ͱ
    wϓϩδΣΫτͷ࢝Ίํ
    wϓϩδΣΫτͷਐΊํ
    wݟੵΓͷ΍Γํ
    wܭըͷཱͯํ

    View Slide

  11. ྑ͘ॻ͚ͨ
    Πϯηϓγϣϯ
    οΩͱ͸
    @nawoto
    ϓϩδΣΫτͷ࢝Ίํ
    IUUQTQFBLFSEFDLDPNVOBXPUPQHPPEFYBNQMFPGJODFQUJPOEFDL

    View Slide

  12. ΞδϟΠϧ։ൃ
    جຊ Ω
    ͷ
    3FUVSOT
    ੢ଜ௚ਓ
    id:nawoto
    [email protected]
    ׬શ൛
    ϓϩδΣΫτͷਐΊํ
    IUUQTQFBLFSEFDLDPNVOBXPUPQCBTJDPGCBTJDTPGBHJMFEFWFMPQNFOU

    View Slide

  13. ;ͭ͏ͷιʔγϟϧίʔσΟϯά

    View Slide

  14. ;ͭ͏ͷιʔγϟϧίʔσΟϯά
    Ұ൪্ͷετʔϦʔ
    Λz4UBSUz͢Δ

    View Slide

  15. ;ͭ͏ͷιʔγϟϧίʔσΟϯά
    ίʔυΛॻ͍ͯ1VMM
    3FRVFTU͢Δ

    View Slide

  16. ίʔυΛॻ͘

    $VDVNCFSͰΤϯυπʔ
    ΤϯυςετΛॻ͘

    34QFDͰϢχοτςετॻ͘

    ϓϩμΫτίʔυΛॻ͘

    ϦϑΝΫλϦϯά͢Δ

    View Slide

  17. ςετۦಈ։ൃʹ͍ͭͯ
    4VO4FQ

    View Slide

  18. SBLFTUBUT
    BtoCϑϩϯτɺBtoBόοΫΤϯυͳۀ຿ΞϓϦ(ESMͷΈɺ100ਓ݄ఔ౓)
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Name | Lines | LOC | Classes | Methods | M/C | LOC/M |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Controllers | 4473 | 3765 | 58 | 384 | 6 | 7 |
    | Helpers | 1353 | 1123 | 3 | 134 | 44 | 6 |
    | Models | 7422 | 6149 | 131 | 741 | 5 | 6 |
    | Libraries | 2504 | 1922 | 44 | 271 | 6 | 5 |
    | Model specs | 13057 | 10979 | 2 | 20 | 10 | 546 |
    | View specs | 2255 | 1588 | 0 | 3 | 0 | 527 |
    | Controller specs | 5007 | 4170 | 0 | 5 | 0 | 832 |
    | Helper specs | 1215 | 1013 | 0 | 0 | 0 | 0 |
    | Library specs | 1924 | 1604 | 7 | 23 | 3 | 67 |
    | Routing specs | 106 | 86 | 0 | 0 | 0 | 0 |
    | Cucumber features | 2496 | 1933 | 1 | 11 | 11 | 173 |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Total | 41812 | 34332 | 246 | 1592 | 6 | 19 |
    +----------------------+-------+-------+---------+---------+-----+-------+
    Code LOC: 12959 Test LOC: 21373 Code to Test Ratio: 1:1.6

    View Slide

  19. SBLFTUBUT
    ֶशक़޲͚CRM(ESM 15ਓ݄ఔ౓)
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Name | Lines | LOC | Classes | Methods | M/C | LOC/M |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Controllers | 1633 | 1378 | 38 | 163 | 4 | 6 |
    | Helpers | 411 | 347 | 0 | 56 | 0 | 4 |
    | Models | 5563 | 4484 | 127 | 565 | 4 | 5 |
    | Libraries | 302 | 270 | 1 | 17 | 17 | 13 |
    | Model specs | 4801 | 3856 | 0 | 11 | 0 | 348 |
    | Controller specs | 64 | 51 | 0 | 0 | 0 | 0 |
    | Cucumber features | 1157 | 885 | 0 | 4 | 0 | 219 |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Total | 13931 | 11271 | 166 | 816 | 4 | 11 |
    +----------------------+-------+-------+---------+---------+-----+-------+
    Code LOC: 6479 Test LOC: 4792 Code to Test Ratio: 1:0.7

    View Slide

  20. SBLFTUBUT
    େखISPτϥϑΟοΫ෼ੳ(ESMͷΈɺ30ਓ݄ఔ౓)
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Name | Lines | LOC | Classes | Methods | M/C | LOC/M |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Controllers | 932 | 765 | 16 | 101 | 6 | 5 |
    | Helpers | 106 | 76 | 0 | 13 | 0 | 3 |
    | Models | 1390 | 1048 | 13 | 100 | 7 | 8 |
    | Libraries | 1018 | 787 | 8 | 71 | 8 | 9 |
    | Model specs | 3344 | 2802 | 0 | 3 | 0 | 932 |
    | Controller specs | 860 | 683 | 0 | 0 | 0 | 0 |
    | Helper specs | 119 | 98 | 0 | 0 | 0 | 0 |
    | Library specs | 1562 | 1317 | 0 | 0 | 0 | 0 |
    | Mailer specs | 34 | 29 | 0 | 0 | 0 | 0 |
    | Request specs | 519 | 428 | 0 | 0 | 0 | 0 |
    | Acceptance specs | 4557 | 3680 | 0 | 11 | 0 | 332 |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Total | 14441 | 11713 | 37 | 299 | 8 | 37 |
    +----------------------+-------+-------+---------+---------+-----+-------+
    Code LOC: 2705 Test LOC: 9008 Code to Test Ratio: 1:3.3

    View Slide

  21. SBLFTUBUT
    ECϞʔϧ(ଞؚࣾΉɺ200ਓ݄Ҏ্)
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Name | Lines | LOC | Classes | Methods | M/C | LOC/M |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Controllers | 14905 | 11437 | 242 | 892 | 3 | 10 |
    | Helpers | 3607 | 2877 | 1 | 361 | 361 | 5 |
    | Models | 22088 | 17175 | 328 | 1362 | 4 | 10 |
    | Libraries | 39418 | 30644 | 602 | 1567 | 2 | 17 |
    | Model specs | 25748 | 22142 | 12 | 31 | 2 | 712 |
    | View specs | 63 | 46 | 0 | 0 | 0 | 0 |
    | Controller specs | 20875 | 17998 | 0 | 31 | 0 | 578 |
    | Helper specs | 2795 | 2258 | 0 | 3 | 0 | 750 |
    | Library specs | 22244 | 18570 | 45 | 122 | 2 | 150 |
    | Mailer specs | 613 | 561 | 0 | 1 | 0 | 559 |
    | Routing specs | 310 | 257 | 0 | 0 | 0 | 0 |
    | Cucumber features | 5917 | 5013 | 0 | 18 | 0 | 276 |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Total |158583 | 128978| 1230 | 4388 | 3 | 27 |
    +----------------------+-------+-------+---------+---------+-----+-------+

    View Slide

  22. SBLFTUBUT
    QA@IT(ESMͷΈ)
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Name | Lines | LOC | Classes | Methods | M/C | LOC/M |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Controllers | 956 | 706 | 28 | 106 | 3 | 4 |
    | Helpers | 48 | 35 | 0 | 6 | 0 | 3 |
    | Models | 1182 | 947 | 49 | 102 | 2 | 7 |
    | Libraries | 164 | 130 | 7 | 14 | 2 | 7 |
    | Activities | 977 | 683 | 37 | 88 | 2 | 5 |
    | Decorators | 423 | 323 | 0 | 40 | 0 | 6 |
    | Model specs | 418 | 314 | 0 | 3 | 0 | 102 |
    | Controller specs | 79 | 54 | 0 | 0 | 0 | 0 |
    | Library specs | 105 | 79 | 0 | 0 | 0 | 0 |
    | Mailer specs | 56 | 40 | 0 | 0 | 0 | 0 |
    | Routing specs | 0 | 0 | 0 | 0 | 0 | 0 |
    | Request specs | 2127 | 1550 | 0 | 4 | 0 | 385 |
    | Activity specs | 1803 | 1324 | 0 | 0 | 0 | 0 |
    | Decorator specs | 70 | 51 | 0 | 1 | 0 | 49 |
    +----------------------+-------+-------+---------+---------+-----+-------+
    | Total | 8408 | 6236 | 121 | 364 | 3 | 15 |
    +----------------------+-------+-------+---------+---------+-----+-------+
    Code LOC: 2824 Test LOC: 3412 Code to Test Ratio: 1:1.2

    View Slide

  23. ;ͭ͏ͷιʔγϟϧίʔσΟϯά
    ΈΜͳͰ1VMM3FRVFTU
    ΛϨϏϡʔ͢Δ

    View Slide

  24. 1VMM
    3FRVFTU

    View Slide

  25. ݫ͍͠ࢦఠ

    View Slide

  26. Ϧʔμϒϧίʔυ

    View Slide

  27. FNPKJ

    View Slide

  28. ϛαϫ

    View Slide

  29. ίʔυϨϏϡʔʹ͍ͭͯ
    4VO4FQ

    View Slide

  30. ;ͭ͏ͷιʔγϟϧίʔσΟϯά
    1VMM3FRVFTU୯ҐͰ
    ςετͯ͠΋Β͏

    View Slide

  31. ϓϥΠϕʔτϦϙδτϦͱ5SBWJT$*

    View Slide

  32. ੈքॳʂ
    5SBWJT1SPͷ
    ϢʔβͰ͢ʂ

    View Slide

  33. View Slide

  34. View Slide

  35. ίʔυͰίϯτϦϏϡʔτ

    View Slide

  36. ίʔυΛॻ͘͜ͱʹ͍ͭͯ
    4BU4FQ

    View Slide

  37. ;ͭ͏ͷιʔγϟϧίʔσΟϯά
    Ϛʔδͯ͠ετʔϦʔ
    Λz'JOJTIz͢Δ

    View Slide

  38. ;ͭ͏ͷιʔγϟϧίʔσΟϯά
    εςʔδϯά؀ڥʹ
    σϓϩΠͯ͠ɺετʔ
    ϦʔΛz%FQMPZz͢Δ

    View Slide

  39. ;ͭ͏ͷιʔγϟϧίʔσΟϯά
    εςʔδϯά؀ڥͰ
    ετʔϦʔΛ֬ೝͯ͠
    ΋Β͏

    View Slide


  40. ಈ͘ιϑτ΢ΣΞ
    ͕ͦ͜ਐ௙ͷ࠷΋
    ॏཁͳई౓Ͱ͢ɻ
    ;ͭ͏ͷιʔγϟϧίʔσΟϯά
    ΞδϟΠϧએݴͷഎޙʹ͋Δݪଇ

    View Slide

  41. ;ͭ͏ͷιʔγϟϧίʔσΟϯά

    View Slide

  42. ࠓ೔͓࿩͠ͳ͍͜ͱ
    wϓϩδΣΫτͷ࢝Ίํ
    wϓϩδΣΫτͷਐΊํ
    wݟੵΓͷ΍Γํ
    wܭըͷཱͯํ

    View Slide

  43. IUUQXXXqJDLSDPNQIPUPTTBNFOTUFMMJOH
    ;ͭ͏ͷ
    ιʔγϟϧ
    ίʔσΟϯάࣄྫ

    View Slide

  44. IUUQRBBUNBSLJUDPKQ

    View Slide

  45. 3VCZΤίγεςϜΛ
    ׆༻ͨ͠ΞδϟΠϧͳ
    डୗ։ൃͷ੒ޭࣄྫ
    RubyWorld Conference 2011
    ג
    Ӭ࿨γεςϜϚωδϝϯτॾڮګհ
    @moro
    αΠΤϯε۞ָ෦༷
    http://www.slideshare.net/moro/ruby-ecosystem-applied-to-agile-project

    View Slide

  46. ϓϩδΣΫτ
    FJXBLVO

    View Slide

  47. ϓϩδΣΫτFJXBLVOͱ͸
    ࣗ෼ͨͪϓϩάϥϚ͕ೲಘͰ͖
    ΔΑ͏ͳϓϩμΫτΛ࡞Δ͜ͱ
    ΋Ͱ͖ͣʹɺ͓٬͞·Λຬ଍͞
    ͤΔ͜ͱ͸Ͱ͖Δͷ͔

    View Slide

  48. ϓϩδΣΫτFJXBLVOͱ͸
    ࢲͨͪϓϩάϥϚ
    ͕ຖ೔࢖͍ͨ͘ͳ
    ΔΑ͏ͳ΋ͷΛ࡞
    Γ͍ͨ

    View Slide

  49. Web built a nice paste service.
    https://www.copi.pe/

    View Slide

  50. Idobata (Ҫށ୺) mean "beside water well" in
    Japanese. It's a fine place to enjoy chatting.

    View Slide

  51. Coming
    Soon!

    View Slide

  52. ;ͭ͏ͷιʔγϟϧίʔσΟϯάͰಘΒΕͨ஌ݟ
    4BU4FQ

    View Slide

  53. ;ͭ͏ͷιʔγϟϧίʔσΟϯάͰಘΒΕͨ஌ݟ
    4VO4FQ

    View Slide

  54. ·ͱΊ

    View Slide

  55. ࠓ೔ͷ͓͸ͳ͠
    Ӭ࿨γεςϜϚωδϝϯ
    τͰ;ͭ͏ͷιʔγϟϧ
    ίʔσΟϯάΛҰॹʹ
    ΍ͬͯ͘ΕΔ஥ؒΛ୳͠
    ͍ͯ·͢

    View Slide

  56. ;ͭ͏ͷιʔγϟϧίʔσΟϯά

    View Slide

  57. View Slide

  58. View Slide

  59. IUUQGBDFCPPLDPNFTNDPKQ

    View Slide

  60. Ұ൪େ੾ͳ͜ͱ
    ೔ຊͷͲ͔͜ɺੈքͷͲ
    ͔͜Ͱ;ͭ͏ͷιʔγϟ
    ϧίʔσΟϯάΛҰॹʹ
    ΍ͬͯ͘ΕΔ஥ؒ΋୳͠
    ͍ͯ·͢ʂ

    View Slide

  61. View Slide

  62. enjoy social coding
    together!

    View Slide