現在位置: ホーム / こだまのたまご / 私にとってのプログラミング

私にとってのプログラミング

IT業界に入って今年で28年目になりました。20歳で就職してもう四半世紀もこの業界で過ごしています。 経営者になってからは、プログラミングすることは少なくなったのですが、たまにこのblogにも出てきますが週末に会社の情報システムのプログラミングをすることはまだ行っています。 ということで、私にとってのプログラミングの位置づけというのを書いてみたいと思います。

 

 これまでの経験
  • BASIC?
    私が最初にプログラミングに触れたのは、中学2年生頃(1982年)に、友達が持っていたNEC PC8801でした。当時は、プログラミングをしていたというよりかは、I/Oという雑誌に掲載されていたゲームのBASICのコードを入力して、カセットテープにそのプログラムを記録して、友達の家で遊ぶ。というものでした。とりあえず、ゲームは、プログラミングすれば、利用できるというレベルのもので、本格的プログラミングを学ぶということはありませんでした。 
  • FORTRAN 77
    私が最初にプログラミングを学んだのは、高専の2年生(1985年)の授業でのFORTRAN 77(フォートラン セブンセブンと読んでいた)でした。高専のコンピュータは、富士通のメインフレームがあって、それを利用して、プログラミングを学びました。当時は、パソコンが高価だったのと、コンピュータルームには、勝手に入ることができなかったので、なんと、パンチカードを購買で購入して、タイプするもしくは、マークシート形式に鉛筆で塗る。というものでした。既にこの時代には、パンチカードを利用するケースは少なくなっていたようですが、学校のため最新機器は使えない。というものでした。 ただ、この1年間の情報処理の科目は、私には合っていたようで、試験はほとんど100点だったのを今でも覚えています。(友達の宿題も代わりにやっていた記憶があります)
  • F-BASIC 
    高専の5年生(1988年)の卒業研究のデータを集計して、グラフ化するために、研究室にあった富士通製のFM77を使ってそれにに標準添付されていたF-BASICでプログラムを書きました。ただ、BASICそのものを勉強するというよりかは必要なことを理解して、プログラムをするというスタイルでした。 
  • YPS
    平成元年(1989年)に富士通に入社すると、当時のメジャー言語であったCOBOLを学ぶ前に新人研修では、当時富士通が推していた第四世代言語であるYPSを学びます。YPSは、なんと、全て日本語でプログラミングをするという画期的(?)な代物で、YSPからCOBOLのソースを吐いて、最終的にはCOBOLのプログラムになるというものでした。
  • COBOL 85
    現場に配属されると、先輩から「えー、COBOL知らないの? YPSなんか使わないよ」ということで、COBOLを勉強することになりました。私が最初に配属されたのは、お客様への研修を行う部署で、その部署名も「教育部」(現在は、分社化され(株)富士通ラーニングメディアになってます)なるところでした。実際のプログラミングをしたこともない20歳そこそこの若者が、三ヶ月後の10月には、COBOLをお客様に教えるというハードルの高いものでした。
  • C言語
    とりあえずCOBOLを覚えたわけですが、その後私は、Sunワークステーションを担当することになり、先輩から「とりあえずC言語覚えろ」と言われて、C言語を勉強します。この当時は、C言語はマイナーだったため、書籍もほとんどなく、今はC言語のバイブルとも呼ばれるK&Rの「プログラミング言語C 第2版 ANSI規格準拠 」を購入して勉強しました。
    そのあとに、MINIUXのソースコード見ろ。 と言われて、当時出版されたばかりのMININXの書籍オペレーティングシステム―設計と理論およびMINIXによる実装を購入しました。
  • シェルスクリプト
    C言語を勉強しつつ、今度は、UNIXの講座を担当することになり、まずはシェルスクリプト(私はCシェル派でした)を勉強します。この時が初めてスクリプト言語を学んだ機会になります。 
  • Suntool/OpenLook/Motif
    GUI系の言語は、初期のSun OSに搭載されていたウィンドウシステム SunView上で開発できるSunToolを覚え、その後Sunは、OpenWindowになり、OpenLookも覚え、その後はMotifを使ったGUIプログラミングを覚えました。このころは、X Windowsを使っていてもGUIツールキットはバラバラだったので、お客様の要望に合わせたツールキットを覚える必要がありました。
  • システムコール
    入社して3年目ぐらいには、今度はシステムコールの講座を担当することになり、言語としてはCなのですが、UNIXシステムコールを覚える必要がありました。で、これも唯一の書籍であった「UNIXカーネルの設計」を購入して学びました。この頃は、UNIXは版権の問題があったのと、私みたいはペーペーには、富士通にあるUNIXソースコードにアクセスする権利も無いので、この擬似コードを見ながら勉強してました。
  • PL/SQL
    富士通に4年弱在席して、その後日本オラクルに転職し、そこではPL/SQLを覚えることになります。 この当時は、お客様にOracle Databaseをインストールして、お客様の要望に応じてPL/SQLやPro*Cでプログラムを書くことが多かったです。
  • Java
    C言語はマスターできていたのですが、当時アメリカのOracle本社(1996年)で勤務しているとJavaが現れて、これからはオブジェクト思考型言語かつマルチプラットホームだー、みたいな盛り上がりがあり、Javaも勉強しました。まだ、日本語の書籍がなく、カリフォルニア大学バークレー校内にある書店で英語のJavaプログラミング本を購入して、それを読みながらプログラミングをがちゃがちゃやってました。

     これ以降は、ここまで覚えた言語である程度生きていくことができてました。30歳過ぎからエンジニアから経営指向に変わったこともあり、新しい言語を覚えることも無くなりました。
  • クラウドの世界
    10年以上は、それまでの言語知識で生きていたわけですが、Google Appsを当社に導入したこともあり、最近はもっぱらGoogle Apps Scriptを使っています。(4月に書いたQuestetraとGASの連携) 言語としては、JavaScriptベースであることから、これまで覚えた言語を応用すればプログラミング可能です。ただ、GASは、Google Appsの各ツール(ドキュメントやスプレッドシート)とも連携できたり、他のクラウドサービスから呼び出せたり、ただの言語というよりかは、各クラウドサービスとの連携を考え、どう効率的に使うかという点が大きくことなります。でも、色々な新しいことに触れられることはとっても楽しいです。

 

プログラミングの意味

とまあ、これまで色々な言語を学んできて、最近もGASのプログラミングをしている時に思うことは、

やっぱりプログラミングは、楽しい!!

 ということです。

私にとっては、プログラミングは、業務が効率化できたり、新しい価値の想像という意味で楽しいのです。また、考えていた通りプログラムが動作するとやっぱり嬉しいんですね。「できたー!」って感じです。さらに作ったプログラムを利用することにより、誰かが嬉しく感じてくれたら、もっと嬉しい気持ちになります。そのため、どこかで利用されないプログラムは、私に取ってはモチベーションが湧きませんし、決められた仕様書に沿って単純にプログラミングするだけも楽しくありません。自分自身で利用者のシーンや何をプログラミングするとその人たちは喜ぶのかを考えながらいつもコードを書いています。

また、新しいプログラミング言語やシステムを触ることは、IT業界の最新状況を自分で触ってみて、感じ取るという意味でも大切だと考えています。ネットや書籍に書いてあることだけでなく、やはり自分でやってみることで、そのメリットもデメリットも分かります。それらを自分が自信を持って、お客様や若いエンジニアの人達にも話もできるようになります。あと、頭の体操にもなります。 

半年に1度ぐらいしかプログラミングをする機会は無いのですが、今後も頭がついていける限りはプログラミングはしていこうと思います。

最近のエントリ