Hatena::ブログ(Diary)

Hacking My Way 〜 itogのhack日記 RSSフィード Twitter

2017-09-17

シンガポール・マレーシア雑メモ

日本からシンガポールへの行き方

シンガポール直行便はやや高く、バンコクかクアラルンプール経由が安い。

今回は行きはバンコク・ドムアン経由、帰りは陸路でクアラルンプールから乗機した。

往路:スクート

成田→バンコク・ドムアン→シンガポール

成田まで

今回始めて大崎発の成り立っ空港行き、Willerのバスを使った。

http://travel.willer.co.jp/narita-osaki/

バスのシートはいくつかのタイプがあるようで、今回は「寝顔が隠せるカノピーチ付き」だった。乗車中寝ることはなかったが、なかなか快適だった。

スクートは成田の第二ターミナル。ゲートはサテライトエリアでけっこう遠いので注意。

サテライトは以前来たときは工事中だったのか、深夜だったのか、何もないイメージがあったが、シャワールームやらメニューがぜんぜん違う吉野家やら充実していた。

f:id:itog:20170917171146j:image

f:id:itog:20170917171140j:image

スクートは機内WiFiが使えるようだ(今回は利用せず)

f:id:itog:20170917171136j:image

シンガポール

飲食系

シンガポールの金融街にある屋台村。東京で言えば新橋的な存在だろうか。

f:id:itog:20170917171123j:image

中華料理店に入ったらタブレットを渡され注文はここから。

f:id:itog:20170917171119j:image

ロボットが置いてある店もある(稼働しているのかどうかはわからない)

f:id:itog:20170917171505j:image

シンガポールは全体的に綺麗で健全だが、政府公認の風俗店があるゲイラン地区はそれなりに猥雑な感じ。

f:id:itog:20170917172014j:image

その他

中国で話題になっているレンタル自転車はシンガポールにも。何社かあるようだ。

f:id:itog:20170917171116j:image

f:id:itog:20170917171113j:image

電車の駅の天井には巨大なファンが。

f:id:itog:20170917172948j:image

写真ボケちゃったけど、シンガポールの$1硬貨は新旧2種類あって、これは古い方。コインランドリーが古い硬貨しか使えないため、コインを求めて彷徨うことに。

f:id:itog:20170917171501j:image

シンガポールからマレーシアへ

シンガポールからマレーシアへはGolden Mile Complexという商業施設の前から早朝に出発。

f:id:itog:20170917171458j:image

f:id:itog:20170917171455j:image

シンガポールを出国して

f:id:itog:20170917171451j:image

橋を渡って

f:id:itog:20170917171448j:image

マレーシアに入国。めっちゃゆるい。

f:id:itog:20170917171441j:image

マレーシア

マレーシア国内の離島へ渡るフェリー。チケットの買い方がなかなか難しい。チケット買って、定員のチェック?して、乗り間違え内容の札をもらってと3回別の窓口に並ばないといけない。

f:id:itog:20170917172212j:image

f:id:itog:20170917172206j:image

仕事に明け暮れる日々。

f:id:itog:20170917172201j:image

f:id:itog:20170917172157j:image

f:id:itog:20170917172152j:image

ちなみに、マレーシア国内は酒があまり売っておらず値段も高いが、リゾート地は特区になっているようで、欧州ブランドが現地生産しているらしいビールが安く飲める。

ビール350ml缶が3リンギットで1リンギット25円くらいなので75円くらい。ヒューガルデンは5リンギットだったかな?

f:id:itog:20170917172147j:image

クアラルンプールでは350ml缶で10RMくらいする。

f:id:itog:20170917172136j:image

クアラルンプールは大都会。

今回泊まったホテルはKLCC駅近く。徒歩10分くらい歩いたと思うけど、商業施設からほぼ直結なので快適。

ユニクロがベストポジション取ってる。

f:id:itog:20170917172622j:image

伊勢丹も入ってる。

f:id:itog:20170917172618j:image

KL Sentral駅で空港行きの急行列車に乗り換える。

f:id:itog:20170917172613j:image

f:id:itog:20170917172610j:image

クアラルンプールの空港はKLIAとKLIA2の2つのターミナルがある。

駅を降りるとここにもユニクロ

f:id:itog:20170917172607j:image

KLIA2は綺麗で商業施設もいろいろはいってる。

f:id:itog:20170917172603j:image

f:id:itog:20170917172559j:image

f:id:itog:20170917172556j:image

空港内は広く、出国審査をしたあと、ゲートにいく前に再度荷物チェックがある。

f:id:itog:20170917172550j:image

f:id:itog:20170917172546j:image

2017-05-24

bay area滞在雑メモ

Amber Alert

誘拐事件等が発生した時にスマホにこんなアラートが送られてくる。

f:id:itog:20170523064925p:image

Uber

ベイエリアではUber/Liftはなくてはならない交通手段になっていて、今回も何度か利用した。

いろいろなバックグラウンドのドライバが多いので話をしていても面白いことが多い。今回は衣類系の商品開発をしているというおばちゃんと会話がはずんだ。15年くらいベイエリアに住んだけど、IT系企業の影響で地下が高騰し、サンフランシスコ周辺の"chamingな"部分はなくなってしまった、まもなく離れるつもりだと言っていた。

f:id:itog:20170518153741j:image

f:id:itog:20170518154122j:image

絶対お得なアメックス

Uberはアメックスと提携しているらしく、毎月$15のクレジットがもらえるらしい。いつからかわからないが、自分の場合$300分のクレジットがたまっていた。

f:id:itog:20170523064923p:image

f:id:itog:20170523064924p:image

深夜、場所によってははキャンセルに注意

UberXでリクエストを送ってドライバーが割当られると、後は待つだけなのだが、ドライバーがまっすぐピックアップ場所に向かってくる保証はない。

深夜に空港の近くから乗ろうとしたところ、3人ほど立て続けにキャンセルされた。どうやら空港に行って客を拾ったてキャンセルしたらしい。

Amazon宅配ボックス

セブンイレブンにAmazonの宅配ボックスがあった。

f:id:itog:20170517180126j:image

f:id:itog:20170517180200j:image

ナンバーのない車

USではたまにナンバーのついてない車を見かけるんだけど、これっていいの?

f:id:itog:20170517172611j:image

Residence Inn Palo Alto

https://www.marriott.co.jp/hotels/travel/sfomv-residence-inn-palo-alto-mountain-view/

今回泊まったホテル。一泊$300くらい。

プールやランニングマシンもついている。

f:id:itog:20170517084628j:image

f:id:itog:20170517084520j:image

朝食

f:id:itog:20170517071602j:image

ワッフルは自分で作る。

f:id:itog:20170517071730j:image

月〜水は夜スナックがでてビール飲み放題。日によっては夕食として十分。

2017-05-17

東京からシリコンバレー雑なメモ

いつも海外に行ったりするときは、知見をまとめておこうとするんだけど、ついつい面倒になってやめてしまうので、今回は雑にメモを残してみることにする。

飛行機

HND→LA→SFO

アメリカン航空のボーイング777

2週くらい前にskyscanner経由で取って、往復で72160円。自分が使った記憶の限り最安値。

機内設備

全席AC電源、USB電源あり。機内エンターテインメントも充実してそうだった。

機内WiFiもあり。使わなかったから速度はわからないけど、電源の心配なく使えるならありだね。

f:id:itog:20170517092341p:image

これまではデルタかユナイテッドで、たぶんアメリカンは初めてだけど、だいぶ印象良い。

機内食

アメリカンの機内食、一食目はわりと美味しかった。

f:id:itog:20170516181532j:image

その後は、まあこんな感じかってところ。

f:id:itog:20170516215054j:image

f:id:itog:20170517011937j:image

LAXでの乗り換え

到着はターミナルから離れた場所。降りると"Express Connection"と書かれた袋に入った乗り換えのチケットが張り出されていた。

f:id:itog:20170516103139j:image

これで早くなるのかと思いきや、入国審査はむしろ遅くなったんじゃないかな、、、

まず、飛行機内のアナウンスで、2008年以降にアメリカに入国したことがある場合は入国書類はいらない、と言われたので書かずにいった。で、自動化ゲートに行こうとしたらExpress Connectionはこっち、と言われ人がいる窓口へ。

以前の様な大渋滞ではないものの、しばらく並んでさて次、という時になって入国書類が必要と言われた。で、書いて戻ってくるとその事情を知らない別の職員に並び直せと言われる(それは押し切って先頭に入ったが)。

そんなこんなで乗り継ぎゲートについたのが出発20分前くらいで、機内預けの荷物も持ってアメリカンの窓口に行くように言われ、外に出て隣のターミナルへ。

なんとかギリギリくらいのゲートに着くと、あれSFO行きじゃない、、、ゲート変更があったらしく、そっちへ。

LAXはいつもなかなかすんなりいかない、鬼門だなぁ。

空港からMountain Viewへ

LAXでのトランジット中にSuperShuttleを予約。

SuperShuttleは前からオススメしてる(サンフランシスコの空港から市街へは「Supershuttle」がオススメ - Hacking My Way 〜 itogのhack日記)んだけど、日本人が使ってるって話はあんまり聞かないなぁ。

今は(ってか4年以上まえから リムジン・タクシー配車サービス「Uber」を利用してみた - Hacking My Way 〜 itogのhack日記) Uberがあるからそれでもいいけど、ある程度の距離があるならSuperShuttleの方が安い。

今回は、乗り場がBaggage Claim出たすぐのところになっていて、青い服を来た係員もいたのですぐにわかった。Web予約しないでその場で予約してる人も多かった。同乗者は自分を入れて3人だったが、他の2人はGoogle I/Oのために来たようだった。

シリコンバレー到着

こんな行程でシリコンバレーに到着。いつも晴れているイメージだが、今日は曇り空で小雨がぱらついていた。

f:id:itog:20170516180959j:image

2017-04-24

ブレッドボードのサイズはちょっとずつ違う

電子工作をする際によく使うブレッドボード。中でも穴数:400のブレッドボードはスイッチサイエンスでは「普通のブレッドボード」として販売されているくらいで、ブレッドボードといえばこのサイズを思い浮かべる人も多いだろう。

ところが、このブレッドボード、特に規格化されているわけでもないのでメーカーによってちょっとずつサイズが違う。以下、秋月電子千石電商で販売しているブレッドボード。

EIC-801

  • 赤いパッケージ
  • メーカー E-CALL ENTERPRISE CO., LTD.
  • 販売価格 : 270円
  • 84x54.3x8.5mm

BB-801

  • 緑色のパッケージ
  • メーカー CIXI WANJIE ELECTRONICS
  • 販売価格: 200円
  • 82x53x8mm

SGK-BB8455

  • 販売価格: 220円
  • 83.5x54.5x8.5mm

ケースをつくったり選んだりする場合は要注意。

どうせパクるならサイズ統一してほしかった!

2017-04-14

Android SDK auto-downloadをCircleCIで有効にする

SDKのauto-download

AndroidのGradle Pluginでは2.2.0-alpha4 (2016/6/23)からSDKのauto-downloadをサポートしている。

ローカル環境で実行する場合、特に意図することなく自動でDLされるが、CI環境でそれを期待して実行するとエラーになる。

* What went wrong:
A problem occurred configuring project ':app'.
> You have not accepted the license agreements of the following SDK components:
  [Android SDK Build-Tools 25.0.2, Android SDK Platform 25].
  Before building your project, you need to accept the license agreements and complete the installation of the missing components using the Android Studio SDK Manager.
  Alternatively, to learn how to transfer the license agreements from one workstation to another, go to http://d.android.com/r/studio-ui/export-licenses.html

原因はメッセージにあるようにlicense agreementsをacceptしてないから。

リモート環境の場合は、lisenceファイルをコピーすればいいとリンク先に書いてある。(上記リンクは古く、以下にリダイレクトされる)

https://developer.android.com/studio/intro/update.html#download-with-gradle


CircleCIでlicense agreementを有効にする

さて、上記のとおりにlicenseファイルをCircleCI上に置ければいいのだが、CircleCIにはビルド時に参照出来るようなファイルを単純に置くことは出来ない。解決策としては、ぱっと思いつくので以下3通りのやり方がある。

1. ファイルをリポジトリに置く

一番簡単な方法だが、licenseファイルを公開するのはよろしくない。Privateリポジトリならいいかも

2. licenseファイルをCIサーバから参照できる場所に置いといてダウンロードする

これが一番応用が効くので良いが、今回はお手軽な方法として、次の方法を使う。

3. 環境変数を使う

licenseに同意した時に作られるファイルandroid-sdk-licenseの中身は以下のように文字列のみ

$cat android-sdk-license
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx9c55

この値をコピーして、CircleCIの環境変数に設定する。ここではANDROID_SDK_LICENSE_VALUEとした。


circle.ymlのpreセクションでandroid-sdk-licenseファイルを所定の場所に作成する

pre:
    - mkdir $ANDROID_HOME/licenses
    - echo $ANDROID_SDK_LICENSE_VALUE > $ANDROID_HOME/licenses/android-sdk-license

ちなみに、これで足りないSDKおよびBuild ToolsのDownloadは出来るようになったが、ライブラリ等のアップデートは以前と変わりなく必要になるので、全体としては以下のようになる。

  pre:
    - echo y | android update sdk --no-ui --all --filter tool,extra-android-m2repository,extra-android-support,extra-google-google_play_services,extra-google-m2repository
    - mkdir $ANDROID_HOME/licenses
    - wget $ANDROID_SDK_LICENSE_URL
    - mv android-sdk-license\?dl\=0 $ANDROID_HOME/licenses/android-sdk-license
あわせて読みたいブログパーツ テクノラティのお気に入りに追加する