コンピュータやソフトウェアのあれこれ@道民(&元道民)
未分類
「sotarokを勝手に祝う会」についてなど
9月 18th
あまりにもふざけきったエントリだけでは申し訳ないので,ちゃんとイベントについても感想を。
イベントの発案自体は 8/5 17時あたり。その数分後に atnd が立ち,みるみるうちに 50人も集まってびっくり。
最初は集まった何人かで sotarok を囲んでどこか飲みにいければいいかな,という程度にしか考えて居なかったので「エラいことになってしまった…」と思った。
最初は僕と wozozo で「どうしよねこれ..」と途方にくれていたけれど,nequal のみんなはやはり最高の仲間だった。いやほんとみんなありがとう。って俺が言うのもなんか変かな。
その日の夜には wedding.nequal.jp を公開した。これは僕が帰宅してからさくっとでっち上げたもので,インターネットエクスなんとかなど全く考慮しない素敵な素敵なコーディングを披露できた。ごめんなさい。
ちなみに,ハートマークに sotaro が二人並んでいる,冷静に考えるととても気持ちの悪い素敵な Happy Wedding 画像は,アシアルの方にサクっと作っていただいた,というよりは,いつの間にかあった。すごい。
慣れない大規模なイベント,しかも準備期間は2週間。今回のイベントの MVP は @yuchimiri ですね。会場の手配からいろいろな調整もゆちがいないと全然できなかったと思う。ほんともう頭が上がりません。言いだしっぺの僕は結局ロクに何も出来なかったなー。
イベント前後の様子は このtogetter でまとめられています。うん,バタバタしてますね。イベント当日も togetter で見たほうがきっと臨場感が伝わるんじゃないかなとかとか。
写真とか,いろんな人が撮ってたので,気が向いたら見せてくださいね。進行やらなんやらで結局あまり記録できなかったのが心残りです…。
二人には喜んでもらえたかな。幸せになってくれるとうれしいな。
2007年末に nequal を立ち上げたときは,こんなことになるなんて想像できなかったけど,本当に素敵な仲間が集まったなーー。とかつらつら書こうと思ったけど,先月からずっと draft 状態だった記事をとりあえず公開してしまおうと思いました。なんだか中途半端な感想なのはそのせいです。nequal の生い立ちとかそのへんもいつかまとめてみたい。
最後に。
二度目は無いからな!w
理解できないのは仕方ない。許容できるかどうか。
9月 13th
理解できないのは仕方ない。許容できるかどうか。
先にまとめ
- 理解できない -> 仕方ない
- 許容できない -> 自分の姿勢を見直した方がいい
「君のこと良くわからないけど、君はここにいてもいいよ。そのうちわかりあえるようになるかもしれない」ができる大人がいい大人。
どんな話?
言いたいのは「俺たち、いつの間にか、新しい物に文句を言う方の側に回ってしまったよ。さみしいな。」ということ
[ モバゲーをけなす30代男性を見て思うこと:より引用]
この記事についてでした。盛り上がってますね。僕はとても楽しく読めました。異種の価値観が理解できないことがある
これは仕方のないことだと思っています。全ての価値観を受け入れられるなんて、ちょっと考えにくいですもんね。これは万人に起こることだと思います。
理解できないものを排除しようとする
これは人によって違いが出ると思います。理解できないものでも、そこにあっていいと認められる人、認められない人がいるんじゃないでしょうか。
そういう意味でここがいい大人と駄目な大人の分水嶺になると思います。
相互フォロー推進委員会に対する姿勢にも似た構図があるんじゃないかな
この前書いたけど構図が似てるように思えるんですよね。 http://niku.name/20100908.html どうでしょうか。
相互フォロー推進委員会について僕の知る限りの情報で思うこと
9月 8th
相互フォロー推進委員会について僕の知る限りの情報で思うこと
- 前提
- 僕の知識「相互フォロー推進委員会は勝手にフォローしてきて,フォローし返さないと怒ります」
- 疑問
- 彼らの文化がtwitterに今まである文化と異なるからといって,積極的に場から排除するのを是とするべきだろうか
僕も彼らのことが気にいらないは気にいらないですが,相互フォロー推進委員会の人がtwitterの片隅で相互フォローしあっているだけなら,ほっといて実害はあるのでしょうか.ブロックするだけでは不足でしょうか.
気に入らないから,積極的に排除に動いていいんだろうか?
僕はそうしない方がいいと思います.
「私はあなたの意見には反対だ、だがあなたがそれを主張する権利は命をかけて守る」
[ヴォルテール - Wikipediaより引用]
twitterという1企業のサービスの上で言論の自由を持ち出すのは変ですかね?逆に彼らはサービス利用規約に反しているんでしょうか.もしそうなら粛々とtwitter運営さんへ通報すればいいのではと思います.あばらの2,3本〜という話について
暴力的な言質を取ってまた祭りになるのかもしれないけど,普通に考えて,飲み会開催しますと言っている場所の横で,ふだんやり合っている相手が飲み会を開催します.という事になったらいい気はしませんよね?不気味に思いますよね?
まとめられてません
なんか今の騒ぎが僕にとって不思議だったので,僕の知らない前提があったり,僕の認識が間違っていたりするのではないかと思って文章にしました.ここが違うよーみたいな点があればコメントやらブクマコメントやらで指摘していただけると幸いです.
【9/18】札幌でハンズオン形式の勉強会を開催します【PCあるよ】
9月 7th
2010/09/18(土)に札幌でJPUG主催のハンズオン形式の勉強会を行うそうです。
会場にPCが用意されているのでノートPC等を持参する必要は無いとのこと。無料です。
Rails3 と tDiary3 と Ruby1.9.2
9月 1st
ほっかいです。
とりあえず Ruby1.9.2 がリリースされたようなので、
rvm install ruby-1.9.2
をやっておきました。
その後、自鯖に入れてはおいたがあまり使ってなかった
tDiary を退避させて tDiary3.0 をインストールしました。
CGI で Ruby を使うときは shebang に path を書いておけばいいよと
@hsbt さんと @kazup0n さんからアドバイスを頂いたので、
上のコマンドで rvm に入れた Ruby1.9.2 を使うように指定してみました。
#!/home/hogehoge/.rvm/rubies/ruby-1.9.2-p0/bin/ruby
ということで、 MySQL や Apache のチューニングが足りずに?
やったらと重かった WP はお役御免にすることにしました。
せっかく RubyKaigi でいい刺激を得たので、
英語のドキュメントとか FAQ も読みつつ
赤い方のピルをどんどんキメていきたいなぁと思っています。
そして今は自分用に Redmine をインストールしていますが、
Rails3 で動かすためにいろんなところを読みあさっています。
とりあえず Google で一番上に出てきた
http://redmine.jp/tech_note/install/
ここを見てインストールしてたんですが、
balthasar:~/src/redmine_rails2$ rake config/initializers/session_store.rb (in /home/hogehoge/src/redmine_rails2) rake aborted! no such file to load -- initializer /home/hogehoge/src/redmine_rails2/Rakefile:4:in `<top (required)>' (See full trace by running task with --trace)
とか出る。いろんなサイト見て行き着いた自分の中での結論が、
この Redmine は Rails3 対応じゃないんじゃねということ。
ということでぐぐったら、
jeremy's redmine at rails3 - GitHub http://github.com/jeremy/redmine
がヒットしたので、こいつをとりあえず git clone した。
前述のサイトで rake して sesseion_store.rb を
生成しなきゃあかんとあったのでやってみると、
"bundler install" を実行しろとのこと。
bundler は Rails3 から登場した、 Gems の管理ツールらしくて、
Rails プロジェクトのホームディレクトリに
Gemfile というのがあって、そこになんかいろいろ書いてある。
Gemfile の冒頭に "gem 'rails', '3.0.0.beta4'"
とあるが、もう Ralis3 がリリースされたので、
以下のようにコメントアウト && 追記して "bundler install"を実行。
source 'http://rubygems.org' #gem 'rails', '3.0.0.beta4' #gem 'rails', '3.0.0.beta4', :path => '~/rails' #gem 'rails', '3.0.0.beta4', :git => 'http://github.com/rails/rails.git' gem 'rails', '3.0.0'
今度はこんなメッセージが出るようになったけど、
そろそろバス乗るのでまた後で。
DEPRECATION WARNING: Calling a method in Rails::Application is deprecated, please call it directly in your application constant Redmine::Application. (called from <top (required)> at /home/hogehoge/src/redmine/Rakefile:10)
追記: エラーメッセージで調べたらこんな記事が。
http://jdfrens.blogspot.com/2010/07/method-in-railsapplication-is.html
Re: Perl豆知識
8月 18th
Perl豆知識に便乗というかツッコミというか、です。
Re: 完全修飾名で呼び出す場合も括弧はいります。
use Carp; Carp::croak('aaa');
これは以下のように括弧は不要のはずです。
use Carp; Carp::croak 'aaa';
省略ができないのは、以下のようにメソッド呼び出しのときです。
use Text::Xslate; Text::Xslate->new(path => ['.']);
Re: 無名サブルーチンは最初から最後まで存在する
静的な場合はそうですが、クロージャとなる場合は不要となった時点で破棄されるはずです。
【8/24 追記】↑こんなに事情は単純ではなく、id:perlcodesample さんがコメント欄でおっしゃっているようにサブルーチンの実体は最後まで開放されないようです。id:gfxさんの解説も合わせてご覧下さい(id:gfx++)。
use strict; use warnings; sub Hoge::DESTROY { warn $_[0]->(), " was destroied" } my $static_func = bless sub { "static" }, 'Hoge'; my $message = "dynamic"; my $closure = bless sub { $message }, 'Hoge'; # % perl test.pl # dynamic was destroied at test.pl line 4.
Re: 変数展開の注意
my $name = 'aaa'; my $message = "${name}::aaa ${name}_ppp";
これはもちろん正しいのですが、以下のように書いているコードも結構見かけます。
my $name = 'aaa'; my $message = "$name\::aaa $name\_ppp";
Re: ファイル読込のショートカット
これ、特に意識してませんでした。なるほどー。perlopに確かに書いてます。
この記述は
while (defined(my $line = <>)) { }と同じ意味を持つので0だけが含まれる行なども、正しく読み込んでくれるので安心です。
ついでに "In other boolean contexts, <filehandle> without an explicit defined test or comparison elicits a warning" とも書いてます。へー。
% perl -we 'print $_ if $_ = <>;' Value of <HANDLE> construct can be "0"; test with defined() at -e line 1.
PostgreSQLのマニュアルでよく使われている英単語(ry)その3
8月 16th
最初にPHPでやった時は文字コードをiso8859-1からUTF-8に変換したのに、前回は何でやらなかったんだろうと思ってたら、実はデータベースエンコーディングがSQLASCIIだったというヘマをやってました。
で、UTF-8のDBにインポートしてみようと思ったのですが、pg_read_file()が文字コード指定できないうえに内部でpg_verifymb()されているために、テータベースエンコーディング以外のファイルを読み込もうとするとエラーになってしまいます。せめてtextじゃなくbyteaを返してくれればいいんですが。
この関数をこんな目的で使おうとしているのが世界で一人かもしれないけど。
で、仕方ないんでpg_verifymb()はコメントアウトして(w)、あとpg_read_file()にはbyteaを返してもらうようにします。textとbyteaは内部表現は一緒なはずなので、
=# create function pg_read_file_bytea(text, bigint, bigint) returns bytea language internal as 'pg_read_file';
と、無理矢理再利用してあげればOK。byteaをconvert_fromで変換します。
=# insert into pg84doc
with
s1 as (select (pg_stat_file('html/' || pg_ls_dir)).*, pg_ls_dir from pg_ls_dir('html')),
s2 as (select pg_ls_dir, convert_from(pg_read_file_bytea('html/' || pg_ls_dir, 0, size)::bytea, 'iso88591') as contents from s1)
select pg_ls_dir, contents, to_tsvector('english', contents) from s2;
さて日本語でもやってみてとの声が聞こえてきたので、textsearch_jaでやってみました。トップ30は以下の通り。
=# select rank() over (order by nentry desc),
word, nentry from ts_stat('select vec from pg84jdoc') limit 30;
rank | word | nentry
------+--------------+--------
1 | する | 39986
2 | れる | 13053
3 | 場合 | 5466
4 | 使用 | 5228
5 | できる | 5129
6 | この | 4791
7 | いる | 4624
8 | なる | 4609
9 | 関数 | 4493
10 | ある | 4487
11 | 型 | 3905
12 | 1 | 3765
13 | 列 | 3459
14 | テーブル | 3424
15 | 値 | 3277
16 | postgresql | 2998
17 | データ | 2866
18 | pg | 2860
19 | くださる | 2427
20 | データベース | 2370
21 | 2 | 2330
22 | 指定 | 2326
23 | 設定 | 2318
24 | 行 | 2314
25 | 的 | 2217
25 | sql | 2217
27 | その | 2213
28 | コマンド | 2163
29 | リリース | 2141
30 | 問い合わせ | 2081
(30 rows)


