2012年の終わりに。

いろいろあった一年であった。 勤め先の経営状況がアレな感じになって、今年はずっとニュースをにぎわしていたのが印象的。春の業績次第でどうなるやらよくわからん状況ではあるが、まあ、希望退職しなかった(させてもらえない状況だった)のもあるし、とりあえずできる限り頑張ってみましょうかね。 技術的な話。DVGSはBazaarやMercurialを捨ててgit一本にしてみた。これはわりと幸せになれた気がする。まぁ、LinuxのKernelまわりのカスタマイズをしたりする方向なので相性もよい。職場環境のsubversionもgit svn経由で使うのに慣れてしまい、svnを素で使うのがつらい。今後はgitの導入を進めたいね。 あとはAndroid。Xperia Tablet SやAQUOS PHONE ZETA SH-02Eを買って、Androidへの依存度を高めてしまった。主に使っているアプリはGmailとGoogle ReaderとTweakDeckと電子書籍系(Kinoppy&BOOK☆WALKER)という風味で、主にビューワなのだが。どーもスマートフォンにせよタブレットにせよ、これで文章を書きたいとは思えないのだな。 PCはVAIO Duo 11がポイント。こいつで使ってみた限りではWindows8はよいヤツである。Androidのスマートフォンやタブレットと違い、VAIO Duo 11には文章をそれなりに入力できるキーボードがついているし、CPUはぐっと速いので、メインになりうる存在だと思う。11月末に水没させてしまったので、交換品が来るのは1月中旬なのだが、早く帰ってきてほしいもんだ。 とにかく、まあ、来年はPC的にもデジタルガジェット的に面白い一年であってほしい。

January 1, 2013 · 1 min · 17 words · nekomimist

gitで仕事する生活。

手元バージョン管理を全部gitにしてからはや数ヶ月。最初はいろいろとまどったが、案外慣れてしまうものだ。 まず仕事方面。いろいろな都合から会社の中央レポジトリはSubversionなので、gitはgit-svnと共に使っている。最近の仕事はどっぷりLinuxで、gitでさくさくfeature branchを切りかえて作業ができるのは実によい。 仕事で相手をしているSubversionのレポジトリはtrunk/branches/tagsの標準的なスタイルなので、git svn clone時には-sをつけて、リモートのsvnブランチもローカルのgitのブランチとしてcloneしている。 git svn clone -s (subversionのURL) hoge このcloneはかなり遅いが、まあ、一度作ってしまえば、あとは適当に[cci_bash]git svn rebase[/cci_bash]してゆけば更新されるのでさほど困りはしないはず。 さて、そうやってcloneしたレポジトリの上で、何か機能を作りこむ必要があるときは、 git checkout -b hogehoge と作業ブランチhogehogeを作って作業し、確認が終わったら git checkout master して、git svn rebaseして、おもむろに、 git merge --squash hogehoge あるいは git merge ーno-ff hogehoge としてhogehogeブランチの作業内容をマージしてから最後に git svn dcommit して、またgit svn rebaseしつづける定常状態に戻る。dcommit直前まではsvnのことを忘れていられるのがよい。 自宅環境(Windows&FreeBSD)にはsvnはからまないので普通にgitを使っている。自宅サーバにbareレポジトリを作って、そこにssh経由でpush/pullすることで出先からの取得・更新も可能にしているが、運用練習も兼ねてbitbucketに移動したほうが幸せかもしれないと最近は考えている。 LinuxでもFreeBSDでもWindowsでも、シェルにbashかzshを使っている限りは補完が充実しているので、シェルで使うのが一番だ。ただ、作業はEmacs上で行うので、履歴や差分の確認はEmacs上のEggに頼ることも多い。慣れ親しんだEmacsのvc.elライクなキーバインドなので悩まずに済むのがよい。 さて、コマンドラインでgitを使っていてもコミットメッセージはEmacsを使いたいので、core.editorにはemacsclientを指定している。FreeBSDとLinux上のEmacsは(prefer-coding-system 'utf-8-unix)にしているので何もせずに新規バッファを作ればutf-8になるが、Windows環境は諸処の事情でutf-8を最優先にしていないので何もしないとコミットメッセージが化ける。んで、下記のhookを入れている。 (add-hook 'server-visit-hook (function (lambda () (if (string-match "COMMIT_EDITMSG" buffer-file-name) (set-buffer-file-coding-system 'utf-8))))) 職場でもっとgitとgit svnの啓蒙活動をしたいところだなぁ。

December 2, 2012 · 1 min · 60 words · nekomimist

ruby-1.9.3-p327 on cygwin 1.7

気が向いたのでconfigureしてmakeしたらfile.cでエラーが出た。 --- file.c.bak 2012-11-17 02:56:36.102146900 +0900 +++ file.c 2012-11-17 03:14:50.222683100 +0900 @@ -17,6 +17,7 @@ #ifdef __CYGWIN__ #include <windows .h> #include <sys /cygwin.h> +#include <wchar .h> #endif #include "ruby/ruby.h" @@ -3190,7 +3191,7 @@ len = lstrlenW(wfd.cFileName); #ifdef __CYGWIN__ if (lnk_added && len > 4 && - wcsicmp(wfd.cFileName + len - 4, L".lnk") == 0) { + wcscasecmp(wfd.cFileName + len - 4, L".lnk") == 0) { wfd.cFileName[len -= 4] = L'\0'; } #else trunkを見るかんじ、こんな対応でよかろう。 ...

November 17, 2012 · 1 min · 73 words · nekomimist

VAIO Duo 11雑感。

いろいろ現物の写真を取ったりしたけれど、公開する元気がない :-) ので、雑感を箇条書きレベルで。 VAIO S(SA)との比較。 Core i7-3517UはCore i7-2620Mより定格クロックもTurboBoostクロックでも劣るはずなのに体感では変わらない。 性能変わらずにTDPが1/2に下がったので、ファンはだいぶ静かでありがたい。 VAIO S(SA)の内蔵GPUのIntel HD3000と、VAIO Duo11のHD4000を比較すると50% UPって感じ。 VAIO S(SA)の外部GPUのRADEON HD6630MとVAIO Duo11のHD4000を比べると50%DOWNって感じ。 SSDは1/2強程度の性能のはずだがこれも体感差はない。ま、Readで500MByte/secは出てるからね。 サイズ的には横幅は同じて縦に縮んだ感じ。わりとデカい。 1.6Kg弱から1.3Kg弱になったので、300gほど軽くなったが、手軽に持ち歩ける重さではない。 ACアダプタはだいぶ小さくなってありがたい。 LCDは解像度も視野角も見た目もVAIO S(SA)と比べるのが悪いくらいVAIO Duo11の方がよい。 Xperia Tablet Sとの比較。 Webブラウズの速度は比較するのが悪いくらいVAIO Duo11の方が速い。Cortex-A9は所詮Atom以下だしな。 パネルはVAIO Duo11の方がきれい。Xperia Tablet SのパネルもU30GT-Hと比べると数段きれいなんだけど。 比較するのが悪いくらいVAIO Duo11の方がデカくて重い。「タブレット」と考えたら負けで「タブレットモードもあるUltrabook」だと考える必要アリ。 Window8について。 もともとWindows8はRPの時点で好印象だったので、もちろん印象は悪くない。 ただ、Windows8をマトモに使うには、こういうキーボードとタッチパネルを両方備えた端末が一番だろう。 タッチパネルだけだとデスクトップ画面で悶絶するし、キーボードとマウスだけだと爽快感がないしね。 もうちょっとWindows 8 Style Applicationが増えてくるといいな。 以上。 2012/11/6追記。 VAIO S(SA)とVAIO Duo11比較。VAIO Duo11はノートPCスタイルでは見た目の奥行はわりと小さい。 重ねてみるとVAIO S(SA)とVAIO Duo11の幅はかなり近い感じ。 さらにXperia Tablet Sを上に載せた図。サイズ的に「世界が違う」ことがよくわかる。 以上。

October 29, 2012 · 1 min · 57 words · nekomimist

VAIO Duo 11を予約した。

つい勢いで予約開始日(10/18)に予約してしまった。 構成は下記の通り。 Core i7 3517U (1.9GHz/TB3.0GHz/17W) 日本語キーボード(かな無し) キーボードバックライトなし メモリ 8GB SSD 256GB WiMAXなし & 11a/b/g/n GPSあり CPUはCore i7 3667U(2GHz/TB3.2GHz)でないのは「値段差ほどの性能差がない」「通常使いの発熱は小さいほうがよい」というあたりから。Core i5-3317U(1.7GHz/TB2.6GHz)やCore i3-3217U(1.80GHz)を選ばなかったのは「ノートスタイル時にcTDPで25Wモードを選べない」から。……なにやら矛盾している気もするが、細かいことは気にしない。 キーボードは自分の趣味。バックライトは入れると納期が伸びたのでなしにした。VAIO S(SA)での経験からすると見栄えはよいので入れたかったんだけど、何かの役に立った記憶もないのでまあなくてもよかろう :-) メモリとSSDはどっちも最大のものを選んだ。メモリは後で増やせないので他に選びようがない。SSDは128GBではちょっと不足する気がしたのと、256GBの方がだいぶ速いようなので。 無線はWiMAXと11a/n(5GHz帯)が排他っぽいので、必須な11a/nを選んだ感じ。まぁ、今はIIJmio契約のSINの入ったL-04D持ってるし、スマホ買い替えたらテザリングできるので、特にWiMAXが必須ということもなかろう。 GPSは高くないし入れてみただけって感じ。これで地図見ながら歩いたり自転車乗ったりすることはなかろうが……。 届いたら現用のVAIO S(SA) VPCSA2AJといろいろ比較してみよう。

October 22, 2012 · 1 min · 30 words · nekomimist

Windows Home Server (WHS)が終息してしまう話。

WHSが2011で終息して、Window Server 2012 Essentialsに統合されてしまうとの話で、Windowsクライアントのバックアップを統合的にハンドリングできる安価なソリューションがなくなってしまってちょっと困っている。 WHSv1が出てからずっと自宅のWindowsクライアントPCは物理仮想まとめてWHSにバックアップをまかせていたのでねぇ。何も考えずに直近a日間・b週間・c月間(a,b,cは変更可能)が取れてるし、リカバリDVDやUSBメモリで一発復旧できて便利だったのに、だったのに……。 さて、代替はどうしたものか。 Windows7 or 8の標準バックアップにまかせる → 自動での世代バックアップと一発復旧を諦めることになる。復旧はともかく世代バックアップをあきらめるのはイヤだなぁ。 Windows Server 2012 Essentialsを購入する → $425と高いし、バックアップのためだけに買うのはどうかなぁ……。 他の世代バックアップ可能なソフトを選ぶ。EaseUS ToDo Backupあたり?→無難な気がする。 とりあえず3.の方向でソフトを検討するとしよう。まぁ、VirtualBox上でWHS2011を動かすのもリソース的に厳しかったから、これはこれで割り切れていいのかもしれない。 (8/3追記) EaseUS ToDo Backupを試用したが、やっぱどーもWHSのバックアップの楽さには勝てん。WHS2011がWindows8のバックアップにも対応するならば、しばらくそれでしのぐのがいいかもしれん。

July 31, 2012 · 1 min · 25 words · nekomimist

gitに乗りかえた雑感。

自宅の環境ではMercurialでもBazaarでもそう遅くは感じなかったのだけけれど、まあ、たしかに軽く感じる。会社の環境はアンチウイルスのMcAfeeとの食い合わせが悪くBazaarは使いものにならなかったのがズパズパ動くのは気持ちがよい。 Subversion/Bazaar/Mercurialとの違いとして、管理されているファイルを変更しても[cci_bash]git add[/cci_bash]してステージしてやらないとcommit対象にならないのは面白いと思った。一つのファイルの中のどの部分をステージするかすら[cci_bash]git add -p[/cci_bash]でできる事を考えると、「サボって複数の変更を一つのコミットにまとめてしまうな!」というメッセージを感じるね。 あと、branchとheadが存在が軽いのに戸惑ったりもしたが、便利だとも思う。さっとブランチを作ってその上で開発してmasterにマージして消せるし、[cci_bash]git reset –hard HEAD^[/cci_bash]でhead(とindexとworking tree)が履歴を辿って戻せるというのも新鮮。戻りすぎてもreflogに残っていればまた戻れるので安心。すごい「ポインタ感」。 ちょっと困ったときに、ぐぐると情報がすぐにひっかかるくらい情報が溢れているのはよい。Mercurialはまだよかったけど、Bazaarの情報はホント少なかったのでね。 コマンドはなかなか覚えられないが、コマンドラインで使ってナンボなかんじ。ただ、GitHub for Windowsの割り切り方はそれなりにうまい。Git Extentionsの方がずっと機能は多いのけれど、「どうしてもGUIで見たいものは何か?」と考えると、案外かなりの場合はGitHub for Windowsで足りると思う。どうせ込み入った作業はシェルから作業するからね。

July 3, 2012 · 1 min · 17 words · nekomimist

もうgitでいいや。

自宅のファイル管理環境としてBazaarをしばらく使ってたのだが、どうもあまり流行らない感じだったので、今年に入ってMercurialに乗りかえていた。が、なんかどうもgitの勢いがさらに増している感じがしていて、gitを知らないのはイマイチなのではないか、と思ったので、gitに乗りかえてみた。 まず、mercurialのレポジトリをgitに移行する。レポジトリはFreeBSD環境に全て入っていて、Windows側はすべてそれのcloneなので、FreeBSD環境で移行さえできればよい。portsでMercurialとgitを入れて、hg-fast-exportを使えば、hg-fast-exportの制限にさえひっかからない限りは悩むことはない。うちでは制限にひっかからなかったので悩まずに済んだ。 で、git。手元の環境はWindowsなので下記2点を使っている。 GitHub for Windows Cygwinのgit うちのコマンドライン環境は非常にCygwinに依存しているので、コマンドラインで使う時はCygwin gitを使い、グラフィカルに見たい場合はGitHub for Windowsを使うという感じを目指している。GItHub for Windows 1.0.11でコミットログの文字コードがあやしくなっていたが、現状最新の1.0.12では直っているので問題ないようだ。 さて、GitHub for WindowsのバックエンドはmsysGitなので、つまりmsysGitとcygwin gitの両刀使いになっている。最近のmsysGitはファイル名をUTF-8として取り扱うので、この2つはあまり齟齬なく同居できるはずだ。 GitHubのアカウントも取ったけど、無料の範囲だと問答無用で公開になるのが悩みどころ。そこはbitbucketの方がよいのだよなぁ。

June 30, 2012 · 1 min · 19 words · nekomimist