メモ@inudaisho

君見ずや出版 / 興味次第の調べ物置き場

Boox OS 2.0 テスト版を Boox Max2 に入れてみた

 Boox Max2 の言語を英語に変更すると、Boox OS 2.0のテスト版を使えるようになるので入れてみた。

f:id:inudaisho:20181120132825j:plain

 以下の写真は今日マクドナルドで撮ってます。最初に印象を言っておくと、

かなりよくなった

 の一言ですね。

デザインの変化

特にUIのデザインが今までと一線を画していて、全てを線だけで描画するようになっている。白黒のeInkの画面のデザインは白黒でやるべきなのでこれは非常によい。ようやくそういうところまで目が配れるようになった模様。

f:id:inudaisho:20181120133623j:plain

f:id:inudaisho:20181120134340j:plain

Android の変化

 Android 機器としての変化ですが。Google Play を使うのに Google に機器を登録する手続がいるようになりました。まぁこれはAOSPをつかった勝手ビルドでもGoogleのサービスを使えるようになったということで中国で量産されてるヤミAndroid機種をつかってる人はいづれすることになるのではなかろうか。(それでも Onyx のAppStoreに謎の Playstore Login Patchがあるのが謎だが気にしないことにする)

 アプリそれぞれに対する設定できる幅が増えてますな。アプリのアイコンを長押しするとでてくる "Optimization" を押すとこれだけ設定項目がでてくる。

f:id:inudaisho:20181120134750j:plain

 白黒反転モードもありました。

f:id:inudaisho:20181120135645j:plain

 ということで今までよりもより eInk 機器っぽくなってきてます。

NeoReader2

 まぁ他がつくってるアプリはそれぞれの使い勝手があるので、それはそれで置いといて、文石謹製の NeoReader2 の変化をみると、大きいのがこれ。縦画像のPDFを並べることができるようになった。以前予告されていた機能。

f:id:inudaisho:20181120140023j:plain

 残念ながらLTR(左→右)だけでRTL(右→左)に対応してないけれどもその辺は LIbrera があるからいいかな。英語の資料とかは見やすくなるか。

 テキストはフォントを指定できるようになった。「中国語」「英語」に分類されてるが、たとえば「青キン明朝」は中国語に入り、IPA明朝は英語に入る。よくわからないがまぁそうなっていると知ればよい。(青キン明朝などは他のアプリで入れたフォント)

f:id:inudaisho:20181120140526j:plain

 デフォルトのリーダーで読みたい人にはいい話かな。選択するとその場で変わるので色々選びやすい。

Knote

 それから付属のノートアプリ、KNoteと改名したのでKNoteと呼ぶが、反応がよくなったように思う。一度描いたものを移動したり変形できるようになったのはおもしろい。残念ながら塗り潰しは今回も実装されていない。簡単な機能なのに実装してないのは必要と思われてないんだろう。仕様決める人の周りに線描の絵描く人いないんだろうな。

Boox 書城 の実態

 Boox OS2.0の特徴として喧伝されていた「書城」(書店)だが、文石科技が直々に書店を経営してKindle に挑戦するのかとおもったら違った。京東(JD.com)のやってるJDRead がBooxで使えるということだった。それだけならKindleもあるし他のサービスもあるし、さらに今回はKoboまで入ってる。ところが京東だけは特別扱いで、トップページにストアのリンクがついている。政府に近い京東がAlibabaも食い、Kindleも食うという当局の野望(そう行くかどうかは別として)もあるんだろうが、それよりもおもしろい事を指摘すると、今 LikeBook シリーズを出してるBoyue(深圳 博閲科技)はもともとOnyx(広州 文石科技)にならぶ電子ペーパー端末のメーカーだが、6インチの京東の書店専門のJDReadという端末を出してシェアを地道に伸ばしていたのである。博閲が7.8インチや10.3インチの端末を出してきたのと同時に、JDReadのアプリ化が進展しているのは、裏でどういう話があったのか興味のあるところだ。

f:id:inudaisho:20181120143807j:plain

 ということで、FreeBooksとあるのでためしにそこにあった毛沢東の持久戦論でも落としてみようとおもったが、登録しないと読めないようだった。チェッ

Yota3+ にアップデートが来たのでビルド番号比較

 Yota3+ 、どうせ出た後は放置されるんだろうとおもっていたらファームウェアのアップデートが来た。といってもネットに繋げていればもっと速く受信できていたらしい。どうも11月に入ってから10日と13日の二回更新が配布されていたようで、10日の方はたったの16MだったのでOCNのSIMで落としたが、13日版が 1.4G とおそろしく大きい。夜中に京都の部屋の布団の中で YotaPhone2 に繋げて設定をいじっていたときにそんなことになったので、山奥に帰るわけにもいかず、セブンイレブンまで行って落としてきた。そんな大型アップデートのわりには違いがよくわからない。アップデートしたら神器になったとかならおもしろかったものを。

(20181122 追記 バッテリーの持ちが若干よくなったが、OpenCameraアプリで写真が撮れなくなった。せっかく小旅行したのに出番がなく評価激下がり)

(20181126 追記 バッテリーの持ちは前と変わらないことがわかった。カメラについてはデフォルトのYotaCamera以外は4000x3000モードが使えないということの模様。)

f:id:inudaisho:20181117095745p:plain

 さて端末情報をみるとこうなっている。

f:id:inudaisho:20181117100337p:plain

 ここにはかなり重要な情報が含まれている。特に重要なのはビルド番号で、Y3XSCN1805161 となっており、Yota3 の2018年5月ごろのビルドとの関連を強く疑わせる。購入したときのビルド番号などと比較してみるとこうなる。

バージョン ビルド番号 カーネルバージョン
購入当時 OPM1.171019.019 dev-keys 3.18.71-ge560830 (gcc version 4.9.x 20150123 (prerelease)(GCC)
utuntu@aosp #2
Thu Oct 11 08:49:07 UTC 2018
20181113版 Y3XSCN1805161 3.18.71-perf-g9ddc499-00029-ge1cf9b7(gcc version 4.9.x 20150123(prerelease)(GCC)
jenkins@JenkinsAgent1 #1
Tue Nov 13 16:50:45 UTC 2018
百度palomnik氏
Youtube Wigram Channel
不明 3.18.71-g1094b73(gcc version 4.9.x 20150123(prerelease) (GCC) ).
coolyota@build #1
Fri Aug 24 01:46:40 CST 2018
YotaPhone2 最終版(MM6) MMB29M.6.0.1-RU1.1.47 3.4.0-ge2cffa8-02123-ge65ee18
jenkins@gerrit.yotadevices.com #1
Wed Mar 22 20:36:32 MSK 2017

 購入当時のビルド番号はこれ Andorid8.1 の公式版そのままで、2018年2月に公開されたものらしい。それがそのままつけられていたのが、今度はYota臭いものになった。しかし百度Youtubeで公開している人のカーネルのバージョンが違うのでビルド番号も同じとは考えられず、どんなものがうちに送られているのか謎である。

 Yota3 のビルド番号については百度貼吧(掲示板)で情報をまとめている人がいたのでそれをまとめるとこうなる。5つバージョンがある。

日付 ファイルサイズ ビルド番号
2018-01-12 136.49MB Y3XSCN06A1000MPX1801121
2018-02-11 221.41MB Y3XSCN06A1000MPX1802115
2018-03-21 121.93MB Y3XSCN06A1000MPX1803211
2018-05-07 346.64MB Y3XSCN06A1000MPX1805077
2018-06-22 320.99MB Y3XSCN06A1000MPX1806223

 これからみるとわかるように番号の命名方法が今回落ちてきたものとの関連をかなり疑わせるもので、特に1805161の部分は日付を示すものだということがわかる。Yota3としては公開されていなかったものがベースなのだろうか。あるいはそのころ Android8 にアップデートさせる計画があって作ったもののアプリ対応に手がさけず放置していたものか。

tieba.baidu.com

 root 化についてはこのスレがあるが、root化がしたいのではなくプラスエリア化(WCDMA/UMTS B6)したいだけなので、xdaで進行しているROM吸出が成功するのかどうか様子見。しかし、システムの情報があきらかに違うので自分が持っているものと他人が持っているものが同じなのかよくわからない。128Gを注文したらおまえのために特別に用意してやるから一週間待てと待たされたのだが、なんかあんまりいい状況を思いうかべられない。

Yota3+ 有機EL(AMOLED) と 電子ペーパー(eInk) の比較 (附)Always-on-Display

Always-on-Display

 世の中の動向に疎い。Always-on-display の機能はYotaPhoneだけの機能ではなく、Android9ではOSレベルでサポートされるようになったとは知らんかった。どうも Samsung有機EL活用戦略で去年からそういう宣伝方法を使いだしたらしい。検索すると Galaxy が先駆けみたいに書いてるところばかりみつかる。やっぱりこじつけてパクるのがうまい。

 Yota3+ の Always-on-display の解釈が、電池が切れても使えるというトンチンカンな主張になってたのは、実は 有機EL との比較でそうなってしまったんだろうか。というかそうかもな、知らずにいいかげんなこと書いたな。Yota3+ は表にも有機EL採用しているからサムスンが堂々とそんな主張をすると身の置き場がない。

 有機ELで eInk みたいなことをやろうとしたらできなくもないので色がついてる分、eInk の分が悪くなる。それに eInk の現状だと、白黒比があまりよくない。それに比べて有機ELの方は黒が本当にいい感じに黒くてよい。残念なのはやはり白地に黒だとやはり眩しいことで、これに関しては eInk の独壇場だが、それであっても、有機ELの黒さには惹かれるものがあり、有機EL面で黒地に白で統一してしまえばいいのではないかとおもわなくもない。次世代パネルと目されている microLED も遠からず来るので部分的に点灯させる技術がこれから主流になるんだな。

電子ペーパー有機ELの比較

 ということで、電子ペーパー面と有機EL面で本を表示して比較してみることにした。テキストビューアとしては FBReader、PDFビューアとしては eBookDroidを使った。epd_optimizer の設定は eBookDroid の設定をそのまま FBReader にコピペした。

黒地に白のテキスト

 FBReader

f:id:inudaisho:20181115104302j:plain

 有機EL カメラを通すと実際より赤く見える。これソフトのレンダリングの問題もあるが、有機ELの方がキレがいいな。あとカメラをとったときの角度もあるが有機ELの黒さが目につく。

白地に黒のPDF

 eBookDroid

f:id:inudaisho:20181115104413j:plain

 有機ELで白字に黒だと白が眩しいしそんなに安定してないので有機ELよくはない。実際に目にしても 電子ペーパーの方がみやすい。

黒地に白のPDF

 eBookDroid

f:id:inudaisho:20181115110906j:plain

 うーむ。黒地に白だと結構いい勝負だなこれ。ただ明るいところに持っていったら若干暗いところで見てた程の差はなかった。やっぱり暗いところだと自分で発光する有機ELのアピールが強いんだろう。これは元はPDFなのでそのレンダリングの影響もあってあまり違わないように見えるのかもしれない。

(実際にはスマホは狭いのでPDFをこんなふうに見ることはないとおもう)

まとめ

 ということで、世間一般の人が本を読むスタイルとおもわれる白地に黒だと有機ELは微妙な面もあった。ただ黒地に白の表現力はなかなか。これは白黒で比較したのだが、有機ELはカラーも出るので世間一般の受けは有機ELの方がよさそうだ。うーむ。

海信A6(Hisense A6)の開箱動画

 今ごろみつけてしまった。

【彩屏+水墨屏】双屏手机海信A6开箱~用电子墨水屏看BILIBILI、玩农药......_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

 10月13日にビリビリ動画で公開された開箱動画で、見たいところは一通り触ってる。これは... いいんじゃないか? これに気付いてたら YOTA3+買ってなかったかも。うーむむ。やっぱり家電作ってるところはユーザー目線がいいとこ突いてるわ。ついついYOTA3+なんか買ってしまってくやしい。まぁ epd_optimizerはないだろうからそこだけは YOTA3+の優れたところか。

 あともうひとつ Hisense A6 体験会の動画みたいなのをみつけた。長すぎるのと上のが十分だったので全部みてないが、いじって「なんやこれよう見えへんぞ」「こうして明るくしたらいいよ」「見えへんで~」みたいな感じでやってる。まぁ中国語わかる人なら空気わかっていいんじゃなかろうか。

海信双屏手机A6体验会_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

 あと、海信A6の対応電波帯域だが、前書いたほどには対応してない可能性がある。たとえばこういうリンクがあり、

HiSense A6 - Full Specification, price, review

Hisense A6 64GB(ROM)+6GB(RAM)_Hisense_CellPhone_ShaanxiZZJSElectronicTechnologyCo.,Ltd.

 そこでは前紹介したほどはカバーされてないところが伺える。まぁいっか... どうせ中国のスマホだし... YOTA3+買ったし...

 ちなみに海信A6のハイセンス公式天猫店の売り場はここです。Ali Express にはまだ出てきてないので海外展開はこれからかな?

Hisense/海信 A6墨水屏阅读电纸书阅读器无蓝光护眼健康阅读-tmall.com天猫

f:id:inudaisho:20181112225755j:plain

 以上。

AtCoder HTTF2019予選 「Python殺し」

 昨日は AtCoder でHTTF(HACK TO THE FUTURE)2019予選なるものがあったので参加した。

狭い盤面の上に500台ロボットを走らせる。
盤面の上にロボットの移動命令に干渉できる命令を書ける。
なるだけ散らばるように盤面を設定せよ。

 よくわからず結局固定盤面をいくつか出してあきらめていたが、ビジュアライザーで試行できる=> javascript で実装できるんだから Python でも実装できるということに気付いて面倒くさーと思いながらとりあえず実装し、小細工を弄するも固定盤面よりもはるかに悪い出来に絶望。あとはたまにサイコロを振りつづけるだけになって87015点で終了。ランキングは226ということで何かを提出できた人の中では中くらい。だが、満点が15万で1位が13万なのでいかにも率は低い。そもそも固定盤面で83000点くらい叩き出していたので、実際にはそこへわずかにプラスできたというにすぎない。(下は固定盤面で83350点出した解答。ちなみにRLTD埋めは全部最初に試した)

beta.atcoder.jp

 しかし後から twitter で情報収集してみると1万回試行したとか高速化が鍵とかいう言葉がボロボロでてくる。どうも今回(というかHTTF)はAtCoderの普段のコンペとは違い、格段に速くなる魔法ロジックがあるわけではなく、地道にサイコロを振りつづけるか、いい初期盤面をみつけてそこから改善しつづけるというアプローチしかなかったようだ。(通信環境条件が悪く、解説放送は今まで一回も聞いたことがないので公式にどうなのかはよくわからない) もちろんそこからの工夫が見せどころなのだが、当然ながら Python3 ではその方向は難しい。たとえば自分のどんくさい実装では試行はせいぜい15回くらいしかできなかった。 あとから PyPy3 に投げ直してみるともっとできたがそれでも100回くらいだ。一万回には到底及ばない。最初小細工を弄したとき、一回二回やって大して改善しないので投げだしたのだが、一回二回ではダメでそれを10000回くらい続ける根性がないといけなかったようだ。当然ながら素のPythonでそこまで出せるわけがない。今朝になってみると9万点台に乗せた人が現れたがそれでも9万台だ。ライブラリで高速化できるとはいっても肝心要のロジックは自作するしかないのだから、工夫の余地はあまりないのだろう。

 最近 Python がもてはやされているのはライブラリを操作する便利言語としての側面があるからだ。機械学習ニューロンネットワークの時代に突入し、ロジックでどうこうするというより、どうやって組み合わせて構築するかという方向になってきたとき、つまりやることが既存のライブラリのパラメータを設定するだけになったときには、プログラムとしてはむしろ平易で変なのが書きづらく他のCなどで書かれたライブラリと連携しやすいのが望ましく、Pythonがたまたまそういう位置にあったというだけのことだ。Python 自体が高速なのではない。

 そういう点からすると Python でロジックを組むのは悪手なわけだが、それを今まで敢えてして AtCoder に参加してたのは、もちろん「遅いから」だ。遅いためにロジックの構築に真剣に取り組まざるを得ず、ロジックの差がかなり露骨に実行速度に現れ、学習効果も大きい。平易だから呪文的な面も少ない。ところが今回のように想定が回数勝負の改善アプローチになるとPythonの存在空間はあまりない。しかも自分はその中でももっとPythonに向いてない無脳乱択アプローチを選択したわけだから何が「ロジックの構築」だと自分でも思わざるをえない。まぁ今回のはPythonみたいな言語で平気で重い実装をしてくるふざけた奴を殺しに来たようなもんだろう。

 シミュレータを自分で構築するのがスタート地点で、とりあえずスタート地点には立てたようなのでそこから一歩くらいしか進めなかったにせよそれはそれでよしとする。