Comments最近、プログラミング(コーディング)を勉強しよう、という記事をよく目にするようになりました。プログラミングって難しいんでしょ?いくら頑張っても結局エンジニアの人にはかなわないんだから、そんなものに手を出さないで自分の得意分野に集中したほうよくない?という考え方もありますよね。この記事では、俗に言う「文系」人間がプログラミングを学ぶメリットについて考えてみたいと思います。何を隠そう私自身も、生粋の文系人間なのですが、1年前にiPhoneアプリづくりを始めて、なんとか2つのアプリをリリースすることができました。好きなものを一か所に集めてあなただけのランキングを作ろうたった1年でありますが、この経験をもとに、タイトル「文系人間もプログラミングを学ぶべきか?」への結論を書くと、たしかに大変だけど、それを補って余るくらい楽しい。全ての人が勉強する必要はないけど、少しでもテクノロジーに触れる仕事をしている、もしくはテクノロジーを使って世の中を楽しくする・便利にするのが好き、という人は一度トライする価値があると思います。具体的にどんな人にオススメかというと、下の3つの質問のうち2つ以上がYESならかなりオススメです。🙂テクノロジーを使って、実現してみたいことはありますか?新しいことを学ぶことは好きですか?好きなことは、とことん突き詰めてやるタイプですか?では、この3つの質問にそって、話を進めていきたいと思います。作りたいものを思いのままに作るための武器いま、ITの世界はものすごく面白いことが毎日起きていて、この先少なくともあと10年はさらに進歩が進んでいくと思います。そんななかで、あーこういうサービスがあれば、こんな風に問題が解決できるなぁ、というアイディアを思いついて、今日からでも動き出したいような人にとって、プログラミングは絶好のツールです。社内の人間(マネジメントやチームメイト)を説得すること無く、会社を起こすために資金を集めることもなく、今すぐ作り出すことができるのです。IT系の会社で働いる方は、本業にも必ず活きます。IT系の会社にとってのプロダクト開発は「本業」です。メーカーにとっての「生産現場」と同じです。ここでどのようにものづくりがされているかを知らずして、会社の戦略を立てることはできないと思います。企画・プロダクトマネージャー・ディレクターなどの仕事に従事される方はもちろん、管理部門や営業など直接関係のない職種の方でも、必ず本業のクオリティーを上げることができるはずです。たしかに難しいけど、英語よりカンタン。幸いなことに、開発の敷居はどんどん下がっていて、あなたがコンピューターを持っているなら、ほとんどの開発環境を無料で整えることができます。(スマホアプリをリリースしたいなら、AppleやGoogleに開発者登録をする必要がありますが。前者は約1万円、後者は約3000円程度。)ご存知かもしれませんが、プログラミングをするにはプログラミング言語を学ぶことになります。「言語」なので、英語などと比較したくなりますが、英語より断然カンタンです。英語だと読む、書く、話す、聞く、が必要ですが、プログラミングは読んで、書ければOkです。それにリアルタイムで反応を返す必要もありません。何か分からなければ、うーん、うーんと悩みながらGoogleを検索したり、詳しい人に聞いたりしながら、答えを出せばいいのです。言うと、最初は「書く」ことさえできなくても大丈夫です。ある程度アプリ作りの仕組みを理解したら、ウェブや参考書で自分が望む動作と似ているコードを頂戴してきて変更していきます。プログラミングでは「ライブラリー」という便利な道具があって、多くの人が共通で使うようなコードは、ただ部品を組み込んで呼び出すだけで目的達成です。自分が作りたいものを手段を選ばず作っていき、そのうちに少しずつ自分のオリジナルのコードが書けるようになればいいのです。目的を達成するために新しいことをどんどん学んでいくプロセスは楽しいものです。スポーツで試合に勝つために、新しい技術を習得していくプロセスにも通ずるものがあると思います。最後は情熱さんざんハードルを下げておきながら、相反するようなことを書きますが、プログラミングをしてると、必ず「ハマリ」ポイントがやってきます。自分では絶対動くはず、と思っているコードが思い通りに動かなかったり、どうやって目的を達成するコードを書くのか皆目検討がつかない状況です。そんなときにはひたすらドキュメントを漁ったり、識者にアドバイスを求めたり、自分が書いたコードを穴が空くほど見なおしたりして、なんとか迷宮から抜け出す必要があります。そんなときには、くじけそうになるのですが、「このアプリをなんとか作って世の中に出したい」という思いだけが心をつなぎ止めてくれます。何日か頑張っていると、不思議と光が見えてきます。私の場合、そもそもiPhoneアプリを作りたいと思ったのも、TreasureBoxのようなアプリを作りたいと考えたからです。作るのは難しそうだったので、まずは一つ練習をということで、3ヶ月かけてMailNowを作り、それから3ヶ月間MailNowの改善をしながらTreasureBoxの具体的な構想を立て、その後6ヶ月程度かけてTresureBoxの開発をしました。日曜プログラマーなので、こんなに長い時間かかりましたが、学生の方とかならこの半分の時間でいけると思います。自分はとても飽きっぽくて怠け者のの人間なのですが、自分のアイディアに興奮して世の中に本気で出してみたい!と思ったのと(興奮しているのは自分だけですがw)と、アプリを作るために新しいことを学んでいく過程がとても楽しかったです!さてさて、思ったより長文になってしまいました。最後になりましたが、プログラミング初心者の僕のハマリポイントで幾度も助けてくれた、のんちゃんとOgaogaに深くお礼して、このエントリーを締めたいと思います。このブログが誰か一人でも多くの方をインスパイアして、プログラミング仲間が増えることを願ってます。