2009/04/30

git

http://git-scm.com/

git を最近よく使っている。とは言っても、本格的に使っているわけではなくて、git-svn を通して使ってるわけなんだけれども。

とはいえ、ローカルにコミットを貯めておけるだけでも分散VCSを使う価値がある。最近乗り換えた e-mobile はどこでも高速であるわけではないので、いつでもリモートにコミットできる状況にあるとは限らないからだ。ローカルで編集し、ローカルでテストし、ローカルにコミットする。一通り纏まったところで git svn dcommit。いい感じである。

また、今の Ethna プロジェクトのブランチの使い方はまさしく git のような使い方である。次のバージョンを出して落ち着いたら git に移行する作業をするつもりだ。あと半月あまり。時間がないが、着実に、ね(*´~`)

2009/04/28

Geocoding de Android

Google Maps API には 住所やキーワードを緯度経度に変換する Geocoding の機能が備わっているが、勿論使用するにはGoogle Maps API key が必要だ。

http://code.google.com/intl/ja/apis/maps/documentation/services.html#Geocoding_Direct

Google Maps API key 取得のページ に行くと、結びつける特定のURLの入力を求められ、特定のウェブサイトをブラウザから使うのが前提であるかのように読めるが、Android にはそんなWebサイトなんてあるわけがない。

じゃあ Android からは Geocoding できないの? と一瞬青くなったが、Android Maps API Key のページから取得したAPI Key で普通にGeocodingできた。ホッ。

----

そもそもだな、Java からあれだけAPI叩かせといて Geocoding 「できない」と思い込む俺の頭の構造がおかしいという話でした。まる。

2009/04/26

New Machine - Dell Inprison 531s

http://www1.jp.dell.com/content/products/productdetails.aspx/inspndt_531s?c=jp&cid=21538

MX のマシンが吹っ飛んで
以来、空きのマシンがなくなってしまっていた。そこに来て www のディスクまで吹っ飛んだので、ハードウェアの予備がないことに危機感を抱いた次第である。

www と同じくらいの予備機、かつ普段は Windows の開発用として新しくマシンを新調した。それが上記の Dell Inprison 531s である。もともとが AMD64なデュアルコア。メモリを4Gにした上で特急配送を付加しても4万円台。まあ今時ってこんなもんだよね。GWの後半には手元に届く予定である (*´〜`)

普段プライベートでは Windows は一切使わないと公言している俺だが、Visual Studio が必要な場面も少なくない。Windows Mobile の開発環境には必須であるし、Windows でしか動かないテクノロジを用いたソフトウェアをハックしたくなったときに手元に置いておきたいという意図が強く働いている。

2009/04/23

disk broken...(3)

さらに続報です。

phpMyAdmin も復帰させ、古いデータを流し込んでみました。cinnamon氏に確認を貰ったところ、2007年までのデータしかないらしいす(´ー`; )

ということで、お手元のバックアップをFTPでホームディレクトリにアップロードするか、メールで送って頂くようお願いします > viking

これで、データ以外は元の環境に戻っているはずです。phpMyAdmin のアカウント情報も元のままです。

----

ssh 経由のログイン権限がある方へ:
  • ssh_host_dsa_key が今回の事故で失われてしまいました。新しい鍵の fingerprint は以下の通りです。.ssh/known_hosts のエントリを削除した上でこのシグナチャを確認頂き、アクセスするようにお願いします
2048 86:e8:4f:60:65:51:1f:5c:fc:1b:4c:9d:70:2a:1a:59 /etc/ssh/ssh_host_rsa_key.pub (RSA)
1024 79:b4:e4:7e:04:a4:a7:ba:cb:aa:e9:19:80:4f:e5:30 /etc/ssh/ssh_host_dsa_key.pub (DSA)
  • crontab をユーザ権限で編集していた方は、お手数をお掛けして申し訳ありませんが、作り直して頂くようお願いします。
  • Linux の再インストールに伴い、まだその他の影響が残っている可能性があります。不都合な設定や動作、不足しているソフトウェア等ございましたら、手近な方法で私に連絡をお願いします。
----

また、今回の件で関係各位にはご迷惑をお掛けしました。事故とはいえ、お手数をお掛けしたことをお詫び致します。。 m(_ _)m

2009/04/22

disk broken...(2)

昨日の続報です。

現在 MySQL を復旧中です。PHP, MySQL については既存の実行環境を変えず、データ以外はすべてを元に戻すように動いています。データについては、www.mumumu.org を外部に公開(2004年?) してから、2008年7月あたりまでのデータが含まれていると見ていますが、実際のところは使用している人に確認してもらわないことには、正確なところはわかりません。

今日の朝までには、データ以外については全て今までの環境に戻す予定です。

----

cinnamon, vikings: お手数をお掛けして申し訳ないのですが、現在持っている MySQL データのバックアップを FTP 経由でホームディレクトリ(public_html以下ではない!) にアップロードして頂けますでしょうか。そのデータが使えるかどうかは、中身を見てみて判断させて下さい。

仮にアップロード出来なかった場合は、 mumumu at mumumu dot org に添付してメールして頂きますようお願いします。

disk broken...

帰宅してみると自宅のwwwサーバに繋がらない。IRCプロキシも切れている。ディスプレイとキーボードを繋いで調べてみると ls などの簡単なコマンドにも Input/Output Error ばかり返ってくる。LiveCD で辛うじて www が入っている /home はマウントできたものの、MySQLのデータが入っている /var がマウント出来ない状態になっている。

ということで鯖を貸している方々、ちょっと今復旧中です。。今データの取り出し作業中です。とりあえず Web のデータは取り出せましたが、MySQL のデータがまだ取り出せていません、、MySQL については復旧不能かも。。過去のデータがどこまで残っているかも調査中。。

ということでしばらくお待ちを。。

----

[ Update April 22th 1:51 JST by m ]

FTPのデータも取り出せました。現在 ログイン情報を復旧中。このあと httpd, vsftpd を起動予定。。

[ Update April 22th 2:07 JST by m ]

vsftpd を復旧させました。とりあえずログインと読み書きはできるはず。

[ Update April 22th 3:56 JST by m ]

httpd は復旧させました。MySQL を使っていないユーザのサイトは復旧済みです。
MySQL のデータは 半年前までのデータが生き残っていた模様。。ぐう。。申し訳ないです。。現在それだけでもとりあえず復旧中です。

2009/04/21

[memo] cygwin

http://www.cygwin.com

久々に cygwin を触ったのだが、なんか日本語入力したいなと思ったり、ターミナルをUTF-8で扱いたいなと思ったりなど、いろんなことを考えてちょっと調べた。以下は自分用のメモである。
  • cygwin には nkf が入っていないので、ダウンロードしてきてコンパイルする必要がある。これに伴い、gcc と make は必須になるので留意すること
  • cygwin のターミナルをUTF-8で扱いたい場合は、cygwin1.dll の replacementを作っている人がいるので参考にすること。ここには .inputrc も入っているので、参考にすること
  • subversion, git, python, ruby, screen は必ず入れること
  • ターミナルからの日本語入力は、デフォルトで alt + 全角/半角 しか受け付けないので留意すること

2009/04/20

spam detection software report

http://spamassassin.apache.org/full/3.2.x/doc/Mail_SpamAssassin_Conf.txt

spamフィルタとして spamassassin を使っている。こいつは検知率も非常に優秀で重宝しているのだが、メールに以下のような残念なレポートを付加してくれる。

----

Spam detection software, running on the system "mx.example.org", has
identified this incoming email as possible spam. The original message
has been attached to this so you can view it (if it isn't spam) or label
similar future email. If you have any questions, see
the administrator of that system for details.

Content preview: test mail [...]

Content analysis details: (-93.5 points, 5.0 required)

pts rule name description
---- ---------------------- --------------------------------------------------
-100 USER_IN_WHITELIST From: address is in the user's white-list
3.5 BAYES_99 BODY: Bayesian spam probability is 99 to 100%
[score: 1.0000]

----

これは普段spamに興味がある人や管理者には有用かもしれないが、俺はこういう詳細な原因を記したレポートには残念ながら興味がない。要するに結果としてのスコアのみが重要なのである。

これをメール本体から除去する方法はないかね、と思いマニュアルを調べてみた。
結論としては、以下の2行を ~/.spamassassin/user_prefs に加えることで、上記のレポートは出なくなった。

clear_report_template
report

2009/04/18

Kubuntu 9.04 Jaunty Jackalope


http://www.kubuntu.org/news/9.04-rc

Kubuntu 9.04 RC がリリースされた。KDE のバージョンは 4.2.2 となり、非常に洗練された状態に仕上がっている。8.10 Intrepid は バージョンが 4.1 でデキがあまりよろしくなかったのだが、今回は非常によい。
  • Pentium M 1.20 GHz, RAM 1.2 G の状態だとちょっと動作がもっさりするところがある。だがそこそこ使えるレベルである。少なくとも 4.1 系のあのもっさりした恐ろしい不安定さはない。
  • Qt 4.5 となった。UI が非常に綺麗だ。Qt 2.0の頃の感動を思い出した。
  • KDE 4 はシンプルさを前面に押し出している。KDE 3 の頃の「かゆいところに手が届き、なんでもできる」感は失われたものの、不便を感じる訳でもない。理由のあるものが残っていると思う。
  • ネットワーク設定 Plasma Widget は、無線をANY接続OKにしないと繋がらない上、WPA2-PSKが使えなかった。
  • adept_updator が アップデート専用 Plasma Widget に変わっている。違和感はあるものの、まあ使える
  • デフォルトのIRCクライアントが Konversation から Quassel になったので試してみたが、個々のチャンネルにエンコーディングが設定できないので個人的には使い物にならなかった。シンプルでよくできてると思うんだけど、IRC プロキシを通して複数のエンコーディングを混在させている環境では現状使わない方がよい
  • Linux kernel は 2.6.28 となり、e-mobile も USB を繋いだ上で 携帯側を接続状態にしてやればあっさり繋がった。
  • 日本語入力については、俺は 8.04 からアップグレードしたため、uim + anthy の環境をそのまま引き継いだ。よって、デフォルトの環境は試せていない。
----

ひとことで纏めれば、ようやく俺のような一般ユーザでも楽しめる完成度になったといえよう。KDE 4 is for you? という質問には、今なら Yes と言える。

e-mobile S22HT

https://store.emobile.jp/HS/dual_diamond.html

WILLCOM の W-ZERO3 Advanced es から e-mobile に乗り換えた。理由は回線速度以外にはない。モバイルで一昔前のブロードバンドの速度が(理論上とはいえ)利用できるのは大きな魅力である。これは開発作業にも寄与するものだ。これを朝のもくもく作業に生かしていきたい。

・・・とはいえ、場所によっては非常に通信速度が遅くなる場合があり、リモートの開発環境が役に立たない場合がある。その場合は基本的に git などの分散VCSの作法を備えたソフトウェアが役に立つ。

----

今朝は早速ドトールでひと作業した。夜遅くまで起きて作業を一気にこなすスタイルから、少しづつ積み上げる方式に変えていく方針の一環である。やっぱり通信速度が遅かったので、git でローカルコミットしてから git svn dcommit する方式が役に立った。

なお、Linux からの接続については、RNDIS ドライバが入っている Linux 2.6.27 以降でないと繋がらないと思われる。少なくとも Kubuntu 8.04 の Linux 2.6.24 では繋がらなかった。この問題については、Kubuntu 9.04 にアップグレードすることで俺は解決した。現在、S22HT でも問題なく繋がっている。詳しくは、gihyo.jp の記事を参考にするとよい。

2009/04/15

mokumoku

http://moku2.g.hatena.ne.jp/

PHP使いの一部で「もくもく会」なるプラクティスが流行っている。主に朝に、一定の作業を喫茶店などでもくもく(黙々)とこなすことである(と思う)。

最初は「家でやればいいじゃん」と思っていたのだが、実践する場所はともかくその考え方の「一部」は取り入れてもいいんじゃないかと最近思い始めた。どうにも夜遅くまで起きて集中するという生活スタイルが様々な事情から自分に合わなくなってきているからである。

昔は「mumumu たんはいつ寝ているのかわからない」と言われたが、もはやそんな不摂生ができる年齢でもないことを受け入れざるを得なくなってきたことは踏まえなければなるまい。そういった中で成果を出せるようにするには、こういったことも有効なのだと思う次第である。

Linux From Scratch

http://www.linuxfromscratch.org/

Linux は厳密に言えば kernel の部分を指すことは大抵の人は知っている。だが、その上にユーザランドがどのように組み合わせて作られているのかを意識することは(大抵の人にとっては)少ない。また、それを意識する必要もない。良い時代になったものである。

だが、自在にユーザランドをカスタマイズできないといけない世界では話がちょっと別になってくる。そのような視点で Linux From Scratch は極めて実践的な資料を提供してくれている。

現在の最新はバージョン 6.4 であるが、ソフトウェアの進化に伴ってアップデートを維持するパワーには敬服するばかりである。プロジェクトリーダーの Gerard Beekmans をはじめとする面々には深く感謝したい。

CakePHP Development Camp Result

合宿中は2日とも2時間半睡眠だったのが祟り、月曜日に割と響いた気がする。3日遅れのエントリだが、やりっぱなしはいけないのでここに記す。

総じて言えば、工作員全員が非常に意欲を持って議論をし、手を動かした2日間だった。

Ethna工作員としてコードになった(trunkに取り込んだという意味での)成果はプラグインの命名規則の変更が大きな所だけど、アイディアレベルのコードも色々と出てきた。合宿最終日にも述べたことだが、コミッタたちが自信を持って作業ができるようにするプラクティスを自然に確立できたことがこの合宿の一番の成果だと思う。

----

だが、それに伴いプロジェクトの力学も変化してきているのは確かだと思う。手を動かすことも勿論だけど、皆の意欲をうまく束ねて(中途半端でなく、かつコミッタのオナニーに終わらない)コードの成果に繋げられるかが重要になってきたなあ、と。

まあ最終的にはユーザ的にどうなるの?という視点が一番重要なんだけど、フレームワークって流儀を押し付けるものだから、「これがオレ流で正しいんだからコードにしろよ」ってのもアリなわけで、そこらへんをうまく見極めながらのハンドリングが重要になってきていると感じている。

そういった状態を楽しめるかどうかは俺の中では未知数であり、その意味では自分が試されてるな、とも思いました。まる。

2009/04/02

CakePHP Development Camp

http://d.hatena.ne.jp/yandod/20090325/1237993691

CakePHP 使いが開発合宿をやるそうです。Ethna工作員も何人か紛れ込むらしいので、俺も紛れ込んでくることにした。ライブで工作員がコードを書く目的で揃う機会は滅多にないので、是非これを生かして成果を出してきたいと思う。
  • 最低限 Ethna_ViewClass まわりの改善は終える (その1, その2)
  • ORMの実装もまだ途中なので進められればOKネ
  • チケットが溜まってきているので出来るだけ多く潰しまくる
  • PlanetPHP の port もまだだったな、、(´ー`;)