3月 23
this.nativeWindow.notifyUser(NotificationType.CRITICAL);
AIR1.5です。サンプルがAdobeのサイトにもあったんですけど、AIR1.0っぽくてFLEX Builderに怒られました。上記の例だと、アプリケーションにフォーカスがあたるまで点滅し続けます。すでにアクティブの場合、なんにも起こりません。
this.nativeWindow.notifyUser(NotificationType.INFORMATIONAL);
こっちの例だと2~3回タスクアイコンが点滅します。アクティブであろうとなかろうと点滅します。ただ、点滅し続けてはくれないのでアラートとしては物足りないかも。
あ、Windowsでのサンプルです。MacだとNGです。クロスプラットフォームを謳い文句にしているのに、ちと微妙な気分です。
3月 19
BIのプロジェクトもあったりしたので、統計学にも多少の知識はあったつもりです。相関係数を求める関数作ったり、成長率のブレからアラートをだしたり、集合知を実装する上でも統計学は必須でした。
が、やはり付け焼刃、「ただ式を知っていただけ」でした。
本格的に、とまでいかなくてもきちんと意味から理解しないと自分の武器にはならんと基礎から勉強しなおそうと思って選んだ本がこちら。とってもわかりやすいです。
知っていたことも、改めて意味から学びなおすと深いです。もう少し知識を深めてから以前読んだ本を読み直して、「難解すぎて理解できなかった」過去の自分におさらばしたいところです。
コレが以前あまりに知識不足で吸収し切れなかった本。もっと成長したいです。
3月 14
長いことSIやってると、仕事が少しずつコンサルにシフトしていきます。まぁPMなんて、ほとんどコンサルですよね。
IT業界に限った話じゃありませんが、やはり油断をするとどんどん時流についていけなくなります。常に勉強は必須です。キャリアが長くなればなるほど幅広い知識が要求されます。ゴールはありませんね。
ハセテツは本を大量に読みます。経済、マーケ、統計学、宗教史、哲学、小説、マンガ、技術書、などなどです。最近読んだ「Webでどうやってモノを売るか」に関する本2冊をご紹介。
面白かった。バイブルとまではいいませんが、常にデスクに置いておきたい本です。
はっきりいって、目新しいことは書いてありません。ただ、どれだけ自分の意識が細部に行き届いていなかったのかを痛感させられます。当たり前のことを当たり前に、丁寧に行う。チェックリストとして大活躍してくれそうです。
あぁ、まだまだ道は遠い。。。
3月 13
RubyonRailsアプリケーションでサーバサイドでファイル圧縮、パスワードの設定をしてダウンロードさせる必要があったので調べてみました。
ZipRubyがあったりRubyZipがあったり、どっちがどうなんだか、相変わらずRubyは混乱します。今回は評判のよさそうなZipRubyを使いました。gemでインストールできて、バージョンは0.2.9でした。バージョン低いのがちと気になります。
gem install zipruby
これだけでインストールは終わりです。
require ‘rubygems’
require ‘zipruby’
Zip::Archive.open(‘hoge.zip’,Zip::CREATE) do |arc|
arc.add_file(‘test.pdf’)
end
Zip::Archive.encrypt(‘hoge.zip’, ‘password’)
コレだけです。簡単すぎる。
複数ファイルをひとまとめにしたい場合は
arc.add_file(‘test.pdf’)
を繰り返せばOK。ただ、フォルダごとごっそり圧縮、という方法は不明。フォルダ名を引数に指定したら怒られてしまいました。当然の結果。
最後の行がパスワードの設定です。ZIPファイル作るときにパスワードを設定するのではなく、既存のZIPファイルに対してパスワードを設定する、というイメージですね。Lhaplusではちゃんと解凍できました。
3月 12
MySQL/Ruby と Ruby/MySQL の二つがあるようです。どっちがどっちか混乱しましたが、MySQL/Rubyがgemでとってこれて、Cで書かれたAPIのようです。Ruby/MySQL はRubyで書かれているようで、比較的低速らしいです。今回はMySQL/Rubyを利用しました。
gem install mysql
で一式インストールできます。PHPのPEARやRubyのgemは、一度つかったらやめられません。これは堕落なのでしょうか。
で、今回はWindows上にMySQL5.0をインストールしてつないでみたのですが、バリバリ文字化けました。DBはUTF8で作ってあって、ソースも以下のようにUTF8であることを明記していました。
require ‘rubygems’
require “mysql”
require ‘iconv’
$KCODE = ‘UTF-8′
db = Mysql::connect(“ホスト名”, “ユーザ名”, “パスワード”, “DB名称”)
rs = db.query ‘クエリ’
rs.each do |item|
p item[0]
end
なんでなんで?と調べていたら、my.ini(あー、iniってあたりがWindowsだなー、Linuxだとmy.cnfだったかな?)の[mysqld]に
default-character-set=utf8
skip-character-set-client-handshake
の追記が必要らしい。これはクライアントからの接続時に「文字コードはUTF8でっせ」とデフォルトで設定してあげるためのものらしいです。「set names utf8」と同じ意味ですね。これで文字化けずにWindows上でRubyとMySQLを利用することが出来るようになりました。
これまではC#とSQL Serverで統計とか集計のプログラム書いてたけど、Rubyの方がラクチンなんですよね。Railsばっかり注目されてますけど、Rubyは便利ですよ。