プログラミングの目的と手段

プログラミングをやるとき、たまにブレーキがかかって、作業が停滞するときがあります。

ブレーキの原因と解決策を検討してみました。

目的と手段を混同しない

もくてき【目的】の意味 – goo国語辞書

1 実現しようとしてめざす事柄。行動のねらい。めあて。

[用法]

「目的」は、「目標」に比べ抽象的で長期にわたる目あてであり、内容に重点を置いて使う。「人生の目的を立身出世に置く」

「目標」は、目ざす地点・数値・数量などに重点があり、「目標は前方三〇〇〇メートルの丘の上」「今週の売り上げ目標」のようにより具体的である。

しゅだん【手段】の意味 – goo国語辞書

ある事を実現させるためにとる方法。てだて。

  • 目的:問題の解決を目指す。 (例)買い物を便利にしたい。
  • 手段:問題を解決する方法。 (例)通販サービスを提供する。

プログラミングは「手段」であり、「目的」でありません。

(例外)

  • 「新しいプログラミング言語を作る」
  • 「プログラミング技術を学ぶ」

など、プログラミングそれ自体が「目的」になる場合もありますが、これらは例外的なケースでしょう。

プログラムを作るとき、何のために作っているのか?という「目的」を忘れないようにしたいです。

やる気を生み出す目的

「目的」を忘れてしまうと、動機付けが弱まり、モチベーション(やる気)が下がるでしょう。

「手段」と「目的」を履き違えていなければ、プログラミングはきっと楽しくできるはずです。

プログラミングが退屈になったり、苦痛に感じたときは、「目的」と「手段」を混同していないか?…初心に返って「目的」を再確認するようにしたいです。

→ やる気の有無(波)に関わらず、やるべきことを淡々とこなせる状態(平常心)があれば、それでもOK?

タスクのブレークダウン

プロジェクト管理で、「WBS」(作業分解図)という手法があります。

マネジメント用語集:WBSとは | Think! MANAGEMENT

WBSとは、Work Breakdown Structureの略。

プロジェクトのスケジュール管理に使われるツールの1つで、作業工程を分解して示したもののことです。

分解された作業に担当と期限を設定し、スケジュールがわかるようにした工程図のことはガントチャートといいます。

作業工程を分解して示したものと、それをスケジュールにしたものを合わせて「WBS」と呼ぶことが多い

f:id:jsstudy:20170430172546p:plain

作業を細かく分解(ブレークダウン)して、実行できるようにします。

実行できない場合は、まだ「粒度」が大きくて、分解が不十分なのでしょう。

ブレークダウンしまくってToDoリストが大きくなり、目の前のタスクに集中すると、ついつい当初の「目的」を忘れがちです。

プログラマーは何かをやるとき目の前に、「目的」を貼り出しておくぐらいでちょうど良いと思います。

f:id:jsstudy:20170430210709j:plain
??? ( ͡⊙ ͜ʖ ͡⊙) ???

アクセルとブレーキ

  • アクセル:プログラミングを加速させるもの。
  • ブレーキ:プログラミングを停滞させるもの。

疲労や面倒くさいという気持ちが出てきたら、ブレーキになります。

日頃から、気分や体調をリフレッシュする方法を用意しておきたいです。

リフレッシュするとき、何か良い方法があったら教えてください。

よろしくお願いします。m(__)m

投稿日:April 30th 2017

元記事:http://jsstudy.hatenablog.com/entry/ends-and-means-of-programming

– PR –
– PR –