新規にWEBサイトを開設した時、
「まず何をやればいいか?」に悩むことはありませんか?

今は広告戦略が本当に充実しています。

SEO、リスティング(検索連動型広告)、バナー広告、インタレストマッチ、、、、

いったい、何から手を付け、それにどれぐらいのパワー(コスト)を
注げばいいのか・・・?

今日は、WEBサイトの成長戦略(プロダクトライフサイクル)について
少し考えてみます。

※今までの流れから大きく変わっていますが、エンジニア卒業しちゃったのでw

とはいえ、WEBサイトには多種多様なパターンが存在します。
更に、ビジネスモデルやUIによっても打ち手が細分化できます。

なので、今回は、「どんなサイトにどんな打ち手が適しているか?」
に焦点をあてて考えてみることにしました。


■情報サイト

様々な情報を掲載しているサイトです。Wikipediaなどが代表例ですね。
収益モデルとしては、広告収入が大きいでしょう。

さて、そんなサイトにいきなりリスティングを使用してみるとどうなるか。
それは火を見るより明らかです。

リスティングはCPC(クリック単価)とCVR(コンバージョン率)を掛け合わせたコストよりも
1回のコンバージョンで得られるコストが上回る際に最適な広告手法です。

情報サイトはコンバージョンに直結させる広告ではなく、
まず時間をかけてサイトを盛り上げる必要があります。

というわけで、最適なのはSEO。

もしくは、そのサイト自体をブランドとしてしっかり認知させたいのであれば、
バナー広告で一度ブランド認知させるのも大きな効果があるでしょう。

ブランドが認知され、検索エンジンでも指名検索が増えれば、
SEOの順位も自然に上がりやすくなります。

また、情報サイトは据え置き型になりがちで、
更新性が無くなってしまうという状態によく陥ります。

サイトが更新されなければ、クローラーも巡回してくれません。

CGMを導入するなど、更新性やオリジナルのテキストは
常に意識してサイト設計をしましょう。


■通販サイト

これは単純ですね。

掲載された商品が売上に直結するのですから、
リスティングが最適な手段です。

ただ、上述の通り、しっかりコストを回収できる設計をしましょう。

リスティングはやれば良いというわけではなく、
一番大事なのは運用フェーズですから。



さて、ここで書いたのはほんの一例ですが、
要はどのサイトにも一様に同じ広告手法が使えるわけではない
ということをしっかり認識してサイトの成長戦略を描いてほしいということです。

リスティングやバナーで盛り上げ、SEOで安定させる。
そんな方法も良いですね。

まずは自身のサイトがどういう収益モデルで、
どのフェーズでどんな広告がどれだけのパフォーマンスを発揮するか。

一度見直すと効率の良い集客が出来るかもしれませんよ。
例えば複数行からなるファイルから、
重複する行を統一したいという場合、
どのような手法を使っていますか?

array_search()関数を利用して、
このようなプログラムを組む人はいるでしょうか。


<?php

$filename = "list.csv"; // 1列のみからなるCSVとする

$chkary = array(); // 重複チェック用の配列

$fp = fopen($filename, "r");
while(!feof($fp)){
$data = trim(fgets($fp));
if(array_search($data, $chkary)){
// 重複あり
continue;
}else{
// 重複なし
$chkary[] = $data; // 重複チェック用配列に保存
echo $data . "\n"; // 出力(なんらかの処理)
}
}

?>


ファイルの行が100や1000程度であれば
このプログラムで十分かもしれません。

しかし、ファイルが1,000,000行あったらどうでしょう。
恐らく、プログラムが終わらないことにイライラすると思います。

なぜかというと、PHPのarray_○○系の関数は、
関数が呼び出される度に都度配列の全ての要素を
チェックしているからです。

では、どのようなプログラムを組めば、
大量の配列を扱うのに最適になるかというと。。。


<?php

$filename = "list.csv"; // 1列のみからなるCSVとする

$chkary = array(); // 重複チェック用の配列

$fp = fopen($filename, "r");
while(!feof($fp)){
$data = trim(fgets($fp));
if($chkary[$data] == 1){
// 重複あり
continue;
}else{
// 重複なし
$chkary[$data] = 1; // 重複チェック用配列に保存
echo $data . "\n"; // 出力(なんらかの処理)
}
}

?>


これだけ。

変わったのは、データを配列の値ではなく、
配列のキーとして扱うところです。

2つのプログラムの差はほとんどありませんが、
実際にファイルを作ってプログラムを動かしてみてください。

速度の差は歴然です。
前回の超初心者向け参考書 に続き、
それを読み終えたけどまだ物足りない人向けです。

iPhoneプログラミングUIKit詳解リファレンス/所 友太
¥3,990
Amazon.co.jp

これはかなりの良書。

UIKitが全て網羅されており、
本の中ではサンプルコードは触り程度ですが、
ホームページからDLできるようになっています。

ただ唯一の要望としては、Interface Builderを使用した
サンプルにしてほしかったというところ。

やはりほとんどの参考書でInterface Builderが使われているので、
ここだけは揃えてもらいたかった。。。

でも逆に言うと、Interface Builderを使わなくても
UIを配置できる練習にもなります。

これは正直手放せない一冊。

是非買ってください。