Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Fukuoka.rb 2020年度活動報告

Fukuoka.rb 2020年度活動報告

FUKUOKA Engineers Day 2021 onlineの登壇資料です。
https://engineers-day.connpass.com/event/207154/

Fukuoka.rbのconnpassはこちらです。
https://fukuokarb.connpass.com/

M-Yamashita

April 24, 2021
Tweet

More Decks by M-Yamashita

Other Decks in Programming

Transcript

  1. 2021೥04݄24೔ M-Yamashita
    Fukuoka.rb 2020೥౓׆ಈใࠂ
    FUKUOKA Engineers Day 2021 online

    View Slide

  2. ࣗݾ঺հ
    •ࢁԼ խਓ

    •όοΫΤϯυΤϯδχΞ@෱Ԭ

    •RubyɺRuby on RailsɺDockerɺKubernetesษڧத
    @M_Yamashii
    M-Yamashita01

    View Slide

  3. ࠓ೔࿩͢͜ͱ
    •Fukuoka.rbʹ͍ͭͯ

    •Fukuoka.rbͰࢲ͕औΓ૊Μͩ͜ͱ

    View Slide

  4. Fukuoka.rbʹ͍ͭͯ

    View Slide

  5. https://fukuokarb.connpass.com/
    Fukuoka.rb
    ຖिਫ༵೔ʹ։࠵

    View Slide

  6. ͜ͷFukuoka.rbͷ3ຊப͸ɾɾɾ

    View Slide

  7. ΋͘΋͘
    ࣌ʑࡶஊ

    View Slide

  8. ؤுΒͳ͍

    View Slide

  9. དྷΔऀڋ·ͣ

    View Slide

  10. Ͱ੒Γཱ͍ͬͯ·͢ɻ

    View Slide

  11. ओʹ΍͍ͬͯΔ͜ͱ

    View Slide

  12. Fukuoka.rbʹ͍ͭͯ
    ΋͘΋ͨ͘͠Γ

    View Slide

  13. Fukuoka.rbʹ͍ͭͯ
    ϥʔϝϯʹ͍ͭͯ࿩ͨ͠Γ

    View Slide

  14. Fukuoka.rbʹ͍ͭͯ
    LTͨ͠Γ

    View Slide

  15. Fukuoka.rbʹ͍ͭͯ
    RubyKaigiͰొஃͨ͠Γ

    View Slide

  16. ࣗ༝ʹ΍͍ͬͯ·͢ʂ

    View Slide

  17. ͳΜͱ͜ͷFukuoka.rb͸ɾɾɾ

    ʢօ͞Μɺ࠷ॳͷഥखͷ४උ͸͍͍Ͱ͔͢ʁʣ

    View Slide

  18. ΤϯδχΞϑϨϯυϦʔγςΟ෱ԬΞϫʔυ ड৆ʂ
    https://efc.fukuoka.jp/award2020/#community1

    View Slide

  19. ΋͏1ͭخ͍͜͠ͱʹɾɾɾ

    ʢօ͞Μɺ2ճ໨ͷഥखͷ४උ͸͍͍Ͱ͔͢ʁʣ

    View Slide

  20. 3/24 Fukuoka.rb 200ճ ୡ੒ʂ

    View Slide

  21. 200ճΛܴ͑ͨ2020೥౓ͷFukuoka.rbͷ࣮੷ʂ

    View Slide

  22. •։࠵ճ਺: 32ճʢ#173 ~ #203ɺεϐϯΦϑʣ

    •21ੈلͷCݴޠษڧձʢεϐϯΦϑʣ

    •200ճLTେձʢ#202ʣ
    Fukuoka.rb 2020೥౓࣮੷
    https://www.youtube.com/playlist?list=PL72dkNkx_ZIGvqplFOnxw2pRCpe9d_d-6
    YouTube:

    View Slide

  23. Fukuoka.rb͔Βͷॏཁͳ͓஌Βͤ

    View Slide

  24. Fukuoka.rb
    ϩΰ࡮৽ίϯϖ։࠵༧ఆ
    https://www.youtube.com/watch?v=6TEXNqoBKMs&list=PL72dkNkx_ZIGvqplFOnxw2pRCpe9d_d-6&index=17
    ↓ৄࡉ͸YoutubeΛνΣοΫˣ

    View Slide

  25. Ҏ্ɺɹɹͷ׆ಈใࠂͰͨ͠ʂ

    View Slide

  26. ͔͜͜Β͸ɺࢲ͕Fukuoka.rbͰऔΓ૊Μͩ͜ͱ

    View Slide

  27. RuboCop Rspec΁ͷContribution
    ϩΰϥΠηϯε: https://creativecommons.org/licenses/by-nc/4.0/deed.en_GB

    View Slide

  28. ͖͔͚ͬ͸ʁ
    ʮOSS Contribution͍ͨ͠ਓɺ໌೔΍Γ·ͤΜ͔ʁʯ

    ͷ͓༠͍

    View Slide

  29. ͳ͓ͥ༠͍͕͋ͬͨͷ͔ʁ
    1. RuboCop RSpecͰݕ஌Ͱ͖ͳ͍ίʔυΛ
    IssueʹΞοϓ͞Ε͍ͯͨ

    2. ίϛολʔ͔ΒղܾͷώϯτΛ໯ͬͨ

    3. ղܾͯ͠ΈΑ͏

    View Slide

  30. ࢲ͕࣋ͭRuboCop RSpecͷ஌ࣝ
    •RuboCopͱಉ༷ʹॻ͖ํΛνΣοΫ͢Δπʔϧ

    •Ͳ͏΍ͬͯνΣοΫ͍ͯ͠Δͷ͔શ͘஌Βͳ͍

    •πʔϧͷར༻ऀͱͯ͠ͷ஌͔ࣝ͠ͳ͍

    View Slide

  31. ڠྗͯ͠Pull RequestΛ࡞੒͢Δதɾɾɾ
    ͜ͷίʔυ͸Կͩʁ
    ཧղͰ͖͍ͯͳ͍··ίʔυΛ࡞͍ͬͯͨ

    View Slide

  32. RuboCop RSpec΁ॳContribution

    View Slide

  33. ίϛολʔ͔Βͷײँͱͨ͘͞Μͷࢦఠ/࣭໰

    View Slide

  34. ͍ͨͨ·Εͳ͍ؾ࣋ͪʹͳͬͨ

    View Slide

  35. RuboCop RSpecʹ͍ͭͯษڧͯ͠

    ίʔυΛमਖ਼ͯ͠ɺ࣭໰ʹճ౴͍ͨ͠

    View Slide

  36. ಠֶͷ೔ʑ
    ެࣜυΩϡϝϯτɺίʔυɺهࣄΛಡΉ

    View Slide

  37. ͳΔ΄ͲɺΘ͔ΒΜ

    View Slide

  38. ಠֶͷ೔ʑ
    ͭΑͭΑͳํʑͳΒ͹ެࣜ΍ؔ࿈هࣄͰཧղͰ͖Δ

    View Slide

  39. ΑΘΑΘͳࢲ͸Ͳ͏͢Δ͔

    View Slide

  40. ಠֶͷ೔ʑ
    •ʮ࣮ߦɺ్த݁Ռͷग़ྗɺ࣌ંࢭΊΔʯΛ

    ܁Γฦͯ͠టषֶ͘Ϳ

    •มͳϓϥΠυʹͱΒΘΕͳ͍

    •গ͠Ͱ΋͍͍͔ΒҰาͣͭਐΉ

    View Slide

  41. ͳͷͰ

    View Slide

  42. puts binding.pry
    2ਓͷύʔτφʔͱڞʹา͖࢝Ίͨ

    View Slide

  43. ؓ࿩ٳ୊

    View Slide

  44. ಠֶͰཧղͨ͜͠ͱ
    •AST::NodeͷπϦʔߏ଄Λར༻ͨ͠ղੳ

    •def_node_matcherϝιουͰύλʔϯݕ஌

    •ݕ஌࣌ͷϝοηʔδͷग़͠ํ

    View Slide

  45. ಠֶͷ݁Ռ
    ίʔυͷमਖ਼ɺ࣭໰ͷճ౴͕Ͱ͖ͨ

    View Slide

  46. ͔ͤͬ͘ಘͨ஌ࣝΛ

    Issueͷղܾʹ໾ཱͯͳ͍͔ʁ

    View Slide

  47. Կ͔Issue͸ͳ͍͔ɾɾɾʁ

    View Slide

  48. View Slide

  49. Bugͷϥϕϧʂ

    View Slide

  50. RSpec/FilePathͰ

    ಉ͡Πϯσϯτͷ
    describeΛݕ஌

    Ͱ͖ͳ͍
    ͜ͷIssue͸ͲΜͳ໰୊ͳͷ͔ʁ
    ɾɾɾ

    View Slide

  51. ඈͼ͍ͭͯόάमਖ਼࢝͠Ίͨ

    IssueʹԿ΋ίϝϯτͤͣʹɾɾɾ

    View Slide

  52. मਖ਼Ͱ͖ͨʂ

    ͬͦ͘͞Pull RequestΛग़ͨ͠ʂ

    View Slide

  53. Pull Request

    View Slide

  54. ࢦఠͷࢁ
    Real-world RSpecϓϩδΣΫτͰ֬ೝࡁΈ͔ʁ

    ͜ͷύλʔϯͷݕ஌͸͋ͳͨͷमਖ਼ͨ͠Copͷ໾ׂͰ͸ͳ͍

    describeͷॻ͖ํ͸֤ϓϩδΣΫτͰҟͳΔͷͰ͸ͳ͍͔ʁ

    View Slide

  55. View Slide

  56. ͳͥࢦఠ͕ଟ͔ͬͨͷ͔ʁ
    •IssueͰٞ࿦ͤͣɺ͍͖ͳΓ࣮૷࢝͠Ίͨ

    •ίϛολʔ͕͜ͷόάΛͲ͏௚͍͔ͨ͠

    ֬ೝ͍ͯ͠ͳ͔ͬͨ

    View Slide

  57. ͨͩɺམͪࠐΉ͜ͱ͹͔ΓͰ΋ͳ͔ͬͨ

    View Slide

  58. ίϛολʔ͔Βͷίϝϯτ
    ͜ͷύλʔϯΛݕ஌͢ΔCopΛ࡞ͬͯཉ͍͠ʂ

    Pull Request଴ͬͯΔΑʂ

    View Slide

  59. ৽نCopͷ࡞੒ɾɾɾ΍ͬͯ΍Δͥʂ

    View Slide

  60. ͜ΜͳCopΛ࡞੒

    View Slide

  61. ͜ͷCop͸Ͳ͏ͳ͔ͬͨʁ

    ଓ͖͸GitHubͰˣ
    https://github.com/rubocop/rubocop-rspec/pull/1138

    View Slide

  62. ·ͱΊ
    •ࣗ෼ʹ߹ֶͬͨशͰֶΜͰΈΔ

    •࣮૷લʹIssueͰٞ࿦ͯ͠ΈΔ

    •Ϛʔδ͞Εͳͯ͘΋ࣗ෼ͷྐʹͳΔ

    View Slide

  63. ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ

    View Slide