プログラミング上達のコツ

プログラミングが上達するにはどうすればよいか。個人的には、大別して3つのことを日々心がければよいと思っています。

  • 書け

まず手を動かさないことには何も始まりません。一通りの基礎を学んだら、あとはとにかく量を多くこなすことです。

  • 真似ろ

全く何もない状態からコーディングしなければならないわけではありません。幸いなことに、先人たちは多くの優れたソースコードを残してくれています。参考書でも優れたプログラマの書いたソースをよく読んで、「これは」と思った技法があったらそれを真似てください。最初のうちはコピー&ペーストが主体でも問題ありません。ただし、少しずつでもいいので、それらの技法を自分の中に吸収できるよう努力してください。

  • 試せ

今日は最善だと思ったコーディングが、明日にはもっといい方法が見つかっていることなんてことは、プログラミングの世界ではよくあることです。ある程度のセオリーは存在しますが、それが正解ではありません。というか正解などありません。ソースコードがチェックインされるまでは、バグを仕込もうがお遊びのコメントつけようが、別に個人の自由です。余裕のある範囲内で、今よりもよい方法はないか、いろいろ試行錯誤してください。

好きこそものの上手なれという言葉があります。プログラミングも例外ではなく、プログラミングに楽しみを覚えたら上達も早くなります。ただ、どんなことも人によって向き不向きがあります。最初は苦労することもあるでしょうが、大抵のことは努力を重ねることによって一人前と言われるレベルにまで到達するものです。
好きなことを仕事にできる人はごくわずかだと思います。ただ、たとえ最初は嫌いでも日々真摯に取り組むことによってレベルが上がっていけば、それは楽しいものになり得ませんか?人生の多くの時間を仕事に費やすのですから、どうせなら楽しみましょう。

最後に、プログラミングは実際に動いてナンボの世界です。コンパイルが通ってデバッグをするとき、答え合わせをするみたいでドキドキワクワクします。さすがになかなかバグの原因が見つからないときは苛立ちますが。そして、製品をリリースし、ユーザーに満足してもらえたのならこれ以上の喜びはありません。顧客のところへ出張し、自分が組んだ機能を使っていただいているところを見たときの感動は、今でも覚えています。

ブログを始めるにあたり

はじめましての方ははじめまして。
かつてはここで日記書いていましたが、今回プログラミングを題材としたブログを始めてみようと思います。
自分の周りだけかもしれませんが、プログラマになるべく訓練を受けた後輩で「自分はプログラミングが苦手です」と言ってくる人が多く見られるようになりました。プログラミングが得意な自分はその事態を見過ごすことはできず、かといって彼らをみっちり教育する時間的余裕は職場ではありません。よって、この場で自分がやっている技法などについて書き、技術レベルを上げられたらと考えています。
以上えらそうなこと言ってますが、僕の技術力なんて世の中の一流と言われるプログラマさんの足元に及びません。念のため。

  • 自分について

システムエンジニアとして働いています。設計もコーディングも運用サポートもトータルにやってます。

  • プログラミング歴

会社に入ってからです。C#だけを使いこなして現在8年目。他の言語も覚えたいのですが、なかなかモチベーションが…。参考書は持ってますが量は少なく、先人のソースや我流での研究が多くを占めます。

  • 担当システム

データベース系システムです。ゲームとかは作れません。SQL Serverに密接に関わっているので、クエリはけっこう書きます。