2014年10月アーカイブ

仕事で、Dancerというのを知ったわけですが、最初、これが何なのかさっぱり分からなかった。

要するに、Perl とか、Ruby で動くWebサーバっていうことなのね

何が良いかっていうと、Perl とか Ruby みたいなスクリプトって、多くはWebサービスのバックエンドとして動くわけですが、CGIとして動かすとApachみたいなWebサーバが居て、これがリクエストを受け取ったら、CGI として Perl なり Ruby なりを起動して、結果を受け取ってまた Web サーバがクライアントに結果を返す。

こうすると、Web リクエストのたびに、Perl なり Ruby なりが起動するから、プロセス起動とスクリプトのコンパイルが毎回走って、無駄が大きいわけです。

だから、Perl とか Ruby そのものが Web サーバとして動けば、無駄が省けますね♪ という考え方。

ちうわけで、まずは使える環境を作ることから。

  • Dancer は、Perl CPAN を使ってインストールする。

実は私、CPANというのを始めてつかったのです。しーぱんと読むそうです。しーぽんではない

% cpan Dancer

と打てば、インストールできちゃうんですが、一つハマりました。

% cpan
Terminal does not support AddHistory.
Could not lock lockfile with flock: No such file or directory; retrying
Could not lock lockfile with flock: Operation not supported; retrying
Could not lock lockfile with flock: Operation not supported; retrying
Could not lock lockfile with flock: Operation not supported; retrying
Could not lock lockfile with flock: Operation not supported; retrying

こんな感じで、cpan コマンドが Lock ファイルがつくれねー!と文句を言い続けるという現象がでました。

原因は、home ディレクトリを NFS 上に置いた一般ユーザで実行してしまったこと。NFS 上のファイルって排他ロックができないんですよね。だから、ずーっと Lock ファイルを作ろうとして失敗し続けるという現象になってしまう。

home を、/root にもつ root ユーザで実行しましょう。

  • sinatra は、Ruby gem を使ってインストールする

gem も CPAN と同じように、スクリプト環境にモジュールを追加するツール

# gem install sinatra

これだけでインストール完了

とりあえず、今日はインストールしたところで終了

PowerEdge T105 が起動しなくなった

以前にVMwareのホストとして使っていたDELLの格安サーバ PowerEdge T105を、久々に使ってみようと電源を入れたら、なんだか起動しない。

途中で、BEEPが2回鳴って、そのまま止まってるように見える。そのときのLED表示はこんな感じ

DSCN4218.JPG本来なら、1 2 3 4 の全部のLEDが点いたあと、全部が消えてブートシーケンスが走り出す。

おかしいなぁ・・・・と、ディスプレイをつないでみたところ

DSCN4219.JPGAlert! System battery voltatge is low

はい、そのまんまですね。SRAMのバックアップ電池が切れているようです。

DSCN4221.JPG一目瞭然、電池がついています。外して電圧を測ってみたら、20mVしかない。こりゃダメだ

CR2032を交換すればいいんですが、こういうときに限って在庫してないんですよね。買ってこないと

ThinkpadX1 Carbon の使用感

勢いで買ってしまったThinkpadX1 Carbonなわけですが、2週間くらい使ってみた雑感をば

いい点

  • トラックポイントがついてる
  • キーボードがUltrabookとしては十分にストロークがある
  • 画面サイズが 2560x1440

ダメな点

  • ボタンが一体型なので、右クリックしようとすると、左クリックになる。左クリックが効かないことがある。真ん中クリックを有効にしても、ブラウザの「新しいタブで開く」に対応してくれない
  • Adaptive Keyboardである
  • 全角/半角キーの場所がおかしい
  • Windows8.1である(を

まずは特徴といっていいAdaptive Keyboardですが、まぁなんだ、やめろ!

カタカナに変換したいと思ってF7押そうと思うとキーがない!しょうがないからFnキー(?)をぺちぺちタッチするんだが、反応が悪い上に、表示が見にくいからF7になかなかたどり着かない

あと、Breakキーとか、PrintScreenキーがない。

Break:Fn-B

Pause:Fn-P

ScreenLock:Fn-K

SysReq:Fn-S

Insert:Fn-I

PrintScreen:Fn-T

で該当キーがつかえるらしいんだけど、覚えられるか、こんなの。

このページに、Alt-Fn-Tが効かないって書いてあったけど、これは効くっぽい。

あと、買った直後に、画面が点滅するという問題が発生したんだけど、これは初期不良だった模様。ディスプレイの接続ケーブルがダメだったので、交換しましたという報告があった。

ただ、修理に出すときに電話したんだけど、あちらが「担当の高橋です」と名乗ったんだけど、おめーぜってー高橋って名前ぢゃねーだろ?っていうくらい中国人なまりの日本語だったのがなんだかなぁ・・・・

結論。もはやThinkpadじゃない。トラックポイントであるという、最大のメリットもクリックがダメなせいで半減してるし、画面解像度の高さくらいしか良いところがない

Win8.1(64bit)で 幼なじみは大統領 を動かす

いまどき、パソコンを買うと、Win8.1で、しかも64bitが当たり前だったりするわけですが、ここにALcotの幼なじみは大統領をインストールして起動しようとすると、

ErrorDialog.PNGこんなダイアログが開いて起動しないわけです。

Authenticationだと??アクティベートでもやってるのか??とか思ったわけですが、調べてみるとエンジンに吉里吉里(W.Dee)というのを使ってると、kernel32.dllファイルのありかを取得する方法に問題があるらしい。64bit環境だと、こいつのある場所がなんか違うんだとか。

参考:Q:Windows 8とはなんだったのか。

んで、こういうことがあると、うまいことしてくれる人がいるのがありがたいお話

とーぜん無保証ですが、この方がツールを作ってくれているようです

Windows8 64bitで魔法使いの夜をプレイ

魔法使いの夜を動かすためのツールとのことですが、要はエンジンに対する処置なので、いい感じに幼なじみは大統領にも使えるようです。

あったりまえですが、とーぜん、無保証ですんで、自分で考えてね!

スクリプトからデータベースにアクセスする

スクリプト言語から PostgreSQL にアクセスする方法をまとめておいてみようかなぁと思う

PostgreSQL の test というデータベース上に Memo というテーブルがあるので、その中身をDumpするスクリプト

  • Perl
#! /usr/local/bin/perl

use Pg;

$con = Pg::connectdb("host=**** user=**** dbname=test");
$res = $con->exec("select * from \"Memo\";");
while(@row = $res->fetchrow)
{
    print @row;
    print "\n";
}
  • Python
#! /usr/local/bin/python
# -*- coding:utf-8 -*-

import io
import sys
import psycopg2

sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='euc-jp')

con = psycopg2.connect("dbname=test host=**** user=****")
cur = con.cursor()
cur.execute("SELECT * FROM \"Memo\";")
res = cur.fetchall()
for row in res:
  print(row[0] , end=" ")
  print(row[1])
cur.close()
con.close()
  • PHP
#! /usr/local/bin/php
<?php 
$con = pg_connect("dbname=test host=**** user=**** password=****");
password=****");
$res = pg_query($con , "SELECT * FROM \"Memo\";");
for($i = 0 ; $i < pg_num_rows($res) ; $i++)
{
  $dat = pg_fetch_row($res , $i);
  echo $dat[0] . " " . $dat[1] . "\n";
}
?>
  • Ruby
#! /usr/local/bin/ruby -Ke

require "rubygems"
require "pg"

con = PG::connect(:host => "****" , :user => "****" , :dbname => "test")
res = con.exec("select * from \"Memo\";")
res.each do |a|
  p a
end

一通りメモとして残しておこう

ラーメン屋 品達のなんつッ亭

昨日の夜に続いて、もう一度品達のラーメン屋

お昼に行ったので混んでた

DSCN4190.JPG

焦がしニンニク醤油味かな?黒いスープなんだけど、そんなに味が濃すぎず、わりと行けるかも。

麺固めを言い忘れた

ラーメン屋 品達のツケ麺TETSU

品川出張なので、品川駅前に宿を取った

そしたら、向かいにラーメン屋街があるでわないですか。

ちうわけで、つけ麺屋

DSCN4186.JPGドロリ濃厚の魚介で好きな味なんだけど、つけ汁が少なくて、最後は麺だけで食べることになってしまった

新しいトラフィカ京カードが発売されてた。 tmp_2691-IMG_20141020_174513-306615354.jpg 京都市、わかってる

Android端末から書き込んでみるテスト

Android端末からblog書き込むとどうなるのかな? tmp_2691-IMG_20141012_213520-1767499523.jpg 写真も貼ってみる この前のたこ焼き

マルチの穴

畑で野菜をそだてる際に、もっとも面倒なのが草の対策

野菜をそだててるんだか、草を育ててるんだか分からない状態になってしまう。

そこで、マルチというものが登場する。といっても、HMX-12ではない。

黒いビニールシートで、畝を丸ごと覆って、草に太陽光を当てないようにするもの。効果あるのかなぁ?とためしに使ってみたわけです。

で、芽がでました

DSCN4185.JPGマルチの穴が小さすぎです!

この穴、マルチを敷いて支柱用の棒でざくざく空けただけなんですが、このサイズじゃ芽が成長して穴が完全に埋まってしまう。穴を拡張しないと

なお、他の穴を見たら、芽がビニールの下へ入り込んでしまってるのも一杯ある。こりゃ早く穴拡張しないとマズい

メロンブックスがやらかした

メロンブックスから、翡翠亭の夕莉抱き枕カバーが配送されてきたわけだが、これがまぁ酷い

箱を開封してみると、こんな状態

DSCN4181.JPGテープで止めてあったはずが、ダンボールからはがれて、まともに固定されていない状態

そして、このテープがくせもの

一見、ふつーの養生テープだから、まぁ簡単にはがせるだろうと思って、はがしはじめてみたところ・・・・・まぁ、これが剥がれない。

抱き枕カバーのポリエチレン袋との粘着が異常によいみたいで、べったり張り付いてまったく剥がれない

ゆーっくりがんばって剥がしても、袋がのびてやがて破れる。

結果としてこんな状態に

DSCN4182.JPGそして、この事態に対するメロンブックスのコメント:https://www.melonbooks.co.jp/news/index.php?news_id=17

担当者をつるし上げるべき事案ではないのか?

Movable Typeを立ち上げる

ちうわけで、Movable Typeを立ち上げてみた

FreeBSD なので、Ports からインストール

FreeBSD 10.0を入れて、

  • databases/mysql56-server
  • www/MT

をインストールしたけど、よく考えたら www/MT だけで良かった気がする

参考:http://d.hatena.ne.jp/flageo/20120303/p1

Ports が httpd.conf の設定とか全部やってくれるから、rc.conf 編集するだけでアクセス可能になってしまう

このアーカイブについて

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

次のアーカイブは2014年11月です。

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