プログラマーは1日に何行コードを書ければいいのか?行数の目安を提案

に投稿

急いで仕事をこなす人

ステップ数(コードの行数)で生産性を計るっていう方法は、昔はけっこうやられていましたが、最近は否定されています。

同じ行数でもプログラムの難易度によって生産性は異なるからです。

とはいえ目安の一つとしてステップ数を考えてみるのは良いと思うんです。

一番いいのは毎日何行書いたかを計って、今日は仕事がうまくいったなって思う日の行数を目安にすることです。

とはいえ、何行書いたかを測定するのはなかなか難しいです。

全部新規でコードを書くわけじゃないので、単純に計測できません。

なので、感覚的にこれくらいかなという目安を考えるのが現実的です。

そんなわけで、感覚的にこのくらいの行数を書ければ良いんじゃないかという目安を紹介します。

ちゃんと動くコードを一日に2000行書ければ良し

私の場合は、感覚的には一日に2000行ぐらい書いて、単体テストをパスするところまでいけたら、生産性の高い日だったと感じます。

感覚的にと言いましたが、コードの行数って「今日何行ぐらい書いたか?」ってなかなかわからないですよね、感覚的にも。

一つのソースコードにいっぱいコードを書いた時には、

「おっ、2000行も書いたかぁ。」

って感じますけど、一つのソースコードにたくさん書くのって、私の場合、バッチ処理のプログラム(夜間に動く、データ更新するようなもの)です。

WebアプリとかだとMVCで分割されてコンポーネント毎にファイルが分かれるので、一つのソースコードにたくさん書くみたいなことはないんで、行数がイメージしづらかったりします。

なので、記憶をたどるとJavaでバッチを書いた時に2000行くらいがちょうどよかったかなって感覚なんです。

コードを書くだけなら、もっと書こうと思えば書けますが、単体テストをパスする動くコードとなると2000行くらいだと思うんです。

2000行ってそこまできつくない目標なので、そういう意味でもちょうどいいかなと思います。

バグ修正や機能追加は書いた行数では計れない

バグ修正する時って、「こういうバグが起きてます、直してください」と言われて「原因どこかなー」って考えながら、コードをずっと読んでいて、「ここかな、それともこっちかな」と試行錯誤して、「あ、ここだわ!」ってわかって

「3行コードを書き換えて、バグが直る」

みたいなことがあります。

1日の大半、例えば7時間ぐらいずっとコード読んでてコード直した時間はほんの5分、書いた行数3行なので、生産性低いなってことにはなりません。

その3行を書き換えるためにずっとコードを読み続けて分析する膨大な作業が必要だったわけです。

機能追加や仕様変更するときも同じです。

既存のコードを読んで、どこを変更するかを考えるのに7時間かかって、コードを書くのが10分なんてことがざらにあります。

よって、バク修正や機能追加は書いたコードの行数で生産性は計れないということです。

ということで、

  • 新規にコード書くときは2000行ぐらいを目標にする
  • バク修正や機能追加は書いた行数よりも読んだ行数で評価する

のがいいんじゃないかと思います。

プログラミング初心者におすすめのサービス
1. 教室で学びたい派なら

プログラマカレッジは20代限定で、無料で受講できて、修了後、就職支援もしてくれるプログラミングスクールです。最高過ぎですよ、これ!!企業からの協賛金によって運営されいているため無料で受講できるんだそうです。すばらしいシステムだと思います!

30代の方には

プログラマカレッジは20代限定なので30代の方にはゼロスクがおすすめです。35歳以下なら無料で受講できます。教室も札幌、仙台、東京、大阪、神戸、福岡と全国展開しているので地方の方でも利用できます。

2. 自宅で学びたい派なら

TechAcademyの無料コースは20代限定でプログラミングのリモート学習 + 就職支援が無料で受けられるサービスです。なんといっても無料だし、就職に必要なスキルが身につけられるという意味でもやってみて損はないでしょう。

30代以上の方には

TechAcademyの無料コースは20代限定なので30代以上の方にはTechAcademyのJavaコースをおすすめします。Javaは求人が多くプログラマーとして就職したい方にはぴったりです。

3. つまづいた時に質問したくなったら

プログラマー専用の質問サイトteratailをおすすめします。 つまづいた時にteratrailで質問すれば教えてもらえます。

4. エンジニア未経験の人でも利用できる転職エージェント

ワークポートは未経験の人の転職活動も支援してくれますし、全国の求人を扱っているので地方在住の方にもご利用いただけます。お給料をもらいながら社内研修でプログラミングを学べる会社が狙い目です。

これらのサービスを活用すれば、全くの初心者からでもプログラミングをばっちり出来るようになると思います!レッツトライです!

 - 能力開発