2010 年 1 月 30 日

米国でのクレジットカード

カテゴリー: Tips — araki @ 10:09 PM

先日 SFCU でクレジットカードを作ったのですが、その際に、日本のシステムと違っていて学んだことがいくつかあったので米国のクレジットカードについて書いておきます。アメリカがカード社会であるというのはよく言われることですが、実際にスーパーなどで買い物をしていても現金で支払っている人をほどんど目にすることがありません。私自身は、最初は日本にいる時の感覚で現金を使っていたのですが、次第にデビットカード (兼 SFCU の ATM キャッシュカード) を使うようになりました。

最初に米国のクレジットカードについて少し調べてみたところ、さすがにカード社会と形容されるだけあって、流通しているカードの種類もサービスも豊富であることが分かりました。例えば、年間数 % 程度のキャッシュバックなどのサービスが付いているものもあります。ただ、クレジットカードの発行手順には少し注意が必要です。まず、Visa や Master などのクレジットカードを発行しようとするとクレジットヒストリ (信用履歴) が必要になるのですが、クレジットヒストリを貯めるにはクレジットカードを使用して、かつ定期的に使用分を滞りなく支払っていく必要があります。一見矛盾したシステムに見えますが、クレジットカードの中には (大学 1 年生向けなどのような) 敷居の低いカードがたくさんあるので、そういったカードから始めてクレジットヒストリを少しずつ貯めていって、十分なクレジットスコアを得た時点で利用価値の高いカードに切り替えていくのが普通のようです。

クレジットカードを発行する際、クレジットヒストリの他には SSN または ITIN が必要になるようです。SFCU の銀行員の方が言っていたのですが、SSN や ITIN (といった個人識別用の ID) にクレジットヒストリを紐付けてデータベースで管理しているようです。この辺りは、米国の合理的な管理社会の一面を見た気がしました。

私は単純にクレジットヒストリ (クレジットスコア) の存在とその貯め方について知るのが遅かったのでクレジットカードを作るのも遅くなってしまいましたが、ある程度長期で米国に滞在するのであれば、SSN や ITIN を取得したら早めに一枚作っておく方が良いかも知れません。

[2010.2.9 追記]
米国でのクレジットカードやクレジットヒストリなどについて非常によくまとまった日本語サイトを見つけたので、リンクを載せておきます。このサイトには、クレジット以外のファイナンス関連の情報もよくまとめられています。
クレジット | FI Planning

2009 年 4 月 9 日

Python での日本語文字コード判定

カテゴリー: Programming Language, Software, Tips — araki @ 12:06 AM

EUC-JP、Shift_JIS、UTF-8 の文字コードが混在したテキストを解析する機会があって、その時にいくつか方法があったのですが、python の pykf と chardet を使って、文字コードを自動判定して全て EUC-JP に統一するというスクリプトを書きました。chardet は短い文字列に弱いらしいので second guess にしました。


# -*- coding: utf-8 -*-

import sys
import pykf
import chardet

def main():
    f = open(sys.argv[1])

    line = f.readline()
    while line:
        code_changed_line = to_euc(line)
        print code_changed_line
        line = f.readline()

    f.close()

def to_euc(text):
    c = pykf.guess(text)
    sc = second_guess(text)

    if c is pykf.EUC:
        return text
    elif c is pykf.UTF8:
        try:
            return unicode(text, 'utf8').encode('euc-jp')
        except:
            return text
    elif c in (pykf.SJIS, pykf.JIS):
        try:
            return unicode(text, 'utf8').encode('euc-jp')
        except:
            return pykf.toeuc(text)
    else:
        return text

def second_guess(text):
    sc = chardet.detect(text)
    return sc

if __name__ == "__main__":
    argc = len(sys.argv)
    if (argc != 2):
        print "Usage: python %s filename" % sys.argv[0]
        sys.exit(1)

    main()

インストールの手順は以下の通りです。手順自体は簡単ですが、pykf についてはダウンロード可能なサイトがいくつかあり、中にはモジュールが足りずにインストールが失敗するもの (例えば、SourceForge.jp 上のものなど) もあったため、少々厄介でした。


$ wget http://archives.sertice.org/devs/linux/cvs/pykf-0.3.4.tgz
$ tar xvfz pykf-0.3.4.tgz
$ cd pykf-0.3.4
$ python setup.py build
$ python setup.py install

$ wget http://chardet.feedparser.org/download/chardet-1.0.1.tgz
$ tar xvfz chardet-1.0.1.tgz
$ cd chardet-1.0.1
$ python setup.py install

参考にさせていただいたサイトをメモしておきます。

2008 年 12 月 29 日

Emacs で翻訳環境を整える

カテゴリー: Software, Tips — araki @ 11:43 PM

最近ようやく少し時間が取れたので、以前から気になっていた Emacs での翻訳環境を整えてみました。参考にさせていただいたサイトは以下です。試した環境は、Emacs 22.1.50.1@Ubuntu 8.04 (LTS) です。

1) po-mode をインストール
po ファイルを修正する場合は入れておくと便利です。


$ sudo apt-get install gettext-el

2) text-translator によりネット上の翻訳サービスを利用
Google などのテキスト翻訳サービスを提供するウェブサイトを利用して翻訳を行う elisp をインストールします。サイトの更新はかなり前に停止しているようですが、elisp 自体は問題なく動きました。インストール後に .emacs に以下を記述します。


(require 'text-translator)
;;翻訳キー設定
(global-set-key "\C-xt" 'text-translator)
(global-set-key "\C-x\M-T" 'text-translator-translate-last-string)

翻訳したい文字列を選択してコマンドを実行すると、ウィンドウの下の方に翻訳結果の文字列が表示されます。英日だけでなく、日英など各翻訳サービスに付随する翻訳が可能です。各々の翻訳サービスの機械翻訳の質はまだ高くないですが、ブラウザをいちいち見たりせずに済むので翻訳の手助けにはなりそうです。

2008 年 2 月 9 日

親知らずを抜く

カテゴリー: Tips — araki @ 6:13 PM

以前虫歯を治療してもらった近所の歯医者は若くて skillful な良医だと思っているので、その歯医者に親知らずを抜いてもらいました。人生初の抜歯をしたのは左上の歯で、縦にまっすぐに生えていたものの、完全に生えきっておらず、そのため磨きにくかったのか既に先端に小さな虫歯ができていました。

この歯は意外に長かったらしいのですが、それでも処置自体は数分で終わり、あっけないものでした。いくつか life tips をメモしておきます。

  • 抜いた当日は血が止まらなくなったりするので、うがいや長時間の入浴をしない。
  • しばらく辛い食べ物などの刺激物は避けた方が良い。
  • 周囲の歯茎によって穴が塞がって平らになるには通常 3 ヶ月から半年程度かかる。

2007 年 11 月 11 日

月ごとのディレクトリ作成

カテゴリー: Tips — araki @ 5:10 PM

毎月決まって何かのファイルをアウトプットする場合、1個のディレクトリだと散乱してしまうので、月ごとのディレクトリを作って、その中に整理したいことがよくあります。

そこで、ちょっとしたディレクトリ作成プログラムを python で書いてみました。


import os
import sys

month_num = 12

if len(sys.argv) != 2:
    print "Usage: python mkdir_every_month.py [year]"
else:
    year = sys.argv[1]
    for i in range(0, month_num):
        month = '%02d' % (i + 1)
        os.mkdir(str(year) + str(month))

2007 年 10 月 27 日

find, grep などを用いた慣用コマンド

カテゴリー: Tips — araki @ 12:21 AM

基本ですが、たまに使おうとすると忘れてます。なので、すぐ思い出せるように例文をメモしておきます。

拡張子が .log で終わるログファイルの中で、’192.168.’ という文字列を含む行の数を出力 (Apache の access ログからローカルアクセス数をカウント)


$ find . -name '*.dat' -type f | xargs grep '192.168.*' | wc -l

拡張子が .log で終わるログファイルの中で、1列目の値に ‘192.168.’ という文字列を含む行を抽出し、重複行を含まない行をその数とともに降順にソートして出力 (Apache の access ログからローカルアクセス統計を出力)


$ find . -name '*.log' -type f | xargs awk '{print $1}' | grep '192.168.*' | sort -r | uniq -c

Powered by WordPress
Copyright © 2007-2010 Jun Araki