Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Developers’ Summit 2009




コミュニケーションとしての
   レガシーコード
   ~ Developers' 川柳 ~

      2009/2/13
  中谷 秀洋@サイボウズ・ラボ
Developers' 川柳

  身近でゆるやか~な切りくちで
 レガシーコードをかたってみましょう
略すと

Developers’Summit が
「デブサミ」ですから……
デブセン
 ですね!
開発者の人情
 心の機微を
   愚痴や
 うらみつらみも
5・7・5の
リズムにのせて
  うたうように
それが
   デブセン
ほかのものを想像しちゃってるひと
    いませんよね?
デブセン 第1集
~ 孤独との戦い ~
メンテナーの嘆き――




 システムのメンテナンスするひと
   まいにちたいへんです
動いてる
   誰も仕様は
     知らんけど
仕様書がなくても――




  仕様書があってもなくても
 なんとかしなくちゃあなりません
まだわかる
 正常時の仕様なら
   で、異常時は?
うちは Windows 2000 で
まだまだ頑張ってます――




   経費削減ってやつでしょうか?
XP
     サポートしてない
          ライブラリ
 Linuxのひとは「カーネル2.4」で
  Java1.3とかVB4でもOKだよ!
開発には
デュアルディスプレイ必須――




     便利ですよね~
  でも、必ず必要とまでは……
2画面分
  ネスト深すぎ
     24重……
単純なバグ修正だったはずが――
修正が
  修正を呼び
     帰れない
先輩の
 捨てるに捨てられぬ
      謎コード
もうだめだ
  なにもかにもが
      お手上げだ
メンテナンス
孤独との戦い

  現場でひとり
 がめんに向き合い
頼みは自分だけ

 相談するあいても
  なかなかいなく
「なぜ自分だけ
こんな目に……」
その原因は!

  ものごとには
 かならず原因が!
レガシーコード
なぜって
さっきの
デブセン
レガシーコード本に
  全部載ってます
“Working Effectively with Legacy Code”
         のことだよ、もちろん
Break
 Dependencies
修正が
  修正を呼び
     帰れない
   レガシーコード本の
  メインテーマの一つです
Monster Method
2画面分
  ネスト深すぎ
     24重……
     ポケモンと違って
かんたんにコンプリートできちゃうけどね
We Feel
 Overwhelmed.
もうだめだ
  なにもかにもが
      お手上げだ
   レガシーコード本の
  24章のタイトルがこれ
困っている
現場の人達
共有できない

   なやみや情報を
わかちあうことができなかった
語る言葉を
持ってなかった
そんなあなたも
今日からは
「うちのコード
Break Dependencies が
 なってへんくて……」
「あー
うちもそうやわー」
共有できる!
「それ
  Link Seam で
なんとかならへん?」
 「Object Seam もええかも」
相談できる!
一人じゃない

すばらしいことだと
 おもいません?
「医者は一人で手術を
  するわけじゃない」
Doctors never operate alone.
   (see WEwLC Ch.23)
      23章にのっている
      だいすきな言葉です
デブセン 第2集
~ 残す者/残される者 ~
引き継いだけど――
仕様書の
  最終更新
     3年前
エンハンス
  の前に元の仕様
       教えてよ
仕様書より
 テストコードの方が
      まだわかる
引き継いで
ずいぶんたつけど――
早2年
  目を通してない
     コード多数
   いじれるファイルがきまってて
それ以外は開いたこともないんでしょうねえ
本日が最終出社日――




 「ありがとうおせわになりました」
     と言いたいところ
ああごめん
 こんな引き継ぎで
    ほんとごめん
     なんか
   目から汗が……
引き継ぎ
異動とか
転職とか
誰もが
残す者、
残される者に
 なりうる
   IT業界は
流動化してますからね
どれだけ資料を
  書いても
できるだけのことをしたいと
   おもっていても
足りない

満足な引き継ぎができたなんて話
 ついぞ聞いたことありません
どれだけ資料を
 書いてもらっても
       幸運にも(?)
ぶあつい仕様書を残してもらえたとしても
役に立たない

  けっきょく
 よむのはソース
そんなとき!

 そんななやみをもつあなた!
(今はなくても、必ず直面します)
レガシーコード
なぜって
レガシーコード本に
 全部載ってます
  あなたのなやみは
  全部のってるんです
Hack Points
早2年
 目を通してすらない
     コード多数
Characterization
     Tests
仕様書より
 テストコードの方が
      まだわかる
引き継ぎとは
何を残していくか
 言葉で説明
みなさん
得意な「言葉」は?
コード
レガシーコードとは
「コードで説明され
 ていないコード」
資産じゃなくて
遺産(legacy)
最後に
今日
聞いてくれたみなさんに――
明日からは
  二言目には
   レガシーコード
    あなたもテストコードを書いて
遺産(レガシー)を資産(リソース)にしましょう
Upcoming SlideShare
Loading in …5
×

コミュニケーションとしてのレガシーコード

5,217 views

Published on

Published in: Technology
  • Be the first to comment

コミュニケーションとしてのレガシーコード

  1. 1. Developers’ Summit 2009 コミュニケーションとしての レガシーコード ~ Developers' 川柳 ~ 2009/2/13 中谷 秀洋@サイボウズ・ラボ
  2. 2. Developers' 川柳 身近でゆるやか~な切りくちで レガシーコードをかたってみましょう
  3. 3. 略すと Developers’Summit が 「デブサミ」ですから……
  4. 4. デブセン ですね!
  5. 5. 開発者の人情 心の機微を 愚痴や うらみつらみも
  6. 6. 5・7・5の リズムにのせて うたうように
  7. 7. それが デブセン ほかのものを想像しちゃってるひと いませんよね?
  8. 8. デブセン 第1集 ~ 孤独との戦い ~
  9. 9. メンテナーの嘆き―― システムのメンテナンスするひと まいにちたいへんです
  10. 10. 動いてる 誰も仕様は 知らんけど
  11. 11. 仕様書がなくても―― 仕様書があってもなくても なんとかしなくちゃあなりません
  12. 12. まだわかる 正常時の仕様なら で、異常時は?
  13. 13. うちは Windows 2000 で まだまだ頑張ってます―― 経費削減ってやつでしょうか?
  14. 14. XP サポートしてない ライブラリ Linuxのひとは「カーネル2.4」で Java1.3とかVB4でもOKだよ!
  15. 15. 開発には デュアルディスプレイ必須―― 便利ですよね~ でも、必ず必要とまでは……
  16. 16. 2画面分 ネスト深すぎ 24重……
  17. 17. 単純なバグ修正だったはずが――
  18. 18. 修正が 修正を呼び 帰れない
  19. 19. 先輩の 捨てるに捨てられぬ 謎コード
  20. 20. もうだめだ なにもかにもが お手上げだ
  21. 21. メンテナンス
  22. 22. 孤独との戦い 現場でひとり がめんに向き合い
  23. 23. 頼みは自分だけ 相談するあいても なかなかいなく
  24. 24. 「なぜ自分だけ こんな目に……」
  25. 25. その原因は! ものごとには かならず原因が!
  26. 26. レガシーコード
  27. 27. なぜって
  28. 28. さっきの デブセン
  29. 29. レガシーコード本に 全部載ってます “Working Effectively with Legacy Code” のことだよ、もちろん
  30. 30. Break Dependencies 修正が 修正を呼び 帰れない レガシーコード本の メインテーマの一つです
  31. 31. Monster Method 2画面分 ネスト深すぎ 24重…… ポケモンと違って かんたんにコンプリートできちゃうけどね
  32. 32. We Feel Overwhelmed. もうだめだ なにもかにもが お手上げだ レガシーコード本の 24章のタイトルがこれ
  33. 33. 困っている 現場の人達
  34. 34. 共有できない なやみや情報を わかちあうことができなかった
  35. 35. 語る言葉を 持ってなかった
  36. 36. そんなあなたも
  37. 37. 今日からは
  38. 38. 「うちのコード Break Dependencies が なってへんくて……」
  39. 39. 「あー うちもそうやわー」
  40. 40. 共有できる!
  41. 41. 「それ Link Seam で なんとかならへん?」 「Object Seam もええかも」
  42. 42. 相談できる!
  43. 43. 一人じゃない すばらしいことだと おもいません?
  44. 44. 「医者は一人で手術を するわけじゃない」 Doctors never operate alone. (see WEwLC Ch.23) 23章にのっている だいすきな言葉です
  45. 45. デブセン 第2集 ~ 残す者/残される者 ~
  46. 46. 引き継いだけど――
  47. 47. 仕様書の 最終更新 3年前
  48. 48. エンハンス の前に元の仕様 教えてよ
  49. 49. 仕様書より テストコードの方が まだわかる
  50. 50. 引き継いで ずいぶんたつけど――
  51. 51. 早2年 目を通してない コード多数 いじれるファイルがきまってて それ以外は開いたこともないんでしょうねえ
  52. 52. 本日が最終出社日―― 「ありがとうおせわになりました」 と言いたいところ
  53. 53. ああごめん こんな引き継ぎで ほんとごめん なんか 目から汗が……
  54. 54. 引き継ぎ
  55. 55. 異動とか 転職とか
  56. 56. 誰もが
  57. 57. 残す者、 残される者に なりうる IT業界は 流動化してますからね
  58. 58. どれだけ資料を 書いても できるだけのことをしたいと おもっていても
  59. 59. 足りない 満足な引き継ぎができたなんて話 ついぞ聞いたことありません
  60. 60. どれだけ資料を 書いてもらっても 幸運にも(?) ぶあつい仕様書を残してもらえたとしても
  61. 61. 役に立たない けっきょく よむのはソース
  62. 62. そんなとき! そんななやみをもつあなた! (今はなくても、必ず直面します)
  63. 63. レガシーコード
  64. 64. なぜって
  65. 65. レガシーコード本に 全部載ってます あなたのなやみは 全部のってるんです
  66. 66. Hack Points 早2年 目を通してすらない コード多数
  67. 67. Characterization Tests 仕様書より テストコードの方が まだわかる
  68. 68. 引き継ぎとは
  69. 69. 何を残していくか 言葉で説明
  70. 70. みなさん 得意な「言葉」は?
  71. 71. コード
  72. 72. レガシーコードとは
  73. 73. 「コードで説明され ていないコード」
  74. 74. 資産じゃなくて 遺産(legacy)
  75. 75. 最後に
  76. 76. 今日 聞いてくれたみなさんに――
  77. 77. 明日からは 二言目には レガシーコード あなたもテストコードを書いて 遺産(レガシー)を資産(リソース)にしましょう

×