November 13, 2007

Python入門:urllibとurlencode

By kalebdf
「変換変換・・・」


GETリクエストの際に、URLとリクエストパラメータを結合する方法と、ダブルバイト文字(日本語とか)をリクエストに載るようにエンコードする方法。

たとえば、Googleで「ほげ」を検索すると、次のようなGETリクエストが生成されるとする。(ちょっとリクエストを省略)

http://www.google.co.jp/search?q=%E3%81%BB%E3%81%92&lr=lang_ja

'http://www.google.co.jp/search'に'?'を付けて、2つのリクエストパラメータを結合している。コレをPythonで作り出す。

import urllib
url = 'http://www.google.co.jp/search?'
keyword = u'ほげ'
lang = 'lang_ja'
encoding = 'utf-8'
query = {'q': keyword.encode(encodeing),
'lr': lang
} #辞書型オブジェクト
print url + urllib.urlencode(query)

◆ urlopen(url[,data[,proxies]])



urlにはそのまま、URLを渡す。

POSTリクエストであれば、dataに辞書型オブジェクトを渡す。

Proxyでのアクセスであれば、オプション引数proxiesにProxyについて辞書型オブジェクトを代入します。



◆ urlencode(query[,doseq])

queryには辞書型のオブジェクトが入り、'key=value'の形で渡される。

◆ 参考URL


November 12, 2007

GETとPOSTの基本理解

By addedentry






HTTPにおけるGETとPOSTの話。



◆ GETメソッド

URLの末尾に'?'で連結する、複数のリクエストパラメータ。複数ある場合は各パラメータと'&'で連結する。URLとリクエストパラメータを足し合わせて、ひとつのリクエストとするもの。

(例)
http://www.google.co.jp/search?q=%E3%81%BB%E3%81%92&lr=lang_ja
赤文字:URL
青文字:リクエストパラメータ
黒文字:接続文字('?','&')


◆ POSTメソッド

いわゆる"入力フォーム"を使ってサーバに情報を送信する。掲示板が一番いい例。
ブラウザのアドレス欄やリクエストパラメータに情報が入らないので、パスワードなどの秘匿性の高い情報を送信する場合には、POSTでなければセキュリティを保つことが出来ない。


◆ 参考URL

リクエストパラメータ



  generated by feedpath Rabbit

November 11, 2007

Python関連で気になったもの

By Extra Ketchup
「オライリーは好きな方」




◆ Python Workshop the Edge 2007

当日の発表資料や、ギークの書いたサンプルコードが公開されている。

◆ PythonでWeather Hacks@livedoor.com(その1,その2)

Web APIを扱う上で使いやすい例の物を、Pythonで導入してみるサンプル。

◆ はてブ



feedpath Rabbit Tags:   generated by feedpath Rabbit

Ruby入門:Web APIを使ってXMLを取得する










ほげおがそもそもRubyを勉強し始めたのは、最近流行の"Web API"や"マッシュアップ"によるウェブサイト構築を、Ruby on Railsのフレームワークを利用してやってみたい!というのが最初の動機。

地道にRubyの文法を覚え始めてきたので、そろそろウェブのリソースと連携してみようと思います。今回はそのよくあるサンプル例。











基本的にやりたいことは、今のレベルではこんなこと。


  1. ウェブサーバにリクエストを送って、何かしらの応答を取得する
  2. Web APIを叩いて、サーバから何かしらの応答を取得する
  3. サーバからXML形式で応答を取得し、そのデータを利用する


まずはサーバとお話ができなければならないので、基本的なコミュニケーションをとってみる。サンプルは下記のとおり。
環境によっては違ってくると思うけど、ほげおが利用しているロリポップでは下記のサンプルコードで動作します。





<サンプル>

#!/usr/local/bin/ruby -Ks

require 'rexml/document'
require 'open-uri'
require 'nkf'

print "Content-Type: text/html\r\n\r\n"

url = 'http://weather.livedoor.com'
path = '/forecast/webservice/rest/v1?city=70&day=tomorrow'
result = open(url + path)

doc = REXML::Document.new(result)

doc.elements.each ('lwws/') do |element|
puts NKF.nkf("-Ws", element.elements['title'].text)
end






このサンプルだけ見て「なるほど、わかったぞ!」と思ってくれる方にはこれ以上説明はいりませんが、詳しい説明が必要な人はこのまま下へ読み続けてください。












result = open(url)


open-uriのライブラリによって、openメソッドでURLを指定して、データを取得しています。
livedoor天気情報のWeb ApiによってXMLデータをリクエストする際のURLを、url変数とpath変数に分けて代入してあります。openメソッドに直接URLを指定してももちろんOKです。(ここでは可読性を考慮して横幅がスッキリするようにしているだけです。^^;)
これによってresult変数にXMLデータを入れることができます。



doc = REXML::Document.new(result)


rexml/documentのライブラリによって、XML形式のデータをXMLであると認識させた上で、doc変数に入れています。
これをしないと、XML形式に見えるただの文字データのままらしいですね。



doc.elements.each ('lwws/') do |element|
  puts NKF.nkf("-Ws", element.elements['title'].text)
end


rexml/documentのライブラリによってlwws階層のtitleエレメントを、nkfライブラリによってUTF-8に変換して、putsで出力しています。
「階層って何?」「エレメントて何?」となった人は、url変数に代入したURLをブラウザでリクエストしてみましょう。

http://weather.livedoor.com/forecast/webservice/rest/v1?city=70&day=tomorrow





そして最終的にlivedoor天気情報のサイトから、Web APIを叩いて取得したXMLデータから、任意の情報を取得/利用できるようになります。
サンプルで取得したデータは、下記のものになります。


神奈川県 横浜 - 明日の天気







ここまでなんとかこれたら、大きな階段を登ってきていると思います。



November 9, 2007

Ubuntuでapt-getをProxy経由で

By David Reeves



タイトルの通り、Ubuntuでapt-getをProxy経由で利用するときのメモ。



sudo vim /etc/apt/apt.conf

###新規作成
Acquire {
http::proxy "http://IPアドレス:ポート番号/"
}

Python入門:Proxy経由のウェブアクセス

By seanfraga
「どうやって行けばいいの?」


Pythonではまっているのが、ウェブリソースへのアクセス。
社内の開発環境で試したいのだが、ウェブへはProxy経由でなければならない社内事情により、常にProxyを意識しなければならない面倒さ加減。

別に、コンテンツフィルタリングもログ監視/解析もしてないのだから、PATでアクセスさせてもらいたいなぁ。

参考サイト:URLによる任意のリソースアクセス

% python
>>> proxies = proxies={'http': 'http://Proxyアドレス:ポート'}
>>> filehandle = urllib.urlopen('対象サイト', proxies=proxies)
>>> data = filehandle.read()
>>> print filehandle

November 8, 2007

Python入門:Proxy経由でHTTPリクエスト


「HTTPリクエストの作法を学びましょう」



Pythonでウェブコンテンツへアクセスするための第一歩。

% python
>>> import urllib
>>> url = 'http://www.google.com'
>>> filehandle = urllib.urlopen(url)
>>> data = filehandle.read()
>>> print data

Proxy経由でアクセスするための第一歩。

% python
>>> import urllib
>>> proxies = proxies={'http': 'http://192.168.0.1:8080'}
>>> url = 'http://www.google.com'

>>> filehandle = urllib.urlopen(url, proxies=proxies)
>>> data = filehandle.read()
>>> print data



November 1, 2007

Python入門:経過日数を計算するサンプルコード


「僕にはlambdaがよくわからないよっ」
「野球の素振りのように、ドンドン振っていこう」



たとえば、誕生日から10000日目が経過する日にちはいつだろうか。
そんな時には下のようにコードを書いてみよう。


from datetime import *
def func(n):
  return lambda d: d + timedelta(days=n)
f = func(10000)
n = date(1990, 1, 1)
print f(n)




10000とか1990,1,1とかはお好みで。
lambdaは無名関数を作るときのキーワード、
初めて見た人にとっては、ちょっとクセがありそう。

lambdaをもっと簡単に書くと下のように書ける。
自分なりに色々試して身につけたい。

x = lambda y: 10 * y + 1
print x(3)   #==>31

October 31, 2007

学習を始める前に・・・





勉強するときはいつでも、勉強をし始める前には勉強する準備が必要です。学校のように「コレの何ページから何ページまで記憶することが、すれ即ち勉強だ!」という事でない限り、色々な準備が必要です。


  • 勉強に向かうためのモチベーションの種を明確にする
受験を控えている学生は、「志望校に合格しなければ!」という雰囲気の中で勉強に取り組みます。周りが「勉強せねば」と燃えているので、釣られて燃えます(中には燃えなかった人もいますが。私のように・・・)。

勉強は時につまらない作業です。でもその先に欲するものがあるからこそ勉強をしようと思います。そのために勉強したい!と思えるものを明確にしましょう。

勉強する前に、勉強が退屈になった時に、その事を思い出して自分を奮い立たせましょう。

  • 良い学習リソースを取り揃える
参考書なり、ウェブドキュメントなり、コーチなりを探しましょう。

参考書はAmazonで評判を確かめつつ、本屋で立ち読みして自分に合うかどうか、必要としているものかどうかを確かめる必要があります。
ウェブドキュメントは常にアンテナを張って探しましょう。時には英文書を読まなければなりませんが、その方がクオリティの高いものがあることも多いです。
また、困った時に助けてくれる人と、信頼関係を気づきましょう。時にはモチベーションを引き上げてくれるコーチにもなってくれるかもしれません。

  • 学習プロセスを洗い出す
始めること
知ること
試すこと
修正すること
続けること
達成するポイントを決めること
達成した時の喜び、楽しみを得ること
・・・

ただ闇雲にやり始めても身になりませんが、最初の段階はまずは始めることと続けることが大事です。

スポーツと同じく、まずは始めてみよということです。






  generated by feedpath Rabbit

October 4, 2007

Cygwinの日本語設定










ひさびさにCygwinをインストールしたので、例のごとく日本語表示設定が必要なのでメモ。

1./etc/inputrcを作成

set kanji-code sjis
set convert-meta off
set meta-flag on
set output-meta on

2./etc/profileに追記

export LANG=ja_JP.SJIS
export TZ=JST-9
export JLESSCHARSET=japanese-sjis
alias ls='ls --show-control-chars'


3.おまけで、bashのプロンプトを/etc/profile内でPS1を編集

Shell dependent settingsのcase分のbash分岐のPS1を趣味に合わせて編集
PS1="\t$"



July 31, 2007

Ruby入門:ざっくりと学習











プログラミングを勉強するには、他人のコードを見て学ぶのが手っ取り早い。その際には、基本的な構文や概念は知っていないと、どうしようもないけどね。




その参考になるウェブサイトを紹介。




RubyでCGIを作ろう

10分でできる初めてのRubyプログラム

Ruby入門

Ruby入門:ざっくりと学習











プログラミングを勉強するには、他人のコードを見て学ぶのが手っ取り早い。その際には、基本的な構文や概念は知っていないと、どうしようもないけどね。




その参考になるウェブサイトを紹介。




RubyでCGIを作ろう

10分でできる初めてのRubyプログラム

Ruby入門

July 19, 2007

CygwinのEmacsがC-xC-cで終了できない










cmd(コマンドプロンプト)で起動したCygwinのEmacsが、タイトルの通りC-xC-cで終了できないワナ。なんでだろ。

とりあえず下記のようにしたら何とか終了できる。


alias emacs='CYGWIN=tty emacs'


ただし、Emcasを終了したらresetコマンドを実行しなければならない。深く掘り下げてないのでなぜかわからないけど、TTYがそういうものなのだろうと。

さっそく.bash_profileに追記して終了。


あ、Emacsの終了シグナルをtrapでキャッチして、resetを実行することはできないだろうか?と閃いた。




(参考)
http://discypus.jp/wiki/?Cygwin%2F%A5%E1%A5%E2#content_1_6

July 17, 2007

UbuntuにLAMP環境をインストールする、とてもシンプルな方法










ソーシャルブックマークをRSSリーダーで斜め読みしていたら、趣味にマッチングしたエントリーを発見したので、ブログにメモ。

Installing LAMP On Ubuntu For Newbies





基本的に以下の3ステップをそれぞれのソフトウェアに対して、順番に実行している手順を解説している。


  • apt-getでインストール
  • 最低限のconfiguration
  • 動作確認


手っ取り早く環境が欲しい人向け。

ただ、このHowto forgeというウェブサイトが興味深い。UNIX/Linux関係のHowto系の文書を取りまとめていて、初心者向けにはとりあえずもってこいなサイト。
英語だけどね。:-1






July 9, 2007

Rubyに挑戦:Proxy環境でgemの罠










会社の開発環境はweb proxyをかむ環境。ブラウザのproxyの利用はシームレスにいくんだけど、コマンドラインプログラムのproxy利用は、利用のたびに引っかかる。ちなみにこの環境のOSはWindows XP。

Rubyのインストールは、RubyインタプリタとGemはセットになって下記からget

RubyForge

Gemを使ってRailsもインストールしたいのだが、ここでコマンドラインからGemを起動してRailsをインストールする際に、上記のような面倒なことが起こる。

結局は以下の通りに。



> set http_proxy=http://proxy_host:port
> gem install rails -y


ウェブサイトを検索すると、下記のような方法がよく見つかるけど、自分の環境では中途半端なエラーが出て上手くいかなかった。



> gem install rails -y -p http://proxy_host:port





June 20, 2007

Rubyに挑戦!










僕がパソコンを初めて買った時の理由は、当時学校で学んでいたC言語のプログラミングをするわけではなく、ウェブサイトを作りたかったからだった。

当時勉強していたC言語は、コマンドプロンプトとの対話に終始して面白くなかった。ウィンドウを作るコードも難しすぎて面白くなかった。
それに対してウェブサイト作成は、一種の洋服やアクセサリーを身につけるスタイリッシュさや、ウェブ上での情報発信がやりたかった自己表現の手段に気づかせてくれた。ような気がした。





それから、IPネットワーキング、UNIXシステム構築、情報セキュリティ対策、人材育成と色々やることの遍歴を重ねてきたけど、Web2.0に代表される最近のウェブの可能性の進化に感化され、ウェブプログラミングをまたやりたいと思い始めていました。

そこでめぐり合ったのがRuby on Rails。まあその前にもPerlにもPHPにも出会ったわけだけど、ウェブ開発の環境としてとても魅力的だった。





やってやるぜ!Ruby on Rails!!
ということで、会社の開発環境(CentOS)での備忘録をメモ。





1.Rubyのインタプリタをインストール。yumでサクッと。erubyも。
yum install ruby eruby


2.Apacheのapxsが必要なのでインストール。httpdが無いならhttpdもインストールしておく。
yum install httpd-devel


3.mod_rubyとeRubyのインストール
"http://www.modruby.net/ja/"からmod_rubyアーカイブをダウンロード。
下記コマンドでインストール、先ほどのapxsのpathを指定して、
モジュールを動的に組み込めるようにする。
./configure.rb --with-apxs=`which /usr/sbin/apxs`



4.httpd.confに追記
LoadModule ruby_module /usr/local/apache/libexec/mod_ruby.so

RubyRequire apache/eruby-run

# /eruby以下のファイルをeRubyファイルとして扱う

SetHandler ruby-object
RubyHandler Apache::ERubyRun.instance


# *.rhtmlをeRubyファイルとして扱う。

SetHandler ruby-object
RubyHandler Apache::ERubyRun.instance




5.RubyGemsのインストール
"http://rubyforge.org/projects/rubygems/"からアーカイブをダウンロードし、スクリプトをrubyで実行。
ruby setup.rb


6.Railsのインストール
gem install rails --include-dependencies


7.エラーが出たので対処
エラー:
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
原因:
プロキシが必要な環境なので、プロキシを明示的に指定する。
対処:
$ env http_proxy="http://192.168.50.2:8080" gem install rails --include-dependencies


8.またエラーが出たので対処
エラー:
Could not find rails (> 0) in any repository
原因:
Gemsのアップデートが必要
参考:
http://armyofevilrobots.com/node/418


9.Railsのテンプレートを作成。Apacheのディレクトリ以下でね。
$ cd /var/www/html/test
$ ruby test

10.WEBRickの起動
$ cd test
$ ruby scripts/server -d

11.ブラウザでアクセス
http://192.168.0.1:3000

12.エラーの対処
ブラウザ上でのエラー:
Routing Error
no route found to match "/Demo" with {:method=>:get}
原因:
RoRコンテンツのルーティングが未設定
対処:
routes.rbに追記
map.connect '/Demo', :controller => 'demo'

プロセスを再起動
$ pkill server
$ ruby scripts/server -d








(参考)
mod_ruby インストールガイド

zshのプロンプトをいじる










Linuxのシェルはbashを愛用していたけど、これからはzshを使うことにした。

このまえの、「Google Developer Day 2007 Tokyo」のイベントで、はてなの伊藤さんのプレゼンで、「bashを使う人は初心者」なーんて言っていたもんで、「そうかぁ、開発の現場はそんな意識なんだなー」と素朴に思えたので・・・。ミーハーなのかな。





bashのスキンとも言うべきPROMPT変数は、今のところこんな感じ。RPROMPT変数は、コマンドラインの右端に表示できるもの。


PROMPT='[%D{%Y/%m/%d %H:%M}]%(!.#.$) '

RPROMPT='[%~]'










(参考)
zsh(blankspace)
zsh(machu.jp)
Prompt Expansion(SunSITE)



June 19, 2007

GNOMEのショートカット集










Windowsであれば、CtrlキーやAltキー、Windowsキーを押しながらほげほげみたいな、いわゆるショートカットキー。Linuxの場合はGNOMEやKDEがそれにあたる。

駆けだしLinuxデスクトップユーザーが知らない、GNOMEのショートカットをまとめてみた。簡単に見つけてしまうものは省略。





例)G[GNOMEの場合] W[Windowsの場合]




G[Alt + F1]
W[Windowsキー]

アプリケーションメニューを開く。開いたときに左右キーで隣のメニューに切り替えることが出来る。Windowsではスタートメニューのようなもの。





G[Alt + F2]
W[Alt + R]

ファイル名(コマンドライン)を指定して、プログラムを実行する。





G[Ctrl + Alt + 矢印キー ]
W[ none ]

ワークスペースを切り替える。これは色々試しても捜し当てるのがとっても難しい。





G[Ctrl + Alt + D]
W[Windowsキー + D]

GNOMEの場合はウィンドウを全て最小化。Windowsの場合はデスクトップを表示。見かけは同じだけど、別物。どちらにしろ、画面を見られたくないときに人気を感じたときに使えるショートカットなのは間違いない。多用するとあからさまだけど。





G[Alt + Esc]
W[ none ]

Alt + Tab と同じことができるけど、違うのはWindowsの内容を確認しながら切り替えることが出来ること。でも、キー間が遠い・・・。






GNOMEとシェルとviとemacsのショートカットが習得できれば、立派なもんかなー。

というか、Google先生に"gnome shortcuts"と聞けば済む話なんだけどねー。

June 12, 2007

Ubuntuを使う










デスクトップLinuxを使いたい野望が心の中で復活したので、これまで辿ってきた道をメモ。





5年前くらいなら、Linux選ぶなら迷い無く選んでいた愛されるべき"Red Hat Linux"は、"Fedora Core"の開発体制になり、今は"Fedora"と呼ばれ、最速バーションを追いかけるチャレンジャーなディストリビューションに変わってきている。

今も"Red Hat Enterprise Linux"がメジャーなので、お試しとして"Fedora"やRHELクローンの"CentOS"を選ぶのが妥当な選択。

しかーし、時代も流れ、GentooやSUSEが台頭し(TurbolinuxとVine Linuxは影をひそめ?)、トレンドが移り変わってきているだろうと思い、DistroWatchの門を叩いた↓。







このサイトの"メジャーディストリビューション(Top Ten Distributions)"によると、Ubuntu(ウブントゥ)というディストリビューションがトップだ。説明書きにはこうあった。ナルホド、期待が持てます。


In the few years that followed, Ubuntu has grown to become the most popular desktop Linux distribution and has greatly contributed towards developing an easy-to-use and free desktop operating system that can compete well with any proprietary ones available on the market.






Google先生にも、GoogleTrendsで聞いてみた。確かにこれから伸びそうだ・・・。





↓日本の場合


↓英語圏の場合






狙いをUbuntuに定めて、ダウンロードページから、"日本語ローカライズ版Desktop Ubuntu 6.06 LTS"をゲットして、会社にある評価機のVMWare上でインストールしてみた。UbuntuはLiveCDでCDブートし、デスクトップ上のインストールアイコンをクリックすると、そこからハードディスクへのインストールが始まる、ちょっと変わり者。インストールCDはKNOPPIXのようにLiveCDのような使い方もできるのだ。





インストールが済んで、デスクトップ上のメニューを、システム->設定->ネットワークプロキシと辿り、プロキシの設定をする。

アプリケーション->アクセサリ->GNOME端末と辿り、コンソールを起動して、下記コマンドを実行していく。update以下はお好みで。

sudo apt-get update
sudo apt-get install openssh-server
sudo apt-get install zsh
sudo apt-get install emacs





今日はここまでで終了。







May 31, 2007

Meadowの置換










Meadowのチュートリアルをあらかた勉強しても、基本的な操作が意外と載っていなかったりする。その一つが文字列の置換。

(M-%)を入力すると、ミニバッファのフォーカスが移り、検索文字列と置換後の文字列を聞かれるので、順番に文字列を入力する。

ひとつひとつ検索して、置換するかどうか聞いてくるので、(y)か(n)かで置換するかしないかを選びます。
(!)で答えると、全て置換します。





このMeadowの置換で悩むのが、(M-%)がとても入力しづらいこと。押したいキーの(Alt)と(%)と(Shift)が離れすぎ・・・。

左手だけで同時押しすると親指が吊りそう・・・
何かいい方法が無いかな?と思ったが、キーバインドを変更しようと検討中。





(参考)
Emacsの便利な機能/文字列の置換 -- (M-%)



May 14, 2007

GW期間中にWinnyノード数が過去最大を記録

スラッシュドットジャパンのネタから。

GW期間中にWinnyノード数が過去最大を記録


スラドの記事を読むときは、スコアの一番高めのコメントだけを読むと、情報収集のコスト対効果が良い。


僕が考えるこの問題の原因については、日常の中で起こることの模倣犯的な心理反応が大きいかなと思います。麻薬・いじめ・流行の詐欺商法、YouTubeなどへの違法コンテンツのアップロードとかと同じように。



「Winnyっていろいろ話題になってるよね」

「でも、それでウィルスにやられるなんて、間抜けだよね」

「ちょっとやってみようか、ちょっとなら大丈夫でしょ」

(赤信号、みんなで渡れば、怖くない)
(私だけは大丈夫)



ただし、「Winnyの利用は、違法コンテンツのアップロードとセット」であることを、利用者は気づいているのだろか。原理的にトロイの木馬を自らインストールしている事と同じだと言うことを。



Winnyは手段の一つであって、別の手段があれば同じことができます。問題の本質は、人のマナーに起因しているものです。Winnyを規制するだけでなく、パラダイムシフトを促すことに意識を傾けていきたい気分です。
ただ、その本質が改善されない状況において、Winnyによるニュースが発生する限りは、Winnyノード数の増加の歯止めは簡単には止まりません。



(参考)
アップロード(Wikipedia)
Winny によるダウンロードはアップロード(ITMedia)

May 12, 2007

ブログをたんさん読んでもらえる方法

ブログを書き始めようと思ったので、ブログを書くコツを探してみました。日本語のウェブサイトを探しても、世の中の日本人と同じことしか学べないので、海外のサイトから探すことに。


1.del.icou.uspopularディレクトリから、「Movable Type」を検索してみる

すると、Learning Movable Typeという、まさに僕にぴったりなタイトルのウェブサイトがあったので、面白そうなコンテンツをそのウェブサイトの中から探す作業開始。それでたまたま目に入ったのがHow to Build Blog Traffic - Contentというコンテンツ。


2.気になった英文記事をウェブ翻訳してみる。

「ウェブ翻訳」を検索すると、ウェブページごと翻訳してくれるウェブサイトが見つかるので、気に入ったので翻訳して読んでね。


3.興味を持って、翻訳英文を読む!

僕が海外の情報を興味を持って読む理由は2つあります。

     3.1.日本にはまだ無い価値の高い情報が、海外にはあるから
     3.2.英語の読み(Reading)のトレーニングになるから

筋トレやダイエットと同じです。自分なりの”にんじん”を、顔の前にぶら下げましょう。


4.自分と他人の為に、情報を書き残す

価値のある情報を得たので、自分が忘れたときと他人にも情報共有の為に、書き残しておきましょう。
そう、自分のウェブサイトやブログに。


5.ブログをたんさん読んでもらえる方法



・ 役に立つか、面白いか、タイミングが良いか

コンテンツを作る際に、この3つのポイントについて注目しよう。人気のあるコンテンツは、この3つどれも満たしている場合が多い。


・ テーマに集中する

そのコンテンツがテーマについて、掘り下げる/焦点を絞る/集中する/本質を突く、などの状態であれば、より深い情報を得られた読者は満足し、そのウェブサイトにまた戻ってくるでしょう。
Wikipediaのそれぞれの記事は、その点において非常に優秀。


・ コンテンツの更新頻度より、コンテンツの品質を少し優先する

品質を落として更新頻度を上げる方にかたよると、あまり良い結果を生まない。まぁ、バランスが問題ということですね。

しょこたんブログは更新頻度がウリだけど、品質も同時に高いので成功している例。


・ 画像を活用する

文章だけより絵があるとわかりやすいことってないですか?セリフだけの台本より漫画になっていた方が、情景をイメージできてわかりやすいですよね?そういうことです。


・ 丁寧に書く

読み手が読みやすい工夫を取り入れて、読み手のストレスを減らしましょう。友人に自慢の料理を食べてもらうように。


・ 見出しに工夫をする

工夫をするところはたくさんありますが、コンテンツの見出しは最初に見られるところです。第一印象を良くするために身だしなみを整えるように、見出しには特別に工夫をしてみましょう。


・ あなたの情熱をかたむける

書き手が適当に作ったものは、読み手も適当に受け取ります。書き手の情熱が何人かの受け手に伝わって、読み手があなたのコンテンツに注目してくれるかもしれません。

April 5, 2007

このサイトのコンセプト、2007

このサイトは、コレくらいの割合でネタを提供していく予定です。

hogeo_logo.gif