優れたプログラマーの7つの資質

Justin James (TechRepublic) 翻訳校正: 石橋啓一郎 2013年05月22日 07時30分

  • このエントリーをはてなブックマークに追加

 優秀なプログラマーであるためには、自分の持つスキル、経験、知識から、動くコードを生産するための資質を持っている必要がある。技術的なスキルは持っていても、必要な資質を持っていないために優秀なプログラマーになれない人もいる。この記事では、偉大なプログラマーになるために必要な7つの資質を紹介する。

1.自発的に新しい技術的・非技術的スキルを習得する

 だめなプログラマーは、どうしても必要になった時にしか学ぼうとしない。よいプログラマーは、積極的に新しい技術的スキルを習得する。偉大なプログラマーは自ら新しい技術的なスキルを学ぶだけでなく、技術以外のスキルも学び、ほかの人なら考えもしないような情報源に対してもオープンな態度で接する。

 具体的に例を挙げれば、駄目なプログラマーはWPFを使うプロジェクトを始めることになって、初めてXAMLを学び、よいプログラマーは面白そうだからという理由で1年前にそれを習得している。そして偉大なプログラマーは、WPFアプリケーションの設計ガイドライン、ユーザビリティの理論、優れたUIを作るために必要なほかの知識まで学んでいる。

2.教条主義的ではなく実際的

 ほとんどのプログラマーには、明文化されていない「プログラミングのルール」に厳密に従うなどという贅沢は許されていない。仕様書がトップクラスの開発者によって書かれたか、そういう人たちに影響を受けた人が書いたものでない限り、そういうことは難しい。

 私はよく、やりかたが一般に受け入れられているベストプラクティスにあてはまらないことを理由に、仕事ができない、あるいは仕事を拒むプログラマーを目にする。実装する際の技術的な理由で、ビジネス上の要件が縛られることはまれだ。「プログラマーの書くコードがよくないものになるので、その仕様を含めるのはやめよう」などと言う人はいない。

 結局のところ、プログラマーの仕事は技術的な完璧さを追い求めることではなく、実際に動くアプリケーションを作ることなのだ。私は、腐ったコードを書けと主張しているわけではない。他の人に、よい仕事の例としては見せられないようなコードを書かなければならないこともある、と言っているだけだ。ほかに書きようがない場合には、それは悪いコードではない。ただし、ほかの可能性はなかったと言えるようにすべきだ。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

  • このエントリーをはてなブックマークに追加

この記事を読んだ方に

関連ホワイトペーパー

SpecialPR

連載

CIO
トランザクションの今昔物語
研究現場から見たAI
Fintechの正体
米ZDNet編集長Larryの独り言
大木豊成「仕事で使うアップルのトリセツ」
山本雅史「ハードから読み解くITトレンド放談」
田中克己「2020年のIT企業」
松岡功「一言もの申す」
松岡功「今週の明言」
内山悟志「IT部門はどこに向かうのか」
林 雅之「デジタル未来からの手紙」
谷川耕一「エンプラITならこれは知っとけ」
大河原克行「エンプラ徒然」
内製化とユーザー体験の関係
「プロジェクトマネジメント」の解き方
ITは「ひみつ道具」の夢を見る
セキュリティ
「企業セキュリティの歩き方」
「サイバーセキュリティ未来考」
「ネットワークセキュリティの要諦」
「セキュリティの論点」
スペシャル
課題解決のためのUI/UX
誰もが開発者になる時代 ~業務システム開発の現場を行く~
「Windows 10」法人導入の手引き
ソフトウェア開発パラダイムの進化
エンタープライズトレンド
10の事情
座談会@ZDNet
Dr.津田のクラウドトップガン対談
展望2017
Gartner Symposium
IBM World of Watson
de:code
Sapphire Now
VMworld
Microsoft WPC
Microsoft Connect()
HPE Discover
Oracle OpenWorld
Dell EMC World
AWS re:Invent
AWS Summit
PTC LiveWorx
より賢く活用するためのOSS最新動向
古賀政純「Dockerがもたらすビジネス変革」
中国ビジネス四方山話
ベトナムでビジネス
米株式動向
日本株展望
企業決算