2017年8月17日木曜日

日食と太陽光発電

来る8月21日月曜は北米各地で日食が観測されます。ここカリフォルニア州は残念ながら皆既日食は見られませんが、最大75%ほど欠けた太陽は目にすることができるようです。霧がでなければ、ですが。

Wikipediaによれば前回北米で皆既日食が観測されたのは1979年。実に38年ぶりの出来事です。そして今回、米国各地は歴史上初めて「日食による太陽光発電への影響」という試練にさらされることになります。(欧州は2015年に経験しているので課題は明確になっています)

太陽が月の影に入り始めると、太陽光発電は急激に出力が低下し、皆既日食中は発電能力がほぼゼロに落ちます。皆既日食が終わると発電能力は休息に回復し、日食が終わればもとに戻ります。皆既日食に至らない場合でも、発電能力は通常時よりは下がります。

発電と送電が分離されている米国では、送電網の運用管理をISO(Independent System Operator)という電力会社とは独立した非営利会社が担当しています。カリフォルニア州ではCA ISOが担当しており、日々の電力需要や発電実績をかなりこまめに公開しています。
8月16日のカリフォルニア州再生可能エネルギー発電量
上のチャートはCA ISOが発表した2017年8月16日の再生可能エネルギー発電実績です。黄色の線が太陽光発電で、日の出とともに出力が上がりだし、昼のピークで10000MW近くまであがり、その後日没まで出力は急降下します。

今回の日食はカリフォルニア州では午前9時から11時半。ピークは10:20で、北カリフォルニアでは最大75%、南カリフォルニアでは55%ほど欠けます。だいたい9000MW発電している状態の時間帯が一時的とはいえ最大6000MW以上の発電能力を失い、そして急速に復帰するわけです。
8月17日のカリフォルニア州電力需要予想
二番目のチャートは8月17日のカリフォルニア州の予想電力需要です。平日だと午前10時前後は大体29000MWの電力需要があります。太陽光はこの需要のほぼ1/3を提供しており、日食のピークにおける影響はかなり大きくなります。おそらくはガス火力発電や水力発電の出力をこまめに調整して乗り切ることになるのでしょうけど、この「運用でカバー」が可能なのも、まだ太陽光発電がマイナーな存在だからであって、もしこれ以上太陽光発電が増えたらこういう「逃げ」が打てなくなり、日食の日は計画停電を行う必要がでてくることでしょう。

ちなみに日食がなくても、増えすぎた太陽光発電に対処するために

  • 日没後の電力需要に備えて、昼間から火力発電をスタンバイさせておく(発電しないけどガスは燃やし続ける)
  • 昼間のピーク時に太陽光発電を止める
というオペレーションが日々行われているのが現実です。

これはいくらなんでももったいないので、ピーク時の電力を他州の送電網に売り込むというアイデアもあるらしいのですが、エコを追い求めているカリフォルニア州の電力は他州よりもかなり高めでそんなものをわざわざ買う変わり者が他州にいるのか、という問題も生まれてきます。

じゃあピーク電力を電池でためておけ、というアイデアも当然でてくることでしょうけど、それは拙ブログで過日書いたとおり、電気自動車用のリチウムイオン電池需要との巨大な食い合いが発生するので、やはり高価なソリューションとなる可能性が高いわけです。

今回の日食を機会に「果たして太陽光発電は本当にエコなのか」を社会全体で考え直すきっかけになればよいなぁ、と願っております。




2017年8月14日月曜日

IonicとAWS CognitoとFacebook認証連携(前編)

プログラミングの話です。興味ない人は読まないほうがいいです(笑)

Ionicを使って携帯アプリを色々と開発しておりますが、いつも認証周りは鬼門なのでここらで一発AWS Cognitoを活用してみようと思い数日間試行錯誤しておりました。実現したいのは

  • アプリケーションへのログインにFacebook認証を使う
  • 認証済ユーザにはAmazon Web Serviceのリソースへのアクセス権を一時的に与える
  • 携帯側はIonicで開発
この3点です。

ちょっと前(といっても一昨年くらいか)までは、このような場合にはCordovaのInApp Browserで認証させて、http://localhostにコールバックかましてトークンを取り出して、なんていうのが定番でしたが、もうそんな時代じゃないのですね。
じゃあどうするのよ、って調べるとどうやら@ionic-native/facebookというのを使えば良い模様。あとは@ionic-native/facebookとAWS Cognitoを連携させるだけですね。楽勝でしょこんなの。(注: 楽勝=StackoverflowやQiitaもしくはGithubの事例を参考にすれば出来上がり)

ところが...

意外にもこの組み合わせを試した事例が少ない。そもそもAmazonのドキュメントを漁ってもCognito User PoolにおけるFederation Identity Providerと、Cognito Identity PoolにおけるAuthentication Providerの役割を明確にしたものが見当たらず、色々と試行錯誤の連続でありました。最も参考になったのはaws-cognito-ionic2というプロジェクトでしたが、おそらくこの作者もFacebookやTwitterの認証連携は実装していないと思われます。(このCloseされたIssueでそう推察しました。だってIt's just a matter of adding additional buttons and some code では実装できないから)

今回頭を悩ませたのは以下の問題です。
  • Cognito User Poolは「User ID」「Password」が必須であり、オプションでEmail等も管理できる。
  • Federated Loginが返してくる情報には「User ID」に使えそうなものはあるが、Passwordはついてくるはずないし、Emailももらえないのが普通。(嘘だと思ったらTwitterやFacebookのOauth戻り値を見よ)
  • かような状況で、Federated Loginの結果からCognito Userを生成できるのか?
実際に悩んでいる人はいるようで、Facebook認証はうまくいくのにgetCurrentUser()がNullを返すという質問がStackoverflowに上がってました。これに対する回答は「お前は何を言ってるんだ?」的な内容で、思わず▼ボタンをクリックしましたが私にはカルマが足りないのでマイナス評価を付けることはできませんでした。

私が出した結論は(間違ってるかもしれませんが)「Federated Loginの結果、User Poolに新規ユーザレコードが生成されることはない」です。Cognitoの設定画面にはAttribute Mappingの設定もあり、いかにもFederated LoginからUser Poolにシームレス連携()ができるような雰囲気が醸し出されてますが、これは罠です。きっとそうです。違う!という人は是非ご指摘をお願いします。

あ~話が長くなりました。年取るとこれだからダメですよね。

ということで、今回は@ionic-native/facebookを使って認証する部分までの実験結果です。ソースは小生の作りかけばかりのGithubに入ってます。Tag=MVP2からダウンロードするなりForkするなりしてください。

以下、設定でのメモ。

Facebookアプリの設定
  • AndroidとiOSの両方を設定すること
  • その際、Ionicアプリのconfig.xmlにあるバンドルIDをFacebook側に登録しておくこと
  • 要は@ionic-native/facebookのインストール方法に従うこと
  • Android用設定でkeytoolコマンドを使う場面がありますが、これはJava SDKについてくるコマンドです。
  • OAuth Callbackは今の時点では適当に設定しておいて大丈夫です
AWS Cognitoの設定
  • 後編で設定します


IonicのsidemenuにFacebook認証ボタンを付けただけですが、まずはLogin/Logoutできるようになりました。後編ではAWS Cognito(のIdentity Pool)との連携について書きます。


2017年8月8日火曜日

Googleさんの例の件

まずお断りしておきますが、ソフトウェア開発を始めとする知的創造作業における能力が性別や性癖で決まることは決してない、と私は信じております。すご~くできる奴はすご~くできる。そうじゃない人達は自分も含めて正規分布っぽく存在している。そんだけ。

従いまして、今回Googleをクビになった例の社員の解雇理由が「女性のステレオタイプ化」というのは、まあしょうがないかな、と。女性だからソフトウェア開発できない、という命題は「偽」なわけですから。

一方で、議論の元となった「Diversity」の話は強いチーム育成を考える人達にとっては脅威となりうるのでここにメモを残しておきたいと思いました。

Googleのことですから、チーム強化の際にBest of the Bestを集めるということはそれほど珍しくはないでしょう。それは私たち多くのように平均値±1σに収まるような人たちではなく、+2σとか+3σとかのレアな能力の持ち主です。

極論すれば「ある分野で文句なしにトップの人材を一人」探している場合、そのポジションは男性一人か女性一人となります。トランスジェンダーかもしれないしそうじゃないかもしれない。人種的にも一種類。ストレートかもしれないしゲイかもしれないしバイかもしれない。チームが小規模になればなるほど、そのチーム構成は世間のDiversityから乖離する可能性は高くなります。

そしてそのような小規模採用をチーム単位で繰り返していく結果、会社全体のDiversityが世間一般とかけ離れることも当然あり得ます。

それはまずいと経営層が騒ぎ出し、チームでの採用に口を出すというのがDiversity重視経営の怖いところです。「3人の枠全員がインド人男性だと? それはまずい。 一人か二人は女性にしろ。できれば黒人かヒスパニックで。LGBTならなおうれしい。」みたいな干渉が発生し、結果トップクラスからはちょっと距離がある人たちが採用されるようなことになったら、チームの価値は揺らいできます。

繰り返し強調しておきますが私は別に黒人やヒスパニックがインド人より劣っているといってるわけではないです。男性が女性より優れてるとも思いません。でもトップ3人を探していたら、集まった全員がたまたまインド人男性だった、なんていう可能性は排除できない。それだけの話です。そこに民族性や性癖の話を持ち込むのはトップを目指す集団なら「やってはいけない」オペレーションだと私は考えます。



D3.jsで間欠時系列データを表示するには?

趣味と実益を兼ねて(意味不明)株価チャートをd3.js使って表示するという作業をしていた時期がありました。ちょっと検索するとわかりますがCandlestickやOHLCチャートをd3で表示する事例はたくさんあります。

が...

いろいろ試した限りではこれらのチャートはd3.time.scale()を使っておりまして、月足や週足なら全く問題ないことはわかりました。日足でも土日休日にちょっと隙間が生じる程度ですからまあいいでしょう。でもIntradayで1分足とかやろうとすると場がしまってる間がおもいっきり空白になってしまいます。

d3.time.scale()が使えないとなると選択肢は2つしか思い浮かびません。

一つは時系列データを配列として格納し、d3.linear.scale()で表示。横軸はd3.svg.axis().tickValues()で時刻を表示。

もう一つのやり方はやはり時系列データを配列として格納しますが、d3.ordinal.scale()で表示するやり方です。横軸には時刻を入れます。

どちらのやり方もローソク足はきっちりと隙間なく表示されますが、zoom/pan操作の実装でいろいろと面倒になります。

配列として格納する場合、zoomやpanで配列範囲外が描画領域に入ってきた場合、なんらかのガードをかける必要があります。これがおもったより面倒でした。

Ordinalで表示する場合はクリック先(タップ先)の値を逆引きする実装が面倒になってきます。tooltip表示とかですね。d3.eventから拡大率をもらって、それを元のScaleに掛けて、d3.bisectで逆引きする、みたいな感じですかね。

なんとかしてこのあたりをすっきりと実装したいのですが...やっぱScaleを自ら実装するしかないんですかね。

と、特にオチのない話でした。

参考:
Create D3 x-axis that excludes weekends and holidays
Time axis: Remove scale points with no data



2017年8月7日月曜日

オバマケアは崩壊しているか?

トランプ政権=オバマ前大統領が実現した国民皆保険制度(オバマケア)を奪い取る悪の政権、みたいな報道が目立つわけですが実際のところどうなのよ? という気持ちで調べてみました。
Source: https://lysistrata.commons.gc.cuny.edu/2017/04/19/obama-vs-trump-important-qualities-of-a-u-s-president/

まずオバマケアのおさらいです。

日本の保険が社会保険と国民健康保険に分かれているように、米国でも「企業が従業員に福利厚生の一環として医療保険を提供する」場合と、「個人や世帯が医療保険を申し込む」場合とに分けられます。

この後者の「個人や世帯が医療保険を申し込む」際に、掛け金や通院・処方薬の自己負担分を国や州が補助しますよ、というのがAffordable Care Act(ACA: 通称オバマケア)です。補助金を出すのだから各世帯必ず加入してくださいね加入しないとペナルティ(増税)がかかりますよ、という仕組みです。政府はhealthcare.govというサイトを用意して、加入を推進してきました。


では実際にオバマケアで各世帯はどれくらいの負担が発生するのでしょう?

この算出がなかなか難しい。というか、面倒くさい、わかりにくい。色々な条件から掛け金や、通院・処方薬の自己負担が算出されるのです。

まず医療保険を管轄するのは連邦政府ではなく州ですから、州ごとに条件は異なります。ここではカリフォルニア州を前提に話を進めます。その上で、以下のような条件を加味する必要があります。

  1. 保険でカバーされる範囲
  2. 州からの補填があるか否か
  3. カリフォルニア州のどこに住んでいるか
  4. 年齢
  5. 喫煙者か否か

1は通院や処方薬の自己負担を決める要素です。掛け金が安い保険は、総じて通院や処方薬の自己負担額が大きくなります。例えば「一回の通院あたり500ドルまでは自己負担。それを超える部分は4割自己負担。処方薬は年間500ドルまでは保険会社が負担し、それ以上は自己負担」みたいな感じになります。

これだと低所得世帯はとても苦しくなるので、掛け金や通院・処方薬の自己負担分を国や州が補填しますよ、というのが2です。低所得世帯に厚くなります。

3は詳細不明ですが、居住地により掛け金や補填の枠が決まっているようです。

4と5は自明で若い人や非喫煙者は総じて負担が軽く、年寄りや喫煙者はリスクが高い分掛け金も上がる、ということです。

これだけの要素を網羅的に調べるのは苦痛ですのである程度条件を絞ります。
  • モデルケースA: Fresno(郵便番号93740)に在住する世帯年収5万ドルの家族。2017年で夫45、嫁35、子供8歳と5歳。
  • モデルケースB: San Francisco(郵便番号94108)に在住する世帯年収95000ドルの家族。2017年で夫45、嫁35、子供なし。
いずれも喫煙せず、妊娠はしてないという前提にします。なお、世帯年収はその地域の中間値としました。ソースはこちら
Fresnoは赤い印のあたり。San Franciscoはその左上のほう
カリフォルニア州の場合、Covered Californiaという組織が保険商品を選ぶためのサービスを提供しています。こちらのリンクからアクセスできます。まず、両モデルケースが2017年にオバマケアで支払う掛け金を算出してみます。

モデルケースAは、世帯所得が低いのでオバマケアとは別のMedi-Calというカリフォルニア州が提供する医療保険制度に申し込むことが可能ですが、敢えてオバマケアを選ぶこともできます。その場合、掛け金は一番安いもので月額たったの$4。すばらしい! 一番高いもので月額$1250.20となります。いずれも国や州から毎月$776の補助金を受け取った後の金額です。

月額$4~$1250と幅が広いですが、$4ではどのようなベネフィットが得られるかというと...

  • 指定された病院でしか保険が適用されない
  • 一家族当たり年間6300ドルまでの医療費は自腹
  • 世帯当たり年間12600ドルまでの医療費は自腹
  • 一家族当たり年間500ドルまでの処方薬は自腹
  • 世帯当たり年間1000ドルまでの処方薬は自腹
ちょっとわかりにくいですが、年間$48の掛け金($4x12)を払うことで、世帯当たり年間$13600を超える医療費については保険会社が全額負担する、というわけです。年間$13600までは自腹となります。

ではモデルケースBはどうなるでしょうか。世帯所得があがるのでMedi-Calという選択肢はありませんし、政府や州からの補助もでません。結果、月額掛け金は$654.28~$1703.2という幅となります。モデルケースAと違ってこちらは子供なしでこの金額です。では、一番安い月額$654.28の掛け金でどのようなベネフィットが得られるかというと...

なんと! モデルケースAとまったく同じなのですね。すなわち

  • 指定された病院でしか保険が適用されない
  • 一家族当たり年間6300ドルまでの医療費は自腹
  • 世帯当たり年間12600ドルまでの医療費は自腹
  • 一家族当たり年間500ドルまでの処方薬は自腹
  • 世帯当たり年間1000ドルまでの処方薬は自腹
すなわち、年間$7851.36(654.28x12)の掛け金を払った上に、年間$13600までの医療費は自腹。病気もケガもしなければ年間出費は$7851で済みますが、重い病気やケガを負ったら年間$21000くらいまでの出費を覚悟する必要があります。その金額を超えて初めて保険会社が負担してくれるわけです。

自己負担額を減らしたければ毎月の掛け金を上げればよいのですが、これもやはり高くつきます。例えばBluecrossの月額$1603の保険に入れば、医療費の自己負担はゼロとなります。また病院や医師の限定もなくなります。ただし病気やケガがなくても年間$19236におよぶ掛け金が飛んでいきます。

カリフォルニア州の場合、世帯収入$95000だと以下のように課税されます。

  • 連邦所得税...17.78%
  • 州所得税...6.35%
  • 社会保障税...6.2%
  • Medicare Tax...1.45%
だいたいオバマケア以外で32%ほど持っていかれます。ここに年間で$7851(8.2%)~$19236(20%)の医療保険掛け金を乗せようというのですから、「そこそこ軌道に乗っている」自営業や個人事業主には実に重い負担となります。このあたりを整理すると、下の図のようになります。
年収5万ドル世帯が最も安い保険を選んだ場合
年収95000ドル世帯が最も安い保険を選んだ場合


年収95000ドル世帯が最も高い保険を選んだ場合
掛け金の安い保険は医療費の自己負担が大きいですが、自己負担を超える分は保険会社がカバーしてくれるので「医療破産」はなくなります。それをオバマケアの最大の利点と称賛することには私は異論を唱えません。

ただしそのためのコストは中高所得世帯に重くのしかかっていることに注意するべきです。所得移転の一環と捉える人もいるかもしれませんが、そもそもの医療費を抑える努力をせずにこのような政策をとれば、遅かれ早かれ制度そのものが崩壊します。

実際、カリフォルニア州のオバマケア掛け金は去年が13%値上げ今年は12.5%値上げです。年間12.5%の値上げペースが続くということは5年で掛け金は倍増するということになります。

トランプケア(敢えてこの呼び方にします)になると、医療保険に加入できない世帯が大量に発生する、という観測がありますが、実はオバマケアのままでも加入をあきらめる世帯は発生しますし、すでにそうなりつつあります。

2016年、まだオバマ政権だった時ですら160万人がオバマケア加入を断念していたわけです。この傾向は続いており、2017年7月の時点では200万人を超えたという推定もあります。無保険による増税ペナルティを受けてでも、オバマケアに加入しない世帯が増えているわけです。このしわ寄せは...オバマケアの掛け金増加で中高所得層にさらに跳ね返ってきます。悪循環。

トランプ政権はもちろん、共和党・民主党は党派を超えてこの問題に取り組むべきだと私は考えます。トランプ政権や共和党のプレゼンテーションが下手なのも問題ですが、オバマケア見直しを鬼畜の仕業のように非難するリベラルな皆さんは、上記数字をよく読んで「オバマケアは持続不能な政策」であることを認識してくださいな。


2017年8月3日木曜日

サンフランシスコ車上荒らしを視覚化してみる

サンフランシスコの名物は「ケーブルカー」「ゴールデンゲートブリッジ」そして「車上荒らし」。とにかく車上荒らしが多いのです。

ちょっと古い記事ですが7月にはサンフランシスコ市警が急増する車上荒らしに警告を出していました。車内に物が置かれた状態で車を離れるな、という警告です。車中になにかあれば連中はあっという間に窓を割って車内から物を持っていきます。たとえ無価値であっても。盗られるものは無価値かもしれませんが、車のガラスはしっかりと修理代がかかります。

さて、どれくらいの頻度で車上荒らしが起きているのでしょうか。それを視覚化できるサイトがあります。

https://www.crimemapping.com/

期間や犯罪の種類を入力して、地図上に犯罪が起きた場所とその種類を表示できます。検索条件に

  • What...Vehicle Break-in/Theft
  • When...07/15/2017~08/02/2017
を指定してみました。
サンフランシスコで発生した車上荒らし・7/15~8/2

期間を絞ったのはこのサービスが一度に1000件以上の記録を表示できない仕様だからです。7月15日からの約3週間で実に942件の車上荒らしが発生しています。これは年間16000件のペースですが、2015年には年間25000件以上の車上荒らしが警察に届けられているので、上図はまだ少ない期間だったと言えましょう。

サンフランシスコの10倍大きいニューヨークも犯罪データベースを公開していますが、このデータベースを見ると車上荒らしは年間で7000件いくかいかないかの件数です。ニューヨークの1割しか人が住んでないサンフランシスコという地方都市で、ニューヨークの3~4倍も車上荒らしが起きている現状は異常といってよいでしょう。

なぜこんな状況になってしまったのかについてはまたの機会に書きます。


2017年8月2日水曜日

サンフランシスコの低所得者用賃貸住宅に申し込みが殺到

もう語りつくされた感がありますが、サンフランシスコの賃貸住宅は需給がひっ迫しており、家賃がとんでもないことになっております。

サンフランシスコの家賃平均値 ソース rentjungle
上のチャートはRent Jungleによるサンフランシスコの家賃平均です。2017年6月の数字だそうです。

  • 1ベッドルーム家賃平均=$3500 (38万5000円程度)
  • 2ベッドルーム家賃平均=$4637 (51万円程度)
  • すべての家賃平均=$3803 (41万8000円程度)
家賃が高いのは今に始まったことではありません。サンフランシスコは建築規制が厳しく、物件は常に不足気味です。だったらもっと建築規制緩めてどんどんアパート建てればよいと思うんですが、それをやると既存物件の価格も下がってしまいます。そこで市が考えたのが...「賃貸物件のうち、一定割合の部屋は低所得者用に安い家賃を設定することを義務付ける」というプログラムでAffordable Housingと呼ばれてます。

ここでいう「低所得者」とはその地区の世帯収入中間値(Median)の85%以下しか収入がない世帯をさします。このAffordable Housingへの申し込みが殺到しているという記事が本日の地元紙San Francisco Examinerに掲載されていました。


  • 1751 Carroll Aveに建設されたアパートのAffordable Housingは120件。申込は4126件。競争率30倍。
  • 72 Townsendに建設されたアパートのAffordable housingは7件。申込は300件以上! 競争率は43倍以上!! 
「低所得」といっても年収$71000ドルまでは申し込めるそうです。ざっと780万円。そして家賃が収入の40%は越えないように抑えられているということなので、おそらくは$2350程度が賃料ではないかと。ざっと26万円ですね。

ということでまとめますと...

「年収780万円クラスの世帯が、家賃26万の賃貸物件に『安い!』と叫んで抽選覚悟で申し込みする」

というのが今のサンフランシスコの状況なわけです。狂ってますね...

2017年8月1日火曜日

サンフランシスコ名物ケーブルカー・私服捜査官による乗車料金徴収調査

サンフランシスコ名物のケーブルカー。本日の地元紙Examinerは、ケーブルカーにおける料金徴収について報じています。

サンフランシスコ名物のケーブルカー・Powell線
観光で乗る人は始発駅で事前に料金を払うことが多いかと思いますが、途中から乗ることももちろん可能です。その場合、現金で車掌に払うか、日本のSuicaを思いっきりダサくしたClipperカードで払うことになります。

今回問題となっているのはこの途中乗車した人達からの現金徴収のありかたで「そもそもちゃんと徴収しているのか?」「徴収したお金を車掌がネコババしてないか?」というあたりに私服捜査員による監査が入ったそうです。結果は...
  • 路線によっては3割以上の確率で徴収しない
  • 徴収してもレシートを発行しない(=車掌がネコババ)
という状況なようです。自分は地元民なので知ってたけど。

記事によればケーブルカーの売り上げは年間1000万ドル(11億円)で、その3割は現金で払われるとか。その現金支払の1割をネコババすれば30万ドル(3300万円)ですから車掌がそういう悪いことを考える可能性は排除できないでしょう。

実際、記事では監査中に数名の車掌が横領容疑で逮捕されたと報じられています。

とはいうものの、観光客が圧倒的に多いケーブルカーではキャッシュレスにすることは困難でしょうから、今後もこの「ゆるい」仕組みは生き続けるのではないでしょうか。

参考

  • ケーブルカー料金(2017/8時点)...$7
    • 4歳以下は無料
    • 老人と身障者は深夜・早朝のみ割引あり




2017年7月30日日曜日

サンフランシスコ電気自動車事情・電気自動車がこの先生きのこるには? Part-II


サンフランシスコ電気自動車事情・電気自動車がこの先生きのこるには? Part-Iの続きであります。今回は電池の話です。

電気自動車の性能と値段を決めるのは電池といっても過言ではないでしょう。

あまり容量を増やしすぎると車両価格が高くなるうえに、重量増加により電力当たりの走行距離(ガソリン車でいう燃費)が悪化します。現時点ではTesla Sの85(かそれ以上)が搭載する90kWhあたりが上限になるのではないでしょうか。Tesla Sの上級モデルはバッテリーだけで540kgになります。

‘eBayで売られていたTeslaのバッテリーユニット

上記写真はeBayに出展されていたTesla S用のバッテリーユニットです。Panasonicの18650を444本束ねることで5.3kWhの容量を実現しています。ちなみにその辺のラップトップパソコンの電池ユニットをばらしても、かなりの確率で18650がでてくるはずです。汎用電池で原価を抑えようというのがTeslaの設計思想なのでしょう。1kWhあたりの単価は$250で、他社より$100以上安いそうです。

Laptop電池ユニットの中にも18650が

我が家のBMW i3(2015)は22kWhと、Teslaに比べるとぐっと小さいバッテリーを搭載しています。バッテリー重量は204kg。こちらはSamsungのリチウムイオン電池パッケージを利用してるそうです。
BMW i3 Battery Pack (source: https://cleantechnica.com/2016/07/16/bmwsamsung-batteries-vs-teslapanasonic-batteries-better/)

1kWhあたりの重量を比べるとTeslaのほうが軽く、汎用の18650をたくさん束ねるという設計は有利なのかな、という気もします。

さて...

今後、世界中の自動車が電気式になるとしましょう。そして、それらの車はTesla式に18650をたくさん搭載している、としましょう。

このページによれば、18650電池一本あたり、リチウムは0.75g含まれるそうです。Teslaの5.2kWhバッテリユニットは444本の18650で構成されています。すなわち、バッテリユニットあたりのリチウム含有量は333グラム。

一台あたり12ユニットを搭載するとして、必要なリチウムの量はほぼ4kg。60kWhクラスのバッテリーを搭載するには、一台あたり4kgのリチウムが必要、という前提で話を進めます。

アメリカには2億5000万台の車が走っていますから、これらをすべて電気自動車に置き換えるのは10億キログラムのリチウムが必要となります。100万トン。アメリカだけで100万トンのリチウムが必要なわけです。

果たしてリチウムは足りるの?? という素朴な疑問が湧いてきます。

で、こちらのPDFに世界のリチウム消費量と産出量がまとまっています。2014年の数字ですが、世界のリチウム産出量は年間36000トン。アメリカの車を全部電気自動車に置き換えるには、世界中で算出されたリチウムすべてをアメリカの電気自動車向け電池に使ったとしても、28年弱かかることになります。

仮に年間36000トンの産出ペースを変えない場合、すべての産出リチウムを電気自動車用に加工したとしても、電気自動車の年間生産台数は900万台が限界という制約が生じます。Wikipediaによれば2016年の世界の自動車生産台数は年間9500万台ですから、自動車需要の1割しか満たせないことになります。

「じゃあリチウム電池を再利用すればいいのでは?」という考えも浮かびますが、こちらの資料(2011年)によればリチウム再利用のコストは採掘コストの数倍もあり、経済的にはペイしないようです。

前述資料によればリチウムの埋蔵量は1350万トンありますから、電気自動車の普及でリチウムが枯渇することはなさそうですが、産出ペースを増やすか、リサイクルのコストを劇的に下げないと「電池の材料が足らなくて電気自動車のコストが下がらない」事態がやってくる可能性があります。

参考にしたページ

2017年7月28日金曜日

サンフランシスコ市レイプ犯罪事情

サンフランシスコ市が誇る無料紙のExaminer。今日の紙版一面は「Crime Spike Blamed on Nightlife」という見出しです。オンライン版だとSFPD partly blames rape increase on city’s nightlifeという題名で、こっちのほうがわかりやすいですね。

そう。サンフランシスコ市でレイプ犯罪が増えており、ナイトライフを楽しむ人たちが増えたのも原因の一端とサンフランシスコ市警察は説明している、というものです。

ショッキングな見出しではありますが、警察に届けられたレイプ犯罪件数は

  • 2016年通年で429件
  • 2017年上半期で223件
ということです。

サンフランシスコは人口90万人弱の地方都市です。90万人あたりで年間429件のレイプ犯罪が起きるということは、東京都の1300万人に換算すると年間6200件。確かに多い気はします。

さて記事に戻りまして、この上半期での223件というのは確かに昨年と比べて増えていますが誤差範囲にも見えます。記事で注目されてるのはNorthern Station管轄での発生件数で、20件。これはHayes ValleyからMarinaにかけての比較的安全といわれる地域で、PolkやDivisadero、あるいはHayesなど深夜まで営業するバーやクラブが多い通りを含んでいます。(ただし現在の市条例で飲み屋は2時まで)

とはいうものの、この微増をすべてナイトライフの変化に求めるのも無理がありそうです。実際記事ではバーやクラブ側の反論もでてまして、一体この記事は何が言いたいのか??と叫びたくなる内容でした。

一方で興味深い数字も読み取れました。

それはサンフランシスコではレイプ事件の立件が極めて難しい、ということです。429件の被害者のほとんどは加害者と知り合いで、それは同僚や学友であったり、出会い系アプリで知り合った仲だったり様々なようですが、見ず知らずの相手をいきなり襲うような事件はほとんどない、ということですね。

その結果、検察が加害者を起訴に持ち込むことが極めて難しくなるそうです。知り合い同士が二人きりになった以上、その過程で同意がなかったということを実証することはまず無理、と。

2016年に届けられた429件のレイプ事件のうち、起訴に持ち込まれたのはたったの11件。

429件のうち、11件です。たったの2.5%。

これだと多少のリスクを負って、レイプを試みる不届き物が増えてもしかたない気はします。

ということで、サンフランシスコ市で二人っきりで飲みに行くときには気を付けろってことですね。そしてここはサンフランシスコ。レイプ犯罪の被害者が女性とは限らないことにも注意したいです。

犯罪を犯した不法移民は本国に退去させるべきだが、サンクチュアリシティ(聖域都市)は支持する! え?

大統領選の争点となった不法移民対策。トランプ大統領はサンクチュアリシティ(聖域都市)に対する締め付けを強化しようとしているわけですが、世論は大反対、というような論調で日本では報道されているのではないでしょうか。アメリカでもCNNばかり見ているとそういう感じになります。が、現実は報道とはずいぶん異なるようです。
  1. 米国民は不法移民に厳しく、犯罪を犯した不法移民については本国に送還すべきと本音では思っている人が過半数(おそらく7割以上)存在する。
  2. 一方で「サンクチュアリシティ」という名前を神聖な何かと勘違いして、サンクチュアリシティの廃止には反対する、という人たちも相当数存在する。特にそれはリベラル(民主党)に顕著である。
サンクチュアリシティという呼び方に拘らず、犯罪を犯した不法移民にはきちんと法律を適用し、米国民の安全を確保するということを正しく説明すれば、トランプ大統領の政策は幅広く受け入れられるはずです。以下、詳しく説明していきます。

UC Berkeley(カリフォルニア大学バークレー校)のIGS(Institute of Government Study)が定期的に行う調査で、サンクチュアリシティに対するカリフォルニア州有権者の考えをつかむことができます。

2017年3月版では

  • サンクチュアリシティに賛同=56%
    • 民主党支持者での賛同率=74%
    • 共和党支持者での賛同率=20%
  • サンクチュアリシティに反対=44%
    • 民主党支持者での反対率=26%
    • 共和党支持者での反対率=80%
となっており、党派性がくっきりと表れています。サンクチュアリシティを支持する民主党vs反対する共和党、ですね。 ところが...

同じIGSによる2015年9月の調査では...

  • サンクチュアリシティに賛同=24.3%
    • 民主党支持者での賛同率=27.1%
    • 共和党支持者での賛同率=18.0%
  • サンクチュアリシティに反対=75.7%
    • 民主党支持者での反対率=72.9%
    • 共和党支持者での反対率=82%
2年半前の調査では民主党員ですら7割がサンクチュアリシティに反対していたのです。

では民主党支持者はこの2年半で移民に対する考えが変わったのでしょうか? そういう人もいるかもしれませんが、サンクチュアリシティという言葉の響きがかなりの影響を与えている可能性があります。

前述のIGSアンケートの質問内容を見てみますと

2015年

Do you believe that local authorities should be able to ignore a federal request to hold an illegal immigrant who has been detained?
(地方自治体や警察は、連邦機関からの不法移民引き渡し要請を無視すべきと思いますか?)

2017年
Do you favor or oppose communities in California declaring themselves sanctuary cities and instructing local police and government employees not to automatically turn undocumented immigrants over to federal authorities for possible deportation to their home country?
(連邦政府から母国への強制送還の可能性がある不法移民引き渡しを拒絶するサンクチュアリシティを支持しますか?反対しますか?)

どちらも質問内容は同じです。すなわち、強制退去を実際に判断し実行する連邦政府機関(ICE等)に対して、地方自治体や所轄警察は協力すべきか否かを問うているわけです。そこに「サンクチュアリシティ」という言葉を入れただけでリベラルな皆さんが反対に回ったということですね。

「いや、2年半のうちに有権者の考えが変わったんだ」という見方もあるかもしれません。

残念ながら「サンクチュアリシティ」という言葉を使わなければ米国民は犯罪を犯した不法移民を強制送還すべきだと考えている、というのは今年ハーバード大学が行った別の調査からもうかがえます。2017年2月に実施されたHarris Pollの結果は http://caps.gov.harvard.edu/files/caps/files/caps-harris_poll.pptx からダウンロードできます。要PowerPoint。このパワポ資料の33ページに

という調査結果がでています。「サンクチュアリシティ」という言葉は使っていませんが、犯罪を犯した不法移民を自治体や所轄警察はとっとと政府の移民管轄組織に差し出すべきだ、と80%の人たちが回答しているわけです。

トランプが主張する政策は割とあっさりと受け入れられるのかもしれません。

サンフランシスコ電気自動車事情・電気自動車がこの先生きのこるには? Part-I

こんばんは。以前は68年式Big BlockのV8エンジン搭載車などに乗っておりましたが2015年より意識高いサンフランシスコ市民()らしく電気自動車に乗り換えました。BMWのi3であります。
意識の低かったころ乗ってた車
意識高め(右)

ありがたいことに市内の公共駐車場にはChargepoint社の充電ステーションが設置されておりまして、自宅に駐車スペースがない我が家でも電気自動車の恩恵を受けることができます。

が...

昨今の電気自動車普及に伴い、この公共充電ステーションは取り合いに近い状態であります。一応、一回の利用は最大4時間までという標識が張られているのですが、TeslaのSとかXみたいなバッテリーの化け物みたいなのが陣取ると一晩占有、なんてことも珍しくありません。

こちらの記事→Electric cars in SF by the numbersによれば、サンフランシスコ市で登録されている自動車42万5000台のうち、おおよそ5000台が電気自動車とのことです。ざっと1%ですね。

一方の充電ステーションですが、大手ChargePoint社が市内中心部にざっと270台設置しています。他系列(evGOやVolta)を入れても350台程度でしょうか。

電気自動車がざっと1%普及した現状で、公共の充電ステーションが不足気味なわけですから、今後電気自動車がさらに普及するのであれば充電ステーションをもっともっと増やす必要があります。

ChargePoint社の充電ステーション設置台数
サンフランシスコは公共充電ステーション設置では先進的な取り組みをしてきたほうでして、上記地図にあるステーションのほとんどは設置後数年経過しています。老朽化、といってもいいでしょう。設置した当時は最先端だったであろうSAE J1722(19.2kW)も、昨今のバッテリー大容量化に伴い力不足は否めません。すなわち「充電ステーションの容量不足」→「充電に時間がかかる」→「充電ステーションの占有時間が増える」→「充電ステーションが足らない」という悪循環です。これを解決するには「充電ステーションの高速化」と「充電ステーションの台数増加」を並行して進める必要があります。

「充電ステーションの高速化」が意味することは単純で「より短い時間でより多くの電力を電池に送り込む」ことに他なりません。現在市内あちこちに設置されているJ1722が240Vで80A。ピンと来ない人は家庭用エアコン4台分くらいだと思ってください。でもこんなレベルじゃ全然足らんのです。

DC Fast (CCS)
上記写真は割と最近設置された高速充電ステーションです。CCSとCHAdeMOが同一筐体に収まってるタイプなのですが、左側の数字に注目。500Vの125Aです。(計算合わないけど)50KWとなってますね。家庭用エアコン10台分だと思ってください。これでも2015年式BMW i3のバッテリ(22kWh)を80%充電するのに20分かかります。

私は電気自動車普及のカギを握る本命充電ステーションはChargePoint社のCPE250(写真)のような「450KW」級だと予想していますが、これだと家庭用エアコン115台分というモンスターとなります。これくらいの代物が、現在のガソリンスタンドのポンプを置き換えていく、というのが電気自動車普及の意味することであります。10ポンプのガソリンスタンドなら家庭用エアコン1150台分。ちょっとした高層マンション並の電力消費量となります。送電網に与える影響も大きいですし、原発の大規模増設までを含む社会的インパクトが生じることでしょう。

次回は電気自動車の電池について思うところを書きます。

追記: Part-IIを公開しました。(2017/7/31)




2017年7月26日水曜日

[宣伝]比較アプリ3点

私masayangが週末や夜中にごそごそと作ったAndroid/iPhoneアプリ達です。よかったらダウンロードして使ってみてください。

Neko App


  • 猫の写真を2枚比較し、かわいいと思ったほうをタップするアプリです
  • 皆さんが多数比較していくことで可愛い猫写真が上位にランキングされるはず
  • 皆さんの愛ネコ写真もUploadしてください(要Twitter認証)
  • ブログにTop10を日々投稿していきます
  • AndroidユーザはGoogle Playからダウンロード可能
  • iPhone/iPadユーザはiTunes Storeからダウンロード可能


Inu App

  • Neko Appの横流しです
  • 犬の写真を2枚比較し、かわいいと思ったほうをタップするアプリです
  • 皆さんが多数比較していくことで可愛い犬写真が上位にランキングされるはず
  • 皆さんの愛犬写真もUploadしてください(要Twitter認証)
  • AndroidユーザはGoogle Playからダウンロード可能
  • iPhone/iPadユーザはiTunes Storeからダウンロード可能

MyFavNations


  • Wikipediaに登録されている世界206の国・地域の「旗」を比較
  • 好きなほうをタップしてください
  • 皆さんが多数比較していくことで人気ある国旗が上位にランキングされるはず
  • ただし206カ国もあると自分が応援したい国の旗がなかなかでてきませんよね
  • そこで応援したい国のe-Karmaを購入することで、その国の旗の出現確率を上げられるようにしました。
  • e-Karmaは1枚$5で、一カ月有効。
  • この投稿を書いてる時点では、日本のe-Karmaが11枚買われているので日の丸の出現確率が突出してます
  • AndroidユーザはGoogle Playからダウンロード可能
  • 残念ながらiPhoneには対応していません。プログラムそのものは完成していますが、iTunes Storeへの出展が認められない状態です
  • あと各国のWikipediaページにもリンクを張ってあります。

アプリの構成や実装など、技術的な話は時間をみてQiitaに書いていきます。

2017年7月25日火曜日

テロリスト? ただの妄想? サンフランシスコで1万人殺害を目論んだ若者が逮捕される

ソース: ABC7 NewsのOakland man allegedly planned Bay Area terror attacks

昨年暮れにIdentity Theft(個人情報窃盗)で逮捕されたオークランド在住の若者が「ISISのためにサンフランシスコで1万人殺害のテロを計画していた」とのこと。容疑者はカリフォルニア生まれのオークランド育ち、Amer Alhaggagi(22歳)で、FBIの囮捜査にかかった模様。具体的には以下のような話をISIS支援者を装ったFBI捜査員に対して話したり、準備している道具を見せたりしたとのこと

  • サンフランシスコのクラブにて毒薬(殺鼠剤)入りコカインを配布する計画
  • バークレーヒルに大規模な放火をするという構想
  • ISIS謹製爆薬作成マニュアルをダウンロードしてFBI囮捜査官に見せる
  • 入手したという銃の写真を捜査官に見せる
  • サンフランシスコのゲイクラブに爆弾をしかける計画を捜査官に披露
  • UCバークレーの寮をバックパック爆弾で破壊する計画を、現地でISIS支援者を装った囮捜査官に披露。爆弾をいれるためのバックパックを3つ持参していたという。

また、同容疑者はオークランド警察への就職を試みており、爆弾を自作できなかった場合にはオークランド警察から武器を調達し「テロを再定義する」と囮捜査官に語っていた。幸いなことにFBIからオークランド警察に連絡があり、警官として採用されることはなかった。

逮捕するまで、FBIは4カ月に渡ってAmer Alhaggagi容疑者とコンタクトを取っていたという。同容疑者が本当にこんな計画を実行しようとしていたのなら、FBIはよい仕事をしたといってよかろう。

※同容疑者は2016年11月に逮捕されている。FBIはその4カ月前から動いているのでトランプ政権とは関係なく粛々と仕事をしていたわけ。


2017年7月24日月曜日

トランプ政権になってから米国ビザ発行は厳しくなったか?

今日、Twitterでこんなのを見かけました。



で、私の頭には素朴な疑問が湧いてきました。「トランプ政権になってからアメリカのビザ発行は厳しくなったのだろうか?」

とはいうものの、トランプ政権は発足してから半年ちょっと。まだ統計情報は公開されていません。あるのはオバマ政権時代のものだけです。米国国務省のWebサイトで簡単に見つかりました。年次毎・ビザ区分別の発行許可件数/発行拒否件数です。全部取り上げると膨大な量になるので、上記Twitterで話題になっていた就学ビザ(F1)に限定します。

年次 発行 拒否 拒否率
2013 534320 160168 23.1%
2014 595569 173062 22.5%
2015 644233 212018 24.8%
2016 471728 246614 34.3%

すべての国からのF1ビザに対する発行/拒否の割合は、2016年で34.3%。3人に1名は拒否されてるのですね。ということで、トランプ政権でなかったらどうなっていたか、という仮定の話には「1/3の確率で拒否されたと思うよ」と答えればよいわけです。

(追記)
Twitterで流れていた留学ビザ却下の原因は

  • 旦那が永住権(=移民ビザ)持ってアメリカにいる
  • にもかかわらず、奥さんが就学ビザ(=非移民ビザ)での渡米を申請
ではないかと推察しております。本来なら「永住権保持者の配偶者としての滞在許可」を申請するべきだったのではないかと。



2017年7月23日日曜日

Bloggerへの自動投稿 Part-II

前の投稿の続き。Bloggerへの投稿自動化への道のり。

OAuth認証をWebブラウザで実行すれば、Bloggerへの投稿自動化は可能。その検証コードを書いてみた。

from __future__ import print_function
import sys
from googleapiclient import sample_tools

def get_blogger_service(argv):
    service, flags = sample_tools.init(
        argv, 'blogger', 'v3', __doc__, __file__,
        scope='https://www.googleapis.com/auth/blogger'
    )
    return service

def post_article(service, blog_id, contents):
    posts = service.posts()
    request = posts.insert(blogId=blog_id, body=contents)
    response = request.execute()
    return response

if __name__ == '__main__':
    service = get_blogger_service(sys.argv)
    body = {
        "kind": "blogger#post",
        "id": "俺様のblog id",
        "title": "posted via python",
        "content":"
hello world test
" } print(post_article(service, "俺様のblog id", body))

前提として、このスクリプトの置かれたディレクトリにclient_secrets.jsonという名前で認証鍵を置いておくことが必要。JSONを自分で書く必要はなく、Google Cloud Consoleからダウンロードできる。

上記コードを実行すると、初回はブラウザでGoogleの認証画面に飛ばされる。認証が通ったら、blogger.datというCredentialが格納されたファイルが作成され、以後トークン有効期間中は認証画面に飛ばされることなくBloggerへの投稿が自動化される。

トークンの有効期限を変更する方法がわからなかったので何も手を入れてないが、デフォルトでは24時間で期限切れとなる模様。そのときは再び認証画面が表示されることになる。

いずれにしても認証が必要な都度、人間の操作が要求されるのでこのままでは完全自動化はできない。SeleniumからPhantomJSを操作して無人化させればいいのかな、と思ってる。

久しぶりにGoogle Cloudを触ってはまる、の巻

プログラマの皆さん、こんにちは。

自分が趣味で開発しているスマフォアプリの宣伝ブログを立ち上げようとしているのですが、記事を書くのが面倒なのでデータ収集→HTML編集→Blogger投稿を自動化しようと考えました。

Googleのサービスを触らなくなって久しいのですが

  • ID/Passwordによる認証はもはやサポートされてない(Oauthを使う必要あり)
  • Oauth用アカウントには二種類あって
    • Webブラウザやスマフォアプリに人間がID/Passwordを入れてOauth認証
    • 鍵/秘密鍵をJWTで送り付けて認証する(サービスアカウント)
というところまでは割とすんなり理解しました。

で、今回はBlogger投稿の完全自動化を目指しているのでサービスアカウント一択となります。以下のような簡単なコードを書いてみました。

from oauth2client.service_account import ServiceAccountCredentials
from httplib2 import Http
from googleapiclient.discovery import build


def get_blogger_service():
    scopes = ['https://www.googleapis.com/auth/blogger']
    credentials = ServiceAccountCredentials.from_json_keyfile_name(
        'credentials.json', scopes=scopes
    )
    http_auth = credentials.authorize(Http())
    return build('blogger', 'v3', http=http_auth)

def create_public_post(blogger_service, blog_id, content):
    request = blogger_service.posts().insert(
        blogId=blog_id,
        body=content
    )
    response = request.execute()
    return response

if __name__ == '__main__':
    service = get_blogger_service()
    content = {
        "kind": "blogger#post",
        "id": '俺様のblog id',
        "title": "posted via python",
        "content": "
hello world test
" } print create_public_post(service, '俺様のblog id', content)


上記コードを実行すると例外が発生し



googleapiclient.errors.HttpError: httperror 403="" access="" alt="json" blogger="" blogs="" but="" don="" e="" have="" https:="" permission="" posts="" re="" requesting="" resource.="" returned="" sorry="" t="" this="" to="" v3="" when="" www.googleapis.com="" you=""

というエラーが返っていることがわかります。最初はサービスアカウントに持たせた権限が足らないのかなと思いましたが、Owner権限(ほぼなんでもできる)に設定しても症状は変わりません。

悩むこと数日。

こんなやり取りを見つけました。

  • Paulという人がBlogger API v3で(自分と同様に)自動化された投稿を試みるも、403で跳ねられる。何がおかしいのかを質問。
  • BrettというおそらくはGoogleの中の人が「Service Accountからの投稿は許可してないよ」と一行回答。
  • Peterが「なんでじゃい?」と食い下がる。
  • Brettの回答「Blogger投稿には利用規約への同意が必要。自動化されたサービスアカウントには同意ができない。だからダメ」
  • Johnという別人が議論に参戦。「おかしいだろそれ。Blogger API v3のドキュメントではService Accountについて言及してるし、Google ConsoleからBlogger APIを選ぶと、紐づけアカウントでService Account選べるようになってるぞ」と反論。
  • Brettは頑なに「利用規約に同意しないとBloggerへの投稿はできない」というだけ。

ドキュメントが誤解を招くものなのも問題だし、利用規約への同意がないと投稿ができないっていうのもYes/Noの選択だけなんだからプログラムにやらせてもいいと思うんだけど。

まあGoogleもでかい会社だし、こういうお役人みたいな対応する社員がいてもおかしくはないかな、と。

ということでブラウザ経由で認証する仕組みに実装を変えます。で、Headless Browserをスクリプトで制御すればなんとかなるでしょ...

San Francisco Marathon (Second Half)参戦記

自転車レースやめてから徐々に太ってしまいまして、一時は80kgの大台に。これはヤバいということで、今年は結構まじめに走りこんでいます。その成果を試すべく、本日はSan Francisco MarathonのSecond Halfに参戦。昨年に続き、二回目です。

コースは去年と同じ。
ゴールデンゲートパークの西側からスタートし、ゴールデンゲートパークの中をあっちにいったりこっちに行ったりしながら6マイル消化して、残り半分ちょいはヘイズバレーとかドッグパッチとか、微妙な地域を走ってベイブリッジのほぼ真下でゴール、という流れです。
前半が登りで、中間過ぎたら一気に下ってあとはほぼフラット、という感じですね。

今回は無理せずWave 8(2時間30分目標)の集団でスタート。マイルあたり10分ちょっとを維持して、最後がんばるつもりでしたが...
10マイルあたりでブレーキかかってしまいましたが、結果は2時間22分51秒。去年より10分短縮してますが、もう少し頑張れたのではないかという気持ち。

Apple Watch (1st gen) vs Samsung Gear Fit 2
今回、左手にSamsung Gear Fit 2、右手にApple Watch 1st Generationを装着して、どれくらい結果が異なるかを比較してみました。Apple WatchはGPSを内蔵してないので当たり前といえば当たり前ですが走行距離が12.75マイルとなり、2.5%ほど実測から外れております。まあこの程度なら許せる範囲ですし、GPSなしでよくやるなぁ、と感動すらします。

顕著な差が出たのはバッテリー。Apple Watchはゴール直後にバッテリー残量が30%程度まで低下しており、自分の脚力だとフルマラソンでは使えないのは明らかです。対するSamsung Fit Gear 2は70%のバッテリーが残っており、フルマラソンでも使えそうです。

デザインはとてもダサいですが、実用性で考えるとGear Fit 2はよくできてると思いました。

2017年1月12日木曜日

Grant @ Market, San Francisco, CA

よく渡る横断歩道で定点撮影した写真を動画にしてみた。写真はInstagramに上げたものをpython instagram scraperでダウンロードし、ffmpegコマンドでmp4に変換。BGMはYouTubeから適当に選択。


2017年1月11日水曜日

iPhoneの10年と日本携帯メーカーの没落

早いものでiPhone初代GSMが発表されてから10年経ったのだそうな。Twitterで流れてきた 国内6メーカー担当者が実物を見て語った「iPhoneの衝撃と本音」 という記事が泣かせてくれました。

メーカー関係者が語るエンターテインメント性とは、地図や画像の表示時に、人差し指と親指をくっつけ、画面上に置き、指を開くと、それに併せて画像も拡大表示されることを指している。

今でも「ピンチ」というカタカナ語のままだから、この概念は日本語にはなかったということなのでしょう。ベタな説明が泣かせます

日本メーカー関係者らしい視点としては、「ツメで操作ができないのでは日本の女性ユーザーには受け入れられない」(E社製品企画担当)というの指摘があった。

これは皆さんご存知のとおり大外れ。別に爪が伸びていても使えるし、日本の女性ユーザも受け入れたわけでしょ。

マナーモードにすると、カメラのシャッター音も消えてしまう。盗撮防止としてシャッター音を消せないようにしている日本市場ではあり得ない。

これも難癖レベルであり、現実には全く的はずれな指摘だったわけです。

日本のケータイは、確かに高機能ではあるが、「もしもしハイハイ」の音声電話にメール機能を載せ、インターネットに接続できるようにして、音楽を取り込み、テレビや非接触ICを後から次々に載せてきた。まさにリフォームを繰り返してきた住宅だ。

これは日本の携帯の欠点を指摘した例えで中々鋭いところをついていましたね。この記事は2007年7月。iモード等のいまでいう「ガラケー」が日本市場を席巻していた時代の話であります。

時は流れ2009年9月。日本ではiPhone 3GSが発売された直後の記事を紹介しよう。題名は 「国内に携帯8社は多すぎる」 NEC、カシオ、日立、携帯統合で海外市場へ

事業統合は、「07年~08年ごろ、携帯端末販売数が落ち込み、日本市場に閉塞感・危機感があったことから」(大武専務)検討をスタートしたという。「国内携帯メーカーは8社あるが、8社も生き残るスペースはない。合従連衡は不可欠」(大武専務)と、生き残りには国内メーカー同士の統合が必要と判断した。

すごいですね。「売れないのは国内市場が飽和したからだ。合従連衡して海外市場で勝負だ。」みたいな発想。iPhoneという黒船は、この経営陣にはどう映っていたのでしょうか...売れなくなったのは市場が求めているものを作ってなかったからだ、という視点にはなれなかったんですかね。まあ今言うのは結果論でズルなのはわかりますが...

時は流れさらに症状は悪化します。2010年4月。ドコモ、ルネサス、富士通、NEC、パナソニック モバイルコミュニケーションズ、シャープの6社が携帯電話向けアプリケーションプラットフォームの共同開発に合意

これはドコモのプレス発表資料ですが

本取組みは、Symbian OS、Linux OSの両方に対応したメーカー4社の携帯電話に共通で搭載が可能なAP-PFの開発を目指すものです。これにより、携帯電話メーカー4社は携帯電話のアプリケーション処理における基本機能の独自開発が不要となり、開発期間の短縮や開発コスト低減が可能となるため、独自機能の開発に注力できます。
2010年というとiPhone 4が夏に発売。AndroidはHTC DesireとかNexus OneとかDroid Xとか雨後の筍みたいにどんどん発売されていた頃ですよ。そこではどういう仕掛けか知らんけど「開発期間の短縮」は実現されていたわけです。そんな中で「4社共通化を目指す」とか、スピード感が違い過ぎましたよね。

時は流れ2017年。

人工知能だのフィンテックだのイノベーションだの、相変わらずIT業界を煽る話題は多いですが、AppleとGoogleにいいようにやられてきた日本の携帯業界の「何が悪かったのか」を分析し、「どうすれば再発しないか」を経営・現場共に意識共有しておかないと、またまた「停滞の10年」を迎えるだけかもしれまs