口の中まで麻痺してて麻痺側だとモノをうまく噛めないのと、味がしないので健側だけで噛んでたら、8年後ぐらいに時々キーンと神経に触れたような痛みがするようになって、歯医者に見てもらったけど虫歯はないのでたぶん知覚過敏と言われた。 片側だけで噛んでて人の倍の速度で磨り減ってしまったのでしょう…
で、知覚過敏用の歯磨き粉「シュミテクト」を試したら、これがよく効いて、以来ずっとシュミテクト…
これが効かなくなったり、健側の歯が虫歯になったりしたら食事が苦痛だな、と想像するだけでイヤになる。
あと、健側の指をちょっと怪我した時に何をするにも痛くて不便。
両手がまともに使えるってかなり大事。
2020年07月30日
2020年07月29日
Validate Appエラーで困ってた
Xcode11でValidate Appすると「App validation failing with "Could not find the main bundle or the Info.plist is missing a CFBundleIdentifier in '/var/folders/xxx/MyApp.ipa'."」というエラーが出て何をやっても消えない…
MyApp.ipaをunzipして中身を見ると、Info.plistはちゃんとあるし、中のCFBundleIdentifierも正しい。
ググってもStackOverflowにもApple Developer Forumsにも有益な情報はない…
最終手段でAppleの正式なテクニカルサポート
https://developer.apple.com/jp/support/technical/
に質問したらメール2往復でサクッと解決
CFBundleSignature(Bundle creator OS Type code)はobsoleteでCFBundlePackageType(Bundle OS Type code)が正しいという回答。
直したら一発でエラーが消えて無事に審査送りにできました。
MyApp.ipaをunzipして中身を見ると、Info.plistはちゃんとあるし、中のCFBundleIdentifierも正しい。
ググってもStackOverflowにもApple Developer Forumsにも有益な情報はない…
最終手段でAppleの正式なテクニカルサポート
https://developer.apple.com/jp/support/technical/
に質問したらメール2往復でサクッと解決
CFBundleSignature(Bundle creator OS Type code)はobsoleteでCFBundlePackageType(Bundle OS Type code)が正しいという回答。
直したら一発でエラーが消えて無事に審査送りにできました。
ラベル:アプリ製作
2020年07月25日
新型コロナ対策
自粛解除したら感染者数は増える一方。
第2波とか言ってる人もいるけど、第1波の自粛を解除したから抑えられてた第1波の続きがきただけで、本当の第2波は来年じゃないかな… オリンピックなんかやったら確実に第2波だろうなぁ…
まぁ、この増え方は大方の予想通りで、問題は増えた時の対策が全く考えられてないこと。
で、私ならどうするか、と聞かれれば、前にも書いたPWM制御で自粛と緩和を短い周期で行って感染者数を制御する方法を考えます。感染症素人の工学的発想としては…
もう少し具体的に言うと、1週間ぐらいの短い期間を仮にスプリントと呼んで、自粛要請と解除を繰り返す。 解除や要請の基準は、どこかの意向が入らないように、「様々な要素を総合的に判断する」なんていう曖昧な基準には絶対にしないで、事前にできるだけ単純明快で定量的なものに決めておく。
例えば、感染者数の加重移動平均線の5日ぐらいの短期線が20日ぐらいの長期線を下から抜けたら(ゴールデンクロス)次のスプリントは自粛、上から下に抜けたら(デッドクロス)次のスプリントは解除とか。
最初は空きベッド数とか考えてたけど、ベッド数じゃ人工呼吸器の数や人的リソースの逼迫はわからないから、より単純に感染者数で(感染者数/検査数の方がいいかな 感染者数は検査数でコントロールできちゃうから)
生の数字だとでこぼこがあるし直近の発生数に重みをつけたいから加重移動平均線で。
判断基準は適宜見直していけばいいけど、責任を取れない人たちが判断するのだけは絶対に避けたい。 議事録はとらない、とっても後で改ざんするような人たちに決めさせては絶対にいけない。 後で検証可能にして次のパンデミックにも備えないと。
データがたまれば伝達関数とか求められてよりよい制御ができるようになることを期待。
でも、自粛の効果も人の気分次第だから難しいだろうなぁ…
はい、制御工学よりもアジャイル開発やFXや株にかなり影響受けてますよ。
第2波とか言ってる人もいるけど、第1波の自粛を解除したから抑えられてた第1波の続きがきただけで、本当の第2波は来年じゃないかな… オリンピックなんかやったら確実に第2波だろうなぁ…
まぁ、この増え方は大方の予想通りで、問題は増えた時の対策が全く考えられてないこと。
で、私ならどうするか、と聞かれれば、前にも書いたPWM制御で自粛と緩和を短い周期で行って感染者数を制御する方法を考えます。感染症素人の工学的発想としては…
もう少し具体的に言うと、1週間ぐらいの短い期間を仮にスプリントと呼んで、自粛要請と解除を繰り返す。 解除や要請の基準は、どこかの意向が入らないように、「様々な要素を総合的に判断する」なんていう曖昧な基準には絶対にしないで、事前にできるだけ単純明快で定量的なものに決めておく。
例えば、感染者数の加重移動平均線の5日ぐらいの短期線が20日ぐらいの長期線を下から抜けたら(ゴールデンクロス)次のスプリントは自粛、上から下に抜けたら(デッドクロス)次のスプリントは解除とか。
最初は空きベッド数とか考えてたけど、ベッド数じゃ人工呼吸器の数や人的リソースの逼迫はわからないから、より単純に感染者数で(感染者数/検査数の方がいいかな 感染者数は検査数でコントロールできちゃうから)
生の数字だとでこぼこがあるし直近の発生数に重みをつけたいから加重移動平均線で。
判断基準は適宜見直していけばいいけど、責任を取れない人たちが判断するのだけは絶対に避けたい。 議事録はとらない、とっても後で改ざんするような人たちに決めさせては絶対にいけない。 後で検証可能にして次のパンデミックにも備えないと。
データがたまれば伝達関数とか求められてよりよい制御ができるようになることを期待。
でも、自粛の効果も人の気分次第だから難しいだろうなぁ…
はい、制御工学よりもアジャイル開発やFXや株にかなり影響受けてますよ。
2020年07月16日
「言葉狩り」は嫌い
https://www.itmedia.co.jp/news/articles/2007/13/news057.html?fbclid=IwAR1exoH2Mo0c-hVNXLT1nsOX5tyjjHaSVBH3MfxLxdX5nuF6nOtQlLCNrX8
マスター/スレーブを言い換えるのはまだわかるとして、ホワイトリストとかまで言い換えるのはちょっとなぁ…
ホワイト・ブラックという言葉は白人とか黒人とか人種を表す前から、光=白と闇=黒で表して、黒を悪い意味で使うのは世界共通でわかりやすくていいと思うのだけど…
☯陰陽道の昔から使われててレイシズムとか関係ないじゃん…
マスター/スレーブを言い換えるのはまだわかるとして、ホワイトリストとかまで言い換えるのはちょっとなぁ…
ホワイト・ブラックという言葉は白人とか黒人とか人種を表す前から、光=白と闇=黒で表して、黒を悪い意味で使うのは世界共通でわかりやすくていいと思うのだけど…
☯陰陽道の昔から使われててレイシズムとか関係ないじゃん…
2020年07月15日
LINE Notifyをアプリに組み込む
https://www.itmedia.co.jp/news/articles/1912/01/news009.html
ここを見て、curlでちょっと試したら簡単にできたのでアプリに組み込もうと思ったらかなり苦労する羽目に…
上のリンクはアクセストークンを開発用に用意してるものを使ってるので簡単なのだけど、本番はサービスを登録してOAuth認証してアクセストークンをもらわないとならないよう。
(開発用)と書いてあるのを本番アプリで使わせるのも気が引けるし。(最初はそうしようと考えてたのは内緒)
LINE Notifyのドキュメントはこちら https://notify-bot.line.me/doc/ja/
一見簡単そうだけど、iOSでOAuth認証するのに一苦労…
OAuth認証のライブラリ?フレームワーク?はたくさんあるのだけど、どれを使ったらいいか(どれが簡単にLINE Notifyに使えるか)わからない。
古いアプリだったのでObjective-Cで書いてあるのだけど、OAuth-Swiftってのが簡単そうだったのでこれを使ってSwiftで書いたクラスをObjective-Cから呼ぼうと思ったら、呼べない…
SwiftのClass定義に@objcとか書けば使えると聞いてたのに…
まぁ、Objective-Cのライブラリもあるさと、次はGoogle謹製のAauthってライブラリを組み込んでみたら、このライブラリーscopeをNSData形式で受け渡すのだけど、LINE Notifyはscopeが"notify"という文字列指定でうまく行かない…
仕方ないのでライブラリの方を改造して引数をNSStringにしてようやくOKになったと思ったら、今度は結果のcallbackURLが呼ばれないという謎…
理由がわからないのでライブラリーを使うのをやめて自力で書くことに。
そしたら、当然OAuthの仕様を全部理解しないといけないのだけど、まぁOAuthというのがセキュリティのこともあってちょっと複雑なことをやってて、アクセストークンを得るのに一回目はcallback先に指定したURLにリダイレクトして、その引数でcodeを渡すということをやってる。(このリダイレクトのURLにパラメータを埋め込む方式を思いついた人頭いいな)
最初勘違いしててこのcodeがアクセストークンのことだと思いこんでてうまくいかず。
で本当は2回目にそのcodeを使ってアクセストークンを取りに行くのだけど、今度はリダイレクト先のURLに埋め込んでcallbackでなくPOSTの返事で返してくる。(1回目はGETね)
最初、ここを勘違いして2回目のcallbackが返ってこないと悩む。
ようやくPOSTの返事ということに気がついてアクセストークンは取れたけど、今度はLINE Notifyに画像を送るのがうまくいかない… 文字は送れるのに…
で、いろいろ調べると、どうもmultipart形式で送らないといけないよう。
multipartなんてe-mailでしか使わないと思ってたらhttpでも使うのね。それもe-mailは8bit通らないからbase64とかでエンコードするけどhttpは8bit通るからmultipartの中身はバイナリーをそのまま送れる。(URL部分には記号を送れないので%数字でおなじみのurlencodeってのがあるけど)
で、ようやく動きましたとさ。1日あればできるだろうと舐めてたら1週間かかった…
iOSのAPIで不満だったのが、自動でメールを送る、というAPIがなくて、一度メールアプリが立ち上がって人間が送信ボタンを押さないといけなくて、昔自宅サーバーでやってたような何かあったときに自動でメールを送信して通知する、というのができなかったことなのだけど、これでアプリからの通知が自由にできるようになった。(LINEさんnotifyのサービスやめないでね)
けど、スマホをサーバー的に使うようなことはあまりないから使わないか…
1ボタンでLINEに”帰るコール”を送るアプリとか需要あるかな…
ここを見て、curlでちょっと試したら簡単にできたのでアプリに組み込もうと思ったらかなり苦労する羽目に…
上のリンクはアクセストークンを開発用に用意してるものを使ってるので簡単なのだけど、本番はサービスを登録してOAuth認証してアクセストークンをもらわないとならないよう。
(開発用)と書いてあるのを本番アプリで使わせるのも気が引けるし。(最初はそうしようと考えてたのは内緒)
LINE Notifyのドキュメントはこちら https://notify-bot.line.me/doc/ja/
一見簡単そうだけど、iOSでOAuth認証するのに一苦労…
OAuth認証のライブラリ?フレームワーク?はたくさんあるのだけど、どれを使ったらいいか(どれが簡単にLINE Notifyに使えるか)わからない。
古いアプリだったのでObjective-Cで書いてあるのだけど、OAuth-Swiftってのが簡単そうだったのでこれを使ってSwiftで書いたクラスをObjective-Cから呼ぼうと思ったら、呼べない…
SwiftのClass定義に@objcとか書けば使えると聞いてたのに…
まぁ、Objective-Cのライブラリもあるさと、次はGoogle謹製のAauthってライブラリを組み込んでみたら、このライブラリーscopeをNSData形式で受け渡すのだけど、LINE Notifyはscopeが"notify"という文字列指定でうまく行かない…
仕方ないのでライブラリの方を改造して引数をNSStringにしてようやくOKになったと思ったら、今度は結果のcallbackURLが呼ばれないという謎…
理由がわからないのでライブラリーを使うのをやめて自力で書くことに。
そしたら、当然OAuthの仕様を全部理解しないといけないのだけど、まぁOAuthというのがセキュリティのこともあってちょっと複雑なことをやってて、アクセストークンを得るのに一回目はcallback先に指定したURLにリダイレクトして、その引数でcodeを渡すということをやってる。(このリダイレクトのURLにパラメータを埋め込む方式を思いついた人頭いいな)
最初勘違いしててこのcodeがアクセストークンのことだと思いこんでてうまくいかず。
で本当は2回目にそのcodeを使ってアクセストークンを取りに行くのだけど、今度はリダイレクト先のURLに埋め込んでcallbackでなくPOSTの返事で返してくる。(1回目はGETね)
最初、ここを勘違いして2回目のcallbackが返ってこないと悩む。
ようやくPOSTの返事ということに気がついてアクセストークンは取れたけど、今度はLINE Notifyに画像を送るのがうまくいかない… 文字は送れるのに…
で、いろいろ調べると、どうもmultipart形式で送らないといけないよう。
multipartなんてe-mailでしか使わないと思ってたらhttpでも使うのね。それもe-mailは8bit通らないからbase64とかでエンコードするけどhttpは8bit通るからmultipartの中身はバイナリーをそのまま送れる。(URL部分には記号を送れないので%数字でおなじみのurlencodeってのがあるけど)
で、ようやく動きましたとさ。1日あればできるだろうと舐めてたら1週間かかった…
iOSのAPIで不満だったのが、自動でメールを送る、というAPIがなくて、一度メールアプリが立ち上がって人間が送信ボタンを押さないといけなくて、昔自宅サーバーでやってたような何かあったときに自動でメールを送信して通知する、というのができなかったことなのだけど、これでアプリからの通知が自由にできるようになった。(LINEさんnotifyのサービスやめないでね)
けど、スマホをサーバー的に使うようなことはあまりないから使わないか…
1ボタンでLINEに”帰るコール”を送るアプリとか需要あるかな…
ラベル:アプリ製作
2020年07月14日
iPhoneアプリ「Notify Dog」アップデート
今回のアップデートの目玉は”LINE連携”で、カメラ画像に動きを検出した時にLINEに画像を送れるようになりました。
店番とか、畑を荒らす動物の監視とか、家の留守中の侵入者の感知とか、スマホを置いたままちょっと席を外す時にスマホを触られるのを検知するとかに使えるんじゃないかと思います。(電池を食うのが欠点ですけど…)
店番とか、畑を荒らす動物の監視とか、家の留守中の侵入者の感知とか、スマホを置いたままちょっと席を外す時にスマホを触られるのを検知するとかに使えるんじゃないかと思います。(電池を食うのが欠点ですけど…)
ラベル:アプリ製作
2020年07月02日
新人配属の季節(コーチング)
新人さんが新入社員教育を終えて実践配属される季節で、新たに部下ができた人も多いことでしょう。
奥さんがコーチングの研修を受けたというのを聞いて思い出したのが、まだペーペーだった頃、上司が(もう時効だよね)コーチングの本を読んだのか研修でも受けたのか、「この業務どういう方針ですすめましょう?」とか聞くと必ず「君はどう進めたいの?」と聞き返してきて、内心「いや、組織としての方針を聞きたいのであって方針を決めるのは上司の仕事だろ」「コーチングの本読んだのバレバレだな」とちょっとイラッとしてました。
管理職になって、上からの方針に自分も納得いってない時に部下から「それで進めて本当にいいんですか?」とか言われて板挟みになって初めて中間管理職のつらさもわかったけど。
コーチングなんて分厚い本とか読まなくても山本五十六の
「やってみせ、言って聞かせて、させてみせ、ほめてやらねば、人は動かじ」
「話し合い、耳を傾け、承認し、任せてやらねば、人は育たず」
「やっている、姿を感謝で見守って、信頼せねば、人は実らず」
の3行で十分だろう、と思うのでした。いろいろ聞いても憶えられないし。
奥さんがコーチングの研修を受けたというのを聞いて思い出したのが、まだペーペーだった頃、上司が(もう時効だよね)コーチングの本を読んだのか研修でも受けたのか、「この業務どういう方針ですすめましょう?」とか聞くと必ず「君はどう進めたいの?」と聞き返してきて、内心「いや、組織としての方針を聞きたいのであって方針を決めるのは上司の仕事だろ」「コーチングの本読んだのバレバレだな」とちょっとイラッとしてました。
管理職になって、上からの方針に自分も納得いってない時に部下から「それで進めて本当にいいんですか?」とか言われて板挟みになって初めて中間管理職のつらさもわかったけど。
コーチングなんて分厚い本とか読まなくても山本五十六の
「やってみせ、言って聞かせて、させてみせ、ほめてやらねば、人は動かじ」
「話し合い、耳を傾け、承認し、任せてやらねば、人は育たず」
「やっている、姿を感謝で見守って、信頼せねば、人は実らず」
の3行で十分だろう、と思うのでした。いろいろ聞いても憶えられないし。