「2ちゃんねる」の創立者で、最近は「論破王」としても知られる、ひろゆき(西村博之)さんが、ユニークなプログラミング入門書を書いた。本書「プログラマーは世界をどう見ているのか」(SB新書)である。実際にプログラミングの初歩を学びながら、プログラミングをすることで得られる論理的思考力、創造性、問題解決能力について解説している。
「プログラマーは世界をどう見ているのか」(ひろゆき著)SB新書
ひろゆきさんは1976年生まれ。1999年に、インターネットの匿名掲示板「2ちゃんねる」を開設し、管理人となる。2005年に「ニコニコ動画」の管理人に就任。2015年に英語圏最大の匿名掲示板「4chan」の管理人となる。2019年、インターネット上のコミュニティサービス「ペンギン村」を開設し、村長に就任。
本書では最初、アメリカの経済誌「フォーブス」が発表した2022年版の世界長者番付を掲げ、テスラのイーロン・マスク(1位)、アマゾンのジェフ・ベゾス(2位)、マイクロソフトのビル・ゲイツ(4位)ら、トップ10の過半数がプログラマー出身者である、と指摘している。
IT業界の市場拡大が直接的な理由だが、プログラミングをすることで得られる能力も大きいと、ひろゆきさんは考えている。具体的には情報整理術、俯瞰で物事を見る目、相手に合わせて指示するやり方、物事を効率化する力、仮説を立てる癖、模倣するショートカット術などだ。
プログラミングは、高校を卒業できる程度の知力があれば、ある程度は誰でもできてしまうものだという。実際、ひろゆきさんは中央大学の文学部出身の文系プログラマーだ。
自分は凡人プログラマーだが、Perl(パール)というプログラミング言語を覚え、わからないことはネットの掲示板で教えてもらいながら、「2ちゃんねる」を作るまでに至ったそうだ。
実際に手を動かしてプログラミングを学ぶ
本書の特徴は、座学的に理論ばかり説明するのではなく、「実際、手を動かしてプログラムを書く」ことを重視していることだ。
取り上げる言語はHTML(エイチティーエムエル)とJavaScript(ジャバスクリプト)。Webブラウザに命令を出すプログラミング言語で、パソコンとWebブラウザさえあれば、すぐに始められるので、ハードルが低いという。
「第1章 『ツリー思考』で整理する」「第2章 物事を『最小単位』に分解して並べる」「第3章 最強の能力は『if』思考で身につける」「第4章 『仕事が速い人』はループを見つけている」「第5章 プログラミングを学べば、アイデアを形にする力を得られる」という構成になっている。
第1章では、実際にWindowsの「メモ帳」アプリで文章を入力し、さまざまなHTMLのタグを付けることで、Webサイトに命令した通りの結果が出る快感を味わうことができる。Webサイトの全体構成を、ツリー構造を使って考えることで、物事を俯瞰的にとらえ、問題解決や原因追求の役に立つ、と説明している。
第2章からはJavaScriptを使って説明している。その基本形は、操作対象と命令を「.(ドット)」でつなぎ、命令のあとのカッコ内に表示したい内容や数を書くというものだ。
次に、一時的にデータを記憶する「変数」を使うことで、複数の文を連携させることを学ぶ。変数名のあとの「=(イコール)」は「=の右にあるものを=の左に入れろ」という意味で、数学で「=」を使うときの「等しい」という意味ではないことを知る。
続く章では、「分岐処理」と「反復処理」を取り上げる。分岐処理では、if文とif-else文、else-if文を学ぶ。「条件式を考えるのがプログラマーの仕事」だと説明している。
プログラミングの入門書では、このあたりで挫折する人が多い箇所だ。
ひろゆきさんはフローチャートを書いて頭を整理することを勧めている。ちなみに、初心者にはelse-ifの代わりにifを使う間違いが多いそうだ。