web

プログラミング その2

更新日:

プログラミングを学ぶにあたって、最初に勉強しなくてはいけないのはもちろん基礎です。

基礎について書いてあるサイトは、今や星の数ほど存在し、200以上あると言われているプログラミング言語でも主要なものについては、解説されていないものはありません。

プログラミングを学ぶにあたって、過去に類を見ないほど良い学習環境でしょう。

ドットインストールをはじめとする、数々の無料で提供される学習サービス。

料金は掛かりますが、家に居ながらにしてできる、講師による動画学習。

ブラウザ上でコードを書き、すぐに添削してくれるサービスなど、探せばいくらでもあります。

その中でも自分は、一番ドットインストールのお世話になりました。

無料で見られる動画も大変多く、それだけでもかなりプログラミングというものへの理解を深めることができました。

自分のように全くのゼロから学ぼうとする人にも、事細かに専門用語の意味や、パソコンの扱い方に至るまで解説してあり、本当に助けて頂きました。

(もちろん、有料プランも利用させて頂きました。)

まだまだ、自分は学習時間が足りていないと思うのですが、それでも一つの言語ですら覚えることがたくさんあって、とても使いこなすというレベルには到達できませんでした。

能力不足と言ってしまえばそれまでですが、学習コストは決して低くないと思います。

集中してできる時間にも限りはありますし、なにより毎日コードに馴染んでいないと、すぐに忘れてしまいます。

他の技術と一緒で、仕事として毎日やり続けてやっとできるようになるものなのだろうと思います。

しかしながら、仕事としてプログラミングを学ぶということは、現在の仕事をセーブするか、もしくは辞めるしかありません。

金銭的に余裕があれば、スクールなどに通って短期間で習得するのも一つの方法でしょう。

でも、自分はあくまで、現状の仕事は続けながら僅かな空き時間を使って勉強していきたかったのです。

そんな思いを抱きながら、プログラミングの基礎を学んでいくと次第にコンピューターの動作原理にも興味が湧いてきました。

詳しいことは分かりませんが、簡単に書いてあるサイトなどを訪れる内に、根本というか最も簡単な原理としては0と1、電気のオンとオフの積み重ねによってディスプレイに映像を映し出したり、複雑な計算をしたりしていることが分かりました。

その設計図というか、指示書がコードでありプログラミングなのではないかと理解しています。

その単純な原理の組み合わせが、想像をはるかに超える膨大な量の積層構造になっており、私たちが当たり前のように扱っているPCやスマートホンを代表とする電子機器を構築していると思うと、ロマンさえ感じられてきます。

そんな先人たちの英知を、たった一人の自分のような人間が、片手間で習得できるほど簡単ではないことは百も承知です。

もしかすると、もしかしなくても天才でもなければ、人の利益に繋がるような物やサービスを、プログラミングを通じて開発したり、作品を創造したりすることは叶わないのかもしれません。

プログラミングとはあくまで目的を達成するためのツールであり、それ自体が目的ではないということはよく耳にします。

それは、紛れもない真理だと思います。

しかし、その目的を見つけるが一番難しいのかもしれません。

大工は家を建てるという目的があってはじめて、釘を打ったり、ノコギリで木を切ったりといった技術を使います。

料理人も美味しいと思ってもらえるような料理をつくるために、包丁さばきや、味付けを学びます。

プログラミングをする人をプログラマーと呼ぶなら、そのプログラマーは一体何のためにコードを書くのでしょうか。

そして、その目的は本当に自分が望んだものなのでしょうか。

結論から言うと、どうやらそうではないようなのです。

家を建てるのに大工一人では無理なように、現在私たちが利用しているWEBサービスや電気機器は膨大な数のプログラマーが、何年も掛けて開発しそのあともアップデートのために何度もコードを書き直したり、追加したりしています。

アプリケーション一つとってもプラットフォームが更新されれば、それに合わせて不具合が出ないようにメンテナンスしていかなければなりません。

簡単なゲームを作ろうとしても、プログラミングももちろん必要ですが、それ以上にキャラクターデザインやストーリー、背景などの構成など、とても一人でできる量ではありません。

スタートアップにおいては、それも必要だと思いますが長く運営すればするほど必要な人材はたくさん必要になってくるのです。

つまり、プログラミングをして、何らかの成果物を一人で創造することは不可能に近いことなのです。

しかし実は、自分はプログラミングを学べば一人でもクリエイティブなことをして作品ないしは、サービスや、ゲームを作り出せるのではないかと思っていました。

それが、勉強を進めれば進めるほど、その壁の高さを思い知っていったのです。

-web

Copyright© exarow , 2018 All Rights Reserved Powered by AFFINGER5.