僕は発展途上技術者

Perl の use locale を Windows 環境で使用するときの注意


http://d.hatena.ne.jp/jishiha/20040309#p3 で書いた use locale の問題が解決した。id:amatubu さんが情報を提供してくれた。大感謝です。この問題に関してネット上を検索してまわったが解決方法はどこにも見あたらなかった。同じような問題に直面した人が今度はここで情報が得られるようメモしておく。


問題は use locale と宣言して、EUC-JP のデータを sort しようとすると Perl がハングしてしまうというもの。


use locale と宣言したとき、デフォルトのロケールが採用されるのだが、Windows のデフォルトロケールは Japanese_Japan.932(=Shift_JIS)なので、sort する EUC-JP データと異なる。このため、不具合が生じるようだ。



use locale;

@text = ('Apple','Big','apple','big','あ','一');
print join(',', sort @text), "\n";

このスクリプトを普通に、つまり Shift_JIS で保存し Windows 上で実行すれば何の問題はないのだが、EUC-JP で保存した後実行すれば、ハングする問題が再現できるはずだ。


これを防ぐには、EUC-JP をサポートするロケールを明示的に宣言すればいい。ロケールの宣言は、



use POSIX qw(locale_h);setlocale(LC_COLLATE,"ロケール名");

とやればいいと id:amatubu さんに教わる。あとは EUC-JP をサポートする Windows のロケール名を見つければいい。Japanese_Japan.932 の 932 を入れ替えればいいと当たりをつけ、Windows の Control Panel > Regional and Language Options > Advanced > Code page conversion tables(僕の持っているのは英語版 WinXP です。日本語に適当に読み替えてください。) を探した結果、Japanese_Japan.20932 だとわかった。



use locale;
use POSIX qw(locale_h);setlocale(LC_COLLATE,"Japanese_Japan.20932");

@text = ('Apple','Big','apple','big','あ','一');
print join(',', sort @text), "\n";

これを EUC-JP で保存し実行してもハングしない。もちろん日本語の文字は EUC-JP なのでそのままではちゃんと表示されないが、アルファベットはきちんと、apple,Apple,big,Big の並び順で並び、no locale と宣言するよりも良い。


日本語モードかどうかで分岐させるには、



use locale;

$JapaneseMode = 'yes'; #yes or no

if $JapaneseMode eq 'yes' {
use POSIX qw(locale_h);setlocale(LC_COLLATE,"Japanese_Japan.20932");
}

@text = ('Apple','Big','apple','big','あ','一');
print join(',', sort @text), "\n";

とすればよい。



Tax Return


3月・4月は Tax Return のシーズンだ。日本の確定申告に当たる。アメリカではこれを全員がおこなわなくてはいけない。この申告用の書類を作成するソフトウェアを使うためにパソコンがアメリカ中に普及したという話があるほど、Tax Return は一般的なものであり、そして面倒なものだ。


僕は Tax Return を自分で行うのは今年で4回目、毎年 Intuit の Turbo Tax Deluxe (http://www.turbotax.com/) を使っている。これが定番のようで、他のソフトは知らない。Costco (http://www.costco.com)で割引き販売されており、さらに期間限定で割り引きの上乗せがあるときに買うのが一番安く手に入れられる方法のように思う。税金は Federal と State といって、アメリカ政府と州とに払う必要があり、州用には別に Turbo Tax State というソフトが必要なのだが、Turbo Tax Deluxe を買うと State の方はメールインリベートでタダでダウンロードできるようになる。


さて、Tax Return の作業は、すでに源泉徴収されている税金をいかに多く政府から取り戻すのかというゲームのようなものだ。とはいえ、家を購入するといった特別なイベントがなく、投資やサイドビジネスからの収入などない一般市民にとっては節税のためにできることなど限られる。僕の場合は、株を売ったときの収入や銀行に預けている貯金からの利子など少しの調整が必要なだけで、これらをソフトウェアの指示通り入力していくと、提出用のフォームが出来上がる。


さて、僕がここに紹介するのは、今後自分が忘れないようにするためのメモであると同時に、「Tax Return」などで検索してこのページにたどり着いた人用に、もしかすると役に立つかもしれない情報です。


こうしてせっせと入力して勝ち取った Refund(源泉徴収分よりも実際払わなければならない税金の額が少なかった場合に払い戻してもらえる額)を去年までの僕は何も知らずに削られていた。


Tax Return は eFile といって、紙に印刷したフォームを郵送する必要がなくオンラインで送る方法があるのだが、手数料として Federal が $15 くらい、そして State が $10くらいかかる。「eFile はメイルインリベートで無料になりますよ」という説明が出てきて、僕も去年まではそれを真に受け楽なオンラインで Federal、State の両方を転送していたのだが、今年は注意して指示を読んでみるとメイルインリベートで無料になるのは Federal だけだということを知る。勝ち取った Refund を $1 も無駄にしないケチケチな方法は Federal は eFile、State は郵送が正解。


次に Refund を受け取るのに、郵送されてくるチェックで受け取るか、銀行口座に自動的に入金してもらうのかどちらを選べばよいかについて。Turbo Tax は「チェックを換金するために銀行に足を運ぶ一回分が節約できますよ」と言葉巧みに銀行口座への自動入金を勧めてくるのだが、こちらを選ぶと、最後に SBBT Processing Fee という一見すると何だかわからない費用として $30 ほどが Refund から削られてしまう。おそらく銀行口座自動入金だと手数料の一部が Intuit に渡るのか、このあたりの説明がソフトのヘルプを読んでもあやふやだ。ケチケチで行くには、チェックで郵送を選ぶべき。ATMへ一回足を運ぶくらい大したことはない。


以上を知っているだけで $40 ほど得をする、というか損をしない。もちろん、これは $1 でも多く取り返そうという Tax Return ゲームの一環。郵送するのは面倒くさい、手数料払ってでもオンラインの方が良いという方は Federal、State の両方を eFile で送ったほうがいい(しかも確実)し、Refund を一刻も早く送りたい、あるいはチェックの換金が面倒くさいという方は、手数料を払って銀行口座自動入金を選べば良いと思う。



ペーパークラフト


はてなより。これはいい。


http://www.hatena.ne.jp/1074664026



ペーパークラフト、、というのでしょうか?紙とのりだけで家とか作ったりするやつ。それを「無料」で提供してくれるサイトとかってありますか?



間違い電話


間違い電話がかかってきた。それも2度続けて。以下のような対応例が考えられる。


対応例その1「だから、おまえのかけた番号は間違いだ、って言ってんだろ。バカ。」(切)


対応例その2「電話取った瞬間、まだプッシュ音が聴こえていたよ。たぶん番号押している途中で僕の番号にかかっちゃったんじゃないかな。エリアコード番号が間違っているんじゃない?」


僕は対応例その2で実際に対応したのだけれど、対応例その1のような対応をする人って驚くほど多い。「2ちゃんねる」とかで。


ちなみに「間違い電話だよ」と英語で言う時は、Wrong number だ。I think you dialed wrong number. などと言う。



「超」英語法


amazon でこの本を購入


著者の野口悠紀雄は大学教授というえらい地位にあり、そして年齢は60を越えているにも関わらず、まだ英語を、そして新しいことを勉強しようというその姿勢にはおそれいる。僕が尊敬する人のうちの一人だ。


英語を聴く能力がものすごく重要だということを非常に明確な論理で説いている。会話の中で、ネイティブの言った言葉を聴きとり、それをおうむ返しで使うことによって会話を成立させるテクニックには「なるほど」と感じた。


他の英語勉強方法については、よく考えれば自分がおこなってきたことと同じなのだけれど、「この方法で良かったんだ」と再確認させてくれることにより、同じ勉強方法もより効率が良くなる。「この方法で正しいんだろうか」というもやもや感をサッと取り去ってくれた。


その再確認された点をいくつか挙げると、


英語は丸暗記法で勉強せよ


高校のときに、駿台予備校が出版する「英文700選」という重要例文が並んだ参考書を使い、友達と10個ずつ覚えてはそらんじて書き出すテストをした。そして、間違いが少ない方が100円もらえる、というようにしたのだ。この「人と競う」という要素を入れると何か目標を達成したいというときに有効だと思う。TOEIC や TOEFL といったテストを目標に勉強するというのも、この「競う」要素の一種だろう。


英語の勉強は楽しい


単語帳や重要単語を並べただけの参考書はこの本では否定されているけれども、僕は基礎作りとしては避けて通れない道だと思っている。例文を覚えるという作業と合わせてこの部分は一種の修行だ。スポーツの筋トレのようなもの。その後は英文がわかるようになり楽しくなってくる。知らない世界が開ける感じだ。まだ日本語訳されていない洋書を読む、あるいは日本でまだ公開されていない映画を観る、というのがそういった楽しみの一部である。


会話ではネイティブの相手が言ったことを利用する


あるときから会話がとたんに簡単になった僕のテクニック。まず、「もう一度言って下さい」「ゆっくり言って下さい」というフレーズを覚える。教科書には I beg your pardon? とか Could you speak more slowly? なんて書いてあるが、ネイティブが聴き返すときに Sorry? としか言っていないのを聴いて以後は、聴き返すときは Sorry? 、それでも分からないときは、In other words?


とか More slowly, please? とだけ。それで充分通じる。


また、相手が言ったことの一部だけわからなかったときには、その部分を名詞でも動詞でも何でも単に What に置き換え、あとはおうむ返しに、そして語尾を上げて聞く。例えば I have a pen の pen が聞き取れなかったとしたら、「持っている”もの”が聞き取れなかったのだから What で聞いて、you だから does じゃなくて do を使うんだろう」というように頭の中で英文法を一生懸命思い出し、疑問文を構築して、 What do you have? と聞くよりも You have what? と聞く方がよっぽど簡単だ。


英語力と言ってもいろいろな種類がある


http://d.hatena.ne.jp/jishiha/20030523#p1


でも書いたことだけれど、英語力には「仕事のための英語力」とか「原書を読むための英語力」、「映画を字幕なしで理解するための英語力」のようにいろいろな種類があり、それぞれ勉強方法が違う。どれが自分が必要としている英語力なのかを見極めて、それにあった勉強方法を取らなければならない。アメリカ生活は5年目だが、やっぱりいまだに映画を字幕なしで理解できないけれどもう落ち込むことはない。(と言いたいところだが、やっぱり少し落ち込む)



感動を与えるデモンストレーション


暗唱番号やパスワードは不要:電話上の声紋で本人確認


http://www.hotwired.co.jp/news/news/business/story/20040430105.html


(http://d.hatena.ne.jp/masah/20040430#p12 より)


すごく画期的だと思う。こういう画期的な製品は実際に試して、その実力のほど、つまり本当に声紋を認識するのかどうかを確かめてみたくなるものだ。


簡単なデモンストレーション、例えば用意されたフリーダイアルに電話して、自分の声を吹き込み、次にもう一度認証用に別のフレーズをしゃべって認識できるかどうかが試せるなんていうのが用意されているといいのに。試しに他の人に認証用にしゃべってもらったら、ちゃんと「別人です」と認識する、という具合に。そうしたら、きっと何倍もの感動を与えることができると思うのだが、残念ながらそのようなデモは用意されていない。おしい。


以前、http://d.hatena.ne.jp/jishiha/20040122#p1 で紹介した海外で日本のテレビ番組が観られるサービス 6ga.net には非常に優れた「無料お試し」システムが用意されている。このサービスはリモートのテレビパソコンで録画した番組を観ることができるというサービスだから、別に海外にいる必要はない。ただ日本にいたら、日本の番組はテレビから直接観られるのでそのありがたみは海外在住の日本人に特に大きいというだけ。だから日本にいる人でも「無料お試し」は気軽にできる。「感動を与えるデモンストレーション」を実感できると思う。



第1Q目標達成度


もう4月になってしまった。第1Qが終わってしまったので、自分の今年の目標の達成度(http://d.hatena.ne.jp/jishiha/200400)を振り返ってみると、あまりかんばしくない。


はてな日記の更新はご覧のように散々。全然達成できていない。


早起きは、夜1時2時まで起きている夜型に逆戻りしてしまい、このところ全然できていない。


本は今年これまで合計9冊読んでいなければならない計算だが、達成できていない。図書館から借りた本の期限を延長に延長を重ねている始末だ。


新プロジェクトは立ち上げていない。


ゴルフは、110近辺を低迷中。


かろうじて8割ほど実行できている、というのが料理かな?「最近あまりやらなくなったね」なんて妻につっこまれているが。


書いていて落ち込んでしまった。4月は急遽目標達成強化月間とする。5時50分起床で早起きを達成。起きてすぐパットの練習でスコア90を目指し、その後読書。読む本は現在読んでいる途中の指輪物語残り3冊 + Harry Potter 5巻(洋書)。達成状況をとりあえずはてなに記録。これでとりあえず目標のうち3つ一挙に達成、そしてもう1つのゴルフのスコアアップの準備だ。この成功体験で波に乗りたいところだ。



Daylight Saving Time


今週より夏時間が始まった。1時間時刻がずれ、たとえば今まで夜7時だったのが、夜8時に変わる。おかげで昼が1時間長くなる。


以前にも少し書いたが、毎週水曜日会社のあとにゴルフのレッスンを取っている。6時半から7時半という時間帯なのだが、そのレッスンが終わってもまだまだ明るい。一番昼が長い時期になると9時頃まで明るいのだ。


子供の頃、遊びに外出して帰ってこなければならない時刻、すなわち門限は、うちの場合は指定されていなかった。代わりに「暗くなるまで帰ってきなさい」と言われていたので、昼が長くなっていく春先の時期はなんだか嬉しかった。夏時間に切り替わると、その頃感じたわくわくする気持ちが大人にも蘇る。


会社が終わってからでも9ホールくらいはまわれそうだな、どこかに出かけることができるな、などと長くなった昼をどう利用するかを考えるのは楽しい。カリフォルニアでは仕事は素早く切り上げ早く家に帰ろうというモチベーションが高い。これは、夏時間があるというのも一つの理由だと思う。一年中で晴れの日が300日という点がサンフランシスコベイエリアで働く魅力のひとつに挙げられるのだが、加えてこの夏時間というのも大きな魅力のひとつだと思う。



駅のホームの退避場所


フジテレビの「危機一髪SOS」という番組がこちら(サンフランシスコベイエリア)の週末に放送されている。以前この番組で、「駅のホームから線路に落ちてしまったときの対処方法」というのをやっていた。最も安全な方法はホームの下に設置されている少し奥まったスペース、退避場所、に逃げ込むことだと言っていたが、そうした退避場所が設けられていない駅というのもあるそうだ。


昨日会社からBART(サンフランシスコベイエリアを走る電車)で帰ってくるとき、ふとその番組を思い出して僕がいつも利用する駅のホームはどうなっているのかな、と思い見てみると、なんと、ホームの下全てが奥まっている構造になっていて、どこで落ちてもすぐ逃げ込めるようになっていた。わかりにくいかもしれないのでちょっとした図を書いてみた。以下はホームを横からみたところだ。


普段、電車の中が汚いとか時間通り来ない、など散々文句を言っていたけど、さすがはアメリカ、こうした危機管理は徹底されていると感心する。だけれども、ひょっとすると、このようになっているのは僕が利用する駅だけかもしれない。他の駅も注意して見てみて結果を後でコメントすることにしよう。




ホーム
+-----------------
|
+----------------+
|
|
退避場所 |
|
|
線路 |
------------------------+


10秒ルール vs 3秒ルール


動物園で昼食を食べているときのこと。アメリカ人の子供が食べ物を地面に落としたら、親が「10 seconds' rule。拾って食べても大丈夫」と言っているのを妻が聞いたそうだ。10 seconds' rule、つまり10秒ルール、10秒たつまでは大丈夫というわけだ。日本の「3秒ルール」と同じ。日米、同じような表現があるものだと二人で感心していた。


もっとも、日本は3秒、アメリカではその3倍以上の10秒。衛生に対する考え方の違いが現れているのだろうか。



プロフィール

株式会社まちクエスト代表、つくる社LLC代表。

Scratchで楽しく学ぶ アート&サイエンスRaspberry Piではじめる どきどきプログラミングを書きました。

Amazonから図書館検索 Libron、iPhoneアプリ ひらがなゲーム かなぶん を作っています。

Email: webmaster at champierre dot com

Twitter @jishiha

最近のエントリー

アーカイブ