非エンジニアがプログラミング言語を習得する上で知るべきことについて、一般社団法人ノンプログラマー協会・代表理事の高橋宣成さんにお話をうかがいました。

ITトレンド最終更新日: 20220208

ノンプログラマー協会代表理事 高橋宣成さんに聞く、非エンジニアのためのプログラミング入門

  • このエントリーをはてなブックマークに追加

誰もがデジタルリテラシーを求められる昨今、生産性の向上のため、自身のキャリア形成のためなど、さまざまな動機からプログラミングに興味を持つ人が少なくありません。今回は、非エンジニア・ノンプログラマーがプログラミング言語を習得する上で知っておきたいことについて、まとめています。
一般社団法人ノンプログラマー協会・代表理事を務めるほか、「ノンプログラマーのためのスキルアップ研究会」というコミュニティを運営する高橋宣成さんに話をうかがいました。

ノンプログラマー協会・代表理事、高橋宣成さんについて

最初に高橋宣成さんのプロフィールを紹介します。高橋さんはさまざまなノンプログラマー向け教育活動を中心に活躍しています。

<プロフィール>

高橋 宣成さん

一般社団法人ノンプログラマー協会・代表理事

コミュニティ「ノンプログラマーのためのスキルアップ研究会」主宰

『Pythonプログラミング完全入門 ~ノンプログラマーのための実務効率化テキスト』『詳解! Google Apps Script完全入門[第3版]』など著作多数

最初のおすすめは? プログラミング言語の選び方

初めに聞きたいのが、「何から学び始めるといいか」です。もちろん決めている人はいると思いますが、これからプログラミングを学習したい人は、どのような基準で対象のプログラミング言語を選ぶといいでしょうか?

高橋:日頃の業務や活動に直結する言語を選べるかどうかです。業務で使用中のオフィススイート(オフィス業務に必要なソフトウェアのパッケージ)に対応するプログラミング言語を選ぶといいでしょう。オフィススイートと言えば、Microsoft 365かGoogle Workspaceのどちらかで、それぞれと相性がいいプログラミング言語を選びたいところです。

そうなると、Microsoft 365であればVBA、Google WorkspaceであればGoogle Apps Script(GAS)です。

後は、自動化したい業務内容が何かを考えてみてください。自動化したい作業と相性がいいプログラミング言語を選べると、将来的に業務に直結する分、学習のモチベーションの維持につながります。

プログラミング言語選びで気をつけるべきこと

プログラミング言語の選び方で注意したいことはあるでしょうか? NEXMAGは、クリエイターもビジネスパーソンも含めて、さまざまな属性のユーザーが訪れるメディアです。例えば、自分はオフィス業務ではなくクリエイティブに活かせることをしたい、といったユーザーはどう考えるといいでしょうか?

高橋:ユーザーの属性に関わらず、プログラミング言語を習得していくのに必ず意識すべきは「学習時間の確保」です。HTMLをやりたい、JavaScriptがいい、Rubyは聞いたことがある……私自身は始める言語が何になっても素晴らしいことだと考えていますし歓迎したいのですが、先々で立ちはだかるのが学習時間です。

もし業務や日々の活動に関係ない言語を選ぶと、完全に自らのプライベートの時間を捻出する必要があります。捻出が大変なほど、学習すること自体が大きなハードルになります。一方で、何かしら日頃の業務に関わる言語を学ぶと、業務時間の中でプログラミングに触れていける時間も確保しやすくなります。学ぶ意欲も持続しやすく学習効率を高めてくれるでしょう。

プログラミング言語を一通り習得する時間は200〜300時間と言われています。200時間と少なく見積もっても上の表の通り、1日1時間で週7時間の確保をしても約7カ月はかかる計算です。始める以上、学習を継続する「覚悟」が必要です。1日2時間を確保できると理想的ですが、休日ではない日に2時間の空き時間を確保するのは困難です。そうなると、業務の中で学習時間が確保しやすい言語に取り組むことは、とても理にかないます。

学習を「継続する」ための知恵とも言えそうです。

高橋:よく私が「プログラミング学習には、事前準備を行い、しっかり計画を立てること」と伝えています。何をどう勉強できると「継続的に」「時間を生み出しながら」学習できるか。闇雲に勢いで始める行動力も尊重したいですが、それ以上に、学習が継続するための環境整備が習得に向けた一歩です。

学習初期は我慢? あらかじめ知っておいてほしいこと

では、継続して学習を進めていく中で事前に知っておくべきことや注意しておきたいことはあるでしょうか?

高橋:ここでは2点を挙げておきます。1点目は、学習初期の段階は学んでいても「何もできない」時期だということ。このことは知っておきたいです。例えば、何かしら業務を自動化するツールが作れることをゴールに据えたとします。そのためには、土台になる基礎をしっかり築き上げる必要があります。

高橋:上の図のように、各ステップを1つずつ踏み越えた先にようやくゴールが待っている状態なので、特に前半は実務に活かせない基礎体力作りの時期が続きます。これは学習する前の段階からぜひとも心づもりをしておいてほしいです。

学習慣れしていない人だと“勉強したらすぐ何かできる”と勘違いしそうです。

高橋:2点目は、学習が進んでさまざまなプログラムに挑み出すと、エラーに直面する度合いが増えてきます。この際に、なかなかエラーメッセージが解消できないことです。独学が難しいのは、直面したエラーが独力では解消しづらく、そのまま挫折につながりかねません。

回避するにはどうするといいでしょうか?

高橋:これも事前に対処方法を見つけておきましょう。理想は職場で聞けることです。実務に活かすことを目的にしていれば、職場での助言も仰ぎやすいでしょう。

職場が難しい場合は、有料になりますが各種講座を受講して、悩みや不明点を問い合わせましょう。もしくはSNSやQ&Aサービスを用いる手もあります。ただしこちらは、質問の仕方によって手厳しく応対されることもありますので、上手に質問する工夫も必要です。

心理的なハードルを感じずに質問しやすいのが、コミュニティの活用です。コミュニティの利点は、自分と同じ境遇の人たちが集まっているので、お互いの状況を想像しやすい間柄で参加ができます。似たような経験を持つ者同士が集うだけでなく、熟練者の人たちもかつては初心者として悩んできた人たちですので、質問者の気持ちに寄り添った返答がきやすいです。

自分がしっくり来る方法を事前に用意しておけるとよさそうですね。

高橋:最初のプログラミング言語を習得できてくると、2番目に学ぶ言語がより勉強しやすくなる効果も味わえます。プログラミング言語全般に通じる概念や作業、言葉などを理解した状態で臨めるので、次以降の学習がとても効率的になります。

ノンプログラマーのための自動化技術

最近はRPAやノーコード・ローコードについても耳にする機会が増えました。ノンプログラマーの立場からは、こうした技術やサービスをどう考えておくといいでしょうか。

高橋:ノンプログラマー向けの自動化技術を念頭に置いて、それぞれへの考え方をまとめた図を用意しています。

高橋:みなさんの置かれた状況の中で、業務につながる技術が必ずしもプログラミングにつながらない場合があるでしょう。各技術にはそれぞれの良さと難しさがあるので、自分の状況と照らし合わせながら確認してみてください。

先ほど「2番目以降に学ぶ言語が勉強しやすくなる」と伝えましたが、何かしらプログラミングを学習してきた人の場合、他の技術やサービスについても同じことが言えて、格段に取り組みやすいと思います。

プログラミング学習者が事前に備えておきたいパソコンや周辺環境

学習環境につながるパソコンや周辺機器についてもうかがいたいです。これからプログラミング学習したいユーザーにとって、最適な環境をどうお考えですか?

高橋:これはとても興味深い質問です。お金がかかることですので、思い通りにいかない側面はあるでしょうが、理想を言えば、許される予算の中で最高スペックのパソコンを用意してほしいです。

業務環境の中には、事務作業が中心だからと最低限のスペックで構成されたパソコンが支給されている人たちもいるでしょう。ですが、パソコンは自身のビジネスパートナー、もしくはクリエイティブパートナーだと考えてほしいのです。

スペックが抑制されていると、当然ながら扱えるデータ量や処理速度も抑えられます。憂慮するのが、マシンの実行速度の“遅さ”に慣れてしまうことです。最低限のマシンで遅い実行処理に慣れると、自らの業務スピードの意識も遅くなります。

パソコンに接する機会が多い人ほど、仮にスペックを上乗せしても、その分の金額はすぐに回収できると言えます。

高橋:私は1年に1度は必ずパソコンを買い替えています。1年も経過すると搭載スペックも古くなりますし、パソコン自体を消費してきた分、購入初期に比べてパフォーマンスも落ちています。スペックを最新状況に改めれば作業処理の時間が短縮できますし、自身の意識改革の点でもマシンの状態は新しくしておきたいです。

周辺機器についてはいかがですか?

高橋:モニタの増設には積極的になってください。プログラミングでは、複数のウィンドウを立ち上げますので、モニタを数多く用意できる数ほど、大きな画面で確認も可能です。性能は用意しやすいものでいいので、増設ありきで検討できると理想的です。

挫折せず継続こそが力となる

最後に、ノンプログラマーのみなさんに向けてメッセージをお願いします。

高橋:プログラミングスキルについては、“世の中の特殊な人たちのもの”、“文系出身者には手に負えない分野”など、誤った先入観もはびこっています。実際は、継続できるポイントを押さえて学習ができれば、誰もが習得への手応えをつかめるはずです。

このたびはありがとうございました!

ライタープロフィール 遠藤義浩

フリーランスの編集者/ライター。雑誌『Web Designing』(マイナビ出版)の常駐編集者などを経て、主にデジタルクリエイティブやデジタルマーケティング分野の媒体の編集/執筆、オウンドメディアの企画/コンテンツ制作などに携わる。

記事を
シェア