rabbit-slide-kou-devmi-2013 2013.3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.rabbit +1 -0
- data/README.rd +37 -0
- data/Rakefile +21 -0
- data/can-developer-write-readable-code.rab +230 -0
- data/config.yaml +22 -0
- data/pdf/devmi-2013-can-developer-write-readable-code.pdf +0 -0
- metadata +84 -0
    
        data/.rabbit
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            can-developer-write-readable-code.rab
         | 
    
        data/README.rd
    ADDED
    
    | @@ -0,0 +1,37 @@ | |
| 1 | 
            +
            = 開発者は仕事でリーダブルなコードを書けるのか?
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            ビジネスアプリケーションにおいても高速/堅牢な、保守性の高いプログラミングが求められています。
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            去年は「リーダブルなコード」に注目が集まりましたが、具体的に開発者へどんなメリットをもたらすのでしょうか?また、「リーダブルなコード」のコンセプトや手法は現場へ導入可能なのでしょうか?
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            本セッションでは、リーダブルなコードの概要を紹介した上で開発者にとってのメリットと現場導入について考察します。
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            == ライセンス
         | 
| 10 | 
            +
             | 
| 11 | 
            +
            CC BY-SA 3.0
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            原著作者のクレジットの表記は以下のいずれかを使ってください。
         | 
| 14 | 
            +
             | 
| 15 | 
            +
              * 須藤功平
         | 
| 16 | 
            +
              * Kouhei Sutou
         | 
| 17 | 
            +
             | 
| 18 | 
            +
            == 作者向け
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            === 表示
         | 
| 21 | 
            +
             | 
| 22 | 
            +
              rake
         | 
| 23 | 
            +
             | 
| 24 | 
            +
            === 公開
         | 
| 25 | 
            +
             | 
| 26 | 
            +
              rake publish
         | 
| 27 | 
            +
             | 
| 28 | 
            +
            == 閲覧者向け
         | 
| 29 | 
            +
             | 
| 30 | 
            +
            === インストール
         | 
| 31 | 
            +
             | 
| 32 | 
            +
              gem install rabbit-slide-kou-devmi-2013
         | 
| 33 | 
            +
             | 
| 34 | 
            +
            === 表示
         | 
| 35 | 
            +
             | 
| 36 | 
            +
              rabbit rabbit-slide-kou-devmi-2013.gem
         | 
| 37 | 
            +
             | 
    
        data/Rakefile
    ADDED
    
    | @@ -0,0 +1,21 @@ | |
| 1 | 
            +
            # Copyright (C) 2013  Kouhei Sutou <kou@clear-code.com>
         | 
| 2 | 
            +
            #
         | 
| 3 | 
            +
            # License: CC BY-SA 3.0
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            require "rabbit/task/slide"
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            # Edit ./config.yaml to customize meta data
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            spec = nil
         | 
| 10 | 
            +
            Rabbit::Task::Slide.new do |task|
         | 
| 11 | 
            +
              spec = task.spec
         | 
| 12 | 
            +
              # spec.files += Dir.glob("doc/**/*.*")
         | 
| 13 | 
            +
              # spec.files -= Dir.glob("private/**/*.*")
         | 
| 14 | 
            +
              spec.add_runtime_dependency("rabbit-theme-clear-code")
         | 
| 15 | 
            +
            end
         | 
| 16 | 
            +
             | 
| 17 | 
            +
            desc "Tag #{spec.version}"
         | 
| 18 | 
            +
            task :tag do
         | 
| 19 | 
            +
              sh("git", "tag", "-a", spec.version.to_s, "-m", "Publish #{spec.version}")
         | 
| 20 | 
            +
              sh("git", "push", "--tags")
         | 
| 21 | 
            +
            end
         | 
| @@ -0,0 +1,230 @@ | |
| 1 | 
            +
            = 開発者は仕事で\nリーダブルなコードを\n書けるのか?
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            : author
         | 
| 4 | 
            +
               須藤功平
         | 
| 5 | 
            +
            : institution
         | 
| 6 | 
            +
               株式会社クリアコード
         | 
| 7 | 
            +
            : content-source
         | 
| 8 | 
            +
               Developer Migration 2013
         | 
| 9 | 
            +
            : date
         | 
| 10 | 
            +
               2013/03/02
         | 
| 11 | 
            +
            : allotted-time
         | 
| 12 | 
            +
               40m
         | 
| 13 | 
            +
            : theme
         | 
| 14 | 
            +
               clear-code
         | 
| 15 | 
            +
             | 
| 16 | 
            +
            = 対象
         | 
| 17 | 
            +
             | 
| 18 | 
            +
            開発者
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            = リーダブルなコード?
         | 
| 21 | 
            +
             | 
| 22 | 
            +
            読みやすい\nコード
         | 
| 23 | 
            +
             | 
| 24 | 
            +
            = 読みやすいコード
         | 
| 25 | 
            +
             | 
| 26 | 
            +
              * わかりやすい
         | 
| 27 | 
            +
              * 直しやすい
         | 
| 28 | 
            +
              * 調べやすい
         | 
| 29 | 
            +
              * 試しやすい
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            = ((' '))
         | 
| 32 | 
            +
             | 
| 33 | 
            +
            で?
         | 
| 34 | 
            +
             | 
| 35 | 
            +
            = ((' '))
         | 
| 36 | 
            +
             | 
| 37 | 
            +
            リーダブルな\n
         | 
| 38 | 
            +
            コードって\n
         | 
| 39 | 
            +
            うれしいの?
         | 
| 40 | 
            +
             | 
| 41 | 
            +
            = 開発者として
         | 
| 42 | 
            +
             | 
| 43 | 
            +
            ストレスが減る\n
         | 
| 44 | 
            +
            (('(1)'))
         | 
| 45 | 
            +
             | 
| 46 | 
            +
            = ストレス
         | 
| 47 | 
            +
             | 
| 48 | 
            +
            なにしてるか\n
         | 
| 49 | 
            +
            全然わからないんだけど!
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            = ストレス
         | 
| 52 | 
            +
             | 
| 53 | 
            +
            なにしたいか\n
         | 
| 54 | 
            +
            全然わからないんだけど!
         | 
| 55 | 
            +
             | 
| 56 | 
            +
            = 開発者として
         | 
| 57 | 
            +
             | 
| 58 | 
            +
            楽しい\n
         | 
| 59 | 
            +
            (('(2)'))
         | 
| 60 | 
            +
             | 
| 61 | 
            +
            = 楽しい
         | 
| 62 | 
            +
             | 
| 63 | 
            +
            すぐに\n
         | 
| 64 | 
            +
            対応できる
         | 
| 65 | 
            +
             | 
| 66 | 
            +
            = すぐに対応
         | 
| 67 | 
            +
             | 
| 68 | 
            +
              * こういうのが欲しいんだけど
         | 
| 69 | 
            +
                * あ、ちょっと待ってください。
         | 
| 70 | 
            +
                * こんな感じですか?
         | 
| 71 | 
            +
                * →そう!こういうの!
         | 
| 72 | 
            +
                * →あぁ、こうなるのかぁ。\n
         | 
| 73 | 
            +
                  じゃあ、なしで!
         | 
| 74 | 
            +
             | 
| 75 | 
            +
            = すぐに対応
         | 
| 76 | 
            +
             | 
| 77 | 
            +
            オレってば\n
         | 
| 78 | 
            +
            スゲー感\n
         | 
| 79 | 
            +
            (('note:http://kitaj.no-ip.com/tdiary/20040404.html#p05'))
         | 
| 80 | 
            +
             | 
| 81 | 
            +
            = オレってばスゲー感を
         | 
| 82 | 
            +
             | 
| 83 | 
            +
              * 他の人のコードで、じゃなく
         | 
| 84 | 
            +
              * 自分たちのコードで!
         | 
| 85 | 
            +
             | 
| 86 | 
            +
            = 作らないのがいい?
         | 
| 87 | 
            +
             | 
| 88 | 
            +
              * 本当に必要?検討しましょう!
         | 
| 89 | 
            +
                * 必要?本当に?本当に?
         | 
| 90 | 
            +
              * 考えている間に試したら?
         | 
| 91 | 
            +
                * コードを書かない事が目指す事?
         | 
| 92 | 
            +
                * 必要ないものに時間をかけない事\n
         | 
| 93 | 
            +
                  じゃない?
         | 
| 94 | 
            +
             | 
| 95 | 
            +
            = コストが下がれば試せる
         | 
| 96 | 
            +
             | 
| 97 | 
            +
            = コストが下がる
         | 
| 98 | 
            +
             | 
| 99 | 
            +
              * 実物 → ディジタル
         | 
| 100 | 
            +
                * コピーのコストが小さい
         | 
| 101 | 
            +
              * 実サーバー → 仮想マシン
         | 
| 102 | 
            +
                * 増減のコストが小さい
         | 
| 103 | 
            +
             | 
| 104 | 
            +
            = 試せる
         | 
| 105 | 
            +
             | 
| 106 | 
            +
              * 実物 → ディジタル
         | 
| 107 | 
            +
                * TODO: 何か例を
         | 
| 108 | 
            +
              * 実サーバー → 仮想マシン
         | 
| 109 | 
            +
                * どのくらいあらかじめ用意する? →
         | 
| 110 | 
            +
                  いつどうやって増減させる?
         | 
| 111 | 
            +
             | 
| 112 | 
            +
            = コード\nだって\n同じ
         | 
| 113 | 
            +
             | 
| 114 | 
            +
            = リーダブルなコードなら
         | 
| 115 | 
            +
             | 
| 116 | 
            +
            素早く\n
         | 
| 117 | 
            +
            対応できる
         | 
| 118 | 
            +
             | 
| 119 | 
            +
            = 素早い対応
         | 
| 120 | 
            +
             | 
| 121 | 
            +
              # blockquote
         | 
| 122 | 
            +
              うわぁ!\n
         | 
| 123 | 
            +
              こんなに素早く対応して\nもらえるなんて!\n
         | 
| 124 | 
            +
              ありがとう!
         | 
| 125 | 
            +
             | 
| 126 | 
            +
            = 素早くない対応
         | 
| 127 | 
            +
             | 
| 128 | 
            +
              * このくらいで終わりそう
         | 
| 129 | 
            +
                * でも、なんかあったらイヤだなぁ
         | 
| 130 | 
            +
                * バッファで2倍かかることにしよう
         | 
| 131 | 
            +
              * 困ったらすぐ相談じゃダメ?
         | 
| 132 | 
            +
                * 全体でよくなるように進めないの?
         | 
| 133 | 
            +
             | 
| 134 | 
            +
            = 信用
         | 
| 135 | 
            +
             | 
| 136 | 
            +
              # blockquote
         | 
| 137 | 
            +
              いつも素早く対応してくれる人が時間がかかるっていうんだから大変なんだ
         | 
| 138 | 
            +
              ろう。
         | 
| 139 | 
            +
             | 
| 140 | 
            +
            = 開発者は\n仕事で\nリーダブルな\nコードを\n書けるのか?
         | 
| 141 | 
            +
             | 
| 142 | 
            +
            = ムリ?\n((' '))
         | 
| 143 | 
            +
             | 
| 144 | 
            +
            = コードレビュー
         | 
| 145 | 
            +
             | 
| 146 | 
            +
              # blockquote
         | 
| 147 | 
            +
              リーダブルなコードにするためにコードレビューっていうのを導入したいけ
         | 
| 148 | 
            +
              ど他の人が読んでくれないからできない。
         | 
| 149 | 
            +
             | 
| 150 | 
            +
            = 答え
         | 
| 151 | 
            +
             | 
| 152 | 
            +
              # blockquote
         | 
| 153 | 
            +
              まず、\nあなたが読んでみませんか?
         | 
| 154 | 
            +
             | 
| 155 | 
            +
            = 時間がない
         | 
| 156 | 
            +
             | 
| 157 | 
            +
              # blockquote
         | 
| 158 | 
            +
              自分は他の人のコードを読んでいる時間ないし…
         | 
| 159 | 
            +
             | 
| 160 | 
            +
            = 答え
         | 
| 161 | 
            +
             | 
| 162 | 
            +
              # blockquote
         | 
| 163 | 
            +
              時間を決めて読んでみませんか?
         | 
| 164 | 
            +
             | 
| 165 | 
            +
              ペースがわかったらどうやって取り組んでいけばよいかアイディアが浮かぶ
         | 
| 166 | 
            +
              と思いますよ。
         | 
| 167 | 
            +
             | 
| 168 | 
            +
            = でも
         | 
| 169 | 
            +
             | 
| 170 | 
            +
              # blockquote
         | 
| 171 | 
            +
              でも、でも、でも…
         | 
| 172 | 
            +
             | 
| 173 | 
            +
            = コミットへの\nコメントサービス
         | 
| 174 | 
            +
             | 
| 175 | 
            +
              # blockquote
         | 
| 176 | 
            +
              クリアコードは、よいコードを書くことを当たり前にするためには、まず
         | 
| 177 | 
            +
              「みんながみんなのコードを読む」文化にすることからはじめるのがよいと
         | 
| 178 | 
            +
              考えます。
         | 
| 179 | 
            +
             | 
| 180 | 
            +
            (('tag:center'))(('note:http://www.clear-code.com/services/commit-comment.html'))
         | 
| 181 | 
            +
             | 
| 182 | 
            +
            = なんで読むの?
         | 
| 183 | 
            +
             | 
| 184 | 
            +
              * 読まないと\n
         | 
| 185 | 
            +
                読みやすいコードは書けない
         | 
| 186 | 
            +
              * 読む人を想像しろなんてムリ
         | 
| 187 | 
            +
              * 自分が読む人になる
         | 
| 188 | 
            +
             | 
| 189 | 
            +
            = あなたが読む事を支援
         | 
| 190 | 
            +
             | 
| 191 | 
            +
              * どうやって読むの?
         | 
| 192 | 
            +
                * よいところを学ぶ
         | 
| 193 | 
            +
                * 悪いところ探しではない!
         | 
| 194 | 
            +
              * どういうタイミングで?
         | 
| 195 | 
            +
                * pushとかcommitした後
         | 
| 196 | 
            +
                * 一区切り付いているでしょ?
         | 
| 197 | 
            +
             | 
| 198 | 
            +
            = みんなが読む事を支援
         | 
| 199 | 
            +
             | 
| 200 | 
            +
              * こうすると読みやすいですよ
         | 
| 201 | 
            +
                * 読みにくいコードばかりだと\n
         | 
| 202 | 
            +
                  続けられない
         | 
| 203 | 
            +
              * よいコードを見た!→\n
         | 
| 204 | 
            +
                真似してコミット
         | 
| 205 | 
            +
                * いいね!しているだけじゃない
         | 
| 206 | 
            +
                * 行動しているからより本物
         | 
| 207 | 
            +
             | 
| 208 | 
            +
            = コミットコミュニケーション
         | 
| 209 | 
            +
             | 
| 210 | 
            +
              * 他の人が何をしているかわかる
         | 
| 211 | 
            +
                * あの人はあそこらへん詳しそう
         | 
| 212 | 
            +
                * 相談してみよう
         | 
| 213 | 
            +
              * 他の人が困っていないかわかる
         | 
| 214 | 
            +
                * この一時間ひとつもコミットしていないけど大丈夫?
         | 
| 215 | 
            +
                * このコミットすごいごちゃごちゃしてるけど悩んでる?
         | 
| 216 | 
            +
             | 
| 217 | 
            +
            = 毎日↓をコミット
         | 
| 218 | 
            +
             | 
| 219 | 
            +
              * 今日どれくらい読めたか
         | 
| 220 | 
            +
                * 感覚で。70%とか。
         | 
| 221 | 
            +
              * 今日印象に残ったコミット
         | 
| 222 | 
            +
                * メモリリーク直った!
         | 
| 223 | 
            +
              * 今日の一言感想
         | 
| 224 | 
            +
                * 自分のコミットが真似されていた!
         | 
| 225 | 
            +
             | 
| 226 | 
            +
            = さいごに
         | 
| 227 | 
            +
             | 
| 228 | 
            +
              * リーダブルなコードが大事そうな気がしましたか?
         | 
| 229 | 
            +
              * 仕事でリーダブルなコードを書けそうですか?
         | 
| 230 | 
            +
              * 支援があれば書けそうですか?
         | 
    
        data/config.yaml
    ADDED
    
    | @@ -0,0 +1,22 @@ | |
| 1 | 
            +
            ---
         | 
| 2 | 
            +
            id: devmi-2013
         | 
| 3 | 
            +
            base_name: can-developer-write-readable-code
         | 
| 4 | 
            +
            tags:
         | 
| 5 | 
            +
            - rabbit
         | 
| 6 | 
            +
            - readablecode
         | 
| 7 | 
            +
            - devmi
         | 
| 8 | 
            +
            presentation_date: 2013/03/02
         | 
| 9 | 
            +
            version: 2013.3.2.0
         | 
| 10 | 
            +
            licenses:
         | 
| 11 | 
            +
            - CC BY-SA 3.0
         | 
| 12 | 
            +
            slideshare_id: 
         | 
| 13 | 
            +
            speaker_deck_id: 
         | 
| 14 | 
            +
            ustream_id: 
         | 
| 15 | 
            +
            vimeo_id: 
         | 
| 16 | 
            +
            author:
         | 
| 17 | 
            +
              markup_language: :rd
         | 
| 18 | 
            +
              name: 須藤功平
         | 
| 19 | 
            +
              email: kou@clear-code.com
         | 
| 20 | 
            +
              rubygems_user: kou
         | 
| 21 | 
            +
              slideshare_user: kou
         | 
| 22 | 
            +
              speaker_deck_user: kou
         | 
| Binary file | 
    
        metadata
    ADDED
    
    | @@ -0,0 +1,84 @@ | |
| 1 | 
            +
            --- !ruby/object:Gem::Specification
         | 
| 2 | 
            +
            name: rabbit-slide-kou-devmi-2013
         | 
| 3 | 
            +
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            +
              version: 2013.3.2.0
         | 
| 5 | 
            +
              prerelease: 
         | 
| 6 | 
            +
            platform: ruby
         | 
| 7 | 
            +
            authors:
         | 
| 8 | 
            +
            - 須藤功平
         | 
| 9 | 
            +
            autorequire: 
         | 
| 10 | 
            +
            bindir: bin
         | 
| 11 | 
            +
            cert_chain: []
         | 
| 12 | 
            +
            date: 2013-02-21 00:00:00.000000000 Z
         | 
| 13 | 
            +
            dependencies:
         | 
| 14 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 15 | 
            +
              name: rabbit
         | 
| 16 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 17 | 
            +
                none: false
         | 
| 18 | 
            +
                requirements:
         | 
| 19 | 
            +
                - - ! '>='
         | 
| 20 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 21 | 
            +
                    version: 2.0.2
         | 
| 22 | 
            +
              type: :runtime
         | 
| 23 | 
            +
              prerelease: false
         | 
| 24 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 25 | 
            +
                none: false
         | 
| 26 | 
            +
                requirements:
         | 
| 27 | 
            +
                - - ! '>='
         | 
| 28 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 29 | 
            +
                    version: 2.0.2
         | 
| 30 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 31 | 
            +
              name: rabbit-theme-clear-code
         | 
| 32 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 33 | 
            +
                none: false
         | 
| 34 | 
            +
                requirements:
         | 
| 35 | 
            +
                - - ! '>='
         | 
| 36 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 37 | 
            +
                    version: '0'
         | 
| 38 | 
            +
              type: :runtime
         | 
| 39 | 
            +
              prerelease: false
         | 
| 40 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 41 | 
            +
                none: false
         | 
| 42 | 
            +
                requirements:
         | 
| 43 | 
            +
                - - ! '>='
         | 
| 44 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 45 | 
            +
                    version: '0'
         | 
| 46 | 
            +
            description: ビジネスアプリケーションにおいても高速/堅牢な、保守性の高いプログラミングが求められています。
         | 
| 47 | 
            +
            email:
         | 
| 48 | 
            +
            - kou@clear-code.com
         | 
| 49 | 
            +
            executables: []
         | 
| 50 | 
            +
            extensions: []
         | 
| 51 | 
            +
            extra_rdoc_files: []
         | 
| 52 | 
            +
            files:
         | 
| 53 | 
            +
            - .rabbit
         | 
| 54 | 
            +
            - config.yaml
         | 
| 55 | 
            +
            - Rakefile
         | 
| 56 | 
            +
            - README.rd
         | 
| 57 | 
            +
            - can-developer-write-readable-code.rab
         | 
| 58 | 
            +
            - pdf/devmi-2013-can-developer-write-readable-code.pdf
         | 
| 59 | 
            +
            homepage: http://slide.rabbit-shocker.org/authors/kou/devmi-2013/
         | 
| 60 | 
            +
            licenses:
         | 
| 61 | 
            +
            - CC BY-SA 3.0
         | 
| 62 | 
            +
            post_install_message: 
         | 
| 63 | 
            +
            rdoc_options: []
         | 
| 64 | 
            +
            require_paths:
         | 
| 65 | 
            +
            - lib
         | 
| 66 | 
            +
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 67 | 
            +
              none: false
         | 
| 68 | 
            +
              requirements:
         | 
| 69 | 
            +
              - - ! '>='
         | 
| 70 | 
            +
                - !ruby/object:Gem::Version
         | 
| 71 | 
            +
                  version: '0'
         | 
| 72 | 
            +
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 73 | 
            +
              none: false
         | 
| 74 | 
            +
              requirements:
         | 
| 75 | 
            +
              - - ! '>='
         | 
| 76 | 
            +
                - !ruby/object:Gem::Version
         | 
| 77 | 
            +
                  version: '0'
         | 
| 78 | 
            +
            requirements: []
         | 
| 79 | 
            +
            rubyforge_project: 
         | 
| 80 | 
            +
            rubygems_version: 1.8.23
         | 
| 81 | 
            +
            signing_key: 
         | 
| 82 | 
            +
            specification_version: 3
         | 
| 83 | 
            +
            summary: 開発者は仕事でリーダブルなコードを書けるのか?
         | 
| 84 | 
            +
            test_files: []
         |