About Digital

i wanna be a bot...

DBD::mysqlがMySQL5.6、OS X Mavericksに入らない

Posted in  Perl, Tech | Comments


※2014/02/06

入った


MacOS 10.9にしたiMacでもPerlとMySQLを使った開発がしたくなったのだが、DBD::mysqlがうまく入らなくてこまってる。あと、MySQL自体をHomebrewから入れるときに少し躓いたからそのこともメモとして残しておく。

  • 環境

    • OS X Mavericks (SnowLeopardからアップデート、過去に一度mysqlのdmgインストール歴有り)

    • MySQL5.6 (by Homebrew)

    • Perl5.18.1 (by plenv)

PerlでJSONを出力する。JSONとJSON::Syckの違い

Posted in  Perl, Tech | Comments

PerlでJSONを吐き出す方法、いくつかあるんだけど、どうすればよいか毎回忘れるし、プロジェクトによってJSON::XS使ってたりJSON::Syck使ってたりとまちまちだから、自分なりの方法をここにメモしておく。わりとゆるふわっとしてるので間違いあるかも。

Web::Queryのtestがコケた話

Posted in  Perl, Tech | Comments

先日、CentoOSにWeb::Queryを入れようとしたらこけてハマってた。レガシーなシステムでの使用だったので当然Cartonなんか使ってないし、モジュールはそれぞれのサーバに入って直接cpanmする形だったが、やはりこういったレガシーな開発手順というのは早めに駆逐されたほうが世の(開発者)のためだと感じた。

開発環境では一発で入ってたし、試しにと手元のMBAにcpanm Web::Queryしても問題なく入ったのに、肝心の本番サーバでWeb::Queryが入らない。テストでこけてる。その他perl5.8.8を新規に入れたまっさら状態のサーバを用意して試しても見たけど再現しない。なんなんだ。

ためしに最新版ではない、0.16とかいくつか古いバージョンのWeb::Queryも試したけれど、特に違いはうまれなかったので、最近の変更が原因ではなさそう。

サマリーだけ抜き出すとこんな感じ

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Failed Test        Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/07_remove.t         2   512    10    2  20.00%  2-3
t/08_indent.t         1   256     2    1  50.00%  1
t/09_as_html.t        8  2048     8    8 100.00%  1-8
t/add.t               4  1024     8    4  50.00%  1-4
t/add_class.t         2   512     4    2  50.00%  1-2
t/after.t             1   256     2    1  50.00%  1
t/append.t            1   256     2    1  50.00%  1
t/before.t            1   256     2    1  50.00%  1
t/clone.t             1   256     2    1  50.00%  1
t/contents.t          2   512     4    2  50.00%  1-2
t/detach.t            2   512     6    2  33.33%  1-2
t/insert_after.t      1   256     2    1  50.00%  1
t/insert_before.t     1   256     2    1  50.00%  1
t/prepend.t           1   256     2    1  50.00%  1
t/remove_class.t      2   512     6    2  33.33%  2-3
t/replace_with.t      4  1024     8    4  50.00%  1-4
t/store_comments.t    2   512     4    2  50.00%  1-2
Failed 17/28 test scripts, 39.29% okay. 36/135 subtests failed, 73.33% okay.
FAIL

OS X MavericksにSnow Leopardからアップデートした

Posted in  Tech | Comments

手元のMacBookAir Mid 2013はまだMountainLionだけど、職場で使ってるSnowLeopard機をMavericksにアップデートしてみた。

アップル、「OS X Mavericks」を無料公開!

アップルは22日(現地時間)、OS Xの最新バージョン「Mavericks」の公開を開始した。互換性があるMacユーザーであれば無料でアップロード可能となっている。

これまでのOS X(例えばLion)は安いとはいえ無料じゃなかったので、アップデートをするには会社のシステム管理者的な人に申請をして話を通す必要があったのでこれまでアップデートを面倒臭がってしていなかった。が、しかしいい加減MacBookAirと環境が大きく違うのが地味にストレスになっていたのでこの無料アップデートに飛びついてみた。

環境

  • Mac OS X Snow Leopard 多分 2009年くらいの

  • 500GB HDD

  • 4GB RAM

ちょっと今自宅だし詳細なデータはないけど、一応環境はこんなもんだと思う。

前準備

会社のだし、とくにタイムマシーンとかでバックアップとかもとってないので、いきなりアップデートするのは怖い。そこで大事なファイルのバックアップをとったり、homebrewで入れたもののリストを作ったりした。

$ mkdir -p ~/.brew
$ T=`date +%Y%m%d`
$ brew list > ~/.brew/list$T.txt
$ brew list | xargs brew info > ~/.brew/info$T.txt

入れたものリスト(brew list)だけではコンパイルオプションとか残らないから、念のためそれぞれの情報(brew info)も残しておいた。

インストール

インストール自体はApp Storeからすんなり行く。最初に残り44分て出るけど、まぁ実際は一時間くらいかかったかな。特に躓くことはないはず。SnowLeopardでも。今回、SnowLeopard –> Lion –> MountainLion –> Mavericksとか段階を踏まずに一発でMavericksを入れられるのが地味にうれしいところ。

セットアップ

インストールが終わると後は普通にログインして使いはじめるだけなんだけど、TotalFinderが対応してないので「互換性のないフォルダみたいなところに移動しました」とかでた。これは少し残念だけど、今回のMavericksからデフォルトでFinderにタブが付いたのでとりあえずは問題ないかな。(※最下部追記あり)

あとはXcodeを改めて入れたり、Javaを入れたりで、割と時間がかかってしまった。SnowLeopardからのアップデートだったので色々とシステム環境設定から細かい挙動をいじるのも少し大変だった(スクロールはナチュラルじゃダメ派)。

実際のところ、ターミナルとEmacsさえ動けば良いのでそこら辺の挙動しかまだ確かめてないけど、特に問題なく使えてると思う。ただ、brew upgradeしたら(brew updateはできた。)、一部のhomebrewで入れたツールが「libc++で入れなおしてくれ」みたいなこと言うので、次の出社時にはそれの対応をしなきゃいけないっぽい(まだ入れなおしてない)。

libc++といえば、

ちょうど今日この記事を見たので貼っておく。なんか関係有るのかな。

他気になる点としては、アップデートとかで色々入れてた直後だからってのもあるけど、ファンが少し前より気になるくらいに活発にうごいてることと、全体的に動きがもっさりするようになった気がすることか。まぁこれはもう少し使ってみないとわからないかな。

おわりに

手元のMacBookAir(MountainLion)はもうちょっと人柱が出て、色々アプリやらなんやらが対応してからアップデートしようと思ってる。

ちなみに

アクティビティモニタのDockでメモリ使用量表示するの地味に便利に使ってたんだけど、Mavericksで出来なくなっててちょっとショック。

ActivitieMonitor

↑これね。

※追記(2013/10/31)

TotalFinderはアップデートによりMavericksに対応したので今は快適に使ってる。

Macを購入したら絶対に使いたい!超オススメアプリ10選!決定版

Posted in  Etc, Tech | Comments

さて本日は、MacBookAirを今年に買いかえてから、数々のフリーソフト・シェアウェアを使い続けてきた私が、MacBookを買ったら「絶対に」導入したい、超厳選アプリをランキング形式でご紹介したいと思います!今回は無料で使えるものばかり集めてみましたので、シェアウェアに関しては後日またご紹介したいと思います(^^)

それでは、ご覧ください!

↓↓

vimを使いやすくする

Posted in  Tech | Comments

Emacs派でEmacsは結構拡張してるけど、vimだってコマンドラインから結構手軽につかってる。なぜならEmacsは起動に時間がかかるし、CocoaEmacsに最適化した設定だからあまりターミナルから起動したくないから。もちろんそこらへんもいろいろ工夫はしてるけど、ほんとにさっくりファイルを弄りたいときなんかは結構vimで弄ったりする。

これまではtabの設定とか最低限の設定をした.vimrcを使ってたんだけど、せっかくだからvimももう少し便利にすることにした。まぁ何かに行き詰まったときにこういう設定をすると仕事してる気になって落ち着くっていう悪い癖なだけな気もする。

MacVim Kaoriyaをhomebrewから入れた

Posted in  Tech | Comments

Emacsを愛用していて、システムデフォルトのではなくhomebrewで自前のEmacsを入れてるわけなんだけど、不公平な気もしたのでVimも自前のを入れることにした。

MacVim KaoriYa

やはりvimもGUI版があれば使いたいと思ったのでMacVim KaoriYaを導入することにした。MacVim Kaoriyaのメリットは上記リンクに詳しく書いてあるし、なんだったらいろいろな設定方法も書いてある。

環境としては

  • MacOSX Mountain Lion, Intel Core i7, 8 GB RAM

と、後述するSnowLeopardで導入した。

YAPCに行ってきた

Posted in  Etc, Perl, Tech | Comments

YAPC::ASIAに行ってきた。

結局明日からの音響学会の準備が会ったから一日目しかいれなかったけど、やはり参加してよかったし、来年以降も参加したいと思った。どうやら今回で@lestrratさん、@941さん体制が終わるらしいけど。Perlハッカーコミュニティの文化は本当に素晴らしいと思っていて、なんとか自分も貢献したいと思う。

以下、印象に残った発表


[学術分野におけるperl] by @papixさん

PerCUDA

自分も信号処理で高速リアルタイム計算とかがやりたくてGPGPUとか一時期やってたし、とても興味がある話だった。けど、自分はリアルタイムで本当にコンママイクロ秒以下の世界で計算するためにGPGPUやってたから、そこをPerlのバインディングにしてその分GPU側との情報のやりとりとかに時間がかかるようだったら少しもったいないとも思った。

その他研究のレガシーとモダンのこと

Emacs使いとして尊敬する@syohexさんと同じ研究室と聞いて少しびっくり。研究自体もPerlでコンパイラのバグ検知とかすごい面白そうだと思った。

[社内開発簡単化と世界で戦う開発を考える技術] by @yappoさん

ミッションステートメント

「やることやらないことを最初にまとめておくとあとでぶれない」

これ、当たり前のことなんだけど、やっぱり当たり前に大事だと思うし、それを具体的にモジュールの例を上げて話してくれて説得力あった。

普段コピペとかを嫌うのに、最初の設定ファイルはコピペとかしちゃう

そういうのは秘伝のタレ化してしまうし、意味もわからなくつかってしまう

コピペ元の人はコピペされることを意識して書いてない。そしてバグを直してもそれが追従されない

今回のYAPC::ASIAキーワード「秘伝のタレ」。これも考えてみれば当たり前なんだけど、やっぱりコロンブスの卵的な話だと思う。そしてその現状を打破するために自分でセットアップスクリプト書くってのはまさしくstfuawscを体現しててカッコ良いとおもった。

最後に

普段Blogとかで追ってるすごいプログラマ達を間近で見られてとてもよい経験になった。すごくモチベーションが上がった。Perl以外の分野でも活躍するタレント性のあるハッカー達をみると、Open&ShareであったりブログやOSS活動を通じての体外活動が大事なのがよく分かる。

YAPCに行こう

Posted in  Etc, Perl, Tech | Comments

YAPC::ASIAが始まった。

  • 慶応義塾大学日吉キャンパス(日吉駅そば)

  • 9/19 ~ 9/21

20日は一日いる予定で、21はもしかした午前中しかいられないかも。けど楽しみ。学生チケットは¥0ってものうれしい。会場でよろしく。

emacsとvimの使い分け

Posted in  Etc, Tech | Comments

ひとりごと

EmacsはMacBookAirローカルでCocoaEmacsを動かして、trampでサーバ上のファイルいじったりするから徹底的にいじってるけど、Vimは逆にsshしたサーバ上で動かすことが多いから出来るだけシンプル且つデフォルトの挙動とそこまで違う挙動をしないような設定をしてる。

そういう意味ではC-hdelete-backward-charにすらなってないような他人のEmacsは正直使うことが苦痛にすらなるレベル。ネット上のリポジトリの設定ファイルを手軽に読む方法とかないのかな。git cloneとかせず、urlをしていするだけ、みたいな。