26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

ここは Web や Android アプリのプログラマでありチェスやバイク、株式投資を趣味とするコジオンこと Hideyuki Kojima の日記です。 毎日何かしら欠かさず書いています。

この Blog の他に Qiita にもいくつか技術系の記事を投稿しています。 YouTube のチェス実況チャンネル に毎日 lichessChess.com の 5 分レート戦の実況動画を投稿しています。

連絡はメールでお願いします。kojionilk あっとまーく gmail どっと com です。

最近のコメント

BOLT 60,000 km

最近はコロナ感染防止のため通勤に電車ではなくバイクを使っているのだが、少しずつ距離を伸ばして本日ようやく総走行距離 60,000 km を達成できた。 50,000 km がちょうど 1 年半前だったので、半年で 3,000 km 強のペース。 乗り始めよりは明らかにペースが鈍っている。 コロナ禍で多少控えているというのもあるが、やはり自宅から行けるところはほとんど行ってしまったというのが大きい。 そうなってしまうとたまに乗るぶんには良いが、しょっちゅう乗っているとどうしてもマンネリ化してしまう。

前回のクリスマスチェスパーティーに出たというのもあって、今回はあえて出ないこととした。 ただ、今回は NCS (日本チェス連盟) の新年チェス祭りのライブ配信がかなり豪華になっていたというのがあって、なかなか面白くてずっと観てしまった。 資金が無い中でこれだけの環境を用意するのは相当な苦労があったと思われるので、その点は頭が下がる思いで観ていた。

寒いので引きこもり。 楽天ポイントがつくのが毎月 15 日なので、それが付与したのを確認してから楽天お買い物マラソンで追加購入。 期間限定ポイントを無駄なく使う。

代わり映えのしない毎日を過ごしている。

今日は出社したが、コロナ感染者が爆発的に増加しているということで結構気を遣うようになってしまった。 電車で通勤するのが憚られる。 このまままん防、緊急事態宣言となったらまたテレワークのみという就労スタイルとなりそうだ。

昨日書いた Javascript.infoJavaScript の基礎の部分の一人読書会を実践した。

2.1 Hello, world!

<script>...</script> だけで良い。 今どきは type 属性を使わない。

<script type="text/javascript"><!--
    ...
//--></script>

のような JavaScript をサポートしないブラウザのためのコメントアウトも非常にレガシーなので使わない。

2.2 コード構造

下記のようなコードは想定通り機能しないので避ける:

alert("There will be an error")
[1, 2].forEach(alert)

JavaScript は角括弧 [...] の前にはセミコロンを想定しないため alert() の戻り値への配列添字アクセスのように解釈されてしまう。 こういった不測の事態を避けるためセミコロンを省略せずに常に付与するのが望ましい。

ショートカットキー Ctrl + / で 1 行コメントアウト、Ctrl + Shift + / で複数行コメントアウトができる。

2.3 モダンなモード, "use strict"

IDE が警告出してくれていたので使っていなかった、というより忘れていたが、使おう。

2.4 変数

定数 const は小文字キャメルケースのもの (いわゆる不変な参照) と大文字スネークケースの従来の定数を混在させて良い。 定数か不変な参照かどうかは下記のように実行時に変化するかをみるのがよい:

const BIRTHDAY = '18.04.1982';  // 定数
const age = someCode(BIRTHDAY);  // 不変な参照

2.5 データ型

Infinity (無限大) という定数が定義されているのは初めて知った。 BigInt も初めて知ったが、おそらく使う機会は無いだろう。

2.8 演算子

以下のように数値変換に + 演算子が使える:

let apples = "2";
let oranges = "3";

// 二項演算子プラスの処理の前に両方の値が数値に変換されます
alert(+apples + +oranges);  // 5

似たような考え方だが - 演算子でゼロを引いてもいいので、いつも apples - 0 + (oranges - 0) のようにしていた。

カンマ演算子の存在は改めて書かれるとなるほどと思った。 確かに for 文で使われる:

// 1 行に 3 つの演算子
for (a = 1, b = 3, c = a * b; a < 10; a++) {
 ...
}

昨日新しく出たオライリーの JavaScript 第 7 版が網羅的な学習に良いのでは、と書いたが今日ネットでいろいろ探していたら Javascript.info というサイトを見つけた。

Javascript.info は、ロシアで最大級のJavaScriptチュートリアルと学習プラットフォームである learn.javascript.ru のフォークとして作成されました。このチュートリアルの内容はオープンソースであり、誰もが貢献できます。

とのこと。 ちょっと見てみたが網羅的で詳しくてかなり良い。 今の時代はこんなコンテンツが無料で得られるのか、と感動する。 ということで高いお金を出してオライリーの本を買う必要はなさそうだ。 勿論本で勉強したほうが好みという人はいるだろうが、私はこれで十分だ。

久々に技術の話を書く。 オライリーの JavaScript 第 7 版が出ていた。 その存在によって ECMAScript 2015 (ES6) のモダンな記法で書くのを阻害されていた忌まわしき IE11 が今年 6 月 15 日にサポート終了されるとのことで、ようやく ES6 をトランスパイラなしで書けるようになりそうだ。 どちらにしろモジュールのインポートや SASS のコンパイルで Laravel Mix にはお世話になりそうだが、それにしても直に ES6 記法で書けるのは大きい。 そのために今一度 JavaScript を一から網羅的に学習するために、オライリーの JavaScript 本は必読だ。 値段がかなり高いが、それだけの価値はあると思う。

マクドナルドで最近期間限定で追加されたサムライマック 旨辛 ダブル肉厚ビーフ、マクドナルドにしては結構辛めで美味い。 このサムライマックのダブル肉厚ビーフはいつものマックのペラペラな肉ではなくてちゃんとしたパティなのも嬉しい。 フライドポテトが品薄で S サイズしか売ってないというのもあるので、機会があれば単品でこれだけ食べたいところだ。

この前楽天の SPU を満たすために買った FF1 ピクセルリマスターをようやく引っ張り出してきて遊んでみたが、何だかあんまり面白くない。 というより、直前にやったスカーレットグレイスと比べてしまう。 最近作られた作品なのに、やたらと操作がしにくい。 タブレットでプレイしているからかもしれないが、ドット表現されていると画質が荒く感じてしまってつらい。 ファミコン世代ではあるが、別にファミコン世代だからといってドット絵でプレイしたいわけでもない。 これを我慢してやるよりはスカーレットグレイス 5 周目したほうがマシかも、と思ってしまった。

サガ スカーレットグレイス 緋色の野望をすべての主人公でクリアした。 主人公はウルピナ・タリア・レオナルド・バルマンテの 4 人いるので 4 周したということだ。 年末年始はそのゲームで遊んだが、ここまでハマったゲームは久々な気がする。 5 周目もやってみようかと思ってオープニングだけちょっとやってみたが、さすがにそんなにやる気が出なかったのでこれで終わりにする。

富嶽麦酒 (ふがくばくしゅ) は富士市の地ビールのようだ。 そのあたりだと伊豆の国ビールが有名で行く度にそれを飲んでいたので知らなかった。 妻から貰って今日飲んでみたのだが、ピルスナーだと思って飲んで何かちょっとお酒感が強いなあと思っていた。 調べてみたらインディア・ペール・ラガー (IPL) らしい。 ピルスナーにしては味が濃いなと思ったが IPL にしては味の主張が控えめで素直にグイグイ飲める感じな気がした。

d アニメの一覧を何となく見ていたらへっぽこ実験アニメーション エクセル・サーガを見つけたのでオッと思って観てみた。 これは私が大学生の時に深夜アニメとしてやっていた作品で当時それなりに楽しく観ていた記憶があったからだ。 しかし今観てみるとやたらとケレン味が強くて観ていて辛い。 これ 25 話もあるのか、と思いつつ 2 話でギブアップ。 この作品は若いからこそ観れたんだなあ、と今更ながらに思った。

本日が正月休みの最終日だが、結局スーパーに行っただけであとは家にいた。 寒いというのもあるが、完全に出不精だ。 だって出かけると疲れるし、と真っ先に思ってしまうのがもう駄目だ。 明日から仕事再開だが、結局テレワークなので家にいるのは変わらない。

普段愛用している AUKEY の Bluetooth イヤホンの電池持ちが結構悪くなってきたので買い替えを検討している。 なので以下の要件で Amazon を探してみた:

  • Bluetooth コーデックは最低限 aptX (SBC は遅延がひどすぎて NG) で上位のコーデックならより良い
  • 電池持ちがそれなりに良いこと
  • 充電端子が USB-C (microUSB はケーブル管理が面倒なので NG)
  • カナル型 (インナーイヤーは好きじゃない)
  • マルチペアリングはあったほうが良いが無くても良い (ほぼタブレットで使うので)
  • 音はそんなに拘らないがあまりに評判が悪いのは駄目かも

その要件を満たす商品は複数見つけたのだが、その中でも SOUNDPEATS Sonic Pro という商品が気になった。 aptX Adaptive に対応しており イヤホン単体で 15 時間連続使用可能でケース込みだと 35 時間に達するらしい。 ただ aptX Adaptive を使うと 2, 3 割使用時間が減るみたいなので実際は 10 時間強、ケース込み 20 時間強といった感じか。 そう考えるとそこまで持たないかもしれない。 あと私はこういう Apple の AirPods のようなイヤホンの形状 (TWS: True Wireless Stereo というらしい。初めて知った) の製品を使ったことがなかったので、どういう感じなのか興味があるというのもある。 うっかりすると失くしそうで怖いが、私はしっかり管理するタイプなので大丈夫だろう。

評判が気になるので YouTube のレビュー動画などをいくつか見てみたが、まずまず良さそうな印象。 レビューの中心が音質についてなのが驚いたが、よくよく考えてみるとオーディオにほとんど興味が無いのにオーディオ製品であるワイヤレスイヤホンをじっくり比較検討して買う私がおかしいのだと思った。 低音重視だろうが中高音重視だろうが、多分聞いてれば慣れるので個人的にどちらでも良いし、あまりに何か籠もったようなひどい音でなければ良い。 しかしメインの使用用途が動画視聴やゲーム (チェス・麻雀などのシンプルなもの) なのでひどい遅延は許せないところがあり、レビューで Bluetooth コーデックやバージョンはそんなに気にならない (SBC でも良い) と言っていたものがあったのには驚いた。 やはり人によって必要な要件はさまざまで 1 つのレビューを鵜呑みにしてしまうのは問題があると改めて感じた。

ちなみに Sonic Pro には下位モデルの Sonic もあるのだが、レビューによると最大音量が小さくて音質も籠もったような音がして聴き比べたら Pro のほうがいいという人が多いので Pro にした。 長く使うものだし、値段も 2,000 円程度しか違わないのであれば上位モデルにしたいところだ。 楽天のお買い物マラソンで買うつもりだったのだが、今 Amazon を見たらちょうどタイムセールの 1,000 円引きの上に 5% オフクーポンまで配っていたので思わずポチってしまった。 5,500 円くらいで買えたのでお得だった。 届くのは水曜日らしいので、楽しみだ。

寒いので自宅でゆっくりしていた。 もう正月気分など無く、普通の休日といった感じだ。 そういえば今日一人だったので、せっかく正月なのだからちょっと贅沢してみようとスーパーでズワイガニを買ってみた。 2,980 円だったが、量はそこまで多くもない。 流水解凍して食べてみたが、確かに美味いがやっぱり 2,980 円はちょっと無いなと思ってしまった。

年が明けたので、例年と同じように実家に行って初詣を行い、寿司をいただいた。 代わり映えしないが、そういう元旦を迎えられることこそが幸せなのだと思う。 今日はかなりの寒さだったが、バイクを使った。 防寒用のタイツとインナーを仕込めばある程度なんとかなるが、足先は足用カイロがないと厳しい。 今日はそれを用意していなかった。