2011年8月アーカイブ

全ては想定の話なのですが、サイト更新の原稿を書くとき、いまどきはフィードでどこかへ流れてぶつ切りにされてしまって意味がわからなくなりがちなので、タイトルと、本文の1行目に気を使って原稿を書くわけです。

そうすると、本文の1行目は、自社の社名を入れておいたほうが、ほかの所で表示されたときにニュースの主体がはっきりするので(いわゆるニュースリリースの本文1行目と同じ書き方)、そうするのですが、その原稿を見せると、「自社の更新情報なのに自社の社名をいちいち入れるのはおかしい」「自社のニュースを見るターゲットはよそのサイトや何とかリーダーの読者ではなくてまずは自社のサイトに来るユーザーだろ」とか言われがちであります。

つまり、更新情報とはいえニュースを放流(リリース)してしまえば、自分の管理しているところ以外でも読まれてしまうから、ニュース単体でも意味がわかるようにしておこうという立場があり、逆に更新情報である以上優先すべきは更新情報が載せられるサイトのユーザーのわかりやすさであろうという立場もあり、それが衝突する場面であります。

となればどうするべきかということを考えた結果、自社サイトに掲載するときには、自社の社名などの情報をCSSで言うdisplay: none;で隠しておく、フィード受信先では、display: none;で隠した部分のインラインスタイルシートが外れてそのまま見える形で表示、なんてことをすればいいことに気付きましたが(結構な数のフィードリーダが、インラインスタイルシート指定は落としてくれる)、

非ネット系の会社ではこういうどうしようもないことって当たり前なんだろうなあとか思いました。

Googleマップに、Googleプレイスといってお店とか会社の情報を登録できる仕組みがあるんですけれども、

Welcome to Google Places for Business [www.google.com]

僕が管理していないところの社名が(株)から株式会社に表記が変わっているため、そんならこっちも表記変えなきゃなーと思い、変えてみるも一向に変更されず。

この仕組みは、実在する企業であるかどうかを、Googleからの電話で行うか、Googleから送付されるはがきに書かれているPINコードを入力するか、どちらかの認証をクリアすると、自由に書き換えができるようになるという仕組み。

Googleplace
▲Googleの中の人とおしゃべり!

電話が怖い僕は(なんで電話業務やってんだ)、ハガキの郵送を選んで、ちゃんとGoogleから送られてきたはがきに書かれたPINコードを入れてあるので、ちゃんとオーナーになっているのだけれども、反映されない。

調べてみると、Googleプレイスの企業情報の書き換えは、結構不具合が多く出ているらしく、「新たに登録しなおしたほうがいい」とまで書かれている始末。

そうすると、またPIN取得をしなくてはならないのですよね……

Googleのサービスの中でも、品質はばらばらなんですねーとか思いました。

MIMEタイプtext/htmlで吐き出していたXHTMLページを、application/xhtml+xmlにすると、あちこち直さなくてはならなくなったのでメモ。

1.真のapplication/xhtml+xmlは、document.writeができない

メンテナンスしているところで、こんなコードがあった。

<script type="text/javascript">
// <![CDATA[
document.write('<input type="hidden" '
             + 'name="thisTITLE" value="'
             + document.title
             + '" />'
);
document.write('<input type="hidden" '
             + 'name="thisURL" value="'
             + document.URL
             + '" />'
);
// ]]>
</script>

とか書いてあった。何年前のコードなんだろう……

document.writeができないのですが、いまどきjQuery時代なんでこうしちゃえばいいんじゃねって思う。

<script type="text/javascript"
  src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"
></script>
 
...
 
<input type="hidden" name="thisTITLE" value="" />    
<input type="hidden" name="thisURL"   value="" />
<script type="text/javascript">
// <![CDATA[
$(function() {
  $('input[name=thisTITLE]').val( document.title );
  $('input[name=thisURL]'  ).val( document.URL   );
});
// ]]>
</script>

あらかじめ要素用意してあって、DOMが生成された後だったら、値の挿入は文句ないよね。

2.真のapplication/xhtml+xmlは、formにつけた名前で値が取得できない

<form name="nForm">
  <dl>
    <dt>
      <label for="email00">メールアドレス</label>
    </dt>
    <dd>
      <input type="text" name="email00" id="email00" value="" />
    </dd>
    <dt>
      <label for="email01">もういっちょ</label>
    </dt>
    <dd>
      <input type="text" name="email01" id="email01" value="" />
    </dd>
  </dl>
</form>
var errstr = '';
if (document.nForm.email00.value != document.nForm.email01.value) {
  errstr += "メールアドレスの確認をしてください。\n";
}

ていうコードがあった。名前の付け方が無駄にキャメルケース。

んで、このコードが、text/htmlからapplication/xhtml+xmlになったとたん、動かなくなる。document.nFormがいなくなる!

これに関しては、document.formsの中にいるので、あわてずにこう書けばOK。

var errstr = '';
if (document.forms['nForm'].email00.value != document.forms['nForm'].email01.value) {
  errstr += "メールアドレスの確認をしてください。\n";
}

さらにこう書ける。

var errstr = '';
if (document.forms.nForm.email00.value != document.forms.nForm.email01.value) {
  errstr += "メールアドレスの確認をしてください。\n";
}

これは、JavaScriptの書き方が古かっただけじゃねえかっていう話ではあります。

以上、XHTMLで書いてあれば、text/htmlからapplication/xhtml+xmlにするだけでいいんじゃね、て思っている人が実際にはまった2点でした。document.writeの話なんて、5年遅れの話題ですよね……

HTML5ではなくて、XHTML5をちょっとやってみているのですけれども、本物のXHTMLは、レスポンスヘッダ内でContent-Type: application/xml もしくは Content-Type: application/xml+xhtml とMIME Typeを出さないといけないということで、.htaccessでこんな風にしてみました。

AddType "application/xhtml+xml" .html
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} "MSIE 5" [OR]
RewriteCond %{HTTP_USER_AGENT} "MSIE 6" [OR]
RewriteCond %{HTTP_USER_AGENT} "MSIE 7" [OR]
RewriteCond %{HTTP_USER_AGENT} "MSIE 8"
RewriteCond %{REQUEST_URI} \.html$
RewriteRule .* - [T=text/html]

(参考:.htaccessを使ってapplication/xhtml+xmlとtext/htmlに振り分ける。 [www.garunimo.com]
参照先は、.xhtmlをUAによってContent-Type差し替えるやつで、今回のは、.htmlで同様のことをするものです。404エラーすらXHTMLで書く必要があるので、お勧めしません)

これで、拡張子htmlのコンテンツに関して、IE5~8の時は、text/html、それ以外の時は、application/xml+xhtml を出すことになります。

んで、これにしたときは問題があって、Google +1ボタンや、TwitterのTweetボタンなど、JavaScriptからiframeを生成して表示するタイプのソーシャルボタンが動作しなくなります。

たとえば、Google +1のHTML5 ValidなHTMLはこんな感じ。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:g="http://base.google.com/ns/1.0" xml:lang="ja" lang="ja">
  <head>
    <meta charset="utf-8" />
    <title>Google+1 テスト</title>
    <script type="text/javascript" src="https://apis.google.com/js/plusone.js">
    </script>
  </head>
  <body>
    <g:plusone annotation="inline"></g:plusone>
  </body>
</html>

これだと、IEにtext/htmlとして読み込ませた場合でも表示されないので、こっちのコードが普段使い。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
  <head>
    <meta charset="utf-8" />
    <title>Google+1 テスト</title>
    <script type="text/javascript" src="https://apis.google.com/js/plusone.js">
    </script>
  </head>
  <body>
    <div class="g-plusone" data-size="standard" data-count="true">
    </div>
  </body>
</html>

これらが、Webkit系だと表示されなく、Operaだと表示されます。

正直言って、そこまでしてXHTML5をXMLとして評価するモードは必要ないかもとか思います。なので、普通に text/html で出せばいいんじゃね?ていうことに……

XHTMLは、XML操作でいじれるので個人的には作業しやすいのですが、XML操作しない人にとっては使わないよね……

Yahoo!のリスティング広告に出稿しているのですが、偉い人が見ている時に限って表示されない。調査しろと言われたので、スクリプトを作りました。

cronで1時間に1回実行します。

この時期だけ需要があるDTPWikiですがここんところサーバのLoadAverageが8ぐらいになって、ほぼ止まったような状態になっていたのですが、2ちゃんねるでも「つながらない」とか書いてあったし、うちに帰ってからちょっくら調べてみていたのですけれども、server-statusとか見て、やっと問題を把握。

DTPWikiには、planet DTP@jp というRSSまとめサイトがついているのですが、それで使っているFC2用とAmeba用の画像取得プログラム(今風に言うとリバースプロキシ)に組み込んだ、キャッシュが壊れていました。

いまどき、Cache::Fileなんて使うロートルはいないよね……母さんロートルでごめんね……

というわけで、キャッシュを削除して対応してみました。これで持ちこたえられるかな。

おそらく昨日あたりからDTPエキスパート認証試験の更新試験(在宅受験)の問題が届き始めたようで、それに合わせて、サーバのロードアベレージが上がりっぱなしです。

昼間いるところからはDTPWikiのサイトになぜかつながらないので、対処ができない状況ですので、ご迷惑をおかけします……

今日はちょうどGoogleとneverとBingのボットがサイトの中をぐるぐる廻っていたのでオンデマンドでnofollow書き込んでおいて何とか駆除した。ところどころCGIを使っているところで負荷が上がるので、もうちょっと別の案を考えたほうがいいかもしれないんですが、月末にはちょっと改良はつらいなあ。

そろそろキャンペーンが終わるけれども、

アドビストア – アドビサマーキャンペーン | Adobe [www.adobe.com]

キャンペーン期間中、対象のアドビ製品をご購入および製品登録され、キャンペーンにお申し込みされた方の中から、抽選で毎日*5名様にお支払い金額の全額をキャッシュバックいたします。残念ながら当選されなかった方にも、抽選で毎日10名様に電子マネー「Edy(エディ)」5,000円分をプレゼントいたします。アドビ製品を購入するなら、今がチャンスです!

ばくちかよ! もともと購入見込客だった人に対して無料にするっつうのはその毎日5名の客だけ特別扱いするっていうことだけれども、それでアドビにどういう見返りがあるというのか。高額すぎる製品を特に理由なしで(抽選だとしても)まるっと無料にしても、かえって忠誠心や親近感って発生しないんだと思うんですよね。

と、最近クーポンシステムの在り方とか考えながら思うのでした。

某サーバのhttpdのレスポンスが遅くて、あまりにも遅くて、使用者から「月1000円なんていう安いサーバ使っているからだ」という発言が。これは、うまくすればVPSから専用サーバーにアップグレードじゃね?とか思ったけれども、httpdをリブートしたら直った。

とりあえず、今回やったこと。

1. ab (apache bench)でレスポンス測定

 結果、100回連続の要求のうち、最初の1回が遅いってことが判明。
 2秒ぐらいかかっていた。

2. Firefoxのプラグインでレスポンス測定

 結果、一番最初のhtmlダウンロードで2秒ぐらいかかってた。
 1.と大体時間が一致してたので、apacheが悪い。

3. httpd.confのHostnameLookupsがonになっていないか確認

 なっていなかった……

4. .htaccessの中に、ホスト名が書いていないか調査

 grepで。でもなかった。

5. ついにリブート

 直った!


……直しちゃ専用サーバにできないじゃねえか!

今住んでいるところは小中学生の夏休みが8月31日まであることからしても明らかに実家より都会なんですけれども、書店での雑誌の発売日が1日遅れるところは確実に田舎呼ばわりされる不公平が存在するのも知っているので、そういう程度の田舎に住んでいるわけですけれども、そういうところではmicroUSBで給電できるACアダプタが全然売っていなかったのでした。

んで、今日県内最小規模とうわさされるヤマダ電機に行ってみたら、まさしく今日入荷した体で、まだ値札も付けられていない状態で売られていました。

僕がこれをなんで必要だったかというと、

を設置するためのACアダプタが必要だったからです。この機械はなかなか使い勝手がよくこのたび3個目を購入したのですが、USB端子からmicroUSB端子に変換する短いコネクタ付いていて、USBポートから給電する設計なので、USBポート使えない機材につなぐときは、別途ACアダプタがいるのです。

実家に帰った時、秋田のデンコードー改めケーズデンキですらmicroUSBのACアダプタが売られていました。これは、いよいよスマートフォンが普及の段に入ってきて、それ用のアクセサリーとしての販売が見込まれていることを示しています。

しかし、お店のお兄さんや、「スマートフォンならこのACアダプタで大丈夫です」と言っていましたが、HT-03AはスマートフォンだけどminiUSBなんだよ……

Perlでの動的なウェブサイトを作るのに今までは全面的にCGI::Applicationを使っていたのですが、いまさらCGI::Applicationをというのものなーとか思い、また、CGI::Applicationで構築するとプラグインをたくさん使うということもあり、可搬性に乏しいということも経験しているので、ここはいっそのこと、新しめのフレームワークを使ってみようかと思い、Mojolicious::Liteにチャレンジしてみました。

今回は課題として、僕が過去にCGI::Applicationで作ったサイト「HWNDBasedPanerView.com」のトップページの表示と同じものを作る、というのを設定しました。参考までに、HWNDBasedPanelView.comのスクリーンショットはこちら。

Hwnd01

これを、以下のようなプログラムで表示できます。実際のサイトではデータベースに接続しているところは割愛して、配列にpushすることで表現しています。

とある印刷工場に手伝いに行ったのですが、8色機から「ドレミファインバーター」の音がしていました。ドレミファインバーターというのは、電車の発進時に音階をあげていくような音を伴って加速する電車があるのですが(ポルタメントとはちょっと違う)、それみたいな音。

印刷機だってモーターで胴を回転する必要があり、電車で言う車輪が胴に置き換わったものと見ることができますよね。

そういう意味で、今度せっかくIGASがあるんだし、印刷機メーカーは「わが社の印刷機は『ドレミファインバーター』搭載です」、とかいうと、鉄道マニアが来るかと思ったが来ても意味ないね。

ほかにも、日常生活と印刷現場との共通点という観点からすると、CD-RとCTP(製版機)はまさにその関係で、CD-Rを作っている会社がそのままCTP刷版を作っていたりしました。

また、かつてのCD-Rは焼きこみ途中にデータの準備が間に合わなくなると、バッファアンダーランと言って、レーザーでCD-Rのらせん状に記録しているところが途中で書き込めなくなりエラーになる書き込みミスが生じていて、その後Burn-Proofという、バッファアンダーランが発生したところから続きのデータを書き込みできる技術ができていましたが、それと全く同じく、CTP刷版を円筒に巻きつけて、レーザーでCTP刷版に記録している途中でデータ転送が間に合わなくなると、レーザーの記録を一時止めて、データが到着したら記録を再開するという機能が付いていたのでした。それをスイッチングと言っていて、それが発生すると、ほんの少しの精度の問題なのですが、刷版にすじが発生して僕らを悩ませてくれたのでした。

以前、

M.C.P.C.: デジタル8色で400ラインといえばX1turboだと思うのです

で書きましたが、『シュタインズ・ゲート 8bit』のくせに16x16dot漢字表示はおかしい。X1turboかよ! と思ったわけですが(別にFM77L4でもMB-S1でもよいが色が着かない)、体験版が出ていたので、早速プレイしてみました。

スペシャル|STEINS;GATE 8bit [gigasdrop.jp]

以下スクリーンショット。

Sg8bit01
▲お約束How Many Files

Sg8bit02
▲MEC PC-8081mk2SRモード。FM音源で、640x200x8色、漢字16x8dot

やってくれました、8bit機なら漢字は縦圧縮16x8dotフォントだよね!

Sg8bit03
▲Sharbo NZ-2200モード。音なし、640x200グリーンモニタ、半角カナ

MZ-2000的グリーンモニタ。ここまでやるなら日立ベーシックマスターレベル3の長残像グリーンモニタを再現してほしい。

惜しいのはNZ-2200モードにしてもHow Many Files聞いてくるところだな。

製品版ではほかの機種のモードも入るみたいなんで、おそらく16x16dotの機種もあると思われ。ちょっと期待するけど値段高いよねこれ。

M.C.P.C.: RSSのアドレス入れたらすぐにparseして使えるかどうか判断しておくべき

で書いていたのにどうやってFeedが正しいかどうか判断するかっていうのを書くの忘れていました。

# feed が正しいかテスト
use URI;
use XML::Feed;
my $feedurl = 'http://feeds.feedburner.com/MCPC';
my $err;
my $feed = XML::Feed->parse( URI->new( $feedurl ) ) # feed Parserで解析
  or $err = XML::Feed->errstr;
print "$err\n" if $err;

でいいんじゃないかなー。

Facebookでログイン後右側に出てくる広告なんですが、これって消せるのですが、消したときに理由が書けるので、これを使って、広告に対し突っ込みする練習ができます。

Facebookaddelete
▲削除ボタン押した時点で広告消えるので記憶力が勝負

広告主さんがよりよい広告を出せるよう真心をこめてつっこんであげましょう。

広告は、いくら消してもあとからあとから出てくるので、結構な暇つぶしにもなるし、気のきいた文面になるようにすると頭の体操になるかと思います。ぜひ全レスしましょう。

広告を数百個消すと、日本語以外の広告が出てきますので、そこら辺がつっこみの練習の1セット分となりますね。

# BANされるかは不明

アナログテレビ放送が停波したので、NHKに解約をお願いしましたら、7月で解約した場合は、7月分のNHK視聴料が返金となるのですが、NHKの料金は6月と7月の2ヶ月分支払うことになっており、僕の場合既にクレジットカードから支払済みになっているということで、NHKさんから何らかの方法で返金がされると聞いていたのですが、今日、振替払出証書が届きました。1345円だって。

これでNHKさんとはきっちりお別れができました。

ところで、NHK料金をクレジットカードで払っていたのはクレジットカードのポイントがたまるからなのですが、今回の処理だと、7月分返金分のポイントはしっかり残ったままですよね。ちょっと後ろめたいものがあるけど、クレジットカードでの返金処理がされなかったのでいいのかな。

今回実家に帰ったら、居間にエアコンが付いていたのにはびっくりしました。

聞いたところ、横浜にいる親せきも今回帰省するからって、「都会の人は暑いのだめだろうから」と言ってつけたそうです。おめえらも暑いだろうと思いました。

そしたら、祖母が「寒すぎる。殺す気か」とか言いました。

いろんな意味で場が凍りつきました。

年寄りとエアコンは相性が悪いということを知りました。

どうすれバインダー

実家に帰ったら父が「昔のレコードあるんだけれどもプレーヤーないから買いに行く」とか言い出しました。これはYouTubeで視聴するとかくそ安いクラシックのCDを購入するとかでは解決しなさそうな空気を感じたので、レコードプレーヤーを買うことにしましたが、どうせレコードを取り扱うのはすぐ飽きてしまうだろうと思ったので、思い切ってレコードプレーヤーなんだけれども、USB端子が付いているタイプのデノン製のプレーヤーを買いました。コジマで24800したよ。

これで古めかしいLPやらドーナツ盤やらがMP3ファイルに変換できるのですね。

じつは、おニャン子クラブのシングルやらダーティペアのピクチャーLPやらガンダムシングルヒストリーのLPもこのうちのどこかにあるはず、捨ててなければ。

つうわけで、ネットの海は広大であることに気づいていない人にお勧めです。

問題は、このMP3ファイル再生できるかどうかってことですよね。どうせファイル無くすだろうし、CD-Rに焼き付けておいたほうがいいかな。しかし、焼き付ける具能をもった人側が実家にはいないのでどうしたらいいんだろう……USBからCD-Rに焼き付けできる機械とか探さなければだめなのかな……PCの多機能ぶりに気づいていない人に説明するのはつらい。25年前に表計算ソフト使うためにベーシックマスターレベル3マーク5購入してきたような人なのに……

昨日ニンテンドー3DSを買いましたが、せっかくなので3Dなゲームでも買おうかと思い、リッジレーサー3Dを買いました。

リッジレーサーなら、大体どのプラットフォームでも、初回プレイの初級コースで一位取れるぐらいには運転できるぐらいの腕前です。

で、よく考えると、PS1用でリッジレーサー・リッジレーサーレボリューション・レイジジレーサー・R4、PS3でリッジレーサー7、PSPでリッジレーサーズ、iPadでもリッジレーサーHDと、既に6本ぐらいリッジレーサー持っているわけで、いまさらリッジレーサーていうのも、結局おなじみのあのコースをくるくる周回するわけで、やっぱり100年後もその時の最新デバイスでいつものコースをくるくる回っているんだなあと思いました。

客観的にみると、「なんどめだリッジレーサー」と習字で書いたほうがいと思います(→「なんどめだナウシカ」参照)。

今日ヤマダ電機に行ったら、普通にニンテンドー3DSが売っていたので、買ってしまいました。ニンテンドーDSは発売日直後に「君のためなら死ねる」と一緒に買ったことがこのブログの過去の記録に書かれていましたが、3DSについては価格改定後の入手となりました。


会社には、FinPixの3Dカメラがあるのですけれども、ニンテンドー3DSでも3D写真がとれたり、3D写真が見れたりするので、普通の写真からレイヤーわけして立体的に見えるようにする業務に関してうちで研究してみようかとか思いました。そんな業務ないけど。

※ていうかゲームやれよ

工場の温度と湿度を定時に測る役目を仰せつかりました。

しかし、やっぱりだるいので、文明の利器を使って何とか出来ねえかなーとか思ったら、こんなのがありました。

温度・湿度ロガー EL-USB-2: 測定器・計測器関連 秋月電子通商 電子部品 ネット通販 [akizukidenshi.com]

測定したいところに設置しておいて、後でデータを吸い出す「データロガー」というタイプの機材です。

30分インターバルでも11ヶ月持つとのことで、8ヶ月でデータ吸い出しと電池交換を刷ればいいかな、とか思いまして、価格も10000円とのことで、これの購入をお願いしようかと思いましたが、測定箇所が4箇所なので、40000円かかるので、見なかったことにしました。

こういうのってアマゾンに売ってないのかなー?

今日、見本と刷り出しで網点形状が同じだけど網の濃さが違う、ていうのがあって、僕がとってきたお客さんの仕事なので、どらどらとこの前買ったデジタルルーペで見ると確かに両方の印刷物とも網形状は同じなんだけど、網点の分布が違っていました。

つまり、85線と150線の印刷物で、たまたま網点自体の大きさは同じになる指定になっていたわねですね。

ていうわけで、デジタルルーペには、線数測定機能もつけてほしいと思いましたが、僕が買ったルーペって、使用用途が印刷用じゃないからしょうがないのかな。

先おとといのFacebookページにリンクを投稿できるスクリプトを、既存のHWNDBasedPanelView.comに接続しまして、HWNDBasedPanelView.comに投稿したら、自動的にHWNDBasedPanelView.comのFacebookページに投稿するように改良しました。

Facebookページはこちら。

HWNDBasedPanelView.com [www.facebook.com]

なにもいじっていないのですが、HWNDBasedPanelView.comにはOGPによるメタデータが埋め込んであって、FacebookがOGPのメタデータをうまく取得できているかどうか、というのが興味のポイントだったりします。

あとは、Facebook広告をクリックしてきたAdobe社員さんに不具合写真の数々をとにかく見てもらおうとか、そんな考え。

そんなことはともあれ、Windows版InDesignで、HWNDBasedPanelViewが出たら、使って見られたらいかがでしょうか。僕名義でアドビに苦情メールを出す機能も内蔵していますよ。

mixiのページで、G-Dataアンチウイルス2011のウェブスキャナが確実にコンテンツを取り違えて、何回かリロードしないとよくならない。まるでダイキンのエアコンの操作パネルの液晶にA-7が表示された後始動スイッチを2~3回押さないと起動しないように。

今日はこうなった。

Mixijs
▲JavaScriptがそのまま表示

画像を取り違えるだけじゃないのか。

G-Dataは3年×3台を6000円ぐらいで買ったやつなので、Operaとの相性を3年内に直してくれればとは思っていますが全然直らないです……

Adobe InDesignに存在するHWNDBasedPanerViewというウィンドウが出てしまって邪魔、という不具合があって、それで困っている人の存在をアドビに知らせて直してもらうように活動しているHWNDBasedPanelView.comというサイトがあるんですが、サイトを作った後に発売されたInDesign CS5.5では全然直っていなかった。

そこで目をつけたのは、Facebookの広告。Facebookの広告は、所属している会社を対象として広告が出せるのです。なので、実際にやってみました。

Facebookads
▲Adobe従業員に対して広告を出稿した

日本のAdobe従業員だと、20人以下と表示されて、広告ターゲットとして少なすぎるということで、ほかの国を指定して、80人程度になり、やっと配信されるようになりました。

しかし、こんな細かいセグメントで広告出せるようになっているんですね。すごい世の中だなー

コマンドラインの住人さん向けに、コマンドラインからFacebookページにURLを投稿するPerlスクリプトです。

Filename: ~/.pit/default.yaml

---
"HWNDBasedPanelView@facebook.com":
  "access_token" : '123456789012345|ab0123456789abcdef012345.1-123456789012345|234567890123456|1zZ2yY3xX4wW_ZYXzyx-ABab123'


書き込みたいFacebookページを特定してAccess Tokenを入手するのが大変ですが、

FaceBookアプリを作ってファンページに外部から投稿してみた - Web [marooon.com] のとおりにやると何とか入手できると思います。

Filename: like

#!/usr/bin/perl
 
use strict;
use warnings;
use utf8;
use Config::Pit;
use Facebook::Graph;
 
my $pit = pit_get( 'HWNDBasedPanelView@facebook.com' );
my $access_token = $pit->{access_token};
my $fb = Facebook::Graph->new( access_token => $access_token);
 
my $uri = $ARGV[0];
my $post = $fb->add_post->set_link_uri($uri);
 
if ($ARGV[1]) {
  my $mes = $ARGV[1];
  $post->set_message( $mes );
}
my $res = $post->publish;
 
exit;
 
__END__

PerlモジュールのFacebook::Graph を入れなくてはいけないのですが、依存モジュールのOuchというモジュールが入れられないと出るので、エラーメッセージを頼りにparentというモジュールを入れるとよいです。

あとは、上記のlikeというファイルをパスが通っているところに置き、

$ like http://www.yahoo.co.jp/

とかすると、Facebookページに投稿できます。

コマンドラインでやることに意味を見いだせる人がいるかは知らん。

サイトのアクセス数が8月はどう考えてもピンチなので、起死回生を狙って、「無理にでもサイト内を巡回してもらう」ために、「ゲームの『実績システム』をフィーチャー」した、「スタンプラリーシステム」を考え付いたが、判断してもらうところに提案したら、却下されました。

いつものごとく、コード書いたのは拘束時間外なので、公開することにしました。作りかけで開発を止めたので、しょぼいよ。動くかどうかも知らん。

<html>
  <head>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript" src="jquery.cookie.js"></script>
    <script type="text/javascript">
    $( function() {
      var sr = $.cookie('sr');
      var h = {};
      if (sr != null) {
        h = eval("("+sr+")");
      }
      h['products'] = 'passed'; // スタンプラリーとして登録するページ名を変える
      $.cookie('sr', JSON.stringify(h), { expires: 365 } );
    });
    </script>
  </head>
  <body>
    <!-- ここから共通部分 -->
    <div id="stamprally">
      <table>
        <tbody>
          <tr>
            <td><span id="sr-index" style="display: none;">[Top]</span></td>
            <td><span id="sr-products" style="display: none;">[製品紹介]</span></td>
            <td><span id="sr-compamy" style="display: none;">[会社案内]</span></td>
            <td><span id="sr-law" style="display: none;">[商取引表示]</span></td>
          </tr>
        </tbody>
      </table>
      <p id="sr-parcent"></p>
    </div>
    <script type="text/javascript">
    $(function () {
      var list = ['index', 'products', 'company', 'law'];
      var sr = $.cookie('sr');
      var h = {};
      if (sr != null) {
        h = eval("("+sr+")");
      }
      var count = 0;
      $.each( list,
        function() {
          if ( h[this] ) {
            $('#sr-' + this).show();
            count++;
          }
      });
      var parcent = Math.ceil (100 * count / list.length);
      $('#sr-parcent').html(parcent + '%');
    });
    </script>
    <!-- 共通部分終わり -->
  </body>
</html>

一つのCookieにJSONをシリアライズして書きこむのは標準的な作法なのかどうか……節約にはなるよね。

こういうギミックの提案は通らないくせして、5月に社外に出た営業活動がなぜか好調で、ますますやりたいことができない状況になってきた……

個人的には、ギミックの開発が自分の適正だと思っているんだけどな……

Optimus brightを「定額制データ通信プラン」にしたので、もうこの電話は普通の携帯電話と違って音声通話ができない状態になりました。

というわけで、Optimus brightの画面下部に鎮座していました、電話アプリを別のアプリに置き換えてしまいました。

結局、GMailとTwiccaとOpera Mobileという何の変哲もないインターネット端末になったわけですが、電話つながらないとなると、端末をどっかやってしまったとき、端末に電話をかけて着信音を頼りに探す、なんてことができなくなるのが欠点ですね。

続) ガラケーからスマホの怒濤の流れで割を食い始めたサービス | More Access,More Fun! [www.landerblue.co.jp]

想像でしかないが、CPUの性能がPCに比べてずっと低いスマホでは、擬似的に綺麗に見せてるというのも説得力がある。しかしちょこっとみたら、iida INFOBARは26万色、BlackBerryBold 9780やHTC EVOなんて65000色・・・。パソコンは普通数百万色以上に対応しているからそもそものモニタの精度が比較にならないのである。

今後、さらにAndroidの比率が高まるにつれ、ファッション系や自動車など、色を気にするネットストアはかなり悩まされると思う。とにかく「スマートフォンでは色がちゃんと出ないので、パソコンからご覧になることをお勧めします」くらいの但し書きは絶対に欠くべきだと思います。

ていうネタ、在りし日のDTP WORLDだったら取り上げないわけないと思うんだけど、今だったらプリバリ印あたりで取り上げたりしないのかな。プリバリ印は一般流通していないので確認できていないのです。

おんなじようなネタで、

JaGraニュース Vol.227(2011.8.1) - ジャグラBB [www.jagrabb.net]

で、書店のLED照明化に伴い、LED照明の特性に詳しい印刷営業が活躍するのでは、ていう話があるんだけれども、これも、自分ところではもろ工場がLED照明になっているので情報がほしいところなのに、詳しい情報が入手できていないんだよなあ。

僕は行きつけの飲み屋さんにソフトバンクのフェムトセルアンテナ(Yahoo! BBモデムも含まれる)が導入されたのを目をつけて無線ルータの取り付けをさせてもらって、飲み屋で飲みながらiPadを使うということをしているのですけれども、そういうことをしていればほかのお客さんにいろいろ聞かれることも多く、今日は常連の60歳過ぎの方から、

「iPadでテレビも見れるんですね。」

とか言われました。

確かに、ワンセグ受信機が出ているので、それをつければiPadでテレビは見られます。

しかし、もう僕は地上波アナログ放送終了後はテレビを見ない生活に戻ってしまいましたので、「テレビなんて見ませんよ」とかいうところでしたが、質問内容を深く読むと、結局50年間のテレビの歴史で人間はテレビなしに生きられなくなったんだよ―的なコンテクストが読み取れたので、「iPadだけだとだめなんですけれども、何かを接続すると見れるみたいですね。」と言っておきました。

ていうか、iPadの画面だったらフルセグチューナーじゃないと満足できんのではないのか。とか思いました。

こっちの商品は、PCでフルセグ受信してiPadに飛ばせるのですね。

ずいぶん前にNHKに電話をしてお願いしていた「放送受信契約終了届」がやっと届きまして、昨日郵送しました。

実際にテレビのアナログ放送が終わったので、テレビの放送が見られないのであればNHKとの契約を解除できるわけです。

よく考えれば大学の4年間はテレビなしだったわけで、テレビがなくてもへっちゃらなのですが(おとといのような災害の時はちょっと困る)、会社の偉い人がカンブリア宮殿見なさいとかいう時にすげえ困る。そもそもBSでしかカンブリア宮殿やっていないらしいので、どだい見ようがなのですけれども、テレビがないことはとーぶん内緒にしておいたほうがいいかなーと思っています。

月別 アーカイブ

ウェブページ

OpenID対応しています OpenIDについて
Powered by Movable Type 5.2.13

このアーカイブについて

このページには、2011年8月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2011年7月です。

次のアーカイブは2011年9月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。