月別アーカイブ: 2016年3月

Safariでdivのdatasetを249回ループすると値がundefinedになる。


今回はAndroidではなくJavaScriptです。

divのdatasetをループで値を参照した時の挙動がChromeとSafariで異なっていました。

やったこと

divを配列で249個用意し、最後のdivだけdatasetにデータを入れておきます。
(あんまりやることはないと思いますが、、、)
そしてfor文で全divに対してdatasetの値を出力しました。

結果

期待値としては、248回undefined、最後1回が値が出るはずです。
Chrome(49.0.2623.108)・・・248回undefined、最後にデータ(期待通り)
Safari(9.0.3)・・・249回undefined

サンプル

配列の最後だけデータを入れると動作がおかしいですが、
最後より前にデータを入れると期待通り出力されました。

サンプル2

結果2

Safari(9.0.3)で動かすと
246回undefined
123
undefined
123
と出力されました。

原因は分かりませんが、このような動作をしていました。

Safari 9.0 の JS で「同じ関数を繰り返し実行しただけで返り値が変わる」という強烈なバグが発見されてる

Qiitaに投稿されている現象も報告されていますが、関係あるかは調べられていません。。


ABC2016Springに行ってきました


ABC2016Springに行ってきました。

今回はAndroidメインではなくて、IoTに関わる事、機械学習が多いようでした。

Google TensorFlowとAndroidが繋がる未来

有山圭二さん
有限会社シーリス 代表

好みの画像を自動で収集したいという内容で、TensorFlowを触ってみようと思わせる素晴らしいものでした。
動機が明確なのが一番ですね。

Cloud Vision API and TensorFlow

佐藤 一憲さん
Google Cloud Platform Developer Advocate

Google Cloud Platform == The Datacenter as a Computer
データセンターまるごとを一つのコンピュータとしていて、
何千台のコンピュータをコマンド1つで使えるというすごい話だなと。

Cloud Vision APIが面白そうで、学習させる必要が無いというのがお手軽だし、
画像によっては緯度経度まで出るそうです。ストリートビューのデータを使っているそう。
カスタマイズが出来ないので、その場合は、TensorFlowを使いましょうとの事。

ビッグデータと機械学習が変えるソフトウェア開発

Microsoft 田丸さん

Skype Translatorが、英語、ラテン系の言葉ならほぼリアルタイムで変換できて、品質も良いとの事。
昔は、アルゴリズムを作って結果を出したが、
今は、ハードとかコストが下がっていてデータと機械学習で結果を出すのもあり。
HoloLensもアルゴリズムより機械学習を使っている。
Cortana APIというのがあるようです。

Androidを中心に紐解くIoT

Amazon 西谷さん

講演者のブログです。

デバイスとクラウドの接続パターン

  1. AndroidをBLEで繋いでゲートウェイとして使用
  2. Android自身をセンサーデバイスとなる(GPSとか)
  3. 収集、分析したデータを可視化などビューアとして使用。通知受ける。

AWS Mobile Hubを使うのが一番手っ取り早いのかなと思いました。
mBaaSではないので、それぞれのサービスを理解しどう組み合わせるか、
色々試してみたいです。

モバイル通信をプログラマブルに活用IoT通信プラットフォーム”SORACOM”

SORACOM 江木さん

IoTの課題

  • モノの接続方法
  • セキュリティ、通信プロトコル

上記課題をSORACOM SIM使うと解決しましょうという内容でした。
モノの接続方法には、Air。
セキュリティ、通信プロトコルには、Beam。
SORACOMの詳しい説明を初めて聞きましたが、
ネットワークに繋げる必要があるなら使ってみたいと思いました。
1年間の無料枠あり、詳しくはWebへとの事。

以上です。