在宅

今日からしばらく基本在宅での仕事。
寒い中、電車に乗って通勤しなくて良いので楽だ。
とりあえず先日購入したゲーム用のPCに Visual Studio など開発環境を導入。タイムゾーン関連の日付の取り扱い処理の修正作業を行う。

夜、Steam で Witcher3 がセールになっていたので購入。とりあえず寝る前にダウンロードをしかけておく。

あさひなぐ 25巻」こざき亜衣 小学館 読了。

前巻からのお寺での合宿の続き。
巻末にケンドーコバヤシと作者のこざき亜衣との対談が掲載されているのだけれど、その中で小林まことの「柔道部物語」の影響について触れられた箇所があってなるほどと思った。

タイムゾーン

今の仕事で開発しているシステムは、Micirosoft の Azure 上で動かしている。で、これは Azure に限ったことではないがクラウド上で動作するサーバーは基本的にタイムゾーンUTC で動作している。で、日本国内での使用を想定している今開発しているシステムで表示したり入力されたりする日時は当然、JST であるため、ローカルタイムで動いているブラウザと、UTC で動いているサーバーとの間で変換してやる必要がある。Java Script の Date型のオブジェクトを JSONに変換するとISO8601型式の文字列になるため、これをASP.NETで受け取る分にはほとんど何も考えることはないのだが、ASP.NET側で生成する VIew で日時を扱う場合はブラウザ側のタイムゾーンに合わせて変換してやらなければならないし、そもそもサーバーではブラウザのタイムゾーンを知る由もないので何らかの取り決めが必要になる。サーバーからは常にUTCの日付をISO8601な文字列でブラウザに渡すようにして、実際の表示はすべてブラウザ側でローカルタイムに変換して表示するようにすれば良いのだが、必ずしもその手が使える訳ではないのでちと頭を使わねばならない。

キューレンジャー最終回

日曜日、午前中に自室の整理と確定申告に向けて経費の計上をしようと思っていたのだが、思わず二度寝してしまい起きたらもう昼。
犬の散歩と、ゲームPCが増えたので電源確保用のテーブルタップやら何やら買い物に出たら一日が潰れてしまった。

「キューレンジャー」最終回。話的には先週でほぼ片がついていたというのはあるけど、直前の「仮面ライダー ビルド」に全部持っていかれた感があってちょっと可哀想だったかな。個人的にはエピローグでラッキーとガルルが一緒に冒険してるということで満足。終盤のスパーダとラプター283のラブ展開はあまり出番のなかった二人に最期ぐらいは花を持たせたいということだろうか?

本屋がない

土曜日の仕事、引き続き、細かい不具合や機能追加作業。夏を目処に少し大掛かりな機能追加の話が出て来る。今年は他にも大きな機能追加が控えているのでスケジュールを上手く考える必要がある。(なにせ週16時間しかない)

昼休み、オライリーから出た「仕事ではじめる機械学習」と漫画の新刊4冊をMARUZEN&ジュンク堂書店梅田店にて購入。今、平日の現場の付近に大型書店がないのでつらい。前の現場はすぐ側にジュンク堂書店大阪本店があったので良かったのだが。週一の本屋通いだと漫画と仕事関係の本だけで、人文系の新刊をチェックする時間がない。

git

WAV型式のファイルが NAudio で上手く変換できない件。なんだか良く判らないが出力する WAV を、44.1kHz 16bit モノラルから、44.1kHz 16bit ステレオにしたら正常に出力されるようになった。NAudio の問題なのか、出力される WAV に問題があるのか?

しかし、エミュレーターで動作させた場合と、エミュレーターをデバッガでステップ実行した場合、実機で動作させた場合とで挙動が違うのにはまいった。Android の開発ってみなこんな感じなのだろうか?

夜、職場の飲み会。ソース管理に git を導入するかどうか、導入を渋る社長と導入したい社員の間で熱い議論が繰り広げられていた。個人的には現状を考えると git を導入した方が良い。というかほぼ他の選択肢がないに近い状態だと思うが、何か渋る社長さんにしても導入したい社員さんにしても git に対して何か幻想を持ちすぎのような気がする。単なるツールなので導入しただけで何かが変わる訳ではなく、重要なのはそれをどのように利用していくかという運用だということがあまり理解されていない気がする。まぁ、git に限った話ではなく IOT にしろ機械学習にしろ何かそういうワードに幻想持ち過ぎの人が多い。

今日は帰るのが遅くなったので、ARMA3で遊べなかった。

ARMA3

今日から2月。

朝、銀行で金をおろして、コンビニで2月分の国保、年金、それと今月は固定資産税の支払いがあるのでまとめて払う。ついでに生活費用口座に入金。

android のプログラム修正続き。とりあえず AudioRecord を利用して自力で WAV 型式にフォーマットしてデーターをPOSTするとことまでは出来た。しかし、サーバー側での NAudio を利用した WAV→MP3変換が上手くいかない。出力した WAV 型式に問題があるのか、エミュレーター上でテストしているため生成された WAV のデータがオール0なのが問題なのか?

帰宅後、昨日届いた PC に Steam で購入した ARMA3 をインストールする。ダウンロードするだけで2時間ぐらいかかる。とりあえずプロローグの出だしだけ少し遊んでみる。

ARMA3、終了しようとしても本来TOPメニューで表示される筈の画面上部のメニューが表示されず終了できない。表示される文字サイズを大きめに変更したためだろうか? とりあえず ALT+F4 で強制終了。

皆既月食

1月最終日。

Android のプログラム修正。端末で録音した音声データをサーバーにアップロードするのだが何故か音声データが再生されない。調べてみると、仕様では WAV形式でアップロードされる筈の音声データが3GP形式でアップロードされている模様。Android側のプログラムを調べてみると、MediaRecorder を利用して録音しているのだが、どうやらこの MediaRecorder ではWAV形式での録音は出来ないっぽい。setOutputFormat に DEFAULT を渡すと WAV形式になるという話もあるようだが、少なくともSDKのドキュメントでは DEFAULT を渡した場合の挙動の記載がなく、エミュレーターで実行すると 3GP形式になるようだ。

WAV形式で録音するには、MediaRecorder ではなく、AudioRecord を利用する必要があるらしい。ただし、AudioRecord は取得した音声データを配列にセットするとこまでしてくれないので、WAV形式で保存するには自力でWAV型式にフォーマットしてファイル出力する必要がある。うーん、実に面倒。

夜、帰宅すると注文しておいた新しいPCが届いていた。思っていた以上に筐体がデカイ。机の上には乗りそうにない。とりあえず配線してセットアップと動作確認だけしておく。Windows Update だけで1時間以上かかる。

月末なので請求書を作成。

3年ぶりの皆既月食。ベランダで見る。