企業ホームページ運営の心得

ロジカル思考でレベルアップするためのプログラミング教育

ロジカル思考を身に付ける
Web 2.0時代のド素人Web担当者におくる 企業ホームページ運営の心得

コンテンツは現場にあふれている。会議室で話し合うより職人を呼べ。営業マンと話をさせろ。Web 2.0だ、CGMだ、Ajaxだと騒いでいるのは「インターネット業界」だけ。中小企業の「商売用」ホームページにはそれ以前にもっともっと大切なものがある。企業ホームページの最初の一歩がわからずにボタンを掛け違えているWeb担当者に心得を授ける実践現場主義コラム。

宮脇 睦(有限会社アズモード)

心得其の375

武雄市の取り組み

2013年末、米国のオバマ大統領はプログラミング教育の重要性を説きました。米国に先駆け、イングランドはこの9月から始まる新年度で、プログラミング教育を開始します。私は盲目的な欧米礼賛に唾するものですが、ことWeb担当者に限定したとき、プログラミングを学ぶことを推奨します。それはWeb担当者としてのみならず、個人のレベルアップにつながるからです。

本題に入る前に、国内のプログラミング教育に関する動きを紹介しておきます。佐賀県武雄市は東洋大学とモバゲーのDeNAと共同で、小学校1年生40人を対象にプログラミング教育を10月から試験導入します。すでに2012年から適用されている中学校向けの新学習指導要領では、「技術・家庭」の教科でプログラミングが必修となっており、未就学児向けのプログラミングワークショップを開催する業者も現れています。

さらにスマホアプリの開発を学ぶセミナーは、有料無料を問わず林立しています。背景には深刻な技術者不足があり、プログラミング技術を身につければ、有利な転職が望める、とは副次的な効果。勧める理由はそこではありません。

アルゴリズムという視点

プログラミングを学んだからといって、技術者になる必要はありません。英語を学ぶ人が、通訳や翻訳家を目指すわけではないのと同じです。ですが英語を習得すれば世界が広がるように、プログラミングの理解により、情報を精査する能力が高まります。

それではプログラミングとは何か。狭義においてはPerl、PHP、JavaScriptといった「言語」を学び駆使することですが、本質においては「仕組み」を設計する作業にあり、仕組みは「アルゴリズム」と呼ばれます。

通販システムを例に挙げると、指定商品への閲覧リクエスト(アクセス)があった場合、商品データベースから当該商品を検索し、取得した情報を加工して表示します。指定された商品がなければ、代わりにエラーメッセージを表示する。在庫がゼロの場合は、その旨を伝えるか、あるいは在庫ゼロのまま表示する。これらの手順がアルゴリズムです。

実際にはもっと複雑な手順がありますが、ソフトウェアやアプリはこうしたアルゴリズムの集合体です。

ロジック思考を身に付ける

アルゴリズムは「論理(ロジック)」に置き換えることができます。たとえば、Perlで

if( $a > 0 ){
  print "在庫あり";
}else{
  print "品切れ";
}

と記されている場合(※$aは「変数」と呼ばれる「容器」です)

  • $a が0より大きければ“在庫あり”を表示
  • $a が0以下なら“品切れ”を表示

というロジックに翻訳できます。これがプログラミング「言語」と言われる由縁です。徹底したロジックの世界で、フィーリングやヤマカンは介在しません。つまり、プログラミングを身につけるとは「論理性=ロジック思考」を身につけることといってもよいでしょう。それがWeb担当者のレベルを引き上げます。ロジック思考が「SEO」への理解に直結することからも明らかです。

未経験者との違い

職業柄、多くのWeb担当者と接しますが、プログラミング未経験者は「裏技」「とっておき」「秘密」の情報に飛びつく傾向があります。素朴、好奇心旺盛と言えば聞こえはよいのですが、原因と結果の相関関係に無頓着で、怪しげなSEOを信奉し、新しいWebサービスに盲目的に飛びつくのもこのタイプです。

反対に経験者はロジカルな考えをします。パンダアップデートにより規制された「外部リンク」についても、

どの範囲までが違法(ブラック)となるのか。スタッフのブログからのリンクもアウトなのか。その場合、身内をグーグルはどうチェックしているのか

とロジカルな質問をしてくるのです。当初は性格による違いかと思っていましたが、あるときから興味をもち経歴を尋ねると、プログラミングの経験の有無が両者を分けていました。個人差はあっても、これまでの経験上、プログラミング経験の有無とロジック思考には相関があるとみています。

理屈屋との違い

プログラミングによって身につくロジック思考は、アルゴリズムを説明するためのものです。仕組みが必ずあることが思考の原点となり、これが理屈のための理屈をこねる理屈屋との違いです。するとロシアとウクライナの紛争にしても、欧米諸国が仕掛けたロシア包囲網という「仕組み」が見えてきますし、特売スーパーの安さの秘密を、即席麺の賞味期限から推測できるようになります。

もちろん、仕事にも役立ちます。会社とは「組織」という「仕組み」で動いています。仮にトラブルが発生したとき、イレギュラーな事案ならば対処療法で凌ぐとして、頻発するなら「仕組み」に問題があるということです。組織が効率よくまわるアルゴリズムを考え、それをロジカルに説明できればトラブルの大半は解決できます。

ただし、対人関係が絡むときはロジカルな指摘は控えます。特に夫婦喧嘩において、ロジカルに相手の非をつけば、ときに修復不能な亀裂を生みます。

Web担当者がプログラミング

具体的には、いずれかのプログラミング言語を習得することになりますが、どれから初めても同じです。1つ覚えてしまえば、他の言語を習得するのはそれほど難しいことではないからです。ちなみに私は「BASIC」に始まり、「FORTRAN」を学び、実務の大半は「C(言語)」でした。Webに接してJavaScript、Perl、いまはPHPを学んでいますが、中1で英語に挫折した私が「マルチリンガル」になれるほど簡単です。

プログラム言語の選択基準を1つ示すなら、納得できる(ような気がするでOK)解説書やサイトがある言語がよいでしょう。なぜなら、技術系の解説書は相性が激しいからです。どの著者とはいいませんが、文章表現の稚拙さに呆れ本を閉じたのが、私がPHPに取り組むのが遅れた理由の1つです。ちなみに「Perl」を勉強する際、傍らに置いていた書籍を本サイトの安田編集長が編集していたことを知ったのは、この連載を始めて相当してからのことでした。

今回のポイント

プログラミングは「仕組み」を考える作業

アルゴリズムを起点としたロジカル思考を身につける

この記事が役に立ったらシェア!
メルマガの登録はこちら Web担当者に役立つ情報をサクッとゲット!

人気記事トップ10(過去7日間)

今日の用語

インデックス
検索エンジンがWebページをデータベースに保存しているデータベース。データベース ...→用語集へ

インフォメーション

RSSフィード


Web担を応援して支えてくださっている企業さま [各サービス/製品の紹介はこちらから]