Lifestyle

プログラミングに思うこと

2017年4月5日

プログラミングはこれから必要?

ついこの2年くらいのことでしょうか、「プログラミング」という言葉がここまで聞かれるようになったのは。

とあるビジネスパーソン曰く「これからの時代、プログラミングは必須のスキルだ」

また、とある母親曰く「自分の子供にはプログラミングを勉強させたい」

 

僕は、曲がりなりにもコンピュータに関係した仕事をしているので、こういう流れを歓迎したいと思います。

ITスキルが、よりよく評価される時代が来ることを心から願っています。

 

ですが、趣味としてのプログラミングとなると、かなり厳しい道のりになると言わざるを得ません。

先に趣味としてのプログラミングに関して、かなり批判的になってしまいますが、僕の意見を書いておきたいと思います。

後半では、これからの時代を生き残る武器となりうる、スキルとしてのプログラミングに関しての意見を書いていきます。

趣味としてのプログラミングは行き詰まりやすい

もしも、プログラミングを「ビジネスマンの常識だから」と思ってやるのであれば、僕個人としては、あまりオススメしません。

なぜなら、苦痛でしかないと思うからです。

今は、プログラミングという言葉が一人歩きしすぎている気がします。

プログラミングといえば、プログラム言語を書いて、プログラムを作ることですよね。

料理を作るのは食べるためであるように、当然、書いたプログラムは動かしてこそプログラミングです。

 

ですが、プログラミングの問題は、この書いて実際に動かすまでに、覚えるべき周辺知識が異常に多いことにあります。

 

例えば、ウェブアプリケーションを作りたいとしましょう。

 

まず、ウェブページのコンテンツは、ブラウザが、HTML、CSSやJavaScriptを解釈することによって表示されています。

ウェブアプリケーションを作るとなれば、このあたりを勉強するのは当然ですが、

ちょっとHTMLを書いて、自分が書いたコンテンツをブラウザで見るだけならばすぐにできます。

ですが、これは何の楽しさもありませんし、アプリケーションというには物足りなさすぎます。

普通は、一連の画面遷移や機能を作り込んで初めてアプリケーションとなりますが、

アプリケーションを動作させるには、さらに多くの知識が必要になります。

Linuxサーバー、データベース、PHPやJavaなどサーバーサイドの言語、ドメインなどインターネットそのものの仕組みに関する知識、セキュリティ知識、ネットワークの知識、HTTPプロトコルの理解、ビルド、デバッグ・・・ 初めての人なら、何が何だかわからないうちに挫折する可能性が高いでしょう。

悪いことに、これらの一つ一つに分野に、さらに付随して必要な知識があります。

例えば「データベース」なら、SQL、リレーショナルデータベースの理解、データをどう保存しているかのスキーマ設計、使っているソフト固有の設定など。ここだけで何冊もの本が必要になるでしょう。

サーバーは、現在一般的なのはLinuxサーバーですが、このOSはWindowsやスマホと違い、全ての操作はコマンド経由なので、コマンドやLinuxのシステム管理に関する知識が必要になります。

このように、一つの達成したい目的に対して、必要な知識が理不尽なまでに求められます。

 

何かをやろうとすると、何かにつまづく。つまづいた先でさらにつまづく・・結果、何も目に見える進捗がないまま一日が終わる・・・

趣味でこれをやるのは苦行としか思えません。

いくら料理が趣味だからと言っても、玉ねぎの皮むきだけを一日中やるなんて嫌ですよね。

 

仕事であれば、研修もあり、相談できる同僚や先輩がいたりします。

しかも、仕事としてやっているので、一日の大半はそのことに時間を使えます。嫌でも強制的に覚えていきます。

また、組織で働いていれば、責任範囲を細分化することで、必要な知識を分散できます。

その代わり、自分が担当する分野に関しては、さらに深い知識を求められますが。

 

ですが、個人の趣味でやる場合、これらを全て広く、かつそこそこ深くまで、一人で把握しないといけません。

もちろん、個人の趣味なので、完璧である必要もなければ(商用のシステムでも完璧なものなど存在しませんが)、

問題に対して社会的・金銭的な責任を負うわけでもありません。

 

とはいえ、そこそこのおもちゃ程度のものであっても、ある程度の知識がないと全く動いてくれないことが多いのです。

 

ウェブではなく、スマホのアプリを選んだとしても同じことが起こります・・・

 

Javaというプログラム言語がありますが、これは、文法自体はそれほど難しくありません。

プログラム言語には、癖のある言語とか、好みが人によって出ますが、言語、文法に関しては覚えることはそれほど多くなかったりします。

一つの言語をマスターしてしまえば、他の言語にも応用できる場合も多くあります。

 

ですが、それぞれの言語に使われる目的があり、それによってたくさんの覚えることがついてきます。

Javaの場合、エンタープライズと言って企業のシステムで使われることが非常に多いです。それに伴い関連した巨大なAPIがあります。データベースとか、リモートコールとかの大規模なシステムで使われるような機能や仕様がずらっとあります。さらに、オープンソースなど、外部の開発者が作ったフレームワークも大量にあります。もうこれでもかというくらいあります。しかも新しいものがどんどん出てきます。

これらを、開発するシステムの要件に応じて組み合わせて使っていくのですが、機能やフレームワークの一部分だけでも本が何冊も出ているようなものがたくさんあります。

このような感じなので、現実に企業の現場で使われているJavaを、あまりコンピュータを使っていない方が趣味としてやる場合、

酷な言い方ですが、相当な興味と根気がないと長くは続かないと思います。

生き残るためのプログラミングスキル

ですが、もし、これからの時代に生き残るための選択肢として考える場合、プログラミングは、他の多くの人が言うように非常に強力な武器だと考えています。

アメリカのオバマ前大統領や、いろんな人がプログラミングの必要性について意見を言っているのですすが、

僕が好きなのは、マイクロソフト創業者のビル・ゲイツ氏のこの言葉です。

BE NICE TO NERDS. CHANCES ARE YOU'LL END UP WORKING FOR ONE.

オタクには親切に。あなたたちは、いつか、彼らの下で働くことになるでしょうから。

僕も同感です。いつか必ず、オタクにアタマが上がらなくなる時代が来ると思っています。

今、日本ではITエンジニアに対する評価は悪いようですが、いつまでも続けられないと思っています。

攘夷派と維新派とかいうと大げさですが、攘夷派はいつか破れ、ガラパゴス体制はいつか淘汰される可能性に賭けています。

かつての中国語ブーム

そういえば、僕が若い頃、中国語ブームがありました。

2008年の北京オリンピックが関係あったのかもしれません。

曰く、

「中国語は世界で一番使われている言語だ」

「これからの時代のビジネスには中国語が必須だ」

「私は今から中国語を覚えて、オリンピックを見に行きたい」

自分の子供に中国語をマスターさせるため、横浜の中華学院に通わせる親御さんもいたそうです。

あのブームはどこへ行ったのでしょうか??

この学校を卒業して中華世界を股にかけるエリートビジネスマンも出たのでしょうか。

実際には、その人たちを上回る数の優秀な中国人の学生が、英語も日本語も覚えて世界に進出して行きました。

今日も東京のドラッグストアで爆買いにきた中国人の対応をしているのは、中国語も日本語も堪能な中国人留学生ではないですか。

崖っぷちな日本

21世紀に入ってから、日本の世界における立ち位置は変わりました。

世界経済における日本の経済規模の割合は、過去20年で約半分になりました。

この傾向はこれからも続くそうです。

 

前にネットで、ホリエモンが近畿大学の卒業生に向けて行ったスピーチを見ました。

その中で彼は、

「日本で受けたマッサージと、タイで受けたマッサージの価格差が、わずか2倍しかなかった」

という体験を話していました。

この話には少し誇張があって、日本の値段は、クーポンをフル利用したお得な値段で、タイの値段は平均よりも多めのチップを払った総額で、それを比較しています。なのでこの比較はフェアとはいえません。

ですが、そこは重要なポイントではありません・・・

堀江氏が伝えたかったのは、日本が停滞している間に他の国々は成長を続け、さらに世界的なネットの普及によって、この差はますます狭まってきているということでした。

(その上で、これからは予測のできない時代だから、過去のしきたりのレールの上を歩くのではなく、新しいことに挑戦しようと言っていました)

彼の言う通り、一昔前ならば、この価格差はもっとありました。

僕の記憶では、2001年頃、日本でマッサージを2時間も受ければ12,000-13,000円くらいしたはずです。

今でこそ低価格化が進みましたが、当時、マッサージってそんなに安くなかったのです。

初回特典とか、よほどの割引がなければ、1時間の料金が5,000円を切ることはなかったと思います。

デフレなのか、企業努力なのかわかりませんが、最近はほんと安くなったなあと思います。

 

その頃、タイのプーケットで、エアコン付きの清潔なお店で古式マッサージが、1時間100バーツ。チップ込みで2時間300バーツでした。

当時のレートでだいたい、900円くらいですね。

つまり、2001年頃は、10倍以上の価格差があったことになります。

それがわずか2倍程度にまで縮んだということになります。

先ほども書いた通り、比較条件は一定ではありませんが、ホリエモンのようにドラマチックな表現をするならば、そういうことになります。

 

また、僕が子供のころ、海外に旅行してきた大人から

「中国でね、大人5人でお腹いっぱいご馳走を食べたとき、会計はたったの2000円くらいだったんだよ」

とか、そんな話を聞くのが大好きでした。こういう話で海外に対する想像を膨らませていたのです。

 

しかし今ではどうでしょう。

僕が今いるタイのスーパーでも、値段をきちんと見てからものを選ばないと大変です。

日本や欧米からの輸入品はみな高いし、ローカルのものでも、卵とか牛乳が結構高いんです。

それに、ちょっといいレストランで食事をすれば、日本よりも高い値段を払うことはよくあります。

別に高級ホテルとかの外国人価格でやっているところではないですよ。

そういう場所へ行ってしまえば、日本のホテル並みに取られます。

例えば、4人でランチビュッフェを食べたら2万円とか普通にかかります。

東京とあまり変わらないですよね。

ホリエモンも、バンコクの一人5万円もするような鮨屋が連日にぎわっていると言っていました。

プログラミングはこれからの時代の食いぶち

プログラミングの話をするつもりだったのに、これでもかってくらい脱線しました(^_^);

なぜこんな話をするかというと、僕がたまたま思い出した話を書きたくなったからというのもありますが、

僕の頭の中で、プログラミングと、100年前に外国に出稼ぎに行った日本人が重なり合う感じなのです。

 

「おい、また脱線するのかよ」と思いましたか?

僕もそう自分でも思っています・・・

 

当時、日本からハワイやブラジルに出稼ぎに行った日本人が多くいたのです。

彼らは、遠い異国の地で主に農園や工場などで働いていたそうです。

畑を経営していた現地の地主からすれば、雇うのは別に日本人でなくても良かったはずです。

でも、日本人は貧しい境遇から豊かな生活を求めて、祖国を遠く離れて出稼ぎに行った。

今では海外に出稼ぎに行くなど考えられないでしょう。

 

将来、日本の人口が減り、今の水準の豊かさを維持できなくなった時、100年前とは時代は違えども、同じような状況が訪れるかもしれません。

プログラミングは、そんな時代を生き残らないといけない世代が、海外との競争をするための武器だと考えています。

農園や工場の時代とは違い、今はインターネットがあります。

プログラムは、どこにいても学び、書くことができます。日本にいても世界と仕事ができます。

僕は、コンピュータやプログラムのスキルを身につけたことによって、助けられた人間の一人です。

今、外国の仕事をもらうことによって生活をしています。

外国の企業は、現地で商売をして、現地のお客さんからお金を稼ぐ。

その企業は、稼いだお金の一部を、システムの改善に投資する。その仕事の一部を僕はやらせてもらっています。

グローバル時代では、どの国も持ちつ持たれつになります。

誰もが外国の商品やサービスにおカネを支払い、外国の企業から支払いも受ける。

 

僕が今やらせてもらっている仕事は、本来ならば、その国の若者がやるべき仕事だったかもしれません。

また、この仕事は、いつの日か、聞いたこともない国の若い人に奪われるかもしれません。

すでにそういう時代に入っているのだと思います。

 

世界中にホンモノのプログラマがいて、彼らは自分が働く環境を自分で選び、新しい時代の技術を作っています。

僕は完全に雑魚ですが、それでもこの仕事で食わせてもらっています。

いつまでやらせてもらえるか分かりませんが、このスキルを身につけて、今まで生活の糧とできていることは本当に良かったと思っています。

 

こんなスキルがなくても、世の中を渡っていける人はいくらでもいますが、自分の場合は、コミュニケーションの能力や常識に欠けるため、従来の社会での競争となれば、かなり分が悪かっただろうと自覚しています。

だからこそ、このスキルの有用性を、これから将来を考える世代の人たちと分かち合いたいと思っています。

-Lifestyle

Copyright© dawaan , 2020 All Rights Reserved.