2012-02-06
String#succは、辞書順ではない
ruby | |
ぼけっとしてて気づいてなかった。
"999"の辞書順で次の文字列は、"999a"や"9990"であって、"1000"ではない。
["999", "1000"].max => "999" ["999", "999".succ].max => "999"
後者は直感的に変だと思うんだけど。
ひとまず、適当に辞書順になりそうな感じのメソッドを定義して逃げることに。
class String def succc case self[-1] when "9" self + "0" when "z" self + "a" when "Z" self + "A" else self.succ end end def nexxt self.succc end end
cとxが一つずつ多い。
2012-01-18
@kmizuがjoinしました
ちょっと前の話になるのですが、忙しくて記事にできていなかったので記事にします。
@kmizuがユビレジで働くことになりました。1月4日からです。そういうわけで、これからユビレジは全力でScalaに移行します。Good by Rails!!
ということにはならないのですけど。(理由は私がScala嫌いだから、ではないよ!)
なんかかっこいいことを書きたいのですが、良く考えたらかっこいいことを書くべきなのは、転職した人のほうだと思うようになったので、諦めます。ついでにどちらかと言うと「会社辞めました」エントリのほうが、「続けるか辞めるか」の選択肢が明白なので面白いんだけど。
これで、昨年9月にオープンした開発チームのオフィス、通称ユビハウスも4人。次に人が増えたら、私の席が無くなり、MacBook Air持って縁側で仕事することになります(雨の日は駅前のMac)。現時点では積極的に人を探すモードではないのですが、細々と募集はしておりますのでsoutaroを追い出したい人はふるってご応募ください。
2012-01-07
綺麗なプレゼン用スライドを作るときに使う写真を探す、1つのテクニック
綺麗なプレゼン用スライドを作る、10のテクニック | Take it easy! - mauekusa 's BLOG -
私は、内輪で使うスライドを作る場合はGoogle画像検索を使うことがありますが、そのスライドを見る人が多い場合、どういう人が見るのか仮定できない場合は、まず使いません。Google画像検索を使うのは、効率が悪いから。
Google画像検索では、その画像のライセンスを確認できませんし、特定のライセンスに限定して検索することもできません(多分)。正当にライセンスされていることを確信できない画像を、General Publicに向けたスライドに含めるのは安全とは遠すぎると思う。そうすると、一件一件画像のライセンスを確認しないといけないわけで、それはとても面倒くさい。
Flickrを使いましょう*1。Flickrでは、Creative Commonsライセンスのものだけを検索できるようになっています。
Advanced Searchで、CCライセンスのもののみを表示するようにし、検索します。「Find content to modify, or build upon」も付けます。
ポイントは、次の2点。
2点目についても効率の問題。「再利用OKです!クレジット不要です!」みたいな表明をしている人もいるけど、基本的にそういう素材は使用しないことにしている。本当にOKなのか、なんらかの付帯条件はないか、なにをすれば良いのか、いちいち確認するのが手間がかかりすぎる。CCならば、何をすれば良いのかは(厳密には微妙な気もするけど)、はっきりしているし、少なくとも一度確認すればその後ずっと同じ方法で良い。便利。
2012-01-04
公衆無線LANに接続して認証してない状態だと、インターネット接続はどうなってるか?
なんか、その辺が疑われる問題が報告されていたので、気になって近所のマックで試してみました。この場合はマックってマクドナルドのことだよ!
iPhoneで試すよ!
なんかmobile pointにwi-fiが接続できた時点で、インターネットに繋がってしまいました……orz
実は、テストの前に一瞬、普通に認証してしまっていたので(Softbankのやつが自動で)、その結果が残っていたのか、そもそもiPhoneだと、なんか無料で使える権利が付いてきていたはずなので、そのせいで普通に繋がってしまうのかは不明です。あ、ちゃんとソフトバンクのWi-Fiとかの設定してくれるプロファイルは削除してから試してます。
Macで試すよ!(この場合はMacっていうのはMacBook Airのことだよ!)
Webブラウザを開いてhttpでyahoo.co.jpとかにアクセスすると、認証画面が出てきます。
これこれ。なんかhttpのアクセスがあるとリダイレクトしてるんですかね。まあそうとしか思えないけど。そしてhttpsのページに飛ぶ。あと、なんか認証前からSkypeが繋がっている不思議。
さて、それでは、ここで認証しないでhttpsにアクセスしてみましょう。どうなる??
タイムアウトでしたー!
まあ道理ですね。良く考えてみたら、httpsで通信してるらしきことは、向こうのサーバしかわからないので、こうするしかないのか。無理矢理リダイレクトとかできるような気もするけど、そうすると警告が出るだろうから、知らない人をびっくりさせるよりはタイムアウトのがいくらかマシなのかも。
なんか私の知らないバグがどっかにあることがわかったよ!
2011-12-22
Googleにも知らないことがあることを知った冬の夜
Googleはなんでも知っている。近所に新しくできたスーパーのことも知っていたし、美味しいお弁当やさんのことも知っていたし、苗場のことも知っていた。なんでも知っていると勝手に思い込んでいた。
iOS5ではNested Managed Object Contextという新機能が導入されました。iOSのCore Dataの機能で、これまでは「スレッド間でデータを共有したかったら、ファイルに保存して他のやつで読み込んでね!(意訳)」だったのが、セーブしなくてもデータを共有できるようになったというもの。すごい便利。
ところが、こいつがちょっと直感的に動作しない。Core Dataでは、オブジェクトを保存するとIDが勝手に変更されるんだけど、Nested Managed Object Contextで作ったオブジェクトのIDが更新されないことがあって困っていた(詳細は後で!)。Workaroundを考えていたんだけど、上手いのが見つからない状況があって、もうどうしようもなくて3日くらいひたすらに困っていた。
Googleで検索して、かなり虱潰しに調べたつもりなんだけど、見つからない。
結局、Appleの開発者フォーラムに書いてあった。要するにiOS5のバグだったらしい。
ちょっと泣きそうになりました。





