ITMS-90087 エラーへの対処

今月はiOSアプリを書いていてその最終段階で遭遇したエラーの対処の話です。
iTunes Connect にファイルをアップロードしたら次のようなエラーが出た。

ERROR ITMS-90087: “Unsupported Architectures. The executable for BNITraning.app/Frameworks/RapidFire.framework contains unsupported architectures ‘[x86_64, i386]’.”

このエラーは、App Storeのバグで、Carthage を使ってると発生する有名な問題だそうです。
READMEに説明がありました。

This script works around an App Store submission bug triggered by universal binaries and ensures that necessary bitcode-related files and dSYMs are copied when archiving.

続きを読む “ITMS-90087 エラーへの対処” >

hubotプラグイン:抽選してメンション飛ばす

hubot で、抽選して誰かにメンション飛ばしたくなることがあります。
自分で実装しようかなと思ったら、先人がすでに作成済みだったのでそれを紹介します。

厳正な抽選をhubotで行う話で紹介されていて、ソースはGithubで公開されています。

image

続きを読む “hubotプラグイン:抽選してメンション飛ばす” >

最急降下法と正規方程式のメリットどデメリット

 最急降下法正規方程式
メリット・フィーチャーが増えても遅くなりにくい・レーニングレートを選ぶ必要が無い
・繰り返しが不要
デメリット・ラーニングレートのαを調整する必要がある
→αを異なる値で走らせなおして適切な値を見つける必要がある
・繰り返しが必要で結果を得るのに遅くなる可能性がある
・フィーチャーが多くなると計算量が増え遅くなる
→行列の次元の三乗で遅くなる

フィーチャーの数がどれぐらい以上になると、最急降下法を使用する検討を始めるといいのか。
10000あたりが境界線で、それ以下の場合は、正規方程式で十分に素早く結果を得られる。
100万個は明確に遅くなるので最急降下法を選択するのが良いそうだ。

Chrome拡張機能:Toby

Toby は、Chromeのエクステンションです。

エクステンションを追加すると、タブを管理するためのアドオンが追加されます。
右端に開いているタブ一覧が表示され、それを左側にD&Dするとタブが削除されて一覧に保存されます。

開きすぎた未読タブを一括管理するためのエクステンションです。