シェルスクリプトマガジン

test

ITエンジニアのためのマーケティング入門 第22回 (vol.45掲載)

投稿日:2017.06.13 | カテゴリー: 記事

Written by 水間 丈博

本記事掲載のシェルスクリプトマガジンvol.45は以下リンク先でご購入できます。

おか爺:昔システム会社の役員をやっていたらしい。好奇心旺盛で意外とモノ知り。趣味は音楽(クラシックからJPOPまで!)と囲碁(有段者)。ちょっとした丘の上に住んでいるので「おか爺」と呼ばれている。やや奇怪な老人。

タケシ:工業大学でITを学び、小さなIT会社に就職したITエンジニアの卵。社長に「マーケティングを学んでおけ」と言われている。近くにある母方の祖父、おか爺の家に時々遊びに行く。趣味はサイクリング。まだ彼女はいない。

カンナ:タケシの後輩。大学では文学部で日本史を学ぶ。会社では広報部に配属された。

第22回 マーケティングの実践 – その10-

前回までのあらすじ

エンジニアのタケシは、社長からマーケティングを学ぶように言われ、近くに住む祖父「おか爺」の家に通い、マーケティングについていろいろ知識を吸収しています。マーケティングの基本について一通り学び終え、これから会社の後輩カンナちゃんと一緒にマーケティングの実践方法を学んで行こうと考えています。今回は「顧客経験価値マーケティング」のお話が始まります。

今日は「顧客経験価値マーケティング」の話をしてみよう。
「顧客経験価値」って、ときどき聞くけどどういうモノなの?
顧客経験価値は英語の「カスタマー・エクスペリエンス(Customer Experience)」という言葉を使う方が多いの。最近は略して…。
「CX」ですねっ!
おぉ、カンナちゃんさすがじゃな。その通り!とりわけIT業界は何でも略すのが得意じゃからのー。顧客経験価値マーケティングは「CXM」とかいわれておる。さてこのCX、定義が正確には固まっていないんじゃが、「製品やサービスそのものの持つ物質的・金銭的な価値ではなく、その利用経験を通じて得られる効果や感動、満足感といった心理的・感覚的な価値」と説明されておる※1。

※1 出典:「マーケティング用語集」SPI http://www.spi-consultants.com/ja/terms/archives/customer-experience.php

商品やサービスを売って「ありがとう」でおしまいじゃなくて、それで本当に満足してもらっているかってところに着目してるんだね?
そうなんじゃ。顧客が購買するモノやサービスに対しては、「製品自体の機能や性能、顧客が期待する利便性に対する対価(価値)」と長い間考えられてきたわけなんじゃが、よく引合いに出される「東京ディズニーランド/ディズニーシー」や北海道「旭山動物園」などの大成功にマーケティング関係者が触発されたこともあり、「製品・サービスを通じて顧客が得る“経験的ベネフィット”や心地良さを含めた価値こそが“トータルな価値”であり、競合から抜きんでる理由である」とする考え方が広まってきたんじゃよ。
感動の体験は「おカネに代えられない」って言いますからね。
それそれっ!“Priceless”とか“お金で買えない価値がある。買えるものはマスターカードで”というCMがヒットしたクレジットカードのMasterCardは、これでかなりシェアを挽回したんじゃよ。「経験価値マーケティング」が注目され始めたのは、ちょうどこのCMが流れ始めたころなんじゃ。
そのCM憶えてる!そんなに古い話じゃないんだね?
そうなんじゃ。「顧客経験価値」の考え方を広めたのは、アメリカの経営学者バーンド・H・シュミットが1999年に著した「顧客経験価値マーケティング」が最初と言われておる※2。

※2 “Experiential Marketing : How to Get Customers to Sense, Feel, Think, Act, and Relate to Your Company and Brands”(邦訳版:『顧客経験価値マーケティング』ダイヤモンド社 2004年)

どうして「顧客経験のマーケティング」に思い至ったのかしら?
1980年代に登場した、顧客とのインタラクションに着目した「リレーションシップ・マーケティング」に源流があるんじゃ。これをITで支援しようとしたものが「CRM(顧客関係管理)」なんじゃよ。
CRMパッケージは今でも使っている会社があるよね?
アメリカでCRMが登場した1990年代後半当時には、一人一人の顧客である「個客」に焦点を当てた「One to One マーケティング」が全盛だったこともあって、CRMは大流行したんじゃ。
そうだったんだー。
しかし、当初のCRMは、マーケティング支援ではなく「顧客情報管理」の延長上にあったために「カスタマーセンター」「ダイレクトコール(電話勧誘)」「ダイレクトメール」など「個々の顧客に到達し販売機会を増やすこと」に重点が置かれ過ぎてしまい、急速に廃れてしまったんじゃ。「データベース・マーケティング」とかもそうじゃな。しかし、現在の基礎を形作ったともいえるんじゃよ。
結局「押し売り」になっちゃったんだね?
カード会社などが「新規顧客獲得コストよりも既存顧客維持コストの方が圧倒的に安い!」なんて発表したものだから、既存顧客向けに顧客満足度を上げようとする動きが度を越したんじゃな。
そういえば最近ダイレクトメールがめっきり少なくなったよね?
そうした動きを見たシュミット先生は「CRMはけしからん!」と怒ってこの本を書いたわけじゃな。
「販売志向」から抜け出せていないってことなんですね?
そうじゃ。「顧客経験価値(CXM)」の考え方は何もコンシューマの世界だけではなくて、BtoBの世界でも重要じゃから、覚えておくと良いじゃろ。BtoBでも、製品やサービスを選ぶのはあくまで個人や個人の集合じゃからの。
そう!ウチの部長は感情的な価値偏重だよねー!?
フッフッ。そうよね、「好きか嫌いか」でしか判断しないのよね!
そういった選好性は「情緒的価値」になるんじゃろうな。それでまず、シュミット先生は「経験価値」を5つに分類してみたんじゃ。
どんなふうにですか?
感覚的経験、情緒的経験、認知的経験、行動的経験そして社会的経験の5つじゃ。整理するとこんな内容なんじゃよ(表1)。想像しやすいように具体例を入れてみたんじゃが、なんとなくでもよいから理解してもらえるかの?
ナルホド、あるあるだねー。ところで、この「AMEXセンチュリオンカード」って何?
通称「ブラックカード」のことじゃよ。
知ってます!世界のセレブしか持てないっていうカードですね。

表1:顧客経験価値5つの分類

事例39:AMEXセンチュリオンカード

米国カード会社「アメリカン・エクスプレス センチュリオンカード(American Express Centurion Card)」の黒色はカードとしては独特だ(現在は他社も追随している)。顧客はチタン製のカードを選ぶこともできるという。AMEXでは以前から富裕層をターゲットとした「ゴールド・カード」が存在し、高度なサービスを求める顧客から好評を博しビジネスとして成功を収めていた。しかし、競合他社が相次いで「ゴールドカード」を発行するに及び、そのステータスの高さを維持することが困難になっていった。そこでAMEXは1984年に更に上位の「プラチナカード」を発行する。しかしこれも他社に追随されていく。ステータスの高い富裕層を強力に囲い込むため、1999年に「センチュリオン・カード」を発行、高額の年会費で他社を振り切る戦略に出た。通称「ブラックカード」と呼ばれるこのカードは、一切宣伝広告をせず、選ばれた最重要顧客だけが密かに「招待キット」を受け取る。そのサービスは群を抜いており、専任コンシェルジュに世界中からコレクトコールで電話が可能、誕生日にプレゼントが届く、ブランドショップの閉店後に特別にプライベートショッピングが可能など、そのステータスに見合ったサービスが受けられる。現在日本では入会金54万円、年会費は37.8万円といわれている。
出典:Wikipedia「アメリカン・エキスプレス・センチュリオン・カード」
会費37万円?!
格差社会の象徴のようで、ちょっと引いちゃうわね。
ワシも想像はつかんぞな…昔はゴールドカードに憧れていた時期もあったんじゃがのー、ハッハ。
 「行動的経験(ACT)」といえば、「嵐」のコンサートチケットがヤフオクで高額で取引されてるってニュースで見たわね。
最近音楽CDが売れなくなっているといわれておるが、逆にライブはここ6~7年の間に売上も入場者数も急激に増えておるんじゃよ。2015年はMr.Childrenが約112万人を動員してトップ、2016年はまだ統計が出ていないが、今のところ韓流のBIGBANGがトップらしい※3。

※3 出典:「1位はミスチル コンサート動員力ランキング」日経エンターテイメント 
http://style.nikkei.com/article/DGXMZO94721470T01C15A2000000?channel=DF280120166614

図2:ライブ入場者数推移表※4

※4 出典:「一般社団法人コンサートプロモーターズ協会」 http://www.acpc.or.jp/marketing/transition/

CDよりもやっぱりライブがサイコーだよねー!
タケシさん、そういえば「ももクロ」のライブはどうだったの?
えーっ!なんで知ってんのーっ?!
おっと、その「ももいろクローバーZ」は2016年上半期では2位だったらしいぞな。惜しかったのう!
しらんわ!
フフッ!
経験価値の重要性はもう体験済みなわけじゃな。さて、本題に戻るぞな。この5つの経験価値はもちろん相互に排他的なものではなくて、複数の経験価値を同時に満たしているような場合もあるから、そう厳密に考える必要はないんじゃよ。例えばこんなイメージじゃな。

図3:シュミットの5つの経験価値
そういえば、東京ディズニーシーは絶叫に近いアトラクションもあるし、年間パスを持ってると友達に自慢できるから、「Feel」、「Act」、「Relate」を同時に満たしているかもしれないよね?
そうなんじゃ、タケシ。珍しくサエておるなー。
またまたっ、それ止めてよ!
シュミット先生は「顧客経験価値マーケティング」で顧客経験価値を体系的に分析し、次の著作の「経験価値マネジメント」の中で経験価値をマネジメントすることに挑んでおる。これを略して「CEM(Customer Experience Management)」と呼んでおるんじゃが、その中で「3つの間違ったアプローチ」として「マーケティング・コンセプト」、「顧客満足」、「CRM」を挙げておるんじゃ。
3つの間違い、ですか?
それぞれについて次のように断罪しておるんじゃ。

1.「マーケティング・コンセプト」:
顧客指向と言いながら製品中心の見方から脱しきれていない。
2.「顧客満足」:
消費者の製品やサービスにまつわるすべての経験まで考慮されていない。
3.「CRM」:
取引に焦点があてられ、顧客との情緒的つながりが無視されている。
なんか、今まで“追求することが良いこと”って教えられてきたモノのような気もするわね?
その通り!「マーケティング・コンセプト」の提唱者で、以前に紹介したこともあるマーケティングの大家、P.コトラー先生を暗に批判しておるんじゃな。
へーっ、そうなのか。いろいろあるんだねー。
次回は「経験価値マネジメント」のフレームワークという話をしてみようかの。
面白くなってきましたね!
(つづく)

ITエンジニアのためのマーケティング入門 第18回 (vol.41掲載)

投稿日:2017.06.13 | カテゴリー: 記事

Written by 水間 丈博

本記事掲載のシェルスクリプトマガジンvol.41は以下リンク先でご購入できます。

おか爺:昔システム会社の役員をやっていたらしい。好奇心旺盛で意外とモノ知り。趣味は音楽(クラシックからJPOPまで!)と囲碁(有段者)。ちょっとした丘の上に住んでいるので「おか爺」と呼ばれている。やや奇怪な老人。

タケシ:工業大学でITを学び、小さなIT会社に就職したITエンジニアの卵。社長に「マーケティングを学んでおけ」と言われている。近くにある母方の祖父、おか爺の家に時々遊びに行く。趣味はサイクリング。まだ彼女はいない。

カンナ:タケシの後輩。大学では文学部で日本史を学ぶ。会社では広報部に配属された。

第18回 マーケティングの実践 – その6-

前回までのあらすじ

エンジニアのタケシは、社長からマーケティングを学ぶように言われ、近くに住む祖父「おか爺」の家に通い、マーケティングについていろいろ知識を吸収しています。マーケティングの基本について一通り学び終え、これから会社の後輩カンナちゃんと一緒にマーケティングの実践方法を学んで行こうと考えています。今回は「グローバル・マーケティング」のお話です。

今日はグローバルマーケティングの話をするかの。
グローバルってことは、海外でマーケティングをするってことだね?
進出先の言葉や文化を知らなくてはいけないから、国内よりはハードルが高くなるわね。
そうなんじゃ。国内市場の規模が十分にあれば、わざわざ国外に出ていく必要はないんじゃ。例えば次のようなリスクが大きいからなんじゃな。
うーん、最低限英語ができないといけないしボクには無理だなー。
そんな根性なしではいかんぞな。今やいつ海外に行くことになるかもわからん!次に挙げたような理由から、日本企業も海外進出の必要性が高まっているんじゃぞ!

・人口減で国内市場が飽和または縮小傾向にある

・経済が低成長で大きな利益をあげることが難しい

・低コストで国内製造することが難しい

・取引先や親会社が海外に進出する
でも日本の良い製品を歓迎してくれる世界の人も多いから、世界に出るって良いことなんじゃないかしら。
そうじゃな。海外に企業が出て稼いでもらわないと日本も外貨が獲得できん。じゃが、海外進出するからには、当然しっかりとしたマーケティング戦略をもって進出することが望ましい。
3C(競合、顧客、自社)とか、4P(製品、価格、流通、販促)を海外に置き換えて考えてみるだけでもスゴク難しそうだね。
その通りじゃ。「グローバルマーケティング」という概念は1990年代になって生まれたといわれていて、実は大変新しい言葉なんじゃ。それまでは多国籍企業で実施されているマーケティングが「国際マーケティング」と呼ばれていて、国境を越えて存立させた海外子会社(R&D、生産、物流、販売会社など)を組織化して、原材料の調達と生産のコスト低減、効率的な物流、大量消費地などを勘案して実施されていたのが手本だったんじゃな。
少しずつ海外に製品を持って行って、経験を蓄積してきたんですね。
ただ、初期のグローバルマーケティングは失敗も多かったんじゃ。これを見てみるがよい。

事例30:初期グローバルマーケティングの失敗例

以下の失敗例の原因は何だったか想像してみよう。
①コカコーラは、スペイン市場に「2リットルボトル」を導入したが、当初失敗に終わった。
②プロクター&ギャンブル(P&G)は、歯磨き粉「クレスト」をメキシコ市場に投入したがあまり売れず失敗した。
③S.C.ジョンソンは、日本に床磨き用ワックスを導入したが、当初まったく売れなかった。

出典 ?『マーケティング・マネジメント』
ミレニアム版 フィリップ・コトラー著
ピアソン・エデュケーション

コカコーラの2リットルボトルって、今でもあるよね?なんでだろ。重いものを持ちたくなかったのかな?
歯磨き粉は…甘くて受けなかったのかしら?床用ワックスは…日本の気候に合わなかったとか?
正解はこれじゃ。

<正解>
①2リットルのボトルが入るほど大きな冷蔵庫を持っているスペイン人がほとんどいなかった。
②メキシコ人はそれほど虫歯予防に気を使っておらず科学的な説明をされてもあまり理解しなかった。
③日本人は家の中で靴を履かないことを見落としていた。

えーっ?!こんな理由なの?
フフフッ。これ可笑しいわね!
ハハハ。おもしろいのう。しかしこうした昔の失敗からもいろいろ教訓を得ることはできるじゃろ。それぞれ直接的には①ボトルの保冷手段②国民の保健意識③居住空間の違い、に思いが行き届かなかったのが失敗の要因だったわけじゃが、それは進出国の生活習慣やライフスタイルをかなり深く探る必要性があるということなんじゃ。今でこそネットを使って海外事情を入手することは容易になってはいるが、特にコンシューマ製品の場合は気を付けなければならん。これには宗教的な要因なども大きいんじゃ。
自国では定評ある商品でも、外国ではどんな落とし穴があるかわからないよね。
日本でも古くから海外進出した企業はあるんじゃ。例えば誰もが知る味の素やキッコーマンはかなり以前から海外に進出して根付いておるんじゃが※1、失敗した例も数多くある。M&A(買収)の代表的な例を見てみようかの。
※1 「味の素」は1910年、当時日本領だった台湾に進出した。「キッコーマン」は1905年には朝鮮半島に工場を設立していたが、本格的なグローバル進出は1967年米国で生産開始したのが最初。

事例31:海外M&Aの失敗例

①NTTコミュニケーションズのベリオ社買収
NTTコミュニケーションズは、2000年に50億ドル(当時)の現金で米国ISP大手ベリオ社を買収した。ベリオ社はコロラド州で創業した小企業だったが、米国及びヨーロッパの小規模ISPを次々と買収し急激に成長していた。しかし買収直後、ネットバブル崩壊もあって急激に業績が悪化、わずか1年後には5000億円の減損損失を計上するに至った。
②第一三共のインド・ランバクシー買収
第一三共は2008年、インド製薬メーカー、ランバクシー社の株式を4900億円で買収した。しかし、その後米国FDA(食品医薬品局)から安全基準に疑義がかけられランバクシー製品が輸入禁止になってしまった。その結果2009年には3500億円の評価損を計上したほか、品質問題で巨額の米政府への和解金も発生した。経営陣を送り込むなど多大な人的投資を傾注したものの、その後主だった医薬品開発成果を上げられないまま、2015年にインド後発医薬品メーカーに3800億円で売却し終止符を打った。損失額よりも6年間におよぶ組織の疲弊と時間を失った代償の方が大きいといわれている。
③キリンホールディングスのスキンカリオール買収
キリンホールディングスは、2011年、ブラジル2位のビール会社スキンカリオールを3000億円で買収した。しかしその後創業者一族による経営権争いに巻き込まれたほか、圧倒的なシェア第1位のアンハインザー・ブッシュ・インベブ社に価格競争で敗れて低迷、ブラジル経済失速によるレアル下落もあって、1140億円もの特損を計上して上場以来初の最終赤字に陥ってしまった。スキンカリオール社の経営権争いは以前から業界内では有名で、同業他社が「意思決定に時間がかかる」と諦めていた現実を甘く見過ぎた失敗とみられている。
出典:『失敗? 成功? 巨額損失を計上したM&A10選』
M&A Online?https://maonline.jp/articles/kyogaku0066
『キリンが海外戦略で誤算、ブラジルのビール大手買収で泥沼』東洋経済Online?http://toyokeizai.net/articles/-/7937
いやー。難しいんだね!
ちょっとアンラッキーな面もあるけど、内部の調査が不十分なまま海外に巨額の投資をするのは怖いって思っちゃうわね。
確かに日頃厳しく経費を査定するのに、こうした大型案件に数千億円もポンと金を出すのは矛盾しておるのじゃが、それでも成功している企業も多いんじゃ。次回は成功の条件と事例を見ていくことにするかの。
(つづく)

【今回の用語まとめ】

グローバル・マーケティング:

世界全体を市場と捉え、国境を越えて言語、文化など様々な違いを吸収し事業を展開するためのマーケティングをいう。世界の市場へ適応するための「現地適合化」と「標準化」がキーポイントといわれる。世界市場を細分化した場合、個々の市場ニーズに応えるための人と組織、原材料調達、生産体制を最適化し、最も生産性やコストの有利な地域で生産し、販売可能な地域へ流通させるための経営戦略と密接に関係する。近年は世界的な規制緩和や様々な経済圏を通じて商品と情報のグローバル化が進み国際的M&Aが増加したことなどから、グローバル・マーケティングの重要性が高くなっている。

「グローバル・マーケティング」Wiki(英語版) https://en.wikipedia.org/wiki/Global_marketing

ITエンジニアのためのマーケティング入門 第21回 (vol.44掲載)

投稿日:2017.06.13 | カテゴリー: 記事

Written by 水間 丈博

本記事掲載のシェルスクリプトマガジンvol.44は以下リンク先でご購入できます。

おか爺:昔システム会社の役員をやっていたらしい。好奇心旺盛で意外とモノ知り。趣味は音楽(クラシックからJPOPまで!)と囲碁(有段者)。ちょっとした丘の上に住んでいるので「おか爺」と呼ばれている。やや奇怪な老人。

タケシ:工業大学でITを学び、小さなIT会社に就職したITエンジニアの卵。社長に「マーケティングを学んでおけ」と言われている。近くにある母方の祖父、おか爺の家に時々遊びに行く。趣味はサイクリング。まだ彼女はいない。

カンナ:タケシの後輩。大学では文学部で日本史を学ぶ。会社では広報部に配属された。

第21回 マーケティングの実践 – その9-

前回までのあらすじ

社長からマーケティングを学ぶように言われたエンジニアのタケシは、近くに住む祖父「おか爺」の家に通い、マーケティングについていろいろな知識を吸収しています。マーケティングの基本について一通り学び終え、会社の後輩カンナちゃんと一緒にこれからマーケティングの実践方法を学んで行こうと考えています。前回は「ブランド・マーケティング」のお話でした。今回はその続き「ブランド構築」のお話です。

前回までの話でブランドの意味とか効果とかは理解できたけど、実際にはどうすれば「ブランド構築」ができるのかな?
時間が掛かるにしても、適切な方法って何かあるのかしら?
ハハハ、今回のテーマはまさしくそこなんじゃ。ブランド構築には「正しいステップ」があるのじゃよ。
正しいステップ?
いろいろな考え方があるんじゃが、代表的なものを一つ紹介しよう。これはアメリカのK.ケラーという先生が提唱している「戦略的なブランドマネジメントのプロセス」というものじゃ(図1)。順に説明しよう。

図1 戦略的なブランドマネジメントのプロセス

STEP1 「ブランドポジショニングと価値」の定義と確立

ただ商品名やロゴ、シンボルを決めただけではブランドにはならんな?
そりゃそうだよね、誰も知らないんじゃブランドになんかならないもの。
お客さんが良いイメージを持ってくれて、はじめてブランドなんじゃないかしら?
そのとおり。「ブランドポジショニング」とは、お客さんが持つイメージぴったりに自社のブランドを正確に位置付けることなんじゃよ。これは他社との差別化要素を明確にすることにもなる。じゃから、そのために「市場における自社ブランドの価値と存在意義」を再確認する必要があるんじゃ。
ナルホド、それで「ポジショニング」なわけだ。
それができるのは誰じゃろ?
創業者や社長さんとかかしら?
そのとおり!じゃから、トップの責任で長期的な展望を決めないと、ブランド戦略は成立しないんじゃよ。マーケティング部門や広報部門だけではできない話じゃ。

STEP2 「ブランドマーケティングプログラム」の計画と実行

これは、ブランドの価値を広く市場やお客さんに、自信をもって伝えていく具体的な作業になる。
ここは、マーケティングの広報や宣伝の役割だよね?
まぁそうなんじゃが、前に言ったように“広告でブランドは作れない”。そこは忘れんようにな。
そうだったね、思い出した。
この作業には、お客さんにメッセージを伝えるキャッチフレーズやロゴの制作なども含まれる。それに、開発した商品の製品特性やバリエーションが、定義したブランド価値に合致しているのかを常にチェックすることも忘れてはいかんのじゃ。
お客さんに持ってもらうブランドイメージを損なわないように、注意するってことなのね。
さらに、社内にブランド価値を浸透させるための社員教育や組織作りもここに含まれるんじゃよ。
ブランド構築を実践していく中心は社員だから、全員がその価値を理解していることが必要なのね。
そして優れたブランドには3つの「一貫性」があるといわれておる。
3つの一貫性、ですか?
それは「時間経過に対する一貫性」、「商品相互間の一貫性」、「マーケティングミックスの一貫性」の3つじゃ。
3つもあるのか……ブランド構築って、やっぱり大変なんだな。
去年出した製品とまるで違うコンセプトの製品を同じブランドから出したら離反する客も出てくるじゃろ。それに、長く使い続けても大丈夫という安心感を裏切ってもいかん。それが「時間経過に対する一貫性」じゃ。
長く続く安心感か。そうか、うちの母さんも昔から変わらず虎屋のようかんと栄太郎飴が好きだからなぁ……。
爺:  「商品相互間の一貫性」は、違う商品でもブランド価値が同じであること、「マーケティングミックス」の一貫性は、商品、価格、販売チャネル、プロモーション全般にわたってブランド価値を矛盾なく体現させることなんじゃ。
そういえば、ポケモンGOのキャラクターって、どれもみんな可愛いよね!
オマエはそこか!

STEP3 「ブランドパフォーマンス」の測定と評価

これは、思い描いていた通りにブランドが市場やお客さんに受け止められているかをモニターするステップになるの。例えば、お客さんの声や評価を「お客様相談室」やネット上の評判で調べることができるな。
口コミだね?
クレーム対応で炎上したりしないよう気を遣うところね?
そういうことじゃな。ここで問題や課題が発見されたら、STEP1やSTEP2に戻って微調整するんじゃ。

STEP4 「ブランドエクイティ」の育成と維持

聞き慣れない言葉じゃが、「ブランドエクイティ」とは「ブランドの資産価値」という意味なんじゃ。ブランドが発展すること、すなわち支持してくれるお客さんが増えれば増えるほど、この資産価値が高まるわけじゃ。
資産価値って、お金に換算できるの?
そうじゃよ。前回もいくつか例を紹介したじゃろ。ブランド価値とは、要するに「のれん代」のことなんじゃ。
のれん代って言葉は、M&Aの時や海外企業買収で失敗した時なんかに出てくるよね?
それは「のれん償却」のことね?
そうじゃ、高いブランド価値をもつ企業は、その高い評価がM&Aの際の買収金額に反映されるんじゃよ。
そうだったのねー。
さて、自社のブランド構築のステップは見たが、今度はお客さんの視点から見たブランド発展の段階を見ていこう(図2)。

図2 ブランド・レゾナンス・ピラミッド
これまた、なんか難しい用語が出てきてるね!
これはケラー先生の「ブランド・エクイティ・ピラミッド」または「ブランド・レゾナンス・ピラミッド」という有名な図なんじゃが、「ブランド・レゾナンス」とは、お客さんが強烈にそのブランドを信奉していて、「絶対これ!」といったこだわりを持った状態のことを言うんじゃ。お客さんとブランドが同調している状態を「反響、余韻、共鳴」という意味のレゾナンスという言葉で表しているんじゃの。
うちのチームのヒロシくんは、家ではアップルのPC以外は買ったことないって言ってたなー。そういうヤツのことかー。
図の左の「ブランド開発のステージ」は、お客さんとブランドの関係がだんだん進化していく段階を示しているのね。
右側の「ブランディングの目標段階」は、お客さんのブランドに対するイメージの深さの段階なんだな。
そういうことじゃ。ではブランド構築の成功事例を見ることにしよう。

事例37 生活者視点から始まった無印良品のものづくり

無印良品は1980年に西友の一事業部門としてスタートした。当初から大切にしていたアイデンティティは「生活者視点に徹する」こと。既存メーカーの製品を並べて販売するのではなく、生活者視点で独自の商品を生み出そうという「逆転の発想:マーケットイン」のコンセプトが当初から「無印」には込められていた。そこから生まれた新商品の一つが真っ白な「生成りのふとん」。布団には様々な色・柄があるのが普通だが、実際使用する際にはカバーをかけることが多い。そこで中身の絵柄をつけずに消費者の好みやライフスタイルに合わせてカバーを選んでもらおうと製作した。これにより大幅なコスト削減が実現し、安く提供できるようになったが、当初はメーカーから反発された。デフォルトでは泥除けやライトが付いていない「パーツを選べる自転車」を発売した時もそうだった。無印良品はその後も姿勢を変えず、さらに徹底して顧客の意見を商品開発に反映させるため、2009年「くらしの良品研究所」を立ち上げた。
出典:「デジタル時代のブランド育成方法、無印良品が進める絆づくりとは?」Markezine 2014.7.11 http://markezine.jp/article/detail/20386

参考:「シェルスクリプトマガジン VOL.35」(2016年3月号)
当連載第12回[事例19]

そうか、当初のコンセプトを変えずに徹底する!っていう姿勢がブランド構築に繋がるのか。
無印良品は以前にも取り上げたことがあるのう。ブランドというと「古くからある」というイメージじゃが、ここはブランドとしては比較的新しいんじゃ。それでも国内312店舗、海外344店舗を持つ大チェーン店ネットワークに育っておる。
海外でも「MUJI」ブランドで有名なのよね。シンガポールやオーストラリアに行った時にも見つけたことある※3。
多少の反対や事件では「ぶれない」ということが肝心なんじゃの。もう一つ「ブランド・レゾナンス」を示したともいうべき著名な事例をあげておこう。

※3 出典:㈱良品計画 企業情報(2016年2月期)http://ryohin-keikaku.jp/corporate/

事例38:「サービスを超える瞬間」ザ・リッツ・カールトン

1997年に日本進出した「ザ・リッツ・カールトン」は世界のホテルランキングでも上位を維持している。その卓越したサービスが「感動」を産んだエピソードは数多い。“彼女に結婚を申し込むつもりでホテルスタッフに「ビーチチェアを用意しておいて下さい」と頼んだら、椅子の前に男性が膝をついても汚れないようにタオルを敷き、白いテーブルクロスを敷いたテーブルの上に花束とシャンパンを置き、タキシードを着てお客様を待っていた”とか、“宿泊予定で荷物も送っていた老夫婦の自宅に強盗が入りそうになり、宿泊を急遽キャンセル。幸い問題は無かったが、その夜リッツから夫婦に荷物が届き、中を開けてみると焼きたてのクッキーとグラス、シャンパンと共にバスローブが二枚……「結婚三十周年おめでとうございます。お二人の力になればと思い、お祝いをお届けします。」とメッセージが添えられていた”とか。
「サービスを超える瞬間」を著した元日本支社長の高野登氏は、「サービスによって満足は伝わるが“感動”は伝わらない」と語る。その“感動を伝える”従業員はサービスの基本精神が書かれている「クレド(credo)」というカードを常に携帯している。また、従業員自らの判断で1日2,000米ドルまでの決裁権が認められている。
従業員を採用する際にも、ザ・リッツ・カールトン独自の人材採用システムを用いている。経歴や経験ではなく素質を重視した面接を行うため、採用までに長期に渡って時間をかける。これは、ザ・リッツ・カールトンの社風などをきちんと理解できた人が入社するというメリットがある反面、アルバイト・契約社員を採用する際も同じ面接を行うのでコストが掛かりすぎるデメリットもある。リッツ・カールトンは自らを取り巻く社会を3つの層で捉えている。「社員とその家族」が最も重要で、次に「パートナーとその家族」、最後に「お客様」なのだ。高野氏はこう語る。「「ザ・リッツ・カールトンは、お客様にわくわく感動してもらいたいと常に願っています。ただ、お客様の感動というものは、社員が働く中で抱く感動を超えることはないと考えています。そのため、このような優先順位となっているのです。」


出典:「リッツ・カールトンが大切にするサービスを超える瞬間」高野登著 かんき出版

出典:「サービスを超える瞬間」の実現──ザ・リッツ・カールトンの経営理念と哲学」ITmediaエグゼクティブ (2011.2.8)

これ、なんかナットクしちゃうなー。「感動して働ける社員だけが感動を届けられる」って話だね。
爺: 「お客様第一」を掲げる会社は多いが、実際はそうでないことが多いからのう。従業員を第一に考えた上で“顧客への感動を届ける”を徹底して実践している姿勢は見事じゃの。
もしかして、“従業員が満足していなければブランドは構築できない”ってことなのかしら?
カンナちゃん、そのとおりなんじゃよ。ブランドを継続的に育成するためには社員が誇りを持って働ける環境づくりが重要なんじゃ。ブラック企業にブランドは定着せん。例えば、次のようなミッションを行動規範として全社員や関係者に徹底させると良いのじゃ※4。このような行動規範を明示すると同時に、従業員の待遇を改善しパートナーと捉えることによって、業務遂行の意欲を向上させることが、ブランド育成には有効なんじゃよ。

1.社員は互いに尊敬し合う。
2. 多様性を受け容れる
3. 最高のレベルを目指す
4.顧客が心から満足する製品を提供する
5.地域と環境を守る
6.利益を上げることは社会に貢献することでもある

難しそうだけど、大切なことだよね。
ブランド構築の奥深さが理解できました!
そうか、それは良かった。では、次回はブランドと関係のある「顧客経験価値マーケティング」に進んでいくかの。
またまた楽しみにしてるよ!

※4 出典:「ビジネスQ&A J-Net21 http://j-net21.smrj.go.jp/well/qa/entry/314.html
(つづく)

※図1, 図2 出典:Keller, Kevin Lane(2013), Strategic Brand Management: Building, Measuring, and Managing Brand Equity. 4th ed. Upper Saddle River, NJ: Pearson /Prentice Hall.(翻訳:筆者)

ITエンジニアのためのマーケティング入門 第16回 (vol.39掲載)

投稿日:2017.06.6 | カテゴリー: 記事

Written by 水間 丈博

本記事掲載のシェルスクリプトマガジンvol.39は以下リンク先でご購入できます。

おか爺:昔システム会社の役員をやっていたらしい。好奇心旺盛で意外とモノ知り。趣味は音楽(クラシックからJPOPまで!)と囲碁(有段者)。ちょっとした丘の上に住んでいるので「おか爺」と呼ばれている。やや奇怪な老人。

タケシ:工業大学でITを学び、小さなIT会社に就職したITエンジニアの卵。社長に「マーケティングを学んでおけ」と言われている。近くにある母方の祖父、おか爺の家に時々遊びに行く。趣味はサイクリング。まだ彼女はいない。

カンナ:タケシの後輩。大学では文学部で日本史を学ぶ。会社では広報部に配属された。

第16回 マーケティングの実践 – その4 –

前回までのあらすじ

エンジニアのタケシは、社長からマーケティングを学ぶように言われ、近くに住む祖父「おか爺」の家に通い、マーケティングについていろいろ知識を吸収しています。マーケティングの基本について一通り学び終え、これから会社の後輩カンナちゃんと一緒にマーケティングの実践方法を学んでいこうと考えています。前回は「ファネルマーケティング」の話でしたが、今回は「競合優位追求型マーケティング」のお話です。

今日は「競合優位のマーケティング」の話をするかの。
競合優位って、ライバルがたくさんいる中で抜きんでることだよね。
その競合優位ってなんじゃろか?
ライバルの品物より品質が良い、価格が安い、性能が良いとかでしょ?
そんなふうに誰もが思っている場合にシェアが大きくなって競合優位になるんじゃないの?
カンナちゃん、それは良いところに気付いたの。“だれもが思っている”というところが肝心なんじゃ。競合優位性を簡単な絵にすると、このようになる(図1)。

図1

1つはコスト優位性じゃ。コストが低ければ安く市場に供給できる。安さは誰でも魅力じゃからの。もう1つは差別化優位性じゃ。「差別化」と括ってしまったが、この中にはいろいろある。
性能や品質とかデザインとかだよね。4Pの時に習ったよー。
そうじゃ。おいそれとライバルが真似しにくい特性を数多く持つことが肝心なんじゃ。
時間をかけて技術を磨いてきた企業が結局競合優位になりえる、って聞いたことがあるわ。
そうじゃ。ではまず競争戦略の基本をおさらいしてみるか。
マーケティングじゃなくて戦略の話なの?
タケシや。マーケティングを考えるときに登場する主体は何じゃった?
えーと、市場のお客さんと、自社と競合の3Cだったよね?
そうじゃ。競争戦略に登場するのも実はいっしょじゃ。じゃから競争戦略はマーケティング戦略に包含されるともいえるんじゃ!
えーっ?それ反対じゃないの?
それはどちらでも良いのじゃ!
マーケティングはマネジメントそのものっていう意味なのかしら?
カンナちゃん、ビンゴじゃ!マーケティングの大家、P.コトラーは、“競争優位という概念はM.ポーターが提唱した。しかし、マーケティングは昔から競争を意識してきた。顧客を獲得する、顧客を維持するというのは、競争するという事と同じ意味だ。競争を優勢に進めるためには、必然的に他との違いを強調する。つまり競争優位を実現し演出する。”といっておるぞよ※1

※1 出典:「コトラーのマーケティング戦略 最強の顧客満足経営をキーワードで読み解く」多田正行 PHP。?https://www.php.co.jp/books/detail.php?isbn=4-569-63636-5

お客さんを獲得し続けることが会社を発展させるためには必要ってことね?
これが米国のポーターという経営学の大先生が提示した競争基本戦略の絵じゃ(図2)。どこかで見たことがあるじゃろ。表1は図2の意味じゃ。

図2

表1 出典:M.E.ポーター『競争の戦略』ダイヤモンド社

なるほど、集中戦略が低コストと特異性の両方をカバーしているっていう意味がわかったよ。
②と③は大きな市場シェアを狙いに行かない(シェアを諦める)代わりに非価格競争に持ち込める、という点が大きなメリットであることを見逃さぬようにな。
勝算の不確かな低コストの追求ではなくて、特徴を磨くことで活路を見出しているのね。
そういうことじゃ。これは今でも通用する基本的な原則といえるんじゃが、かなり前の文献じゃから、現実に合わなくなってきた面もあるんじゃ。さて、日本の実態はどうなっておるかの? 表2に整理してみたが、日本はやはり「集中化戦略」の得意な企業が多いようじゃの。

表2 日本企業の競争基本戦略

トヨタやホンダはわかるけど、そんなに世界的な企業が多いの?
バカもん!これを見てみよ!

事例26:世界シェアトップの日本企業まとめ

日本には世界シェアトップの企業が数多く存在する。ソニー(ビデオカメラ)、ミネベア(小型ベアリング)、日亜化学(白色LED)、JUKI(工業用ミシン)、日本精機(2輪車用計器)、日東電工(液晶用光学フィルム)、日立金属(高機能ネオジム磁石)、ホンダ(自動二輪)、ナブテスコ(産業用精密減速機)、日本セラミック(赤外線センサー)、SHOEI(高級ヘルメット)、マブチモーター(小型モーター)、任天堂(ゲーム機)、ワコム(ペンタブ)、ディスコ(半導体切削機)、シマノ(自転車部品)、村田製作所(セラミックコンデンサ)、浜松ホトニクス(光電子増倍管)、ファナック(工作機械用NC)、日本電産(精密小型モーター)、信越化学工業(半導体シリコンウエハ)、日本ガイシ(碍子)…
以上すべて世界シェア一位企業である。トヨタも2015年生産台数世界一に返り咲いた。
このように産業用素材や加工機械、計測機器などが多く、細かくて精密な分野は日本人の気質にマッチしているらしい。ホンダや任天堂などコンシューマ企業もあるが、その多くは歴史あるBtoB企業という点も興味深い。
出典「国内/世界シェア1位企業」NAVERまとめ http://matome.naver.jp/odai/2133603554882742001
参考「隠れた日本企業のチカラ」Nikkei http://vdata.nikkei.com/prj2/ft-jpglobal-c

こちらも世界シェア1位企業一覧。ニッチの宝庫。大多数の企業は大企業ではなく、一般的知名度も高くない。しかし定評ある日本の工業製品力はこうした企業が支えている。

へーっ!結構たくさんあるんだね。知らない会社ばかりだけど、ボクが乗ってるロードバイクの変速機はシマノ製だよ!確かに世界中のスポーツ車の変速機はだいたいシマノのパーツがついてるんだよなぁ。やっぱ、世界一なのか…。
お得意の自転車の話じゃな?ハッハ。
そう言えば、ノーベル物理学賞を受賞した小柴先生や梶田先生のニュートリノの業績も、スーパーカミオカンデに設置されている浜松ホトニクスの光電管が貢献しているってニュースで見たことあるわ。
この例で挙げた以外にもまだまだたくさんあるんじゃ。さて、こうした世界的なシェアを確保した企業は、ニッチではあるがその分野のリーダー企業なんじゃ。じゃから、こうした企業のマーケティングは自然と2つの方向に向かうことになる。
2つの方向?
1つはシェアの維持と拡大、もう1つは市場の拡大じゃ。
やっぱりそうなるんだよね、簡単ではなさそうだけど。
その通りじゃ。かなり有名な事例じゃが、格好の題材があるぞよ。

事例27:ゼロからのスタートでシェア20%

格安海外航空券で一世を風靡し、今や国内外旅行会社の大手となったH.I.S。創業は1980年で運輸大臣の認可を受けられたのはその翌年だった。H.I.Sの取締役だった大野尚氏が入社したのは1984年、福岡営業所だった。社員はたった二人、机が一つしか無く、「やむを得ず自分の机や椅子・電話回線等までも持ってきた。しかし社長の澤田さんは”世界一になるよ、航空会社も作るよ。”と言っていた。最初は“ホラ吹きだなぁ。”とか“騙された”と感じたが、彼のオーラに引きこまれた。仕事は毎日チラシ配りだけだった。しかし諦めず目の前のできることを続けた結果、福岡市内で一番綺麗なオフィスと良い挨拶でお客さまを迎えられる旅行会社になった。」と語る。
H.I.Sは現在年商5,374億円(平成27年10月期)の大企業となり、2016年2月には国内主要49社でシェア19.6%(売上高比)を達成している。ハウステンボスを傘下に収めたほか、今後訪日外国人向けのインバウンド市場拡大のために海外店舗を増やしており、既に200店舗を超えている。

出典  ベンチャー企業HISの成功方法「ゼロからの挑戦」FUKUOKA成長塾 http://www.fukuokajuku.jp/archive/past8.html
H.I.S IR情報ほか http://his.co.jp/ir/

H.I.Sって、ウワサでは聞いたことあるけどホント急成長したんだね。スゴイなー。
旅行業界は古い業者さんが数多くいるらしいから、並大抵の努力ではなかったでしょうね。
ワシも若い頃に街で単色刷りの粗末なチラシを何度ももらったことがあるが、その航空券の激安ぶりには驚いたのー。それで何度か使わせてもらったんじゃ。
おか婆さんと海外旅行に行ったんでしょ?
バカモーン!ノーコメントじゃ!

 

ITエンジニアのためのマーケティング入門 第17回 (vol.40掲載)

【今回の用語まとめ】

ポーターの競争戦略

米国の競争戦略論の大家、M.E.ポーター(Michael Eugene Porter)が発表した経営戦略論。多くの戦略に関する著作があるが、代表作『競争の戦略』は経営戦略論の古典として今日でも多くの経営者や、経営学を学ぶ学生の間で利用されている。「3つの競争基本戦略」のほか、「5つの競争要因」という“顧客の価格引き下げ圧力、新規参入者の脅威、代替品出現の脅威、供給事業者の価格交渉力、競合者間の敵対関係の5要素のうち、どれか1つでも強くなると競争環境が変わる”とする5フォース分析やバリュー・チェーンなどの考え方を広めた。
その後多くのポーター理論への批判があり、

1. 顧客の視点がほとんど含まれていないこと
2. 自社対競合などの、自社以外の存在との関係性を重視するが、企業自身の内部的特性や潜在的強み(後にコア・コンピータンス理論に繋がる)が考慮されないこと

などが批判の対象となった。「できるだけ競争しないのが競争戦略」と揶揄されたが、名著の誉は今日でも揺るぎなく、MBA学生や経営者の必読書となっている。

ITエンジニアのためのマーケティング入門 第14回 (vol.37掲載)

投稿日:2017.06.6 | カテゴリー: 記事

Written by 水間 丈博

本記事掲載のシェルスクリプトマガジンvol.37は以下リンク先でご購入できます。

おか爺:昔システム会社の役員をやっていたらしい。好奇心旺盛で意外とモノ知り。趣味は音楽(クラシックからJPOPまで!)と囲碁(有段者)。ちょっとした丘の上に住んでいるので「おか爺」と呼ばれている。やや奇怪な老人。

タケシ:工業大学でITを学び、小さなIT会社に就職したITエンジニアの卵。社長に「マーケティングを学んでおけ」と言われている。近くにある母方の祖父、おか爺の家に時々遊びに行く。趣味はサイクリング。まだ彼女はいない。

カンナ:タケシの後輩。大学では文学部で日本史を学ぶ。会社では広報部に配属された。

第14回 マーケティングの実践 – その2 –

前回までのあらすじ

エンジニアのタケシは、社長からマーケティングを学ぶように言われ、近くに住む祖父「おか爺」の家に通い、マーケティングについていろいろ知識を吸収しています。マーケティングの基本について一通り学び終え、前回からは会社の後輩カンナちゃんも一緒にマーケティングの実践方法を学んでいこうと考えています。

さて、普通の会社にとって最も重要な目的はなんじゃろ?
うーん、良い商品やサービスを出し続けて利益を上げることかな?
お客さまをできるだけ多く集めてファンになってもらうことじゃないかしら?
タケシ、イマイチじゃな。カンナちゃんが正解じゃ!
わーいっ!
でも、お客さんを集めただけじゃ利益がでるかわからないよね?
タケシや、お客さんが大勢いるのにつぶれた会社はないんじゃ。たいてい、お客さんが減って立ち行かなくなって会社を維持できなくなるんじゃ。
確かに最近そうした例が多いかもね。
前に紹介したことのあるドラッカー先生の話では、「企業の目的は一つしかない。それは“顧客の創造”であり、さらに“企業=営利組織ではない”として、“企業とは何か”を決めるのは顧客以外には存在せず、だから基本的な企業の機能は“マーケティングとイノベーションだけである”。」と説いているんじゃよ※1

※1 ドラッカーは第1章「企業の成果」の冒頭で“企業=営利組織ではない”とし、古典派経済学への批判とともに、利益は大切だが利益動機なるものは無意味であり存在することさえ怪しい、と指摘している。
出典:『エッセンシャル版 マネジメント 基本と原則』P.F.ドラッカー著 上田惇生編訳 ダイヤモンド社

そうか。企業は「利益目標」を達成することが使命のように思っていたけどなぁ。
それは企業の存在意義を考えてみれば目的にはならんことがすぐわかるじゃろ。確かに利益も必要ではあるが、それは“目的ではなく条件”なんじゃ。さて、カンナちゃん、会社ではどうやってお客さんを見つけるのかな?
昔は雑誌広告が多かったらしいんですけど、あまり効果がないらしくて。今はホームページと展示会がメインみたいです。時々セミナーも開催しているようです。
なるほど。BtoB企業が普通によくやる手段じゃな。
新しいお客さんを見つけるのが、やっぱり会社でも課題になっているみたいだよー。
そうじゃろ。ま、BtoBの話は後回しにして、まずはファネルマーケティングの話からするかの。
ファネルマーケティング?
要するに“じょうご(漏斗)”のようなものじゃよ。
元が広くて先が細いあのじょうご?
お客さんと何か関係があるのかしら?
図1をみてみぃ。ある商品に、まずは大勢の潜在的なお客さんが気付く(Attention)、次に気付いたお客さんの中で興味を持った人たち(Interest)が“欲しいなー”と考える(Desire)、次にこれが意識の中に記憶され(Memory)、最後に購買行動に出る(Action)、そしてお客さんになる…。

図1 Purchase Funnel
AIDMA(アイドマ)っていうのかしら?
そうじゃ。今から100年近く前にアメリカの広告研究家が発案して世界に広まったんじゃな。海外ではPurchase Funnelと呼ばれておる。一つ一つ関門を突破してくれた潜在顧客が最終的に購買に至るという意味があるんじゃ。
へーっ。商品を知らない人がお客さんになるまでのプロセスを示してるんだね?
その通りじゃ。これは消費者購買モデルとして古くから研究されておるから、調べてみるとよい。では、事例を一つ見てみようかの。これは誰もが知る事例かもしれん。

事例23:アマゾン「ワン・クリック」の発明

1997年、J.ベゾスは二人の若いエンジニアと一緒にランチをとっていた時、「できる限り簡単に買い物ができるようにしたい」とつぶやいた。この願いを叶えたのが、あらかじめ顧客住所とカード情報をデータベースに登録しておき、サインインした顧客がボタンを一回クリックするだけで注文が完了するシステム「ワン・クリック」の仕組みだった。顧客の買い物の手間を少しでも減らせば売上が増え、競合相手を出し抜けると考えたのだ。
今でこそ、なんの変哲もないシステムだが、当時としては新しく、「通信ネットワーク経由で購入注文を実現する方法とシステム」として特許出願され商標登録も行った。これはビジネスモデル特許のさきがけになった。
『ジェフ・ベゾス果てなき野望』?ブラッド・ストーン著 井口耕二訳 日経BP社 ほか https://www.amazon.co.jp/gp/help/customer/display.html?nodeId=201443070

ふーん、確かにこれ便利だよね。
一度利用すると、IDが登録されて次回からワンクリックでオーダーできるのね。
すると、次回も使おうという事になる。さらにプライム客には基本送料無料にしたからリピートされる。これがインターネットの隆盛とタイミングが一致したので、爆発的に客が増えたとも考えられるんじゃ。これをAIDMAに沿って説明したのが表1じゃ。

表1

なるほど、あるある!
実は、この最後の「Action=購入する」という関門が「最後のひと押し」といって一番難儀なんじゃよ。「カゴ落ち」といって、カートに入れたまま注文されない商品が結構あるんじゃ。これを「ワン・クリック」という技で敷居を極限まで低くしたところがミソなんじゃ。
価格が安めに設定されているし送料も無料で早く届くから、衝動買いもしやすくなっているのよね。
次のもあることがきっかけで売上を大きく伸ばした事例じゃ。

事例24:機能性表示で大復活したカゴメトマトジュース

カゴメの定番商品「トマトジュース」が“血中コレステロールが気になる方に”という表示を2016年2月2日に開始した結果、前年対比出荷実績が328%に達したと発表。これは2015年4月から消費者庁による「機能性表示食品制度」が開始され、従来の「特定保健用食品(トクホ)」と「栄養機能食品」に加え、新たに科学的根拠に基づく有効性を表示できる「機能性表示食品」というカテゴリーが加えられたことに対応したもの。
カゴメは、新しい価値“リコピンが血中HDL(善玉)コレステロールを増やす”という効果が受け入れられた、と自己評価している。
実は2014年夏、カゴメはトマトなどの原材料費高騰や消費税引き上げに伴う需要減で国内飲料事業が15%も落ち込み、2014年12月期 業績予想を下方修正していたのだ。制度変更を上手に捉えた製品戦略で大きく復活した好事例となった。トクホの指定を受けるよりもハードルが低いため、現在カゴメ以外に200以上の商品が指定を受けている。
参考:「機能性表示食品カゴメトマトジュース売上好調のお知らせ出荷前年比328%を達成」カゴメニュースリリース 2016年2月22日 http://www.kagome.co.jp/company/news/2016/02/002602.html

「機能性表示食品制度がはじまります」消費者庁 平成27年4月 http://www.caa.go.jp/foods/pdf/syokuhin1443.pdf

前年比3倍以上の伸びって、スゴクない?
私も特にコレステロールが高いわけではないけれど、“体に良い”という安心感が無意識に働いちゃったのか、買ったことあるわ。
日本では心疾患や脳血管疾患が原因で亡くなる人の割合が25%以上と言われており※2、その原因の一つが悪玉コレステロールによる動脈硬化だという常識が広まっているから、潜在顧客層は膨大な数になるじゃろ。そこにコレステロール低下に効果があるといった表示をしたんで一挙に注意(Attention)、関心(Interest)を飛び越えてAction(購買)に結びついたお客さんが多かったんじゃな。
※2 出典:「病気の知識」シオノギ製薬 http://www.shionogi.co.jp/wellness/diseases/dyslipidemia.html

値段も手ごろだし食塩無添加の商品も分かりやすくなっているから、つい買っちゃうのかも。
これは肝心の中身は何も変わってないのに、表示を変えただけで売上が大きく伸びたというところが面白いのう。
これがマーケティングの威力なのか…。
ハッハッハ。そう捉えてもよかろう。重要なことは、Attention→Interest→Desire→Memory→Actionのそれぞれの関門の間際でお客さんをできるだけ逃がさない工夫をし続けることなんじゃ。
逃さない工夫って?
それはメッセージだったり、印象的な画像だったり、オトクなキャンペーンだったり、メールニュースだったり、手段やタイミングはいろいろ考えられるじゃろ。
お客さんが興味を持ってくれたら、それが薄れないうちに背中を押してあげるようなアクションをとるべきなのね。
そういうことじゃ。では次回はBtoBについて考えてみるかの。

【今回の用語まとめ】

消費者購買モデル

消費者が商品やサービスを初めて認知してから購買するまでのプロセスを説明するモデル。購買意思決定プロセスともいう。様々な考え方が存在し、最近はSNS拡大を意識した購買後の情報シェアまで考慮に入れたものも存在する。特に大手広告代理店の電通が提唱し登録商標にもなっているAISAS(アイサス)が有名。
【保存版】「消費者購買行動モデル」まとめ NAVERまとめ http://matome.naver.jp/odai/2132383210009786701

カゴ落ち

ECサイトなどで、いったんカートに入れた商品を結局買わずに放置する(される)こと。カート離脱率(放棄率)として認識され、平均60-70%が放棄されているといわれる。これはEC先進国米国をはじめ世界的な傾向でもあり、大きな課題になっている。カート放棄の原因は、購買までの手続きが複雑、入力すべき個人情報が多すぎる、決済手段の選択肢が限られる、配送料が高い、返品やキャンセルなどの情報がわかりにくい、などがあるとされる。

ITエンジニアのためのマーケティング入門 第13回 (vol.36掲載)

投稿日:2017.06.6 | カテゴリー: 記事

Written by 水間 丈博

本記事掲載のシェルスクリプトマガジンvol.36は以下リンク先でご購入できます。

おか爺:昔システム会社の役員をやっていたらしい。好奇心旺盛で意外とモノ知り。趣味は音楽(クラシックからJPOPまで!)と囲碁(有段者)。ちょっとした丘の上に住んでいるので「おか爺」と呼ばれている。やや奇怪な老人。

タケシ:工業大学でITを学び、小さなIT会社に就職したITエンジニアの卵。社長に「マーケティングを学んでおけ」と言われている。近くにある母方の祖父、おか爺の家に時々遊びに行く。趣味はサイクリング。まだ彼女はいない。

カンナ:タケシの後輩。大学では文学部で日本史を学ぶ。会社では広報部に配属された。

第13回 マーケティングの実践 – その1 –

前回までのあらすじ

エンジニアのタケシは、社長からマーケティングを学ぶように言われ、近くに住む祖父「おか爺」の家に通い、マーケティングについて学んでいます。前回までマーケティングの基本的知識「STP」や「4P+4C」などを一通り学びました。これからはマーケティングの実践方法を学んで行こうと考えています。今回、おか爺の話を聞いて興味を持った後輩のカンナちゃんを連れてきました。

こんにちはー、おか爺。今日はお客さんを連れてきたよ!
初めまして、カンナといいます。タケシ先輩からおか爺さんの話を聞いて、私も聞きたくなって連れてきてもらいました!
それは、熱心なことじゃのう。これからタケシと遠慮なく遊びにおいで。それで今はどんな仕事を?
広報部に配属されたんですけど、入ったばかりでまだ仕事がよくわからなくて…。
広報部か?それは良かったのう。タケシにも参考になる経験がこれからたくさんできるじゃろ。ワシも少しは役に立てればよいがの。
はいっ!いろいろ教えてくださいね!
ところで、広報部は一般的にPRをやる部署なんじゃが、タケシ、PRの意味は分かっているかの?
PRって、文字通りプロパガンダ(PRopagada=宣伝)のことでしょ?…まてよ、プロモーション(PRomotion)のことだったかな?
プレスリリース(Press Release)の略なんじゃないかしら?
とほほ…残念ながら、二人とも間違いじゃ!PRはパブリック・リレーションズ(Public Relations)のことなんじゃよ。
パブリック・リレーションズ?なんか初めて聞いたなぁ…。
それも止むを得ん。世の中、「宣伝=PR」と認識している人が大部分じゃからの。その道の専門家でもこのように考えている輩がおる。これは勘違いなんじゃ。
そうだったのー!?
PRは20世紀のはじめ頃からアメリカで発展した考え方なんじゃが、「企業などの組織とその利害関係者(個人や集団、社会)と望ましい関係を構築するためのもの」というのが基本理念なんじゃ。ところが、日本に戦後導入された際に、民間企業で“PR”と略されたんで宣伝とほとんど同じ意味でしか使われなかったという経緯があるんじゃな。
広告会社をPR会社と言うのも、そういう事情だったのね。
PRで一般的に使われるのが「プレスリリース」で、これは新聞社など報道機関向けに記事にしてもらうことを期待して情報を配信するんじゃが、なかなか記事にしてもらえないのが実態じゃった。ところが、最近はWEBが発達したから、企業が「プレスリリース」と同時に「ニュースリリース」といった形で自社サイトで公式に発表することが多くなったのう。何より新しい商品を知る場としての報道機関の重要性が低下してしまったからの。
記者室向けに発表するなんて、まぁ時代遅れかもしれないよねー。

※1 パブリックリレーションズ(PR)広報と訳される。「組織体とその存続を左右するパブリックとの間に、相互に利益をもたらす関係性を構築し、維持するマネジメント機能(米国PRの教科書『Effective Public Relations』(邦訳名『体系パブリック・リレーションズ』カトリップ、センター、ブルーム3氏による)」と定義されている。さらに日本PR協会では、「企業、行政、学校、NPOなどあらゆる組織体が、それを取り巻く多様な人々(今日ではその組織となんらかの利害関係がある人々をステークホルダーと呼ぶ)との間に継続的な“信頼関係”を築いていくための思考・行動である」と補足されている。
公益社団法人日本パブリックリレーションズ協会 http://prsj.or.jp/shiraberu/aboutpr

最近の企業の「ニュースリリース」はかなり充実しておる。次のは、いい例かもしれん。

事例21:マツダのニュースリリースサイト

マツダの「ニュースリリース」サイトでは、2008年からニュース毎に写真のアイコンを入れ始め、最新ニュースへの誘因を促すアイキャッチとしている。ブランドサイトとしての一貫性が図られ、通常IR情報(株主や投資家向け情報)に属する情報へもこのページから直接アクセスできるように工夫している。

参考:http://www2.mazda.com/ja/publicity/release/2016/index.html

広報のページって堅苦しいイメージがあるけど、これはなんかカッコいいね。
綺麗にまとめられていて、思わずクリックしたくなる作りなのね。
北米で先に販売する新車のニュースが載っておるの。このページを訪れれば、たいていの最新情報にすぐにアクセスできるから、訪問者にとっては使いやすいサイトといえるじゃろ。では、“広報と広告の違い”はわかるかな?
うーん、広告はお金をかけるけど、広報はお金をかけないってことなんじゃないかな?
宣伝目的が広告、正確なニュースを周知するのが広報なんじゃないかしら?
うーん、まぁどちらも正解でよいじゃろ。PRの機能については?社会との共生、?企業の社会的認知の促進、?社会からの要望の採取、?自社を取り巻く社会環境の把握、?企業文化の構築と改革、といったものがあるんじゃが※1、分かりやすいように、広告とPRの違いを簡単にまとめておいた。参考になればよいがの。

表1:広告とPRの違い

なるほど。広告の浸透力が弱いっていうのは、すぐに忘れられやすいってことなのかしら?
そうじゃ。世の中広告があふれているからの。その一方でPRには信用度と客観性があるから、いったん注目されると印象に残りやすい面があるんじゃ。
たしかにそんな気もするよね。
さて、もう一つ事例を見てみようかの。

事例22:積極的なニュースリリースで過去最高の志願者数を獲得した近畿大学

近畿大学は2015年3月、「平成27年度一般入試志願者数確定過去最高の11万3,704人」というニュースをリリースした。これがプレスリリース配信サービス「News2u」社の月間ベストネットPR賞を受賞した。この背景には、「近大マグロの研究成果」をはじめ「完全ネット出願」、「教科書販売をAmazonと提携」、「初の女子応援部団長誕生」などメディアの興味を喚起するニュースリリースを配信し続けている地道な努力があった。時間をかけた継続的なニュース配信が過去最高の志願者数という成果につながった。その数は2015年度約360本。決め手は平成27年度入学式を近畿大OB、つんく♂がプロデュースしたことだった。その後入学式における「つんく♂無言の理由」が明らかになり、これも大きなニュースになった。平成28年度の入学式も“つんく♂プロデュース”が予定されている。

参考:月間ベストネットPR賞。2015年3月は「価値あるニュースを作り出し、オンラインで発信を続ける」近畿大学のネットPR事例が受賞!担当者からの受賞コメントを公開http://netpr.jp/netpr/models/17123/

これ、大学の入学式の案内?華やかで楽しそうだねー。
女子志願者も3万人を超えて過去最高になったのね。
ボクの大学生活は暗かったな…。
はっはっはっ!女子の前で何を言うとる!これから明るくしていけば遅くはないぞよ、タケシ!
うーん、そうだね。
さて、PRの話を見たところで、これからマーケティングをどう実践していくかといった話をしていこうかの。マーケティングの考え方を応用する方法には様々な考え方がある。いくつか代表的なものを事例とともに見ていくことにしよう。
それは勉強になります。楽しみっ!
「マーケティングの始め方」で習ったことが出てくるわけだね?
そうじゃな。新しい用語も出てくるじゃろ。前回までの話を縦糸とすれば、実践方法は横糸といったところかの。
ボクも楽しみにしてるよ!

 

ITエンジニアのためのマーケティング入門 第14回 (vol.37掲載)

ITエンジニアのためのマーケティング入門 第17回 (vol.40掲載)

投稿日:2017.06.6 | カテゴリー: 記事

Written by 水間 丈博

本記事掲載のシェルスクリプトマガジンvol.40は以下リンク先でご購入できます。

おか爺:昔システム会社の役員をやっていたらしい。好奇心旺盛で意外とモノ知り。趣味は音楽(クラシックからJPOPまで!)と囲碁(有段者)。ちょっとした丘の上に住んでいるので「おか爺」と呼ばれている。やや奇怪な老人。

タケシ:工業大学でITを学び、小さなIT会社に就職したITエンジニアの卵。社長に「マーケティングを学んでおけ」と言われている。近くにある母方の祖父、おか爺の家に時々遊びに行く。趣味はサイクリング。まだ彼女はいない。

カンナ:タケシの後輩。大学では文学部で日本史を学ぶ。会社では広報部に配属された。

第17回 マーケティングの実践 – その5-

前回までのあらすじ

エンジニアのタケシは、社長からマーケティングを学ぶように言われ、近くに住む祖父「おか爺」の家に通い、マーケティングについていろいろ知識を吸収しています。マーケティングの基本について一通り学び終え、これから会社の後輩カンナちゃんと一緒にマーケティングの実践方法を学んで行こうと考えています。前回からは「競合優位追求型マーケティング」のお話で、今回はその後編です。

この前はポーター先生の3つの競争戦略(①低コスト戦略②差別化戦略③集中化戦略)からマーケティングを考えながら、日本の隠れた世界的企業を見てきたが、どうじゃったかな?
世界で活躍する日本の機械屋さんが数多くあって驚いたね。
日本の製造業は衰えたって聞くけど、まだまだ力強い会社が多くて層の厚さを感じたわね。
それでは一つ問題じゃ。この例はどの戦略をとったんじゃろか?

事例28:世界最大のEMS鴻海精密工業

鴻海精密工業(鴻海科技集団:ホンハイ)は1874年台湾で創業した世界最大のEMS(電子機器受託生産:Electronics Manufacturing Service)企業、フォックスコン・テクノロジー・グループ(Foxconn Technology Group)の中核会社。当初は白黒テレビ用のプラスチック部品を下請けで製造する従業員10名だけの小企業だった。1981年にコンピュータ用コネクタ製造を開始し、創業者郭氏(現会長)の熱心な米国営業行脚が功を奏してインテル社などのPCのマザーボート用コネクターに採用されて急拡大、1993年には中国に最初の製造ラインを設置した。1990年代末にはPC本体製造も手掛ける。当時DellやHPがPC製造をBTO(Build to Order)方式に移行したのに伴い更に急成長し、中国本土の工場を拡大していった。米国にも営業拠点やR&Dセンターを設立、欧州にも進出した。その頃には液晶パネルやDVDなどパソコンの重要部品のほとんどを自社で製造できるようになった。2000年以降は携帯電話モジュールの製造に着手、その後iPod,iPhoneの世界拡大に歩調を合わせ、年商の4割がApple向けに。数々のM&Aを手掛けてきたが2016年3月にシャープを買収、かつての下請企業が注文主企業を併呑するにいたった。
現在世界14か国に製造拠点を設け、グループ売上高約14兆円(2014)、従業員130万人(2015)の巨大企業グループとなった。

出典 http://www.foxconn.com/

さて、この事例を見ると、ホンハイは当初TV用プラスチック部品という狭い分野からスタートし、次にコンピュータのコネクターという地味なパーツを手掛けた(集中化)。さらに中国大陸に進出して低労働コストを生かしてPC部品を大量かつ廉価に供給できるようになり(低コスト)、やがてスマートフォンの大量受託、迅速な納品ができるようになったので(差別化)世界的にシェアを伸ばした、といったように見えるのう。
なかなか競争戦略のどれかの枠にはまりそうもないわね。
企業が成長すると共に採りえる戦略が違うってことなのかなー。
まぁそう無理に当てはめる必要もないぞな。
自社の製造能力と世界の顧客の動向を見て、いち早く有利な分野の技術と生産能力を磨いたのかも…。
おお、かんなちゃん、相変わらず目の付け所が良いな。そういうことなんじゃ。それではもう一つ別の戦略を紹介しておこう。アメリカのJ.バーニーという経営学者の唱えた企業戦略論における「リソース・ベースト・ビュー理論」、略してRBV理論じゃ。
RBV?RPGと紛らわしいよね?
バカモン!ちっとも紛らわしくないわ!
フフッ。おか爺さん、タケシさんは今“ドラゴンプロジェクト”ゲームにハマってるんですよー。
どうせ、そんなところじゃろうて。良いか?前回、ポーター先生の競争戦略論が“自社以外の存在との関係性を重視し、内部の特性や潜在的強みが考慮されない”と学んだところじゃが、バーニー先生のRBVはポーター理論に真っ向から反論して、企業競争力の優位性を企業内部の経営資源に求めた考え方なんじゃ。この考え方のフレームワークを通称「VRIOフレームワーク」というんじゃよ。
ヴリオ?またそれ何の略?
表1の4つの項目を自身に問うてみるのじゃ。

表1 VRIOフレームワーク


外の競合企業とか、お客さんとかではなくて、まずは企業自身で内的に競合優位性を検証してみるってことなのね?
そうじゃ。競合優位は外部環境による影響ももちろん大きんじゃが、何よりも企業内部で蓄積した価値を持続的に発揮できるかどうかにかかっているというわけじゃ。
言われてみれば当然のような気もするよねー。
順番に問うてみた結果、判明する競合優位性を絵にするとこんなふうになる(図1)。

図1:VRIO分析図※1

※1 出典:「《ミドルのための実践的戦略思考》ジェイ・B・バーニーの『企業戦略論 競争優位の構築と持続』で読み解く金属製品メーカーの人事課長・岩岡の悩み」東洋経済ONLINE 2012年5月11日 http://toyokeizai.net/articles/-/9120
バーニー先生は最後(④のところ)で、実は“持続可能性(Sustainability)”が重要だと説いているんじゃ。競合優位性を、企業の価値を軽視した一過性の施策で獲得できるようなものではないと言うとるんじゃな。
希少性があるだけでは優位性も一時的になってしまう可能性があるのね。
そうなんじゃ。では、ホンハイの事例に戻って考えてみようかの。こうまとめられるじゃろ。

表2 ホンハイのVRIOフレームワーク


ふーん、一応今は持続的競争優位ではあるけれど、最大限ではないってところなのか。競合優位ってやっぱりすぐにできるものじゃないってことがよくわかったよ。
Wikiで調べたら、ソフトバンクのPepperくんを作っているのもホンハイなのね。
実はこのRBVはポーター戦略に対抗した理論として有名で、さらにRBVの中でも経営学の大論争になっていて、決着がついておらんのじゃ。このほかにもマーケティングと切ってもきれない経営戦略の理論はたくさんあるから、勉強してみると面白いぞよ。
はいっ!勉強してみます!
マーケティングを学ぶのに経営学も必要なのかー。ヤレヤレ…。
では、最後に“戦略なくして競合優位を築いた事例”があるから見てみようかの。
戦略が無いのに競合優位?
そうじゃよ。実は、世の中そんな例の方が多いんじゃよ。“戦略ありき”で成功した事例は少ないのじゃ。成功企業は何かしらの戦略があった風な成功譚になりがちじゃからの。これもMBA教育の“悪しき影響”かもしれんなー。

事例29:新市場を開拓し生産台数世界一 HONDAスーパーカブ

ホンダが戦後原動機付自転車を開発し、1949年の1200台から1959年28万台へ販売量を増やし、国内に確固とした地位を確立した。次に目指したのはアメリカだった。しかし当時の北米バイク市場規模は年間6万台たらず。大型で馬力のあるBMWやハーレーなどの独壇場だった。すでに自動車社会だったのだ。ここにホンダは自ら市場を開拓しようと、250ccの“ドリーム”を持ち込んだ。しかし、ほとんどのバイク・ディーラーに敗戦国の小型バイクは見向きもされず、初年度売上はたった170台だった。ホンダの駐在社員は気晴らしに休日、日本から持ち込んだ仕事用のスーパーカブでロサンゼルス郊外のダートを走り回っていた。ところが、現地の人々から「その小さなバイクはどこで買えるのか?」と尋ねられ、日本に特別注文する羽目になった。その後この小さなバイクでダートを走る人々が増え、まったく新しい市場を予感する。結局大型バイクの販売をいったん諦め、スーパーカブに注力することにした。販売店はディーラーではなくスポーツショップだった。UCLAの学生が“You meet the nicest people on a Honda”というコピーを広告代理店に持ち込んだところ、採用され人気に火をつけた(この広告はやがて広告賞を受賞する)。このホンダの50ccバイクは米国にとっては破壊的技術だった。スーパーカブは世界で累計8,700万台(2014年)も売れる商品となった。

出典『イノベーションのジレンマ』クレイトン・クリステンセン 翔泳社?http://www.shoeisha.co.jp/book/detail/9784798100234

結局、最初は失敗だったってこと?
そうじゃな。クレイトン先生も「ホンダが北米やヨーロッパ市場を支配したのは、“明確な戦略的思考と積極的で首尾一貫した実行力が成しえた生産戦略と見事な広告戦略の勝利”と語られるが、現実はまったく違っていた」と記しているぞよ。
それでも市場では高名なBMWやハーレー・ダビッドソンに勝っちゃったのね?
実は、この後ハーレーも小型バイク市場に参入したのじゃよ。しかし、それは完全な失敗に終わってしまったんじゃ。
えっ?!どうして?
ディーラーが反対したからじゃ。大型バイクを扱い慣れたディーラーにしてみれば、小型バイクは利幅も薄いし手間がかかる。それに既存顧客が持つブランドイメージを壊してしまうと考えたのじゃ。
ナルホドねー。
それで高級バイク路線で生き残っておる。燃費は悪そうじゃがな。
へーっ、そんな歴史があるんだね。
やはり、いったん大きなものを手掛けて成功すると、小さなことに情熱が持てなくなるのかしら?
ハッハッハ。それが“ジレンマ”なんじゃ!さて、競合優位のマーケティングと題したが、マーケティングだけで競合優位を確立する方法はなく、組織全体として常にお客さんの顔を見ながら拡大のチャンスを耽々と狙い、チャンスがあったら素早く行動する、という活動を地道に続けるしか無いんじゃな。
マーケティングと経営が切り離せないってそういうことかー。
少しは理解したかの?ドラゴンちゃん!
ちょっちょっと、やめてよっ!

【今回の用語まとめ】

バーニーの企業戦略論

米国オハイオ州立大学の経営学者J.B.バーニー(J.B.Barney)が1996年に発表した「企業戦略論」で論じた企業の戦略優位性を企業内部のリソース(資源)に求めた理論。M.E.ポーターの経営戦略論では、競争優位性を市場と競合環境の綿密な分析により最も有利な位置を取ることによって生み出すと考える、いわゆるポジショニング理論であった。これに対し、企業内部の経営資源(リソース)にその源泉を求め、競争優位の要因は業界の特徴にあるのではなく、その企業自身が持つケイパビリティ(能力)にあるとした。VRIO分析で示される4つの条件を満たす企業が持続的な競合優位性を獲得できるとした。
参考:「Firm Resources and Sustained Competitive Advantage」 Jay Barney Journal of Management Vol.17 1996
http://www.business.illinois.edu/josephm/BA545_Fall%202015/Barney%20(1991).pdf
参考:「世界の経営学者はいま何を考えているのか」 入山章栄 (英治出版, 2012年)
参考:「はじめての経営学」 野中郁治郎, 楠木 健(東洋経済新報社, 2013年)

ITエンジニアのためのマーケティング入門 第24回 (vol.48掲載)

投稿日:2017.06.6 | カテゴリー: 記事

Written by 水間 丈博

本記事は、「ITエンジニアのためのマーケティング入門 マーケティングの実践編」のまとめ記事です。

関連する過去の連載記事も公開しています。以下のリンクからご参照ください。

ITエンジニアのためのマーケティング入門 第13回 (vol.36掲載)

ITエンジニアのためのマーケティング入門 第14回 (vol.37掲載)

ITエンジニアのためのマーケティング入門 第16回 (vol.39掲載)

ITエンジニアのためのマーケティング入門 第17回 (vol.40掲載)

ITエンジニアのためのマーケティング入門 第18回 (vol.41掲載)

ITエンジニアのためのマーケティング入門 第21回 (vol.44掲載)

ITエンジニアのためのマーケティング入門 第22回 (vol.45掲載)

本記事掲載のシェルスクリプトマガジンvol.48は以下リンク先でご購入できます。

おか爺:昔システム会社の役員をやっていたらしい。好奇心旺盛で意外とモノ知り。趣味は音楽(クラシックからJPOPまで!)と囲碁(有段者)。ちょっとした丘の上に住んでいるので「おか爺」と呼ばれている。やや奇怪な老人。

タケシ:工業大学でITを学び、小さなIT会社に就職したITエンジニアの卵。社長に「マーケティングを学んでおけ」と言われている。近くにある母方の祖父、おか爺の家に時々遊びに行く。趣味はサイクリング。まだ彼女はいない。

カンナ:タケシの後輩。大学では文学部で日本史を学ぶ。会社では広報部に配属された。

 

第24回 マーケティングの実践 その12

前回までのあらすじ

エンジニアのタケシは、社長からマーケティングを学ぶように言われ、近くに住む祖父「おか爺」の家に通い、マーケティングについていろいろな知識を吸収しています。マーケティングの基本について一通り学び終えた後は、会社の後輩カンナちゃんと一緒にマーケティングの実践方法を学んできました。今回は2016年4月から始まった「マーケティングの実践」のまとめです。

さて、第13回から前回の第23回まで11回にわたって「マーケティングの実践」というテーマで様々な考え方や事例を見てきたわけじゃが、どうじゃったかの?
いろいろな事例が出てきて面白かったですねー。
なんだか盛りだくさんで、ちょっと難しかったなー。
そうじゃろな。では今回は、復習と補足を兼ねてこれまで学んだことをまとめてみることにしよう。
取り上げたテーマはこのような流れじゃった。

①「PR」は広告宣伝ではない
②企業の目的は顧客の創造
③競合優位とマーケティング戦略
④グローバル・マーケティング
⑤ブランディング
⑥顧客経験価値マーケティング

それでは順に振り返ってみるかの。

 

①「PRは広告宣伝ではない」

詳しくは→?ITエンジニアのためのマーケティング入門 第13回 (vol.36掲載)

PRとは元来「Public Relations」の略語で、一般的には「広報」と訳されておるが、「組織体とその存続を左右するパブリックとの間に、相互に利益をもたらす関係性を構築・維持するマネジメント機能」という定義じゃった
「パブリック」というのは市場のお客さんのことだから、ここでは企業とお客さんが対等の関係で理解を促進することが目的なんだね。
私も誤解していましたけど、「PR」にはまったく「売り込む」といった概念はないんですね。
その通り。「Public Relations」は宣伝や広告のニオイがしないのが正しいんじゃ。様々な製品やサービスを提供する側(企業)と、それを受け止めて利用する人々(顧客)の間に関係を作り出し、「相互に利益(顧客にとっては便益、企業にとっては売上)が存在すること」を認識させる機能が、PRの本来の意味なんじゃった。この定義は米国版PRの教科書を翻訳したものなんじゃが、「組織体の存続を左右する」とさりげなく入っているコワイ言葉が、「顧客を創造し続けなければ企業は存続が不可能になる」ことを明示しておるんじゃな。なんで実は大変重要な機能なんじゃ。それで「企業の目的」に繋がっていくんだの。

 

②企業の目的は顧客の創造

詳しくは→?ITエンジニアのためのマーケティング入門 第14回 (vol.37掲載)

「企業の目的は顧客の創造」って言い切っているところが、スゴク分かりやすいかもね。
「企業とは何か、を決めるのは顧客のみである」のところと、「企業の基本的機能=マーケティングとイノベーションだけである」は忘れないようにしますね。
それは良い心掛けじゃの。
「顧客を創り出す」ってことで、「アイドマ(AIDMA理論)」なんだね。

図1 Purchase Funnel(第14回より再掲)
「ファネルマーケティング」という表現を使ったが、とにかく新たなお客さんを探し出すことに知恵を絞らないといかん。多くの潜在顧客の中から、自社の特徴を一番理解し魅力を感じてくれるお客さんを見つけ出すのがファネルマーケティングじゃ。B2CでもB2Bでも世の中の顧客獲得手段はほとんどこの考え方でできておるんで、是非覚えてほしかったんじゃ。
今、流行っている「マーケティング・オートメーション」もこの考え方を応用しているんでしたね。

 

③競合優位とマーケティング戦略

詳しくは→?ITエンジニアのためのマーケティング入門 第16回 (vol.39掲載)?ITエンジニアのためのマーケティング入門 第16回 (vol.40掲載)

ここでは著名なM.ポーター先生の「企業戦略論」とJ.バーニー先生の「RBV(リソースベーストビュー)理論」とを対比し、競合優位を勝ち取る幾つかの方法と、競争力には企業内部の経営資源(リソース)と持続性が重要である、という考え方に触れてみたんじゃが、難しかったかの?
ここ難しかったなー。2つの理論が対立しているって言うけど、結局どちらが適切なんだろう?
以前話した「3C(自社:Company 市場の顧客:Customer 競合:Competitor)」を思い出してみるとよかろう(シェルマガvol.34掲載の第11回にて解説)。

図2 マーケティングの検討要素(3C) (第11回より再掲)

それぞれを分析するのはマーケティングの基本じゃった。これらの環境の中で自分が最も有利な立ち位置を選んで戦うことが競合優位に繋がる、という考え方がポーター先生の経営戦略理論で、だから「ポジショニング理論」と言われておったんじゃ。しかし、ここには従業員の創意工夫とか切磋琢磨、努力して熟達度や能力を上げるといった概念が存在しない。そこでバーニー先生の企業戦略論では、競争優位の源泉はこうした業界環境やポジショニングではなくて、企業内部の「ケイパビリティ(能力)」に着目したところが画期的だったわけじゃ。

それなら内部の能力を向上させようとする意識が芽生えてきますよね。
そうなんじゃが、ポーター先生の戦略論は「外部的な要因に注目」していて、バーニー先生の戦略論は「内部的な要因に注目」している。ということで両者補完関係にある、と考えておくのがオススメなんじゃな。

④グローバル・マーケティング

詳しくは→?ITエンジニアのためのマーケティング入門 第18回 (vol.41掲載)

ここでは企業がグローバルに進出する背景と、幾つかの成功例、失敗例に触れて海外で成功するポイントを考えてみたわけじゃ。海外では著名グローバルブランド(コカ・コーラやP&Gなど古くから世界的に事業展開している企業)が先行し、歴史の浅い日本ではこれらの企業を規範として手探りで海外展開してきた企業が多いんじゃ。
でも海外でもトップシェアの会社も多かったよね。
確かに、それこそ他社が簡単に追随できない技術で高いシェアを獲得した企業が多いことに触れたわけじゃが、その半面失敗例もあるから、「①訴求ある独自製品」、「②価値とコンセプトを伝える」、「③技術信仰の打破」、「④販売志向からの脱却」、「⑤ブランディング」の5つを成功のポイントとして挙げたの。
この5つを実践しながら、米国のIT企業のように起業時点から海外展開を当然と考えられれば、成功する可能性が高まるのかもしれませんね。
そうじゃのー。じゃが、日本企業もゆっくり海外展開していられない状況になってきたのかもしれん。
なんで?
中国の「BAT(百度 Baidu,阿里巴巴 Alibaba,騰訊 Tengxun)」と呼ばれる三大ネット企業が米国の先進スタートアップ企業を爆買いしておるというんじゃ。*1

*1:出典:「中国の3大ネット企業が米ハイテク企業を爆買い」週間東洋経済 2017年4月8日号
中国の「BAT(百度 Baidu,阿里巴巴 Alibaba,騰訊 Tengxun)」に通販大手の京東集団を加えた4社が過去2年間米国ハイテクベンチャーへ投資した額は56億ドルに達し、シリコンバレーを含むカリフォルニア州では総額の4分の3以上を占めた。投資先はAR(仮想現実)、SNS、サービス、モバイルセキュリティなど多岐にわたり、米テスラにも18億ドルを投資。中国で成功した企業がイノベーションを吸収し、いずれ先進国企業を追い抜くかもしれないと予想する専門家もいるという。

今度は米国で企業を爆買いかー。お金持ちなんだなー。
M&Aで技術と人材を一手にする戦略ですね?
中国にも起業時点で世界を視野に置いている会社が多くなっておるようじゃの。多額の投資が奏功するかはわからんが、たしかにグローバル化のスピードも早くなっておるようじゃ。

⑤ブランディング

詳しくは→?ITエンジニアのためのマーケティング入門 第21回 (vol.44掲載)

ここでは「ブランド」を確立するとどんな効果があるのか、さらに「ブランド構築のプロセス」にはどんな考え方があるのかを紹介したの。ブランド価値を、顧客だけでなく関係する従業員にも浸透させることの重要性にも触れてみた。
「①ブランドポジショニング」、「②ブランドマーケティングプログラム」、「③ブランドパフォーマンス測定」、「④ブランド・エクイティの育成と維持」の4段階で進めるのでしたね。

図3 ブランド構築のプロセス(第21回より再掲)
ここで最も大切なことは「ブランディングは、トップが強い意思と長期的な展望を持って実行すること」なんじゃよ。
「市場における自社ブランドの価値と存在意義をしっかり提示する」のが社長の役割でしたね?
ところが、ほとんどの日本企業ではこの大切な仕事を、マーケティング部門や広報部門などの一部の部門に任せてしまっているのが、残念ながら現実なんじゃな。
ブランド価値を社員に浸透させる教育や組織づくりも考えないといけないんだったね。

⑥顧客経験価値マーケティング

詳しくは→?ITエンジニアのためのマーケティング入門 第22回 (vol.45掲載)

現在盛んに言われ始めた「顧客経験価値(CX)」がなぜ重視されているのか、顧客経験価値はどのように分類できるのか、さらにマーケティングに顧客経験価値を取り入れる方法について事例とともに紹介してみたの。タケシ、なぜ顧客の経験価値が重視され始めたのか理解したかな?
「モノより感動体験」でしょ!?
ハッハッ、一言でいえばそうなるわな。
前回やったばかりだからね!
以前にも触れたが今は「モノ余り時代」と言われてからかなり経つし、特に最近の若い者は物欲が乏しいとも言われておる。これも経験的ベネフィットが注目される背景になっておるようじゃ。
今「断捨離」する人も多いっていいますしね。
ボクなんか欲しいモノたくさんあるけどなー。
そして経験価値マネジメントのフレームワークを紹介したぞな。
「①顧客の経験価値世界を分析」、「②経験価値プラットフォーム構築」、「③ブランド経験価値のデザイン」、「④顧客インタフェースの構築」、「⑤継続的イノベーションに取り組む」、この5つのステップでしたね。
事例は興味深かったけど、「問題発見力」を養うことと、常日頃から「深く考える」習慣が必要なんだよねー。ボクはあまり得意じゃないなー。
バカモン!両方なければIT技術者として生き残れんぞなー。
フッフ、おか爺さん大丈夫ですよ、この前の新人歓迎会の余興はタケシさんがリーダーですごく考えて大好評だったんですよー!
ハッハッハ、それはイノベーティブだったんじゃの!良かったのー。
カンナちゃん、それは内緒!
さて、日本では一般的に「イノベーション」は「技術開発」と同等のもの、と誤解されていることが多いことは知っておるの。もちろん技術開発の結果がイノベーションに繋がることもあるんじゃが、イコールではない。そして「イノベーション」は企業の内部から生み出すものではなくて、顧客が意識しているしていないを問わず、「顧客の問題を解決した結果」がイノベーション、ということを忘れないように。
「マーケティングもイノベーションも顧客が起点」でしたね!
そうじゃ、カンナちゃんだけ合格!
ちょ、それはないでしょ!
次回からは「デジタル・マーケティング」について様々な
トピックを紹介していく予定です。お楽しみに!

バーティカル・マイスターの修行時代 その1

投稿日:2017.05.30 | カテゴリー: 記事

written by シェルスクリプトマガジン編集部

この記事は、シェルマガvol.48掲載「バーティカルバーの極意」第二回の、いわゆる「やってみた記事」です。
シェルマガ本誌と一緒にご覧頂けると、よりお楽しみいただけます。

はじめに

よちよち歩きで運用を開始した、Web版シェルスクリプトマガジン shell-mag.com 。

更新のたびにFacebookやTwitterなどのSNSに投稿をしてお知らせしていますが、当然お知らせがどれだけの人に届いたか、気になるものです。

たとえばこちらの投稿。

「さて、この投稿のリーチ(投稿が見られた数)は……ええー、たったの70?(しょんぼり)」

たとえばFacebookでは、これまでにリーチが1000近くまで伸びた投稿もあるので、100以下はちょっと堪えます。

まだまだ記事数こそ少ないですが、面白おかしく役に立つ記事を揃えていると自負していますから、せっかく更新した記事が人の目にも触れないと、こちらとしては面白くありません。
なんとかFBでもリーチ数を稼がねば。

Facebookのアルゴリズムではリアクションが多くついた投稿ほど頻繁に表示されるらしいので、リーチを伸ばす正攻法は、まずはキャッチーな、「いいね」をもらいやすい投稿をすることです。
とはいえ、「いいね」をもらえるかどうかはなかなか水物です。なんとか確実にリーチ数を稼ぐ方法はないものか。

そこで、わたくし考えました。

シェルマガの読者さんは皆さま品行方正でしょうから、わたくし編集Kみたいに昼間からSNSに入り浸ったりはせずに、仕事に疲れ、傷つき、リラックスしたい時間だけSNSにアクセスしているはず。
だとすれば、多くの人が休憩をとる、リーチが伸びやすい時間帯があるはずです。

その時間を狙って更新情報を投稿するように心がければ

→自動的にshell-mag.comの利用が増える

→満足した読者さんの口コミでサイトの知名度が上がる

→シェルマガ本誌も売上が伸びる

→編集Kの給料も上がる

と、おお、これはいいことづくめだ!すぐにでも解析をせねば。

……と考えていたところに、前号から始まった、飯尾淳先生による「バーティカルバーの極意」第2回の原稿が届きます。早速確認してみると、おあつらえ向きに「Facebookの投稿をヒストグラムで分析する」内容ではないですか。

「これは使えるぞ!」と、ピーンと来た編集K。
記事のコードチェックも兼ねて、Facebookへの投稿の解析を試みることにしたのでした。

シェルマガvol.48に掲載された「バーティカルバーの極意」第二回では、どの時間帯に飯尾先生がFacebookに投稿しているのか、ヒストグラムで可視化をしていましたが、私の目的である「どの時間帯に投稿すればリーチが伸びるのか」を分析するためには、ヒストグラムよりも散布図のほうが役に立つはずです。

理想的には、例えば下の図のように、「昼休みに入る12時前後と定時の18時前後の投稿は、他の時間帯に比べてリーチ数が伸びやすい」のような傾向が見て取れるはず。

(Excelでちまちまつくりました)

善は急げ。早速Facebookからデータを取得して、解析してみましょう!

苦闘の記録

手元には飯尾先生のお手本があるから、今回の解析は簡単にできるはず……との目論見は、初っ端から崩れます。ビジネスアカウントでは、投稿情報の取得の際に、なんと28日しか遡れないのです。その間の投稿数は10程度。とても、議論ができるサンプル数ではありません。

しょうがないので、投稿日時とリーチ数が表示されるページから、マウスで選択してコピペする原始的な方法でテキストデータを引っ張ってきます。

原始的な方法でデータを取得するの図。ビーッと引っ張ってきます。

さて、取得したデータをテキストにペーストしてみると……

……あれ?

飯尾先生の記事では「データがすべて横に並んでいたので改行コードを挿入して扱いやすいデータにする」というストーリーでしたが、私が取得したデータは、逆にすべて縦に並んでいます。これは困ったなぁ。

困ったときは相談だ。というわけで、隣の席のエンジニアに助け舟を出してもらいます。

編集K「ねぇねぇ、この全部縦に連なったデータを、常識的な並び方に直すにはどうしたらいいかねぇ」
エンジニア「そりゃ、一度全部横にしてから、適当な改行コードを入れるしかないでしょ(編:だよねぇ~)。そういうときはyarrコマンドを使ったらいいんだよ」

yarr(横アレイ)!!ここでまさかのTukubaiコマンド登場です。そりゃまぁ、Tukubaiコマンドを使っていかに楽をしてシステムを組み立てるかを日夜考えている、うちのエンジニアに聞いたら当然そういう答えが返ってきますよね。
注:Tukubaiコマンドは、シェルマガの発行元USP研究所が開発しているUNIXコマンド群。シェルマガ著者の今泉光之さん曰く「便利すぎて考えなくて済むから、エンジニアが馬鹿になる」とのこと個人用Tukubaiのご購入はこちら

オーケーオーケー。他のサイトならまだしも、ここはshell-mag.com 。ユニケージの広報サイトでユニケージのために開発されたコマンドを使って何が悪い。ちょっとズルいですが、Tukubaiコマンドを使っちゃいましょう。
yarrは、縦に並んだデータを横に並び替えるコマンドです。こんなこともあろうかと優しい誰かが作ってくれていたのでしょう。
sedで半角スペースを適当な文字列に変換してから、yarrコマンドでデータの縦横を入れ替えます。

2017年5月31日追記:飯尾先生から「標準的なコマンドだけでも、pasteを使えば同じことができるよ」とご指摘をいただきました。yarrをpasteに置き換え、以下のようにオプションを使えば同じ出力が得られます。

で、こいつをcatで開いてみると……

あれ、縦のまんまだ?どういうことよ。(注:pasteコマンドを使っても結果は同じです)

Vimで開いてみると

おお、紫でハイライトされている^Mの改行コードが残っているんですな。こいつもsedで取ってやりましょう。

ただし、この制御コードの^Mは、素直に「はっと・えむ」とキーを打ってもsedで認識してくれません。キー入力としては、Ctrl-v Ctrl-mと入力すると制御コードの^Mと認識されるので、入力の際には

とタイプしてください。さらっと流しましたが、これを調べるのに20分かかりました。

さて、無事にデータが横一行に並んだので、飯尾先生の教えの通り、sedを使って特定のテキストを改行コードに置き換え、データを扱いやすい形に整えます。今回は、各投稿の最後に「投稿の広告を出す」という一文が必ず入っているので、これを改行コードに書き換えました。

ここもさらっと流していますが、編集Kの使っているMacのOSのバージョンが古かったのか、改行コードを改行コードとして認識してもらえませんでした。再度隣席のエンジニアに頼み、彼のMacで同じコマンドを打ってもらったところ、想定通り改行されましたので、読者の皆さまは安心して記事のコードを使ってください。

さて、こうやって加工したデータですが、まだ行頭に空白があったり、最終行に空行が入っていたりと、まだ形を整える必要があります。AWKとかを使うのがめんどくさいので、再度Tukubaiコマンドを使って加工します。末尾の行を削って、余分な空白をとって、日付と時間とリーチのフィールドを取り出します。

ctail :ファイルの末尾指定行を削って出力

self : 指定したフィールドのデータを取り出す。連続した空白をひとつに削ることができる。

こうやって、弊社のプロダクトを自然にステマしながら加工したデータがこちらになります。

おお、綺麗になった。でもリーチ(第3フィールド)に3桁ごとのカンマが残ってますね。これもsedで消してしまいましょう。ついでにhourとminuteの間のコロンを空白に変えて、それぞれを独立したフィールドにしてしまいます。で、minuteの方を60進法から10進法に直して、hourと合計を出します。

これで、プロットする元データが加工できました。第1フィールドが時刻、第2フィールドがリーチ数です。

さて、元記事に倣って、これをRでグラフにしてみます。

飯尾先生の記事ではhist関数を使っていますが、今回つくるのはヒストグラムではなく散布図なので、plot関数を使います。最初に横軸と縦軸を指定します。$V1、$V2は、それぞれ何フィールド目かを表します。小室哲哉とYOSHIKIが組んだユニットではありませんし、も出てきません。何の話だ。グラフの範囲をxlim、ylimで指定、xlab、ylabでそれぞれ軸のラベルを指定します。

完成!

で、ここまで3時間ほど苦闘した末、完成した散布図がこちらになります。

(縦軸がリーチ数、横軸が投稿時刻になります)

お、おう……。

正直、傾向はよくわかりませんな。当初は12時と18時前後に投稿するとリーチが増えるんじゃないかと考えていましたが、別段そんなこともない。強いて言えば、15時頃はリーチが安定して見えますが、これもサンプル数が少なくて確実とはいえんなぁ……。

とりあえずの結論としては
「投稿の時間帯だけでリーチ数をコントロールしようとするのは無理がある」
ということですね。やはり正攻法で、キャッチーな投稿を心がけねば。

 

というわけで、皆さまもどうぞシェルマガの記事を自分なりに試して楽しんでくださいね!
当サイト掲載のコードもコピペなどにどうぞご利用ください。

今回の記事の元ネタ「バーティカルバーの極意 第二回」のコードはこちら。コピペなどにご利用ください。
解説はシェルマガ本誌をご参照くださいませ。

(次回、「バーティカル・マイスターの遍歴時代」に続く……のか?)

漢のUNIX ライブラリをつくってみよう! #その5(vol.48掲載)

投稿日:2017.05.23 | カテゴリー: 記事

著者:後藤大地
前回は静的ライブラリを作る方法を取り上げた。.cのファイルを.oのファイルへコンパイルし、それらをまとめて静的ライブラリとする。静的ライブラリはいわば部品の集まりで、コンパイル時にこの静的ライブラリから必要な部品を持ってきて利用することになる。コンパイルごとに静的ライブラリから部品がコピーされ、生成されるバイナリファイルへ含まれることになる。

ライブラリにはもうひとつ「共有ライブラリ」というものがある。動的ライブラリと呼ばれることもある。共有ライブラリの方はバイナリファイル生成時に指定はするものの、ここから部品をコピーしてバイナリに組み込むといったことはしない。生成したバイナリを実行するときにリアルタイムに共有ライブラリを見に行って、そのときに使われる。

記事本文掲載のシェルスクリプトマガジンvol.48は以下リンク先でご購入できます。

 

40歳から始める、オレとRubyプログラミング(vol.48掲載)

投稿日:2017.05.23 | カテゴリー: 未分類,記事

著者:しょっさん

 前回、ページ数が増えたことに増長して、ソースコードをたくさん載せたはいいのですが、それを説明する余白がありませんでした。今回は、前回掲載したソースコードについて、新しく使いはじめた部分を中心に説明します。
 その前に、連載を通じて少しずつではありますが、プログラムが拡張してきましたので、プログラム全体がどのような構成になっているかを、一度立ち返って見直してみます。ある程度の開発規模になってくると、設計図なく開発をすることは困難になってきます。今後のさらなる拡張と改良もふまえて、設計図を作って開発を進めていきます。

記事本文掲載のシェルスクリプトマガジンvol.48は以下リンク先でご購入できます。

ユニケージ開発手法 コードレビュー vol.37(本誌vol.48掲載)

投稿日:2017.05.23 | カテゴリー: 記事

著者:USP研究所技術研究員 新美勇一

今回は、業務システムの処理に見立てた簡単な例題で2つ実装例を挙げ、レビューを行いたいと思います。

本記事掲載のシェルスクリプトマガジンvol.48は以下リンク先でご購入できます。
USP研究所 通販サイトでは、個人用uspTukubaiのご購入も可能です。

UNIXネイティブの電子工作塾 vol.48掲載

投稿日:2017.05.23 | カテゴリー: 記事

著者:金沢大学 教授 大野浩之

さて、UNIXネイティブの電子工作塾 e-Badge編第2回ですが、少しだけ回り道をすることにました。今回は e-Badge(電子名札) のためのプリント基板(PCB)作りに着手する予定でしたが、その前にお話しておくべきことがありました。まず、PCB設計に用いるソフトウェア “Fritzing” の特徴をお伝えしたいと思います。それから、Fritzing で作成したPCBデータがどのようなもので、 これをどこにどうやって発注するのか、といったノウハウもお伝えしたいと思います。
そこで今回は、e-Badge の製作をはじめる前に、よりシンプルで汎用的な基板を作ることにしました。

本記事掲載のシェルスクリプトマガジンvol.48は以下リンク先でご購入できます。

バーティカルバーの極意 第二回 (vol.48掲載)

投稿日:2017.05.23 | カテゴリー: 記事

著者:中央大学 教授 飯尾淳

 バーティカルバーの極意、連載2回めの今回は、対象とするバーティカルバーとして「棒グラフ」を取り上げます。より正確にいえば、棒グラフのなかでも、ヒストグラムとよばれる種類の棒グラフです。ヒストグラムを柱状グラフと呼ぶこともあります。一般的に、柱はまっすぐ垂直に立てられるものです。この名称ひとつとっても、ヒストグラムをバーティカルバーの一族と考えてかまわないでしょう。

記事本文掲載のシェルスクリプトマガジンvol.48は以下リンク先でご購入できます。

/'”${LF}”‘/g’ | \ > grep ‘^20[01][0-9]年’ | grep UTC | \ > grep ‘日 [234]:’ | less

逆に、Tukubaiコマンドをシェルスクリプトで実装してみる 後編 (vol.48掲載)

投稿日:2017.05.23 | カテゴリー: 記事

著者:今泉光之 (Twitter: @bsdhack)

Open usp Tukubai は Python により実装されているので Python が動作する環境であればインストール可能です。
公式の配布サイトからソースを取得して展開し make install するだけで Open usp Tukubai は利用可能となります。
ここでは Open usp Tukubai のコマンドを解説します。
ただし以下のように Open usp Tukubai だけでも 55 コマンドも提供されており、その全てを解説するのは無理なので、
特に有用で興味深いコマンドを厳選して紹介します。

前回紹介したcalclock、comma、getlast、ketaに続き、今回はmojihame、self、sm2の3つのコマンドを紹介し、シェルスクリプトでの再現を試みます。
但し今回は紙面と時間の都合で一部の機能やオプションなど実装できていない部分も多いです。
また、動作の把握とメイン処理の実装のみに絞ったので、エラー処理などはまったく実施していません。
そのために実際の業務などには殆ど利用できない実験的なスクリプトとなっています。

mojihame

mojihameとは

テンプレート中に埋め込まれたキーワードをデータに置換して出力します。
キーワードは %数字 の形式で指定し、データ中に出現した順番にテンプレート中の %1、%2 …と置換されます。
データ中の @ はヌル文字として扱われ空文字列に置換されますが -d オプションで @ を別の文字に変更できます。
データ中の _ はスペースに変換して出力されます。_ を出力したい場合は \_ の様に指定します。

-l オプションは行単位での置換処理が実施されます。
入力データは行単位に読み込まれ、入力データの次の行が読み込まれるとテンプレートは先頭から再利用されます。

-l オプションではラベルを指定することができます。
ラベルが指定された場合、テンプレート中でラベルの間に書かれたキーワードのみが置換の対象となります。なおラベルはテンプレート中で2回 (開始と終了) しか書くことができません。
(-h による階層構造に関しては説明が複雑なのでここでは省略します)

mojihameを作ってみよう

基本的な機能は全て awk(1) の組み込み関数で実装しました。
通常モードでは、 awk(1) の BEGIN 処理でデータを全て読み込み配列 data に格納した後で _ の置換処理を行っています。
メイン処理ではテンプレートファイルを読み込み、 match 関数を利用して %数字 のラベルを探して gsub 関数で置換しています。

行モードでは、 BEGIN 処理でテンプレートを全て読み込みハッシュ template に格納しています。
メイン処理では、データを読み込み index 関数を利用して %数字 のラベルが存在する間テンプレートを置換します。
テンプレートに数字のラベルが見付からない場合は、テンプレートの次の行をハッシュ template から取得して処理を続けます。

今回紹介した Tukubai コマンドの中では、これが一番多機能なコマンドでした。非常に複雑で多機能なので、通常モードと行モードの基本的なテンプレート置換機能しか実装しておらず、-l オプションのラベル指定、-h オプションによる階層構造テンプレートなどは実装していません。

self

selfとは

入力データ(ファイルや標準出力)の指定されたフィールドのみを出力します。

フィールドの指定時のオプションで、開始文字と文字列長が指定できます。
例えば 4.3 とした場合は第 4 フィールドの 3 文字目から出力され、5.5.4 とした場合は第 5 フィールドの 5 文字目から 2 文字が出力されます。
マルチバイトの文字の場合、開始文字と文字列長はそれぞれ 1 文字を 2 として計算する必要があり、
マルチバイト文字を文字の中間で分割する様な指定された場合はエラーとなります。

フィールド指定の 0 は全フィールドを表します。
フィールド指定で n/m (n と m はそれぞれ整数) とすることで n 番目から m 番目のフィールドを出力できます。
フィールド指定の NF は現在行のフィールド数に置き換えられ NF-3 (最後から3番目のフィールド) や 2/NF などの利用が可能です。

-d オプションは引数で指定した文字列を区切ることができます。

selfを作ってみよう

self コマンド自体が awk(1) と似ているので、多少冗長になってしまいましたが awk(1) の機能だけで殆ど実装できました。フィールド指定、NF による相対的なフィールド指定、NF からの相対位置による指定、n/m 指定などが動作しています。
ただし OS X 標準の awk(1) はマルチバイト文字には対応していないのでマルチバイト文字を扱うことができません。
Linux で標準的に利用されている GNU awk の場合はマルチバイト文字に対応していますので、今回作成した self コマンドも正しく動作しています。

(次ページに続く)

もしインターネットの1秒が1年だったら 第1回(vol.47掲載)

投稿日:2017.05.16 | カテゴリー: 記事

written by hakatashi・Mine02C4

編注:本記事は「SunPro 2016 技術書典」で発表された記事に説明・イラストを追加し、シェルマガvol.47に掲載したものです。
以下リンク先で、オリジナル版の全文が公開されています。
https://sunpro.io/techbookfest/

インターネットが日本中のあらゆる人間に行き渡るようになってから、すでに10年単位の時間が経過しています。今日においてインターネットを支えるネットワーク技術が重要であることは言うまでもありませんが、実際にネットワークでどのタイミングで何が起こり、どれくらいの時間が費やされるのかということを身を持って体感している人は、たとえネットワークに精通している人でも少ないのではないでしょうか? この記事では、1 秒というわずかな時間を1年にまで拡大し、ネットワーク上で何が起こっているかを人間スケールでざっくりと解説していきます。

はじめに

こんにちは。先号まで石川啄木を蘇らせようとしていた博多市(@hakatashi) です。今回から、2016年の技術書典にSunProとして発表した「インターネットの1秒がもし1年だったら」というだいぶ抽象的で怪しい記事を、シェルスクリプトマガジン向けに再構成してお届けします。
インターネットというのは光の速さを身をもって感じることができるメディアです。先日、Hiraku Nakanoさんの「composerの遅さをまじめに考える」というスライド*1を拝見したのですが、そこではPHPのパッケージマネージャーであるcomposerが遅い原因として、「光の速さが遅すぎる」という理由が挙げられていました。
ユニークな考え方ですが言われてればたしかに道理で、日本からアメリカのサーバーまでハンドシェイクで何度も往復していると、確かに光といえど100ミリ秒単位で時間を浪費しています。
サーバーが近ければ通信は早いというのは誰もが知っていることですが、光の速度のせいだと言われるとなにやら圧倒されるものがあります。
この記事では、そんなネットワークの微視的な時間スケールについて徹底的に解剖します。一回の通信を解析し、それぞれ時系列順に細かく分解し、それぞれの操作でどれくらいの時間が費やされ、どんなイベントがいつ発生するのかを逐一追っていきたいと思います。
とはいえ、ネットワーク通信における時間経過はミリ秒単位で数えられます。今回は、そんな微細な時間の移り変わりをなるべくわかりやすくするため、通信上の1秒という時間を1年にまで引き伸ばし、約3000万倍の時間スケールでネットワークのイベントを追跡してみます。

*1 http://www.slideshare.net/hinakano/composer-phpstudy

共著者について

本記事の筆頭筆者はhakatashiですが、今回の記事を書くにあたり、同じSunProメンバーでありネットワークスペシャリスト取得者のMine02C4*2から、企画段階からの多大な協力と大幅な加筆を得ることができました。
ネットワーク知識不足のhakatashiにパケット解析を指南し、本記事では特にTLS 関連の項目の執筆、および全体のレビューを担当しています。共著者として名を連ねていますが、彼の協力なしでは本記事は恐ろしくクオリティの低いものになったであろうことは疑いようがなく、その貢献度に関しては計り知れません。どうぞお見知り置きください。

*2 HP: http://mine02c4.nagoya/, Twitter: @mine_studio

シチュエーション

今回解剖する対象の通信として、HTTPSによる通信をメインに解析しました。ふだん我々がブラウザから毎日使っているプロトコルなのは言うまでもなく、SSL/TLSの処理を挟むので、それなりに面白い結果になるのではないでしょうか。
また、HTTPS通信を行う際に必要となるARPやDNS通信についても述べていきます。さらに、通信を行うサーバーとクライアントの場所ですが、今回は、技術書典の会場でもある東京のインターネット環境から、さくらインターネットが誇る、北海道の石狩データセンターまでの通信を行います。
Googleマップによると、東京から、石狩データセンターがある石狩市新港中央までは1177.3km。光ファイバーに用いられる石英ガラスの屈折率は1.50程度*3なので、光は約20万km/sでこの距離を移動します。つまり、東京から石狩までの物理的な片道時間は約5.9ミリ秒となります。瞬く間もないほどの時間ですが、時間スケールを1年に引き伸ばすと2日と3時間半もかかります。往復で4日と7時間。石狩までぶらり旅といった感じですね。

*3 光学ガラス材料- シグマ光機株式会社

1秒 → 1年

1秒が1年になった世界の様子をもう少し見てみましょう。
真空中の光は時速34kmで移動します。先ほど出てきた光ファイバー中の光速は時速23km程度になるので、自転車か、休憩しながらのドライブ旅程度の速さになります。ちなみに男子マラソンの世界記録は時速20.6kmです。*4*5
3GHzのCPUは、こんな世界でも1秒間に95回という高橋名人の6倍のクロックを刻みます。PC3-12800のメモリーの転送速度は、もはやダイアルアップ接続よりも遥かにナローバンドですが、最大で1秒間に3200ビットの情報を読み出すことができます。

*4 2014年ベルリンマラソンのデニス・キメット選手の記録、2時間2分57秒より。
*5 ただし、この速度で走行するとこの世界では体重が26% 増えるのでオススメしない。

制約など

今回パケットを解析する上で、話を簡便化するためにいくつかの制約を加えています。
● DNSのシステムを明確に示すため、ローカルホストにDNSサーバーを置き、そこからリクエストのたびにルートDNSサーバーからアドレスを引いています。
● 複雑かつ時間がかかりすぎるため、ネームサーバーでのDNSSECの検証処理は無効化しています。
● SSL/TLSの証明書検証処理は無効化しています。

測定環境

測定には、ラップトップマシン上のUbuntuの仮想環境を使用しました。一回の測定ごとにDNSキャッシュとARPキャッシュをクリアし、なるべくクリーンな状態で測定を行いました。
また、先程も述べたとおりDNSサーバーはローカルホストに設置し、そこから外部に向けてアドレスを引くようにしました。
サーバーは先ほど述べたさくらの石狩データセンターへのアクセスを確実に測定するため、今回の記事のためにさくらVPSの石狩リージョンのサーバーを調達しました。OSはさくらVPSの初期OSであるCentOS 6.8で、デフォルトのApache 2.2.15をほとんどそのまま使用しました。SSL は自己署名証明書で通信し、証明書の検証は無効化してあります。
クライアントは、Windows上の仮想マシンのUbuntu 14.04.4を用いました。クライアントアプリケーションはcURLを用いています。ネームサーバーはローカルホストにBIND 9.9.5を立て、キャッシュを無効化した上でルートサーバーからアドレスを引くよう設定してあります。
通信内容は、100KB(102400 バイト)のバイナリファイルをGETリクエストで取得するもので、HTTPパラメータはほぼcURLのデフォルトを使用しています。
パケットキャプチャはクライアント側とサーバー側で同時に行い、tcpdumpで同じ通信を2度キャプチャして解析しています。時刻に関しては毎度NTPで時刻補正しましたが精度が得られなかったのでサーバー側とクライアント側の測定値を見て適当に補正を行いました。
今回記事中で使用した数字は、以上の条件のもとに行った10回の測定結果の平均値をもとにしています。

サーバーちゃんとクライアントちゃん

サーバーちゃん   クライアントちゃん

今回、せっかく時間軸を人間スケールで語るので、通信処理の登場人物も人間という体で解説していきます。
この話の主人公は「クライアントちゃん」と「サーバーちゃん」です。クライアントちゃんは東京で悠々とした生活を送っている普通の女の子であり、趣味は暗号と文通です。一方サーバーちゃんは石狩のデータセンターで、ひしめき合うたくさんのサーバーとともに、Webサーバーとして多忙な毎日を送っています。
こんな対称的な2人が、今回は年明けと同時に通信を開始します。さらに、通信は手紙のやり取り、IPアドレスは住所、ルーターは郵便ポスト……というように、適宜シチュエーションに合わせた読み替えを行っていきます。あくまで例えですので、あまり正確ではないかもしれませんが、今回の目的はあくまで通信処理の全貌をふわっと理解することなので、あまり厳密に考えず、空っぽの頭で読んでください。
また、今回解説する通信処理の概略を、簡単なシーケンスダイアグラムで示します。通信処理の主役は情報をやり取りするサーバーちゃんとクライアントちゃんなのですが、第1回は2人の通信が開始するまでの準備作業が主となり、サーバーちゃんはまだ登場しません。インターネット通信において目的のサーバーのアドレスを見つけるためにどのような処理が行われているのかを一段階ずつ検証していきます。


それでは、クライアントちゃんとサーバーちゃんの通信の始まりです。

 

ルーターのアドレス解決

1月1日 午前0時0分 ARPリクエスト送信

あけましておめでとうございます。NHKの「ゆく年くる年」を見ながらインターネットの年が明けます。
この瞬間、東京でまったりと紅白歌合戦を見ていたクライアントちゃんは、石狩にいるサーバーちゃんに聞きたいことがあるのを思い出しました。長い長い通信の始まりです。
さっそくクライアントちゃんはサーバーちゃんに手紙を書くことにしました。
クライアントちゃんは何もわかりません。郵便ポスト(ルーター) の場所も、サーバーちゃんの住所(IPアドレス) も、いつも使っていた住所録(DNSサーバー) の場所も覚えていません。
キャッシュを削除したクライアントちゃんは記憶を失ってしまったのです。
覚えているのは、ただ石狩にいるはずのサーバーちゃんのことだけ……。
困ったクライアントちゃんは、まずは郵便ポスト(ルーター) を探すことにしました。家の中や向こう三軒両隣のことならともかく、遠く石狩に住むサーバーちゃんに手紙を届けるには、何よりポストがなければ話が始まりません。
クライアントちゃんはもうネットワークに接続しているので、ルーターのIPアドレスはすでに分かっています。しかし実際にルーターと通信するには、ルーターのMACアドレスが必要です。これを引くために、ARP(Address Resolution Protocol)と呼ばれるプロトコルを用います。
ARPリクエストはIPアドレスに対応するMACアドレスを検索するリクエストです。MACアドレスのプロードキャストアドレス(FF:FF:FF:FF:FF:FF) に向けて発信することで、同一ネットワーク内のすべての機器にこのリクエストを送信することができます。クライアントちゃんは街中に響く声でポストの場所を尋ねました。

「郵便ポストはどこですかぁぁぁぁ??!!」

1月1日 午前3時26分 ARPレスポンス受信

いったい今何時だと思っているんでしょうか。クライアントちゃんの声は街中に響き渡り、近隣住民からたいへん大目玉を食らいましたが、努力の甲斐あって、3時間半後に親切な人がポストの場所を教えてくれました。
ARPは、ブロードキャストでネットワーク全体に配信されたイーサネットフレームに対して、尋ねられているIPアドレスが自分のものであればMACアドレスを応答するというシンプルな仕組みで動作します。
今回は事前にARPキャッシュを削除してから通信を行ったので、通信前に必ずARPの問い合わせが走るようにして計測したのですが、そもそもARPは頻繁にキャッシュを消去します。*6クライアントちゃんはとても忘れっぽいのです。

*6 Ubuntu の場合、キャッシュの有効時間は15 分程度。

DNS解決

1月1日 午前5時7分 DNSクエリ送信 1回目

親切なおじさんのおかげで、クライアントちゃんは郵便ポストの場所を知ることができました。
またすぐ忘れてしまうのですが、この世界では約900年後のことなので、特に気にすることはありません。
となると次にクライアントちゃんが知るべきはサーバーちゃんの住所(=IPアドレス) です。郵便ポストを見つけても相手の住所がわからないと手紙は送れません。サーバーちゃんの住所を知るために、クライアントちゃんはルートサーバーに住所を問い合わせることにしました。
電話番号に電話番号問い合わせサービスがあるように、ネットワークの世界にも、ドメイン名から相手のアドレスを問い合わせるためのDNS(Domain Name Service)があります。
電話番号の場合は104番という番号を知っていれば他の番号を問い合わせることができます。
インターネットにおける“104”は、世界に13個存在するルートサーバーのアドレスです。今回は、13個の中で唯一日本の団体が管理している、Mルートサーバーに問い合わせるようにルートサーバーの設定を変更しています。*7
サーバーちゃんの住所を一秒でも早く正確に知りたいクライアントちゃんは、世界中に数あるDNSサーバーの中でも最も権威あるルートサーバーに一筆したためることにしました。あらゆるキャッシュを削除したクライアントちゃんも、一番大事なルートサーバーの住所は覚えています。
あれこれ悩んで手紙を書き、ようやく完成したのはそれから1時間半後のことでした。早朝の冷たい冬風が骨身に染みます。クライアントちゃんはコートを厚めに羽織ってポストに手紙を投函しに行きました。
一刻も早く返事が帰ってくることを願って……。

「うぅっ、さぶっ。早くお返事来るといいなぁ」

*7 もっとも、ルートサーバーはクラスタ構成になっており国単位で分散しているため、必ずしも問い合わせたマシンが日本に存在するかどうかは保証されないのですが…。

1月14日 午前3時57分 DNSレスポンス受信 1回目

最初に手紙を送ってから2週間が経過しました。冬休みも終わって正月気分もようやく抜けてくる頃です。もうこの時点で直接会いに行ったほうが手っ取り早いんじゃないかという気がしますが、石狩は遠いのです。そんな気軽に会いに行けないのです。たぶん。

ともあれ、ルートサーバーからようやく返事が帰ってきました。郵便局が怠慢なのかルートサーバーがお役所仕事をしてるのか知りませんが、とにかくこれでサーバーちゃんの住所を知ることができた……というわけではありません。
ルートサーバーは世界中のすべてのマシンのIPアドレスを記録しているわけではありません。
ドメイン名を問い合わせられたDNSサーバーは、自らが委任するDNSゾーンのネームサーバーの情報を返します。今回問い合わせたドメイン名はさくらのVPSサーバーにデフォルトで割り当てられたドメイン*8なので、ルートサーバーはjpサブドメイン*9のネームサーバー*10を返してきました。つまりjpドメインのことはjpドメインの担当者に聞けということです。

「えー……」

*8 .vs.sakura.ne.jp で終わるドメイン名
*9 .jp はTLD(Top Level Domain) なのでサブドメインと呼んでいいか微妙ですが……
*10 a.dns.jp, b.dns.jp, c.dns.jp, d.dns.jp, e.dns.jp, f.dns.jp, g.dns.jp の7 つ

1月14日 午前9時52分 DNSクエリ送信 2回目

jp ドメインの担当者というのは要はJPRS(日本レジストリサービス)のことです。サーバーちゃんの住所を聞き出す手がかりを得たクライアントちゃんは、夜が明けるのを待ってから今度はJPRSのDNSサーバーに対して手紙を書きました。
実を言うと、jpドメインのネームサーバーを管理しているのはJPRSその人ですが、実際の運用は、JPRSを含めた5つの独立した組織によって行われています。これはルートサーバーが世界に13個あるのと同じく、ネームサーバーがダウンした際のリスクを可能な限り最小限に抑えるためです。
2 回目のDNSレイヤーの内容は、トランザクションIDを除いて前回ルートサーバーに対して送ったのと全く同じ内容です。DNSはなるべく高速に動作するように簡明に設計されているため、このようにパケットの内容を容易に再利用できるようになっています。決してクライアントちゃんがサボっているわけではありません。

1月27日 午後2時30分 DNSレスポンス受信 2回目

ふたたび待つこと2週間。すでに1月が終わりに近づいてきました。
クライアントちゃんの元にJPRSからの返信が届きました。サーバーちゃんの住所はまだわかりません。今度はsakura.ne.jpの権威サーバーである、さくらインターネットのネームサーバー*11の情報が返ってきました。

「……またかよ」

ここに来てようやくさくらインターネットの影に辿り着きました。サーバーちゃんの住所ゲットまであと一息です。

*11  ns1.dns.ne.jp, ns2.dns.ne.jp

1月27日 午後6時56分 DNSクエリ送信3回目

同じやり取りも3回繰り返すと飽きてしまいますね。けれどクライアントちゃんはサーバーちゃんに手紙を届けるために、めげずにDNSのパケットを送り続けます。今度は先ほど入手したさくらインターネットのネームサーバーの住所に対して、みたびサーバーちゃんの住所を尋ねる手紙を出します。
ところで、先ほどからクライアントちゃんは気軽にあちこちにDNSパケットを送ったり受け取ったりしていますが、これはDNSがUDPプロトコルの上で動作しているからです*12。UDPは、後ほど解説するTCPと異なり、相手のマシンとの接続を確立する必要がないため、気軽に任意のアドレスにいきなりデータを送りつけることができます。
逆に言うと、TCPのような再送要求やエラー訂正などの機能を持たないため、伝送経路のどこかでパケットが損失した場合、クライアントちゃんは返事を待ちぼうけということになってしまいます。
もっとも、それもタイムアウトするまでですが。

*12 DNS自体はTCP上でも動作することが義務付けられています。

2月10日 午前9時35分 DNSレスポンス受信 3回目

2月に突入しました。幸い3度目のクエリも待って待って待ちぼうけという事にはならず、ポストに投函してから2週間経って再び返事が帰ってきました。そこには待ち望んでいたサーバーちゃんの住所がくっきりと書かれています。
これにて名前解決完了。ようやくサーバーちゃんに対してパケットを送りつけることができるようになります。もうあちこちのネームサーバーとパケットをやりとりする必要はありません。年が明けてから41日間、実時間にして110ミリ秒が経過しました。この調子で年内にサーバーちゃんとの通信を終えることができるのでしょうか。クライアントちゃんの通信はまだまだこれからです。

「この続きはシェルマガvol.48、またはオリジナル版掲載サイトを見てねっ!」

本記事掲載のシェルスクリプトマガジンvol.47は以下リンク先でご購入できます。

漢のUNIX ライブラリをつくってみよう! #その3(vol.46掲載)

投稿日:2017.05.9 | カテゴリー: 記事

著者:後藤大地

今回は分割したファイルが実際にどのように処理され、最終的にバイナリ形式の実装ファイルに変換されるのかといった過程を、もうちょっと詳しく紹介していこうと思う。実際にどのように処理が進むのか知ることで、コーディング中の頭の中にどのように処理されるのか地図が浮かんでくるようになり、より効率が良く見通しの良いソースコードを記述できるようになる。その内側を調べていこう。

 

記事本文掲載のシェルスクリプトマガジンvol.46は以下リンク先でご購入できます。

 

 

ユニケージ開発手法 コードレビュー vol.35(vol.46掲載)

投稿日:2017.05.9 | カテゴリー: 記事

著者:USP研究所技術研究員 青木剛理

今回は、無意識にシェルを書くと計算誤りが発生しやすい、ゼロとヌルの違いについて説明します。

本記事掲載のシェルスクリプトマガジンvol.46は以下リンク先でご購入できます。
USP研究所 通販サイトでは、個人用uspTukubaiのご購入も可能です。

 

機械学習で石川啄木を蘇らせる 最終回(vol.46掲載)

投稿日:2017.04.25 | カテゴリー: 記事

written by 高橋光輝

様々なアルゴリズム・機械学習をスマートに組み合わせて未完の短歌の補完を目指した人気連載「機械学習で石川啄木を蘇らせる」。シェルマガでは同人誌から手法を発展させ、新たに記事を書き起こしてもらいました。

連載全体を俯瞰するまとめ回となった最終回を公開します。ぜひお楽しみください!

本連載のもとになった同人誌の内容は、以下のURLから閲覧が可能です。(編集部)
https://sunpro.io/c89/pub/hakatashi/introduction

遂に、機械学習で石川啄木が帰り来れり

こんにちは。高橋光輝(HN:博多市)です。今回は連載「機械学習で石川啄木を蘇らせる」の最終回として、今までに生成した、「啄木の短歌」と「ダミーの短歌」の素性ベクトルをもとに、「啄木らしさ」を学習します。その後前々回作成した「最後の一首」候補の短歌を分類器にかけ、最も「啄木らしさ」の高い一首を、復元された「最後の一首」とします。
さて、前回までの作業で「啄木の短歌」と「ダミーの短歌」の素性ベクトルを抽出し、それぞれの短歌が持つ特徴を100次元のベクトルデータに変換することができました。このように入力データを正規化し形式を揃えることによって、機械学習にとって扱いやすいデータになります。今回は「啄木の短歌」と「ダミーの短歌」を正確に分類できる分類器を作成することによって、擬似的に「啄木らしさ」の学習を行っていきます。
以前お話したとおり、分類問題は機械学習の最も基本的なタスクです。機械学習の草創期から現在に至るまで非常に多くのモデルが提唱されてきました。この連載のもととなった記事では多項ナイーブベイズ分類器を用いて分類を行いましたが、今回の連載では線形サポートベクトルマシンを用いた分類器を使用することにしました。一般に機械学習においてどのようなタスクにどのような手法が向いているのかというのを理論的に示すのは難しく、パラメーターの調整次第でいくらでも性能が変化しうるというのが機械学習の難しい部分です。今回の場合も理論的にどうこうというよりは試行錯誤を重ねたうえでの選択となっていますので、このあたりの説明の足りない点はどうかご容赦ください。

SVMをこのごろ気になる

さて、サポートベクトルマシン、略してSVMというのは少しでも機械学習を齧ったことがある方なら一度は聞いたことのある名前でしょうが、あらためて軽く解説を行いたいと思います。
SVMはおそらく、数ある機械学習のモデルの中でも特に直感的に理解しやすいモデルです。図1のように、ベクトル空間上に分類したい2種類のデータが点在する状況を考えます。これらのデータを元に未知のデータに対して分類を行うには、ベクトル空間のどの部分がどの種類のデータの領域なのかを定める境界面、つまり識別面が必要になります。

図1:SVMによる識別面の設定
SVMはこの識別面を、それぞれのクラス中で最も識別面に近いデータまでの距離、つまりマージンが最大化されるように線を引きます。この識別面の具体的な引き方を計算するには線形代数の知識が必要であるためここでは省略しますが、通常のデータでは入力されたデータからこのような識別面の解を一意に求めることができます。これが線形サポートベクトルマシンにおける「学習」です。
こんな単純なモデルで本当に「啄木らしさ」が学習できるのかと疑問に思うかもしれません。実際、線形SVMによる分類は名前の通り線形であり、非線形な処理を含まないため単体では表現力に乏しいとされています。しかし、今回分類するデータは、word2vecとsentence2vecを用いてベクトルに落とし込む段階ですでに言語の意味論的な部分をベクトル空間上に抽象化していると考えられるでしょう。word2vecによる事前学習を行ったデータがSVMやK-meansなどの比較的単純な手法でも非常に高いスコアを上げることはword2vecを提唱した論文でも示されており、これが今回のケースにも当てはまります。つまり、単語からベクトル空間へのよく学習された写像関係においては、たかだか100程度の次元で言語が持つ複雑な意味論的モデルを十分に表現できるということであり、この点からもword2vecの優秀さを伺うことができます。

SVMにさはりてみるかな

さて、話は脱線しましたが、ここからは実際にSVMを用いて「啄木の短歌」と「ダミーの短歌」を分類する分類器の学習を行いましょう。今回はscikit-learnというライブラリを使用します。scikit-learnは、機械学習の様々なモデルや、機械学習をする上で便利なツールが1つのパッケージに実装したライブラリであり、多種多様な機械学習を手軽に試せるため、機械学習の定番的なライブラリとなっています。一方、速度などの点では他のライブラリにやや劣っていますが、今回は学習するデータ数が比較的少ないため問題にはならないでしょう。
scikit-learnをインストールするために、次のコマンドを打ち込んでください。

 

では、コードを書いていきます。いつも通り、Makefileの最初にリスト1のような行を加えてください。

そして、predict_takuboku_tanka.pyというファイルを作成し、次のように記述します。

ここで、分割交差検定と呼ばれる方法を用いてSVMの精度を測定しています。分類器の精度とはすなわち分類の正確さであり、既知のデータに対してどれだけ正確に分類を行えるかを計測することによって測定できますが、このとき学習に用いたデータを測定に使用しないよう注意が必要です。学習に用いたデータは学習機にとっても既知のデータであり、正確に分類を行えるのはある意味当然であるので、精度測定が不正確になるおそれがあります。そのため、通常はデータセットを学習用のデータとテスト用のデータに分割して使用するのですが、このときの分割の仕方によって精度測定に影響が出る可能性があるため、学習用のデータとテスト用のデータを互いに入れ替えながら何度も測定を行うことがあります。これが分割交差検定です。


図2:5分割交差検定の例

今回の測定では5分割の交差検定を行っています。つまり、入力データの5分の1をテストデータに使用する測定を5回行っているということです。この測定結果は環境や乱数によって多少変動するでしょうが、おおむね97~98%程度の数値が出ると思われます。これはこの連載の元となった記事での93.3%という精度と比較しても非常に高いスコアであり、「啄木の短歌」と「ダミーデータ」との違いがよく学習ができていることが期待されます。
プログラムではその後、あらためてすべての入力データを用いてSVMの学習を行い、本命の「最後の一首」の候補を分類するための分類器を学習します。そして、それが終わったら実際にこれまでの連載で作成してきた「最後の一首」候補の短歌のベクトルデータを分類器に入力し、「啄木の短歌らしさ」の数値を推定します。これによって最もスコアが高かったものが、復元された「啄木の最後の一首」ということになります。

大跨に椽側を歩けば……

長い道のりでしたが、ようやく復元結果の発表です。それではもったいぶらずに発表しましょう。機械学習の力を借りて現代に蘇った石川啄木の最後の一首、その内容はこちらに決定しました。

大跨に椽側を歩けば、
うしなひしをさなき心
寄する日ながし。

……いかがでしょうか? 実のところ生成時に関係するさまざまな環境や乱数によって生成される短歌が異なる可能性があるので、これが唯一の解答というわけではありません。読者の皆さんが試した結果はこれとは異なる可能性があります。それぞれにそれぞれの復元結果があるということです。
「啄木らしさ」が高いと判定された短歌がどのようなものか確認するために、スコアの高かった上位30件を順に見てみましょう。

 

全体としての印象は、「かなしき」「うしなひし」「むなしき」「痛く」「冷たし」といった陰的な形容が目立ちます。この点は非常に興味深いです。以前紹介した復元結果「大跨に椽側を歩けば、板軋む。/かへりけるかな――/道広くなりき。」では「椽側を歩く」という表現から「板軋む」「道広く」といった意味的な共起表現を拾っており、この点で以前の結果は優れていましたが、一方で詩的表現の手段としての言語をあまりにも字句的に捉えすぎているという指摘も受けました。今回の結果は前回よく見られたような「板」や「道」のような前半と関連する表現は見受けられませんが、代わりにこのような精神的な表現の傾向が陽に現れたことは、ある種前回の壁を乗り越えられたといえるのではないでしょうか。
また、「眼閉ぢ眼をとづ」や「軽くかろく眺むる」といった同じ単語の繰り返しのパターンが現れているのも興味深いです。三十一文字の中で同じ表現や単語を繰り返すのは特に前期啄木に見られる技法であり、「なみだなみだ/不思議なるかな/それをもて洗へば心戯けたくなれり」「はたらけど/はたらけど猶わが生活楽にならざり/ぢっと手を見る」といった歌にみることができます。この結果に出てきている用例はかなり露骨でありあまり高く評価はできませんが、もしかしたらこのような表現パターンを入力データから学習しているのかもしれません。
というわけで、今回の復元結果はこのようになりましたが、この結果は学習のパラメータや手法次第で大きく変わる可能性があります。読者の皆さんはぜひ、各種パラメーターを変更して、より望ましい結果が得られるように調整してみてください。たとえば、

・形態素解析に用いる辞書データの変更
・RNNLMやマルコフ連鎖で生成する短歌の数の変更
・マルコフ連鎖で用いるn-gram辞書のnの値の変更
・RNNLMに渡す各種パラメーター
・分類器のパラメーターの変更、もしくは探索※2

などは試してみる価値があると思います。

ひよつとした事が、思ひ出の種にまたなる

さて、こうして無事石川啄木の最後の一首を復元することができたので、おさらいをする意味も込めて本連載の流れをもう一度最初から振り返ってみましょう。


第1回(編:本誌 vol.38掲載)では、イントロダクションとして、本連載の中心人物である石川啄木の紹介、そして石川啄木の未完の「最後の一首」の解説を行いました。
第2回(vol.39)では「最後の一首」復元の第一歩として、青空文庫から原本となる啄木のテキストを取得し、短歌の部分を切り出してパースする処理を行いました。
第3回(vol.40)では、第2回でパースしたデータを形態素解析にかけ、短歌がどのような語句で構成されているのかを解析しました。
第4回(vol.41)では、第3回で形態素解析したデータを元にマルコフ連鎖を行い、文章としての繋がりを重視するプローチから「最後の一首」候補を作成しました。
第5回(vol.42)は第4回と並行する形で、今度はRNNLMを用いて「最後の一首」候補を作成しました。こちらはどちらかというと文脈を重視したアプローチになります。
第6回(vol.43)では、第4回と第5回で作成した「最後の一首」候補から、短歌の形式をとっているものをフィルタリングする処理を行いました。ここで単語列を文節に分けるテクニックを解説しました。
第7回(vol.44)では、短歌形式を取っている「最後の一首」候補を、word2vecとsentence2vecを用いて素性ベクトルに変換し、機械学習で扱いやすい形に変換しました。
第8回(vol.45)では機械学習による分類を行うための前準備として、「石川啄木らしくないデータ」、つまりダミーデータを生成する処理を行いました。また実装は行いませんでしたが、類似技術であるGANについても同時に解説を行いました。
そして第9回となる今回では、第8回で生成したダミーデータと啄木の短歌を正確に分類するSVMを学習し、それを用いて第7回で生成した啄木の「最後の一首」候補の「啄木らしさ」を推定し、もっとも「啄木らしさ」の高い一首を復元された「最後の一首」としました。

こうしてみると、「石川啄木の最後の一首を復元する」という一つのタスクに対して、様々な技術が複雑に関係していることがわかります。啄木の歌集の校訂者に端を発し、形態素解析器、マルコフ連鎖、RNNLM、word2vec、SVMと、どれも偉大な先人が築き上げてきた技術の集大成です。現代に生きる我々の使命は、折りに触れてなるべく広範な知識を身に着け、こうして巨人の肩の上に立ち、その上でどれだけ新しい価値を生み出せるかということに懸かっていると思って止みません。みなさんもこの連載記事を通じて、石川啄木や自然言語処理、さらに機械学習に興味を持って頂けると幸いです。
それでは、以上で連載「機械学習で石川啄木を蘇らせる」最終回とさせていただきます。9回の長い間お付き合いくださりありがとうございました。また機会があればどこかで会いましょう。

あなたにとっての技術が、物語のよき隣人でありますように。

 

本記事は、シェルスクリプトマガジンvol.38~vol.46に掲載された連載の最終回です。それぞれの技術の詳細については、該当のバックナンバーをご参照ください。(編集部)

ITエンジニアのサボりに強い味方現る!シェルスクリプト製ライフゲーム

投稿日:2017.04.18 | カテゴリー: 記事


written by シェルスクリプトマガジン編集部

(本記事はWeb版シェルスクリプトマガジン独自記事です)

USP研究所技術研究員 ナカムラ氏謹製の、シェルスクリプト製 ライフゲーム・シミュレータをご紹介します。
インストール・設定・操作・実行のすべてがターミナル画面上で完結するので、上司の目が厳しいエンジニアの皆さまも、いかにも「仕事中です」という顔をしながら暇つぶしに勤しめます。

ライフゲームとは

ライフゲームは、1970年にJohn Horton Conwayが発明したコンピュータ・ゲームです。
マス目(セル)のオンオフを生命(例えばシャーレ上に培養される微生物)に見立て、単純な規則により時間経過による生命の繁殖を表現します。
自分の周り八方のセルの密度が適度なら次のターンに培養される、過疎もしくは過密の場合は死滅します。

ルールは簡単ですが、初期状態からは想像もつかない形へと発展していく面白さがあります。。

例:代表的なパターン「グライダー」。 4世代ごとに縦横1マスずつ移動しながら元の形に戻ります。

→ 

 

ライフゲームのルール(引用元:「ライフゲイムの宇宙 新装版」ウィリアム・パウンドストーン著 有澤誠訳、日本評論社)

Wikipedia「ライフゲーム」などもご参照ください。

 

遊び方

インストール

コードはGitHub上に公開されています。

https://github.com/kaznak/ConwayGoL.sh

ターミナル画面上で $ git clone https://github.com/kaznak/ConwayGoL.sh.git とすることでインストールできます。

ConwayGOL.sh/ のディレクトリに移動し、初期化コマンド . rc を打ち込むことで準備が整います。

 

サンプルパターンを実行してみよう

ライフゲームの面白さは、初期のセル配置パターンからは想像もつかない発展をとげることです。

ConwayGoL.sh/example-pattern/ に、特定の動きをする代表的なパターンが収録されています。

まずはそれらのサンプルパターンを実行してみましょう。

例えばさきほど紹介した「グライダー」を見たいときは、 ConwayGoL.sh/ ディレクトリで以下のコマンドを実行します。

上司に見つかりそうになったら Ctrl-C を長押しすれば終了できます。

また、一世代ごとの移り変わりを確認したいときには、conwaygolコマンドにオプションをつけます。

conwaygolの後に続くオプションのうち、

最初の「2」は初期状態から2世代後まで(計3世代)を表示することを示します。

後ろの 10 10 は、セル全体の大きさの指定を示します。

 

自分で作ったパターンを実行してみよう

サンプルパターンを動かしてみたら、いよいよ自分で初期パターンを作り、実行してみましょう。

まずはテキストエディタを使って、ConwayGoL.sh/example-pattern/ に初期状態のファイルをつくってみましょう。

オンのセルはX(半角の大文字X)で、オフのセルは半角スペースで打ち込みます。

それではこいつを実行してみます。

題して、「ライフゲームで占うシェルマガの未来」。

(GIFファイルです)

実行当初からどんどん形が崩れていきます。あははは、これは愉快だ。

途中からは、文字の区切りの痕跡すら残っていません。

(GIFでは飛び飛びですが)約300世代後、ふたつのパターンを繰り返す定常状態になりました。

シェルマガがこれからどんどん広まり、vol.300近くまで続くというお告げでしょうか。素晴らしい。

 

おわりに

というわけで、USP研究所ナカムラ氏謹製 シェルスクリプト版ライフゲームのご紹介でした。

みなさまの、仕事してるフリをしながら適度にサボる、豊かなITエンジニア・ライフのお役に立てますと幸いです。

詳しい操作の仕方については、インストール後 readme もご参照ください。

 

シェルスクリプトマガジンは、明日すぐには役立たないけれども数年後の自分の血となり肉となる、ITエンジニアの教養満載でお届けしています。

データ分析、IoT、PM、ネットワークなど、新しい勉強を始める春にぴったり!最新号vol.47はこちらから!

 

「無意味な行動をとらせる力」を使え! 環境ITベンチャー ピリカのつくりかた

投稿日:2017.04.4 | カテゴリー: 記事

本記事は、シェルスクリプトマガジンvol.47掲載「技術者哲学 ピリカのつくりかた」のダイジェスト版です。

株式会社ピリカは、『科学技術の力であらゆる環境題を克服する』と謳い、ポイ捨ての解決をビジネスにしているITベンチャーです。
実際に彼らのゴミ拾いアプリ【ピリカ】を使ってみると……

 「ゴミが落ちてるぞ!」

「拾って写メを撮って…」

「ピリカに投稿だ」

「拾ったゴミはゴミ箱へ」

(数時間後)「お、【ありがとう】がたくさんついてる。いいことした気分!またゴミが拾いたくなってきた」

 

と、一見結びつきそうにない【IT】と【環境問題】と【ビジネス】が、たしかに融合していました。

この秘密を探るべく、編集部は開発元の株式会社ピリカを訪れました。

インタビューに応えてくれたのは代表の小嶌不二夫さんとCTOの高橋直也さん。起業に至った経緯、環境問題にIT技術ができる貢献、そして今後の展望を伺ってきました。
(聞き手・まとめ シェルスクリプトマガジン編集部)

 

ピリカができるまで

―今日はよろしくお願いします。まずは、小嶌さんが「IT技術で環境問題を解決するビジネス」を始めるに至った経緯を聞かせていただけますか。

小嶌:僕が環境問題に興味を持ったのは、小2のときに読んだ、ポプラ社の「地球の環境問題」シリーズがきっかけです。図書室の隅っこにあったこのシリーズに異常にハマって、同じ本を何度も借り直した記憶があります。その頃の僕は「大きな問題を解決する」ことに魅力を感じたのでしょう。もちろん、大人になってから勉強し直すと当時とは状況が変わっているわけですが、最初のきっかけはこのシリーズでした。

 

―環境問題の解決に取り組むうえで、起業という形をとったのは何故ですか?

小嶌:大学に入った頃は研究者を希望していました。でも、学部四年で研究室に配属になったら、二週間くらいで「これ、全然面白くないな」と思ってしまい、そこで研究者の道は諦めました。割り当てられた研究が合わなかったということもありますし、「研究者として」環境問題にアプローチするのは、自分の場合はちょっと違う、とも思い始めたからです。当時の僕の視点からは、研究とは「人生を賭けてひとつのテーマをひたすら深掘りする」ものに見えたのですが、そうすると、僕が小学生の頃読んだ本の「一冊分」は解けるかもしれないけれども、「残りの分」が解けないじゃないですか。

―たしかにそうですね。

小嶌:一方で、「お金」だったら全てのことに使えますよね。ひとつの事業で得たお金を他の分野に転用していくことができますから。そこで、学部四年で「研究面白くないぞ」と感じてからは、自分で事業を立ち上げるのか、それとも仕事を学ぶためにまずは企業に就職するのか、大学院でのモラトリアムの間に自分の道を決めることにしたんです。だから、大学院に入ってからは海外で働いてみたり、色々な国を旅してみたりしました。

―なんとなく大学院に進んでモラトリアムを過ごす、という人は多いですが、小嶌さんは環境問題にどう取り組むべきか見定めるために、モラトリアムを「積極的に取りにいった」わけですね。その結果「ゴミ問題」を選んだのは何故ですか?

小嶌:ひとつはお金の問題です。環境問題の範囲はとても広いわけですが、多くの問題は解決に莫大なお金がかかりますよね。浄化フィルターひとつ開発するのにも何千万円もかかってしまう。だから「安く始められること」が絶対条件だったんです。
一方で、安く始められたとしても「汚染を除去するフィルターの、この一部分だけを作りました」で終わっては悲しいですし、全体の問題の解決には到底達しません。そこで、「将来的には大きな広がりを持っているけど、入り口は小さい」テーマとして、ゴミ問題に取り組むことにしたわけです。

―なるほど。

小嶌:世界一周旅行をしていた当時、100くらいアイデアをメモ帳に書きためたんですが、結局「これだったらいけるかもしれない」と思えたアイデアは、その中の3つくらいを組み合わせた1つだけでした。
それは「Googleマップのような地図に、色々な環境問題の情報を載せ込む」ことです。
これまでにも、様々な自治体さんや団体さんが地域の問題解決をしようと努力されていますが、その中には、「『○○川を綺麗にしよう』という活動が盛んだが、実際にはその隣の川の方が汚い」のような状況が結構ありますよね。そういう状況に対して、位置情報付きで環境問題の見える化をすることで、環境問題を解決しようとしている人の行動を最適化したり、関わる人を増やしたりできるのではないかと思ったんです。

―最初のアイデアは「環境問題のマッピング」だったんですね。スマホにピリカをインストールすると、道端でゴミを見つけたときに自ずと拾いたくなってしまうので、よく出来た仕組みだと感心しています。この効果は狙って設計したんですか?

小嶌:まさに、世界の国を旅している間にそれと同じ体験をしたんです。iPhoneを持って旅に出たんですが、スマホの位置情報をオンにして写真を撮ると、現在地がマップにピン留めされるじゃないですか。アフリカの街にいるときに、ピンがもう世界を半周していることに気がついて、「おっ、これは面白いな」と思ったんです。なにか、色々な街を征服したみたいで。そこからは無意識に、新しい街についたら意味もなく、位置情報をオンにした状態で写真を撮るようになっていきました。部屋の隅とかでもとりあえず撮るんですよ、位置情報を刺したいから。

―「ピンを刺すこと」自体が目的になってしまったんですね。

小嶌:後から振り返ってみると、「なにこの無意味な写真」って思うわけですが、これって、要はゲーム性とか面白さによって人に「無意味な行動」をとらせているってことですよね。

―たしかにそうです!

小嶌:人にこういう無価値な行動をとらせられるなら、もしかしたら情報くらい送ってくれるかもしれないし、ゴミくらい拾ってくれるかもしれない。「位置情報付きで写真を撮ること」にそういう力があるのなら、これを使って面白いことができるかもしれないと思ったんです。

 

環境問題をビジネスにする

―大学院での経験をヒントにして始まったピリカですが、株式会社ピリカが現在展開されている事業を紹介していただけますか?

小嶌:現在はスマホアプリ「ピリカ」を使ったゴミ拾い支援事業と、画像認識システム「タカノメ」を使ったポイ捨て調査事業の二本立てです。ゴミ拾い事業の収益は、様々な企業さんからの広告・協賛と、ピリカの仕組みを使ってくださる地方自治体さんからのシステム利用料です。タカノメによる調査では、案件ごとに調査面積に比例した調査費用を頂き、得られたデータを基にした研究成果に対しても研究費用を頂いています。

―どんな組織がタカノメによる調査・研究のクライアントになるのですか?

小嶌:協賛企業でもあるJTさんを例に挙げて説明しましょう。タバコのポイ捨てはJTさんにとってもデメリットですよね。ポイ捨てがあまりに酷いとクレームが来たり、場合によっては自治体に喫煙所を作らせてもらえなくなったりしますから。ですから、喫煙所をどうデザインすれば地域のポイ捨てを抑制できるのか、喫煙者・非喫煙者双方にとって暮らしやすい町や制度を作れるか、ということを研究する動機がJTさんにはあるわけです。このケースでは、自治体・JT・ピリカで協定を結び、データと費用を頂いて調査を行っています。

―タカノメによる調査費用は調査面積に比例するとのことですが、どのようにサービスの価格を決めたのですか?

高橋:タカノメに関しては、面積に原価が比例するのでそこに値段つけたということですね。

小嶌:買い手のことを考えると、自ずと売り方が決まってくるという面もあります。環境問題のビジネスとしての特殊性は、直接的なお客さんであるゴミや大気、川や海からはお金をとれないことですよね。

―そうですね。

小嶌:だからその代わりに、問題を抱えている「人の問題」として売るしかない。「ポイ捨ての問題」では売れないので、見方を変えて「地域の美化」の問題として扱って自治体の地域美化の担当者さんに買ってもらう、河川の問題として切り分けて、喫煙所の問題として切り分けて……という発想に、どうしてもなります。そこで、ときには相手に尋ねながら「買ってくれる方法」を探すわけです。例えば自治体を相手にするなら、議会を回さずに使える予算はそれぞれの市区町村によって違いますから、それらに柔軟に対応でき、なおかつ予算に合わせて調査規模を拡大できるような売り方になります。

 

環境ベンチャーのエンジニア

―現在CTOとして開発を担当されている高橋さんは、どのような経緯でピリカにエンジニアとして参加されたのですか?

小嶌:システム開発の会社に就職した大学時代の友人に「ピリカを作っていく上でどうしてもエンジニアが必要なので、周りで一番優秀な人を紹介してもらえないか」と頼んだら、その場で電話をかけて、同僚だった高橋さんを紹介してもらったんです。

―え、そんな簡単に決まったんですか?

高橋:参加といっても、最初の3年間は週に2時間くらいでした。普段の仕事とは別のことに関わっていたいという希望はその前から持っていましたし、実際にピリカに関わる2時間がいい気分転換になって、普段の仕事でも楽しくいられたんです。ピリカをやっている間にも、もう一社並行でやっていたこともあります。ピリカにフルタイムで関わるようになったのは、私も東京に出て来てからですね。

小嶌:高橋が参加した当時は二人とも関西にいましたが、それからすぐ僕は東京に出て来ました。なので、遠隔でのやりとりの期間が長かったですね。現在でも、当時の高橋のように他の仕事をしながら関わってくださる方や、北海道やアメリカなど遠隔で関わってくれる方がいまして、30名近い方の力を借りて事業を行っています。

―アイデアを出す小嶌さんと、それをシステムで実現する高橋さんは、どういう関係で仕事を進めているのでしょうか?

高橋:自分が関わる部分については、割とやりたいようにやらせてもらっています。基本的に、作りたくないものを作ったことはないはずで、「何を作るか」を決める時点で自分の意見をある程度反映させています。

小嶌:例えばタカノメは、そもそものサービスの構想自体が高橋の発案です。私が持っていたのは「ゴミの種類と数を、安く、正確に、そして様々な場所で同じ基準を適用して調査したい」という方針だけでした。それを人力でやるにはお金もかかるし、限界もある。なによりも面倒な作業ですから、やる方が幸せになれないですよね。その解決のために「スマホで写真を撮って、画像解析でゴミを見つける」というシステムの大枠を考えたのは高橋なんですよ。

 

 

シェルスクリプトマガジンvol.47に掲載の本記事ロング・バージョンでは、科学技術・ITが環境問題にできる貢献について小嶌さんが考える「ピリカの基にある哲学」を、よりつっこんで伺っています。

 

 

ユニケージ開発手法 コードレビュー vol.36(本誌vol.47掲載)

投稿日:2017.03.31 | カテゴリー: 記事

著者:USP研究所技術研究員 岡田健

 今回は、シェルスクリプトのデバッグを行いたい時、処理の途中or一部だけに限定して実行出来る uspTukubai のコマンド「run」を紹介します。

本記事掲載のシェルスクリプトマガジンvol.47は以下リンク先でご購入できます。
USP研究所 通販サイトでは、個人用uspTukubaiのご購入も可能です。

 

香川大学SLPからお届け!(vol.47掲載)

投稿日:2017.03.28 | カテゴリー: 記事

著者:石井怜央(香川大学SLP)

 前回は、OSC広島の前日に行われた学生LT大会の様子を紹介し、その中で僕が発表した、サークルで開発を行ったメール管理システムについて触れました。
 今回はその開発で使用した、Sinatraやmail gemについて紹介し、それらを組み合わせて簡単なWebアプリケーションを作成したいと思います。

記事本文掲載のシェルスクリプトマガジンvol.47は以下リンク先でご購入できます。

40歳から始める、オレとRubyプログラミング(vol.47掲載)

投稿日:2017.03.24 | カテゴリー: 記事

著者:しょっさん

 最近、自宅で二酸化炭素濃度をはかるようになりました。 予想していた以上に、家の中の空気が汚染されていることがわかって、衝撃を受けています。部屋が暖かいから眠くなるんだなー…なんて考えていましたが、暖かいんじゃなくて二酸化濃度が高いからという可能性が高いです。
 二酸化炭素濃度を下げるには、換気をすることが基本ですが、この濃度を下げてからというもの、家での活動がとてもスムーズになり眠くなることが減りました。
 なんでこんなことしてるのかって? もちろん、クリアーな頭の状態でプログラミングするため。さぁ今月も頑張っていきましょう!

記事本文掲載のシェルスクリプトマガジンvol.47は以下リンク先でご購入できます。

リスト6-a、6-bは本来ひとつのコードですが、本Webサイトの文法に抵触するため分割して掲載します。

バーティカルバーの極意 第一回 (vol.47掲載)

投稿日:2017.03.24 | カテゴリー: 記事

著者:中央大学 教授 飯尾淳

 この連載では、バーティカルバー、あるいは、縦棒で表される記号(|)や縦棒そのものを中心として、話題を展開しようと試みます。毎回、どんなバーティカルバーが現れるか、楽しみにしていてください。…といいつつ、第1回めの今回は、皆さんおなじみ、Unixにおけるパイプ(|)を扱います。ベタでどうもすみません。

記事本文掲載のシェルスクリプトマガジンvol.47は以下リンク先でご購入できます。

無料無線公衆LANスポットのCSVファイル URL
http://www.data.go.jp/data/dataset/mlit_20160325_0037

逆に、Tukubaiコマンドをシェルスクリプトで実装してみる 前編 (vol.47掲載)

投稿日:2017.03.24 | カテゴリー: 記事

著者:今泉光之 (Twitter: @bsdhack)

 

1 usp Tukubai とは?

usp Tukubai は ユニバーサル・シェル・プログラミング研究所が開発・提供している一連のコマンド群で、商用製品として様々な分野の数多くのプロダクトとして利用されているソフトウェア製品です。
usp Tukubai はコマンド群として提供されており、通常の UNIX コマンドの様に複数のコマンドを繋ぎ合わせて使うことでシステムを構築することができます。
usp Tukubai で提供されるコマンドを使いこなすと、端末だけで集計処理ができたり、ファイルだけでDBを組んだり、ウェブシステムを組んだりと、シェルあるいはシェルスクリプトでできることが飛躍的に増えます。
特に製品版として開発されている usp Tukubaiはソースコードのレベルからチューニングされているので、非常に高速に動作するので大規模なエンタープライズシステムでの使用にも十分に対応できる性能となっています。

2  ユニケージ開発手法とは?

ユニケージ開発手法はユニバーサル・シェル・プログラミング研究所によって開発された、短期間低コストで企業システムを構築するための開発手法です。
小さなコマンドを組み合わせて問題を解決することを目的とした開発手法やコマンドに関する研究開発に取り組んでいるユニバーサル・シェル・プログラミング研究所が、そうした研究開発の成果をまとめた開発手法がユニケージ開発手法です。
本稿で扱う usp Tukubai はユニケージ開発手法を実践するための手段として開発されたコマンド群です。
ユニケージ開発手法に基づいて usp Tukubai コマンドを利用することで、数十行のプログラムでアプリケーションを記述できたり、データベースを使わずにテキストファイルのみでデータ処理が可能となります。実際にユニケージ開発手法に基づくシステム開発は小売業を中心に基幹業務システム、情報分析システム、データバッチ処理、高速検索システム、勘定系システムなど様々な分野で活用されていて、特にシステムの内製化を進める企業において採用されています。

3 Personal Tukubai とは

usp Tukubaiを試用目的で利用できるようにしたバージョンで、商用利用はできません。
Windows、Linux、OS Xでそれぞれ動作するので usp Tukubai による業務システムの開発を実際に体験できます。
期間限定のライセンスで、ダウンロードした月から 6ヶ月後の月末まで使用可能となっているので、十分に usp Tukubai の機能を調べることができると思います。

4 Open usp Tukubai とは

usp Tukubai コマンドのうち、利用頻度の高いコマンドを厳選して Python により実装しなおし、MIT ライセンスの下でオープンソースソフトウェアとして提供されているのが Open usp Tukubaiです。
製品版の usp Tukubai と比較すると一部実装されていないコマンドがあったり、性能にある程度の差は出てしまいますが、それでも usp Tukubai の便利な機能を知るためには十分に有用だと思います。
本稿では、Open usp Tukubai についての解説となります。

Tukubai 各コマンドの機能の紹介と簡単な解説

1 Open usp Tukubai のインストール方法

Open usp Tukubai は Python により実装されているので Python が動作する環境であればインストール可能です。
公式の配布サイトからソースを取得して展開し make install するだけで Open usp Tukubai は利用可能となります。
OS X 11.6 (OS X El Capitan) では以下のコマンドでインストールできます。
$ curl ‘https://uec.usp-lab.com/TUKUBAI/DOWNLOAD/open-usp-tukubai-2014061402.tar.bz2’ -o open-usp-tukubai-2014061402.tar.bz2 $ tar zf open-usp-tukubai-2014061402.tar.bz2 $ cd open-usp-tukubai-2014061402 $ sudo make install

2 Open usp Tukubai コマンドの解説

ここでは Open usp Tukubai のコマンドを解説します。
ただし以下のように Open usp Tukubai だけでも 55 コマンドも提供されており、その全てを解説するのは無理なので、
特に有用で興味深いコマンドを厳選して紹介します。

また、シェルスクリプトマガジンに掲載の記事なので、シェルスクリプトで Open usp Tukubai コマンドを実装してみたいと思います。今回は、calclock、comma、getlast、ketaの4つのコマンドを紹介し、シェルスクリプトでの再現を試みます。
但し今回は紙面と時間の都合で一部の機能やオプションなど実装できていない部分も多いです。
また、動作の把握とメイン処理の実装のみに絞ったので、エラー処理などはまったく実施していません。
そのために実際の業務などには殆ど利用できない実験的なスクリプトとなっています。

calclock

1 calclock とは

オンラインコマンドマニュアルはこちら

入力データ(ファイルや標準入力)の指定されたフィールドのデータを Epoch *1からの秒数に変換してフィールドの隣に出力します。
ファイル名に – が指定された場合は一般的な UNIX の流儀にのっとり標準入力を入力として利用します。
入力データは年月日(yyyymmdd形式)、時間(HHMMSS形式)、年月日時間(yyyymmddHHMMSS)を自動で検出します。
例えば以下の様なフォーマットのシステムへの接続ログから接続時間を取得する処理などを簡単に作ることができます。

*1 Epoch とは UNIX で一般的に利用されている時刻表現で、協定世界時(UTC)での1970年1月1日午前0時0分0秒の時刻からの形式的な経過秒数です。

calclock 唯一のオプションは -r で、これを指定すると入力データは Epoch からの秒数として解釈され出力は年月日時間(yyyymmddHHMMSS)となります。

2 calclockを作ってみよう

シェル組み込みのコマンドと date(1) を駆使して、何とか似た機能は実現できました。
引数で指定されたフィールドを変数 fields に格納しておき、read(1) で入力した行データ毎に fields に格納されたフィールドから date(1) で秒数を取得し、取得できた秒を変数 v数字 (数字はフィールド番号) に格納しています。指定された全フィールドの処理が終わると、入力データと取得した秒数を出力します。入力データの指定されたフィールド形式などのチェックしていないので、入力データに不正な値があると正しく動作しません。また、今回は -r オプションに関して実装しておらず、入力データも標準入力のみとなっています。

comma

1 comma とは

オンラインコマンドマニュアルはこちら

入力データ(ファイルや標準入力)の指定されたフィールドのデータを「カンマ区切り」にします。帳票データなどの最終的な出力に適用すると、金額などの可読性が向上します。
指定したフィールドに数字以外のデータが入力された場合はエラーとなります。

+hオプションはヘッダ行をスキップするための指定で、指定された行(デフォルトは1行)をヘッダ行としてスキップします。

d オプションは引数で指定した文字列をカンマ区切りにします。

-4 オプションは 4 桁区切りにします。

2 commaを作ってみよう

メインのロジックは awk(1) を利用することで何とか実装できました。
awk(1) の substr 関数を利用して文字列の後ろから指定された桁数で文字列を切り出し、切り出した文字列の先頭に , を付けることでカンマ区切りを実現しています。
今回は -d オプションに関して実装しておらず、入力データも標準入力のみとなっています。また Open usp Tukubai の comma では桁区切りするフィールドのデータをチェックしていて、データが数字以外の場合はエラーメッセージを出力していますが、こちらのスクリプトではその様なエラー処理をしていません。
ちなみに 3 桁区切りだけでよければ printf(1) の %’ を利用することでも殆どの場合実現可能ですが、printf(1) の %’ は現時点では非標準なので全ての環境で利用できる保証はなく、また、区切りを 4桁にする機能は対応していないので、独自に実装する必要があります。

getlast

1  getlastとは

オンラインコマンドマニュアルはこちら

入力データ(ファイルや標準出力)の指定されたフィールドの値が最後に出現した行を出力します。

同一のフィールドを指定することで単一のキーフィールドの指定も可能です。
以下の例だと第1フィールドの値のみで抽出しています。

+ng オプションは同じ値を持つ最後の行以外を出力します。

2 getlastを作ってみよう

メインのロジックは awk(1) のハッシュ (連想配列) を利用することで実装しました。
指定されたフィールドの値をそのまま連結してハッシュのキーとして利用することで、最新の行内容がハッシュに格納されます。
awk(1) の仕様としてハッシュの順番はランダムになりますので、
順番を維持するためにハッシュに格納する行データに行番号を付与して、出力したデータを sort(1) を利用して行番号でソートして正しい順番に並べ替えた後で、cut(1) で追加した行番号を削除して出力しています。
メインのロジックは awk(1) の機能をそのまま利用することで実現できたので、今回実装したコマンドの中では一番短く単純なスクリプトになっています。
+ng オプションは実装していません。

keta

1 keta とは

オンラインコマンドマニュアルはこちら

入力データ(ファイルや標準出力)の指定されたフィールドの桁数を揃えて、右詰で出力します。
表示するための最大幅は自動で計算されます。

— オプションは左詰で出力されます。

フィールド毎に出力する桁数を数字で指定することができ、指定する数字に – を付けることで左詰を指定することもできます。
出力する桁数は半角文字の表示幅を 1 としているので全角文字の場合は 1 文字を 2 とする必要があります。

2  ketaを作ってみよう

基本的な機能は全て awk(1) の組み込み関数で実装しました。
入力データは行番号とフィールド番号をキーとしたハッシュ dataに格納し、同時にフィールドの文字列長の最大値を別のハッシュ max に格納しています。
出力は、 awk(1) に組み込みの printf の %*s 指示子を利用することで出力幅を指定しています。

マルチバイトの文字列には対応していないので、入力データにマルチバイト文字があると正しく出力できません。
非英語圏でマルチバイト文字が正しく扱えないことは致命的ですので、業務には利用できません。

UTF-8 では、マルチバイト文字は多くの場合 3 バイトかそれ以上のバイト数を必要としていますが、OS X 標準の awk(1) の lengthコマンドは文字列のバイト数を取得しますので、例えば length(“あ”) は 3 となります。
Linux で標準的に利用されている GNU awk の場合はマルチバイト文字に対応していますので、マルチバイト文字を含む文字列の長さは正しい文字数を取得することができ、length(“あ”) は 1 となります。
しかしマルチバイト文字は 2 バイト相当の表示幅となりますので、どちらの場合でもマルチバイト文字を含む文字列の長さと表示幅は合致しません。
そのためにマルチバイト文字を含む文字列を表示する幅を正しく制御するのは非常に困難となります。

-v オプションは実装していません。

5/25発売のシェルマガvol.48では、さらなるTukubaiコマンドに挑みます
Web版シェルマガにも公開しますので、どうぞお楽しみに!

本記事掲載のシェルスクリプトマガジンvol.47は以下リンク先でご購入できます。
USP研究所 通販サイトでは、個人用uspTukubaiのご購入も可能です。

漢のUNIX 静的ライブラリをつくってみよう (vol.47掲載)

投稿日:2017.03.24 | カテゴリー: 記事

著者:後藤大地

 前回の記事では、実装を複数の.c ファイルに分けて作成し、それらをコンパイルして.o ファイルに変更し、その.o ファイルを組み合わせてバイナリファイルを生成することを説明した。
 .o ファイルはバイナリファイルのパーツのようになっており、これらを組み上げることで実装に動作するバイナリファイルを作ることができる。

記事本文掲載のシェルスクリプトマガジンvol.47は以下リンク先でご購入できます。

新しい記事一覧へ戻る

  • カテゴリー 記事 のアーカイブを表示しています。

  • -->