YAMAGUCHI::weblog

海水パンツとゴーグルで、巨万の富を築きました。カリブの怪物、フリーアルバイター瞳です。

Google画像検索を使って偽アカウント判定

はじめに

こんにちは、Go界の谷崎潤一郎です。さて、半年ほど前に一時期Facebookの偽アカウントが大量発生しましたが、今もまだしぶとく偽アカウントが発生しているようです。 IT系の知り合いはあまり引っかかってないようですが、地元の友達などは結構簡単に友だち登録してしまっているようです。 可愛いお姉さんのプロフィール写真があったら許可したくなっちゃいますよね。 でも、色々と危ないんで、スパムアカウントは運営にブロック申請したほうがいいです。まじで。

Google画像検索

しかし、プロフィール写真の可愛いお姉さんが本当にその人なのかどうかは気になっちゃうと思うので、その判定方法を教えます。Google画像検索です。 おあつらえ向きに偽アカウントが友達申請してきたので実際に確認してみます。

f:id:ymotongpoo:20130803095720p:plain

写真も可愛らしいうえに、プロフィールで出身地が僕の地元の山梨県。しかも既に僕の地元の友達が2人友達になってしまっていますね。 しかしプロフィールが生まれ年と出身地しか無い上に、投稿がプロフィール写真と背景画像の投稿だけという、非常に偽アカウント臭が漂うアカウントです。 早速プロフィール写真をGoogle画像検索にかけてみます。まず画像のURLをコピー。

f:id:ymotongpoo:20130803100547p:plain

Googleトップから画像検索に行く。

f:id:ymotongpoo:20130803100231p:plain

カメラのアイコンを押して、さきほどの画像URLを貼り付けて検索。

f:id:ymotongpoo:20130803100737p:plain

f:id:ymotongpoo:20130803100751p:plain

すると、検索結果に台湾ドメインのウェブサイトのURLが出て来ました!

f:id:ymotongpoo:20130803100943p:plain

どうやらこのお姉さんは台湾のどこかにいるようです。

おわりに

いくらプロフィール写真が可愛いからってホイホイ友達申請許可してはダメです。

#Go羅温泉 #電車でGo というイベントをしてきました

はじめに

こんにちは、Go界のアインシュテュルツェンデ・ノイバウテンです。7月にGo界隈の人々でイベントをしてきましたのでここにご報告します。

Go羅温泉

Pythonコミュニティも大きくなりましたが、その中で「Python温泉」というイベントがあります。「ドキッ、男だらけの(ry」状態な2泊3日のハッカソンイベントなわけですが、Goのコミュニティの一でもそういうことしたいよねえ、ということで、箱根温泉街の強羅温泉に行ってきました。 朝9:00に新宿に集合して、余裕のロマンスカー乗車で、箱根でちょっと観光しようと思っていたのに、当日はロマンスカーが全部運休、箱根登山鉄道もなかなかの混み具合で大変でした。 ラフォーレ強羅の会議室はなかなか広く、結構快適でした。

IMG_20130706_134530

皆それぞれに持ってきた課題を結構こなせたようで、僕にとっても皆さんにとっても実りある温泉旅行でした。以下、ハイライト箇条書き。

  • LiveLeak.comでロシア人の動画を探しているとかなりクレイジー
  • goclipseはいろいろ動かすのがしんどそうなのでやめとこう
  • 強羅温泉は箱根湯本から結構遠い
  • ラフォーレ強羅の周辺は徒歩30分圏内にはコンビニがないので気をつけろ

幹事行をしてくださった、 @Jxck_ さん、ありがとうございました!

電車でGo

Go羅温泉のあとに「電車でGo」というイベントを行いました。

募集告知をした直後にはキチガイイベント認定されました。

実際に行なってみると非常に楽しいイベントで、お子さん連れの参加者も楽しんでくれたようです。なによりお子さんが楽しんでくれました。 貸切の都電荒川線。「前にGopher人形乗せていいですか?」と運転手さんに聞いたら「はいはい、なんでも置きな!」とのこと。フランクすぎる。

R0010354

ハッカソン中の様子

R0010362

都電荒川線の醍醐味、飛鳥山周辺での路面。

R0010365

最後三ノ輪橋駅での記念撮影。

R0010379

撮影の @nuki_pon さん、ありがとうございました!

Goコミュニティではこれからもネタドリブンのイベントをどんどん行なっていこうと思います。どうぞよろしくお願いします。

パスポート盗まれて何とか帰国したけど事後処理めんどくさかった事件

はじめに

こんにちは、Go界のジャック・ニコルソンです。2ヶ月弱前のエントリで、San Franciscoでパスポート盗まれてめんどくさかった、という話を書いたんですが、帰ってきてからもさらに事後始末がめんどくさかったんで記録を残しておきます。

前回までのあらすじ

ベイエリアへの1ヶ月出張からの帰国2日前にSan Francisco市内で車上荒らしにあって、パスポート等が入ったバックパックを盗まれた。諸々とゴタゴタあったが、なんとか帰国できた。

後始末

戸籍謄本(戸籍抄本)の提出

在サンフランシスコ総領事館で「帰国のための渡航書」を発行してもらったのですが、その際に「帰国後に戸籍謄本(戸籍抄本)を提出します」という誓約書を書かされます。戸籍謄本(戸籍抄本)を在サンフランシスコ総領事館に送付します。

Consulate-General of Japan, Passport Div.

50 Freemont St. Suite #2300, San Francisco, 94105

盗難保険のための報告書提出

幸いにも加入しているカードでは海外旅行中での盗難が保険でカバーされるとの事だったので、早速申請書を作成しましたが、これがまた非常に面倒。 書類で求められるものは各保険会社によって異なると思いますが、自分の場合には次の内容の提出を求められました。

  • 事件遭遇時の状況説明
  • 三者による証明(もしくは自認書)
  • 補填金振込用口座
  • 盗難された物品一覧の名前、ブランド、購入年月、購入時の実際の値段
  • 日本入出国確認用のパスポートのコピー(自分の場合は帰国のみしかスタンプがないので、飛行機のeチケットの控えもコピー)
  • 現地警察への被害届控え

申請書提出からは1週間程度で保険金が振り込まれました。保険金は次のような計算式でした。(これは保険会社によって変わると思います)

  • 被害1件の処理につき3000円の手数料
  • 盗難物は購入時金額から購入時より半年で5%の減価償却費が引かれた分が帰ってくる。

というわけで、結局どれも購入時期が2年以内のものばかりだったので、購入時金額の合計の9割程度が戻ってきました。

ESTA

パスポートを失効したので、ESTAも無効になります。次に渡米するまでに再申請しなければいけません。

おわりに

帰国後も面倒なことになるので、やっぱり盗難事故に遭わないように、細心の注意を払うしかないですね。

Emacsを使ったGo言語開発手法(2013.07版)

はじめに

こんにちは、Go界の橋爪功です。以前mattnさんがVimを使ったGoの開発環境というエントリを書かれていたんですが、自分用にもEmacs版を、と思ったので、まとめておきます。

基礎からわかる Go言語

基礎からわかる Go言語

参考

設定

Go mode

Go用のメジャーモードのGo modeというのが標準で配布されています。使いましょう。load-pathにgo-mode.elとgo-mode-load.elを突っ込んでおきます。

(require 'go-mode-load)
(add-hook 'go-mode-hook
          '(lambda()
            (setq c-basic-offset 4)
            (setq indent-tabs-mode t)
            (local-set-key (kbd "M-.") 'godef-jump)
            (local-set-key (kbd "C-c C-r") 'go-remove-unused-imports)
            (local-set-key (kbd "C-c i") 'go-goto-imports)
            (local-set-key (kbd "C-c d") 'godoc)))

(add-hook 'before-save-hook 'gofmt-before-save)

Goでは標準のインデントはハードタブなのでindent-tabs-modeはtにしておいたほうがいいでしょう。「俺はハードタブなんか使いたくない!」と駄々をこねても、どうせgofmtで修正されるので諦めてください。

コードジャンプ

godef

godefを入れておくとTAGSを作成せずとも定義元まで参照できて大変便利です。

% go get code.google.com/p/rog-go/exp/cmd/godef

ctags (etags, Exuberant Ctags)

ソースコードの検索にetags使いたいんですが、まだGo言語にはデフォルトでは対応してません。でも下記の.ctagsファイル書いておけばtagsファイル生成できます。

--langdef=Go
--langmap=Go:.go
--regex-Go=/func([ \t]+\([^)]+\))?[ \t]+([a-zA-Z0-9_]+)/\2/d,func/
--regex-Go=/var[ \t]+([a-zA-Z_][a-zA-Z0-9_]+)/\1/d,var/
--regex-Go=/const[ \t]+([a-zA-Z_][a-zA-Z0-9_]+)/\1/d,const/
--regex-Go=/type[ \t]+([a-zA-Z_][a-zA-Z0-9_]+)/\1/d,type/

これを ~/.ctags として通常のctagsと同様プロジェクト内で次のコマンド実行するとEmacs用のTAGSファイルが作成される。

% cd /path/to/project
% ctags -Re

あとは M-x visit-tags-table で作成されたTAGSファイルを指定して M-. でジャンプするだけ。(上記のelispでgo-modeで定義されたgodef-jumpを利用するように変更している)

auto-complete + gocode

mattnさんの記事にもありますが、gocodeを使って自動補完を有効にします。

auto-complete

そういえば以前のものから更新してなかったので、更新しがてらinit.elの設定を確認。

(add-to-list 'load-path "~/.emacs.d/auto-complete")

;;;; auto-complete
(require 'auto-complete-config)
(global-auto-complete-mode t)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/auto-complete/ac-dict")
(ac-config-default)

gocode

まずはgocodeを設定します。mattnさんのブログにあるようにGOPATHとPATHをちゃんと確認してgo getで持ってくる。

% GOPATH=/path/to/project
% PATH=$GOPATH/bin:$PATH
% go get -u https://github.com/nsf/gocode

次に go-autocomplete.el をload-pathが通っているディレクトリに突っ込んでおく。

init.elにGo modeではM-TABでauto-completeを起動するように設定を追加。(上記のものを編集)

(add-hook 'go-mode-hook
          '(lambda()
            (setq c-basic-offset 4)
            (setq indent-tabs-mode t)
            (local-set-key (kbd "M-." 'godef-jump)
            (local-set-key (kbd "C-c C-r") 'go-remove-unused-imports)
            (local-set-key (kbd "C-c i") 'go-goto-imports)
            (local-set-key (kbd "C-c d") 'godoc)
            (define-key ac-mode-map (kbd "M-TAB") 'auto-complete)))

あとは C-c C-a のimport packageを使えばだいたい幸せです。

San Franciscoでパスポートとか盗まれちゃったのよ事件

はじめに

こんにちは、Go界のクリント・イーストウッドです。5月7日から1ヶ月アメリカのオフィスに来て仕事をしているのですが、帰国を目前にした現地時間6月5日に車上荒らしに遭って、めちゃくちゃ面倒くさかったので、万が一誰かがSan Francisco(ベイエリア含む)で同様の事件に巻き込まれてしまった場合のために、記録を残しておこうと思います。

経緯

長期出張も終わりに近づいたということで、同じチームの同僚に送別会を開いてもらうことになりました。お店はSan Francisco市内のメキシカン料理屋。お目当てのお店のそばにDMV(免許センターとか陸運局みたいなとこ)の公共駐車場があったのでそこに駐車しました。その時にカバンをトランクの中に投げ込んでおけば良かったのですが、お店が混んでいたので、順番だけ先に取ろうとお店に行き名前を書くことだけして、別のお店を探し始めました。で、3ブロック離れたところに良さそうなお店があったので、そこに行こうということになり移動を始めました。この時にすでにカバンの事が頭の中から完全に離れていて、これが命取りとなりました。

食事を終えて駐車場に戻ってくると車は次のような状態になっていました。 f:id:ymotongpoo:20130605204559j:plain

以下のものが入ったカバンを盗まれてしまいました。

  • パスポート
  • 国際運転免許証
  • 会社貸与のMacBook Pro 15''
  • 会社貸与の現地用携帯
  • デジタルカメラ(Casio EXLIM)
  • キーケース(自宅の鍵が付いている)
  • 名刺入れ
  • 各種ケーブル
  • モバイルチャージャー

日がまだ出ていた時間(ベイエリアはこの時期は20:00でも日が沈んでいない)で、人目も多い場所、かつDMVと警察署の目と鼻の先、という場所ですら、このようなことが余裕で起きてしまいます。正直に、この1ヶ月でカバンをトランクに入れなかったのはこの1回のみ。が、その1回でやられてしまったことは、本当に悔いが残ります。

対応

優先順に次の事柄について対応が必要となりました。

  • 「帰国のための渡航書」発行
  • 地元警察へ被害届の提出
  • 航空券の予約変更
  • 会社に貸与中のパソコン及び携帯電話が盗難にあった旨報告
  • レンタカーの交換
  • 大家への連絡

各々をブレイクダウンしたものも記載します。

「帰国のための渡航書」発行

まずはなにより帰国が目前に迫っている上に、身分証明証がないのが一番問題なので、これを片づけます。が、事件が起こったのがすでに20:00を過ぎていたので、これは明朝の一番に行うことにしました。

総領事館に伺う前に、事前に準備しておく必要があるのは下記。

  • バストアップの顔写真2枚(サイズに関しては4.5cmx3.5cmが望ましいが、アメリカのパスポート用のサイズである2inch角も受け付ける)
  • 地元警察での被害届のCase Number

これらで困ったことは「バストアップの顔写真」という条件。日本のようにスピード写真がそばにおいてあるわけではないので、証明写真を取れる場所を探す必要があります。日本総領事館のそばの写真館などを検索したりしていましたが、Walgreens(マツキヨ+コンビニみたいなチェーン店)で証明写真を手軽に撮れると聞き、ホテル周辺(滞在していたのはBelmont)でWalgreensを探しました。San MateoのWalgreensがBelmontから領事館へ向かう途中にあるので、そこに行く事にしました。こんな感じでした。(Passport Photoと書いてあるところに写真撮影背景用スクリーンがロールされてました)

f:id:ymotongpoo:20191127094752p:plain
Walgreensは神

地元警察の被害届のCase Numberは様々な場所で使うので必ず取得すべきです。

地元警察への被害届の提出

同僚に先導され、Golden Gate Parkそばの警察署に行く。聞かれた内容は下記の通り。

  • 事件があった場所、時刻
  • 盗難にあったものの一覧と値段
  • 個人情報(パスポート番号は暗記していた&オンラインにあったので同僚の携帯から確認)
  • 被害にあった車両の情報(車種、色、被害にあった箇所、所有者、登録番号)

ひと通り記入を終えるとCase Numberという番号と担当の署員の署名が入ったレシートのような紙切れを渡されます。これがいろいろな箇所で必要なので必ず大事に保存すること。 あと個人情報の部分では現地連絡先を聞かれるのですが、僕は現地用携帯も盗まれてしまったため、同僚の携帯電話番号を登録させてもらいました。この同僚には本当に世話になった。。。

航空券の予約変更

まだ、航空券の予約変更が必要かは判断がつかなかったのですが、帰国のための渡航書の発行にどれくらいかかるかわからなかったため、変更の最終期限を確認しました。 僕は会社の出張で来ていたので、予約したチケットが出発当日の搭乗前まで変更可能というかなり優れた条件だったので良かったのですが、この辺は人によるのでこれ以上はなんとも言えません。ただ、予約の変更が必要になった場合は更に次の項目を変更する必要がありました。

  • ホテルの延泊
  • レンタカーの延長

会社に貸与中のパソコン及び携帯電話が盗難にあった旨報告

会社のポリシーに従うところですが、たいていの企業ではセキュリティ対策を何かしら講じますよね。 僕も当然しました。この辺は東京の同僚がちょうど業務を始めた時間だったので色々と手伝ってもらいました。

レンタカーの交換

いくらあと2日しかないとはいえ、窓ガラスが割られたままの車を運転し続けるわけにはいかないので、レンタカーを交換しに行きました。(契約時の車両保険の内容に含まれていた) San Francisco International Airportに付いているレンタカー屋は最終フライトまでは営業しているので、助かります。

ここでは被害届のCase Numberがかなり重要になりました。というのも、パスポートも国際運転免許証も盗まれてしまっている自分が、車が運転できることの証明がそれ以外ないためです。 つまり「国際運転免許証は持っていたが、盗難にあったので手元にない」という証明が先ほどのCase Numberなので、万が一警察に免許証を尋ねられた場合にも、それを提示すれば、対応できるという理屈。

レンタカーでも被害届のようなものを用紙に記入して、無事に車を交換しました。

大家への連絡

日本の自宅の鍵も盗まれてしまったので、帰国できても部屋に入ることができません。日中に到着するのであればまだいいのですが、到着は6月8日の22時過ぎ。幸いにも大家が自分と同じ建物に住んでいるので、電話で、帰国当日に部屋を開けてもらうことをお願いした。 もし管理会社が全く別なところにある部屋に住んでたらどれほどこれがめんどくさいことになっていたかを想像すると、ちょっとぞっとした。

時系列報告

以下、上記の内容を時系列にまとめてみます。時刻は現地時間(アメリカ太平洋夏時間)

6月5日

  • 18:30 オフィス出発
  • 19:00 お店そばの駐車場に駐車
  • 19:05 当初の目的の店が満員なので別の店の検索開始
  • 19:10 別のお店に移動
  • 19:20 夕食開始
  • 20:20 夕食完了
  • 20:30 駐車場着。状況確認。
  • 20:35 事件目撃者と連絡先交換。
  • 20:45 警察署へ移動
  • 21:00 被害届提出のための手続き
  • 21:30 レンタカー屋へ向かう
  • 22:00 レンタカー屋着。車両交換手続き開始。
  • 22:45 車両交換完了。ホテルへ。
  • 23:00 東京の同僚に状況報告。社内手続きを代理で行なってもらう。
  • 23:30 在サンフランシスコ日本総領事館の所在地確認。「帰国のための渡航書」手続き確認。
  • 24:00 旅行会社への予約変更手続き確認
  • 24:30 パッキング開始(←そわそわしてたので落ち着くために)
  • 25:00 パッキング完了。シャワー。
  • 25:20 明日の作業確認。
  • 25:45 就寝。
  • 27:00 興奮していて寝付けず。大家に確認が必要なことを思い出す。
  • 27:15 大家に連絡。
  • 27:30 大家への連絡完了。
  • 27:45 総領事館そばにスピード写真がないことを知り写真館の検索を開始。
  • 28:00 Walgreensで証明写真を撮れることを知り最も便利なWalgreensを検索。
  • 28:30 諸々住所をメモして再度就寝。
  • 28:45 現地用携帯のAndroidの現在地を検索できるのではないかと思い画策。
  • 29:45 諦める。
  • 30:00 就寝。

6月6日

  • 08:00 起床
  • 08:20 ホテル出発
  • 08:30 Walgreens到着。写真撮影。
  • 08:45 写真受け取り。
  • 09:40 日本総領事館そばの駐車場に駐車。
  • 09:45 日本総領事館着。「帰国のための渡航書」申請開始。
  • 10:30 申請用紙記入完了。提出。
  • 11:45 「帰国のための渡航書」受領。
  • 12:30 オフィス着
  • 13:30 諸手続き完了。

f:id:ymotongpoo:20191127094830p:plain
帰国のための渡航書はこんな感じ

Lessons learned

  • 「命の次に大事なパスポート」はガチ
  • Walgreens偉大
  • 警察署にいけ
  • でかいグローバル企業はいざという時に頼りになる

参考リンク

追記 (2013.06.07 11:00JST)

「帰国のための渡航書」発行に関して

総領事館の担当の方から次のような説明を受けました。

  • 「帰国のための渡航書」の発行と同時に盗難されたパスポートを無効にする手続きも行う
  • 「帰国のための渡航書」は発行後に後日、戸籍謄本(抄本)を在サンフランシスコ総領事館宛に送付する必要がある
  • 次回のパスポート発行は新規になるので戸籍謄本(抄本)が必要になる。(更新手続きではない)
  • 「帰国のための渡航書」は次回パスポート作成時に返還すること
  • ちゃんと必要なものを用意していけば急げば1時間ぐらいで発行できるとのこと。

ベイエリアの治安に関して

総領事館の方からぜひ広めて欲しいと依頼を受けましたので追記します。

  • 最近車上荒らしが急増している。特にSan Francisco市内とSan Jose市内中心。
  • 地上・地下関係なく車上荒らしが横行している(Union Squareの地下駐車場でも車上荒らしが起きている)
  • 犯行はどんどん大胆になっていて、窓ガラスどころかトランクもこじ開けるパターンも増えている
  • 日本人を特に狙い、ジャパンタウンやSan Joseの日本料理屋そばの駐車場を狙うことが多い
  • 通行人はほぼ見ないふりをする

追記2 (2013.06.07 23:30JST)

なんか予想外にブクマがついてびっくりしてます。目撃者の情報は次のような感じでした。

  • 犯人はメキシコ人の男女2人組だった
  • 車で駐車場に入ってきて停まっている車を一台一台物色しているようだった
  • 犯人の所作の様子からspark plugかなんかで窓ガラスを割ったっぽい。これは大きな音がしないということでよく使われる道具だとのこと。(あとで調べたらWikipediaにspark plugを使って車上荒らしを行うことをさす"Ninja rocks"という言葉まであった)

あと「英語できないと辛いな」というコメントがちらほらあったけど、できないと辛いと思います。同僚に助けてもらったのは

  • 僕が現地携帯まで盗られてしまったので、現地の連絡先が必要になった場合にとして同僚の携帯を代わりに登録させてもらった
  • 携帯で色々と検索してもらった。(日本の携帯はホテルに置きっぱなしで国際電話やローミングすらも出来なかった)
  • 事後の対応が必要なので僕がオフィスから送ってきた他の同僚2人を家まで送り届けてもらった(本来は自分が送る予定だった)

という部分なので、上で行ってるその他の対応は自分だけで行ったものと思ってください。 英語できない場合は日中であれば早い段階で総領事館に連絡したほうがいいです。総領事館では、現地の警察署へ被害届提出のサポートも行なってくれるそうです。 しかし、少しでも(中学2年生レベル)英語が話せるなら、即効で警察に連絡すべきです。上に書いてあるように、Case Numberがないと多くの場面で他の手続きが行えなくなります。

「でかいグローバル企業が頼りになる」というのは何より同僚が皆「なんか必要なことがあったら言ってくれ」といい、助けてくれたことで、このおかげで僕は個人の手続きに集中できました。特に、事件の発生が夜だったので、ホテルに帰った頃にちょうど日本オフィスが稼働しだした時間だったので、社内の手続きを代理で行なってもらったり、今後の社内での対応をまとめてもらったりしました。 また現地でも、翌日オフィスで報告をしてから30分で仕事ができるような環境を整えてくれたりと、社内対応の手厚さは何よりも大きいものでした。総領事館の話では、日本人でSan FranciscoやSan Joseに出張で来た方で被害に遭い、ラップトップもないから仕事もほぼできず、諸々キャンセルして帰る、という方も何人かいたそうなので、現地オフィスに多分に頼れるというのは何より心強いものです。