2011年7月31日日曜日

レジのセルフサービス!?

が近所で開始されたので体験しに行ってみました。

手にもつタイプのバーコードリーダーがどうにも反応しないので、
据え置きタイプの方で読みとりしました。

べ、弁当ひっくりかえさないと読み込んでくれない…

どっちも使い方覚えたら早そうね~

でも開始直後らしく、
店員さんが説明に右往左往して人によっては遅い遅い。

将来的にはレジの行列が減ってくれるの…かな?

いや、それ以前に不正で潰れないといいんだけど…

追記:案外、不正はないらしいですね。
   でも…、お惣菜とかの割引に対応していないのが一番痛い…
   その度に店員さんが来ないといけないんじゃ本末転倒でしょう?

2011年7月29日金曜日

内藤を呼ぶ店

某カレー店と某アニメのタイアップポスターに、
草を生やされてしまいました。

あの駄コラはないわ~
とりあえず貼り付けたって感じにしか見えないわ~

そして何のキャンペーンも始まっている気配もないわ~

もしかして、
狐か狸に化かされた?

上手に焼け…なかった

賞味期限をちょっと過ぎたベーコンを安全に食べようと、
カリカリになるまでフライパンに炒めることにしました。

じゅわ~

じゅわ~じゅわ~

じゅ~じゅ~

じゅ…ぅ…(火を止める)

…(お皿に移す)

……(凝視)

………何かスナック菓子みたいな状態になりました。
夜食替わりにパクっ………

…まずい!
ほとんどコゲじゃないか!?

思ったより繊細な調整が必要なようです。

あ~なんか干し肉を作りたくなりました。

2011年7月28日木曜日

Pixiv騒動ねぇ~

結局まだPixivには1枚も絵を投稿していなかったのですが、
そんな合間に何やら騒動が起こってしまいました。

そこまでメインコンテンツにする予定はないのですが、
今の状況で絵を投稿するのはちょっと気が引けますね。

気分はチラシの裏なんですが、
チラシが燃えそうなのに色々描くのは…って感じ?

ちょっと静観することにします。

あ、Gravatar用のアイコンは例外とします。

2011年7月27日水曜日

IDE vs emacs

タイトルの通りではあるんですが、
お恥ずかしながらemacsは軽く触ったことしかありません。

なので、
普段IDE(つ~かeclipse)を使っている身から見て、
何が入っていればemacsに魅力を感じるのか妄想してみました。
(拡張性の高さとかは十分聞き及んでいるので、emacsの勝ちだと思ってます。
 さすがにちょっとした問題でプラグインを直すのは手間すぎですからね~)

最初に挙がるのは何と言っても“インテリセンス”です。
というかコーディングの大半はこれの恩恵の基に成り立っています。

言語標準、自身のソース、参照しているライブラリなど…
ドキュメント単体に含められない情報が数多くあります。

まあ自分が使っているフォルダ構成から憶測するように拡張するでしょうけど…
拡張前提な予感がしているのがためらっている理由かな?
(使ってもいないから分かるわけないんですけどね~)

次は“インデント”とかの仕組みでしょうか?
これはむしろemacsなら自分の好みにできていい感じなんでしょうね~
と言っても、IDE標準で大体間に合っている不具合。
いや、K&RをBSD/オールマンに変えたいのはありますけど、
仕事がK&Rスタイルだからな…

後はなんでしょう?
あ~デバッグ機能という重要なものを忘れていました。
と言っても、コンパイルの実行をショートカットに挟めば終わりかね?
個人的にはeclipseのconsoleウインドウが好きなので、
あれが再現できたら問題ないかな~って思ってます。

結論、拡張すればemacsはすごそうだけど、
拡張しないと宝の持ち腐れです。

よってLISPは習得すべき、そうすべき。

(人力検索はてなの回答者と同じ結論に…※自分は質問者じゃないですよ。)

2011年7月26日火曜日

フレームワークの独立記念日

shot6さんが紹介している、
[Java]JBoss Tattletaleを使って依存関係を調べよう
に関連したお話です。

JBoss Tattletaleでjarファイルの依存関係を追えますよって内容です。

う~ん、ここまでできるんなら、
必要なクラスだけかき集めてバイナリ化できないかと妄想してしまいます。
(Java標準クラスへのリフレクションによる参照は犠牲になるでしょうが…)
と言っても、Javaならそこまで欲しくはないんですけどね。

本当に欲しいのは.NET Frameworkについてです。
こっちは冗談抜きで欲しい機能です。

バージョンごとに独立しやがって…
同じ製品で紛争でもしているかと思いました。

そのたびにフレームワークのインストール…
ユーザーが許せるのはせいぜい1回が限度ではないでしょうか?

そんなアップデートを繰り返そうというのであれば、
必要なクラスを抽出してバイナリにして欲しいってわけです。
(.NET標準クラスへのリフレクションによる参照は犠牲になるでしょうが…)

それが叶ったとき、フレームワークは真の独立を迎えるのだ~!!

………Window7は標準でインストールされているって?
悪かったよ!自分はXPだよ!

そんな愚痴。

2011年7月22日金曜日

強制ログローテート

t-katochinさんが開発したlog4jの拡張アペンダをさらに拡張してみました。
[log4j] いいとこどりAppender

名前は「org.mericle.log4j.ForcedDailyRollingFileAppender」です。

どんな拡張かというと、
ログローテートを*必ず*実行する機能です。

例えばバッチ処理でログに加工を行う場合、
バッチが動作するまでにログローテートが行われている必要があります。

ですが今までのアペンダには、
ログローテートのタイミングは*最初の*ログ出力時という問題があります。

日次でローテートを行い、
バッチ処理が0時05分だったとしましょう。

もしも0時丁度から0時05分までにログが出力されなかったとき、
その日のバッチ処理が行えないことになってしまいます。

今まではそうした要件がある場合、
ログローテートのためにログ出力を行うことで対応していました。

ただそのためだけに、
別のバッチ処理が発生することになってしまいます。

また、ローテート用のあまり意味のないログが出力されることにもなります。
要件次第ではこれが許されないことがあります。

同じことを要求される案件が3つ目を迎えたとき、
このアペンダの作成を決意しました。

このアペンダは日次なら0時丁度にログローテートされます。
分次、週次、月次、年次にも(理論上は)対応している憎いやつです。

スレッド処理があるので不安がありますが、
JMeterでの10万回試験では問題は見つかっていません。
…きっと大丈夫!

同じ悩みを抱えたマイノリティな仲間がいましたら、
その助けになることを祈ります。

○バイナリ
log4j-extention-1.21.jar
※JDK6でコンパイルしています。

○ソース
log4j-extention-1.21-sources.jar
※Seasarファウンデーションソフトウェアライセンスに従ってください。
※2011-07-26追記:ちょっとコメントを直しました。
※2011-11-30追記:ローリング→ローテートに変更。なぜかこう言ってしまう…あ、アペンダ名か!

2011年7月21日木曜日

ボタンは押す?クリックする?

Microsoft日本語スタイルガイドによると、

「[ボタン名]ボタンをクリックしてください。」

という表現を使うように推奨されています。


…ですが本当にこれで良いのでしょうか?


「[ボタン名]ボタンを押してください。」

が正しいのではないでしょうか?

というのが本日の内容です。


本当にすごいこと」でも似たようなことを言いましたが、
ユーザーの敷居ハードルを下げる代わりに、
成長する可能性を阻害している表現ではないかと思うからです。

なぜならGUIのボタンを*押す*手段は、
クリック以外にもあるからです。

選択中であればエンターキーを押せば*押した*ことになりますし、
タッチパネルなら表示されたボタンをタッチしたことで*押した*ことになります。
ボタンによってはショートカットキーがあるかもしれません。

こんなことを考える可能性を、
無意識のうちに奪ってしまっていやしないでしょうか?

常識的に考えて、
ボタンはクリックするものではありません。
*押す*ものです。

クリックを手段、*押す*を目的だとすると、
手段だけ教えて目的を教えていないようなものです。
自分はそこに違和感を感じているのだと思います。

これは、自分だけでしょうか?



簡単に言いたいことをまとめ…いや、言い換えます。

これはユーザーインターフェースの理解を妨げる一端だと考えています。
GUIの各部品は、現実世界のメタファー(比喩)なのです。

コンピューター上にある部品を操作するための手段として、
マウス、キーボードのような各種操作デバイスがあるのです。

今後はより操作も多様化し、
複雑になっていくことでしょう。

それこそ、クリックという表現が古いものになるかもしれません。
(実際にそうなるかは別ですよ?)

だからこそ!
マニュアルの表現であっても!
本質を突いた表現にするべきではないでしょうか!?


…という理想論。


ながながとした長文を読んでいただき、
ありがとうございました。

追記:スマートフォンの場合はクリックではなくタップになるわけで、
    やっぱりメタファーとしての動詞で表現するべき…だよねぇ?

2011年7月20日水曜日

Anonymousを翻訳しよう

最近ニュース記事を読むと、
ハッカー集団Anonymousなんて言葉が頻繁に登場します。

カタカナ表記もありますが、
アルファベットの表記が多いように感じます。

さて、今回はこのAnonymousを翻訳しようというお話です。

まずAnonymousは4chanのデフォルト名を指しています。
というかそのものです。

4chanは日本のふたば☆ちゃんねるを目指して立ち上げられました。
でしたら翻訳にはふたば☆ちゃんねるにおけるAnonymousを採用するべきです。

  • ハッカー集団名無し
  • ハッカー集団としあき
  • ハッカー集団「」
が候補でしょうか?

これからAnonymous関連のニュースを読んだら、
いずれかの翻訳に脳内変換してみてください。

普段と違った感想を抱くかも?

2011年7月19日火曜日

台風の来る季節

外を見るともう真っ暗…
(いや、もう夜だからか?)

昔は台風が来ると、
何か熱いものが込み上げてきたように感じます。

今はそんなこともなく、
「ふ~ん」で一蹴されてしまう程度です。

まだ雪だと補正がかかるのですが…
希少度の違い?

どうでもいいか、
それより台風対策です。

何をするかって?
会社に行けなくなった場合の連絡先ですよ…

2011年7月15日金曜日

おにぎりの存在が定まらない…

朝一からバタバタしていたら、
買っておいたおにぎりが消えていました。

あれ?食べたんだっけ?
レジ袋は…もう捨てたんだっけ。

でもこの空腹感は、食べてないと言っている気がする。

レジ袋ごと捨てた?
さすがにそこまでアホじゃな…いと信じたい。

コンビニのおにぎりは海苔がパリパリだから、
デスクに海苔の破片が残るはず…なのにない。

やっぱり食べてない!
仕方ない、ゴミ箱から取り出して分別だけでも…あれ?

ゴミ箱にも見当たらない。
奥の方か?
さすがにオフィスでゴミあさりを召喚する勇気はない。

…そもそも買ってない?
いやいや、レシートが買っていることを証明している。

おにぎり…どこに行ってしまったんだ。

2011年7月14日木曜日

目grepの世界

目grepなるものがあるそうなので、
前回のヘビードキュメントと自分のドキュメントを目grepしてみました。

まず自分のドキュメントは…
う~ん、結構なまだら模様です。
かろうじてヘッダー部分に特徴的な形が見られました。
PNGだってそのうち分かるのかね?

そしてヘビードキュメントです。

…( ゚д゚)ポカーン

そこには見事なストライプ模様がうつされていました。
これは…ビットマップなんだろうな…
(後にWordからもビットマップであることを特定しました)

ファイルの大半はそんなふつくしい状態でした。

視覚的に見比べると、
やっぱりまた違った印象があるということですね。

別にハッカーじゃなくても、
気になるファイルに目grepするのは楽しいかもしれませんよ?

2011年7月13日水曜日

ヘビードキュメントェ…

会社である方が作ったドキュメント(Microsoft Word)をコピーしたところ…重っ!

たかだか30ページ前後なのに、
100MBを余裕で超過していました。

対して自分が作った20ページ前後のドキュメントは、
500KBに届かない程度しかありません。

10ページの差で…なわけはありません。
明らかに別の原因があります。

どちらもふんだんに画像を貼り付けているのですが、
この画像のフォーマットが怪しい…というかもしかしてBMPでは?
作成者は疑問に思わなかったんでしょうかねぇ…

自分はPNGに圧縮するのが好みです。
等倍で貼りつければ、
画像がクリアで大変見やすいからです。

変換するのが面倒だって?
そんなことはありません。

クリップボードの画像自動保存ソフトを使っているからです。

これを使うと変換作業は全て自動で完了します。

他にもこういうフリーウェアは結構あるはずなんですが…
何でこう残酷なことをするのか…

あなたの上司にもいませんか?

カレンダー入力をしよう♪

JKL.Calendarを改造したので公開してみました。

基本的な使い方は変わらないですが、
時分秒も入力できるようになっています。

後は個人的な好みで初期設定が白黒ベースのカラーリングです。

まあ適当品なんでバグはあるでしょうが、
おんなじことをしたい物好きへの助けくらいにはなるでしょう。

jkl-calendar-with-time.js
※修正BSDライセンスになります。

ああ、スピンボタンの押しっぱなしはめんどくさくて実装していません。
ごめんね?

というわけでもう寝る。

2011年7月12日火曜日

そんなにログが見たいのか!?

いや、何がいいたいのかって…
記事のランキングの話です。

myBatisのログをLog4jに出力する
が一位ってどういうこと!?
そんなに困っている人がいるってこと!?

う~ん、気が向いたらlog4jのおバカな解説書こうと思っていましたが、
先にmyBatisにした方がいいのかな?

確かにログが見れないと詰む要素はありますし。
(ソース読めばかなり分かりやすくログを出す方法が…いやよそう俺勝手皆混乱)

日本語のまとめサイトは少なそうだし、
需要があると信じて…まあ気が向いたら?

2011年7月11日月曜日

白黒はっきりつける程度の(ry

別にえいきっきの話ではありません。

ブログの背景を“白”ベースにするか“黒”ベースにするかの話です。
…明るめなのか暗めなのかと思ってください。

TFT液晶モニターの消費電力的には“白”に軍配が上がります。
(LEDモニターはまだ未調査だけど…こっちは“黒”かなぁ?)
感覚的には不思議な話ですが、まあ事実としてあるようです。
たしか液晶は“黒”にするために電気を使うとか何とかだそうで。
(体温計とかが分かりやすいかな?電気を通すと黒い数値がでますよね?)
今後は分かりませんが、今のシェアなら“白”でしょう。

※ちなみに携帯の画面は“黒”の方が良いらしいという情報も…いやよそう俺勝手皆混乱。

目の健康で言えば、“黒”に軍配が上がります。
紙に慣れているため意外に思われるかもしれませんが、
モニターは光の三原色のルールが適用されるので“黒”の方が良いのです。

ただここには落とし穴があります。
“白”のサイトから“黒”のサイトへ移動した場合、もしくはその逆です。
急激な光度の変化は、決して目に良いとは言えません。

なので、
“使われる頻度の高いサイトに合わせる”という考えも発生するわけです。
例えばGoogleが“白”ベースなら、
それに合わせるという考えもあるわけだったりします。

さぁ、いよいよややこしくなってまいりました。
もうどっちがいいんだよ!?

ド○えもん~~~~~~~~~~~~~~~~~~~!!

2011年7月6日水曜日

きたぜ…ぬるりと…

というわけで、
ブログのアクセスカウントが1000を突破しました。

まだまだブログの閲覧数としては貧弱そのものですが、
この小さな一歩は、次の大きな一歩の布石になると信じています。

さて、このタイミングで知人に教えるべきか…
第一コメントが登場するまで待つべきか…
(くだらないこだわりなんて捨てればいいのに…というのは秘密。)

そんなわけで、
引き続き「めりくるくるりん」をよろしくお願いいたします。

2011年7月5日火曜日

あ、あれ?

風邪から復帰したら、
既にカルネージハートのクローズβテストが終了していました…そんな。

もっと長いかと思っていましたが、
あっという間でした。

次はオープンβテストのようなので、
今度はバリバリ組んだAIを動かすとしましょう。

あ、誰か誘った方がおもしろくなるかな?

正式版には近接兵装を!とっつきを!ブレードを!

2011年7月4日月曜日

リアルタイム検索が無くなった…

ぬりかべ経由から知ったのですが、
Googleのリアルタイム検索が無くなっていました。

あれには3月に随分助けられた記憶があります。
路線の情報を知るには最速だったからです。
(乗っている路線のWebサイトが応答不能だった…)

後はBloggerの不調のときもこいつで知ることができました。

「今みんなはどうなっているのかな?」

というのにリアルタイム検索は非常に便利だったのです。

その還元としてならTwitterを利用する価値も…と思いましたが、
リアルタイム検索が無くなったならしばらくは見送るとしましょう。

2011年7月1日金曜日

真偽値を使わない人たち

プログラマーの技量を見分けるひとつの判断材料として、

「真偽値を使わずに数値や文字列でフラグ管理する。」

というものがあるような気がします。

もちろん使わない人は技量が低い(と思われる)プログラマーです。

これは明らかに2値しか持たない真偽の判定を行う要素での話です。
なぜかこう実装してしまうんです。

データベースの設計でもそのようでして、
イレギュラーなデータがバンバン入り得る設計を生み出します。
真偽値 + NOT NULLで完全二値になる(はずな)のに…
(ちなみに大抵10桁前後の文字列型にされていることが多いです。なぜ?)

処理が集合の世界の話に限定されてより分かりやすいと思うのですが、
どうやらその集合を嫌っているらしいのです。
…いえ、集合という概念を知っているかどうかという段階からでしょうか?

そういう人たちって否定演算子も拒否反応があります。
愚直に論理積と論理和ばっかりで、0と1のオンパレードです。
さらに厄介なのは、
そういう人たちが作ったコーディング規約です。

典型的なシステムハンガリアン…っと思ったら真偽値が入ってない!
システムハンガリアンを強制する上に真偽型まで奪うのか!?

っと、ソースを修正していて感じました。

※例外として、
  「真偽値を使わずにビットフィールドでフラグ管理する。」
  なんて人たちがいます。
  これは組み込み系のテクニックなので、全くの別問題です。


追記:やっぱりC言語からの移行に失敗した弊害なのでしょうか?
    C99が普及しないのも、こういった人たちのせい?(真偽型はC99から)


さらに追記:バカは自分だ…なんだよ真偽型って…真偽値に修正しました。