iPhone SEケース: ラスタバナナ 6853IP247PC

iPhoneは7, 8, SE2, SE3を愛用している。持ちやすく、打ちやすく、指紋認証も使いやすい。

昔はカバーやケースが嫌いでいつもむき出しで使っていたが、やっぱり多少はつけたほうが落としても傷つきづらいのは確か。 このiPhone 4.7インチサイズ用のカバーは、過去から何個も試していたが、おそらくこれが決定版。

ぴたりとはまり、頑丈で、邪魔せず、薄く、見た目も気にならず、しかも安い。

JAPANNEXT JN-I27UR-H-Y

ついカッとなって、吉祥寺のヨドバシカメラで27インチの4Kモニターを購入。

JAPANNEXT JN-I27UR-H-Y

  • 27インチ
  • 4K(3840x2160)
  • IPSパネル, 非光沢, HDR対応
  • HDMI 2.0 x 3, HDMI 1.4 x 2, DisplayPort 1.2 x 1

コスパ抜群。ヨドバシ限定モデルらしい。 https://www.yodobashi.com/product/100000001007494612/

スピーカーは2Wのものがいちおうステレオで付いているが、超しょぼい。 これなら無いほうがよい。これが唯一の弱点。

NotionにID型ができていた

Notionのデータベースをそれなりに使っていると、レコードごとにユニークIDを振り出してくれる機能が欲しくなってくる。
数日前にも、複数人で作業分担して進める工程進行表を作って使っていて、unique id機能が欲しくて悶絶した。

  • 多数のレコード (行) があるデータベースを、複数人でがしがし利用し、必要ならフィルタリングや、順番入れ替えだってやる。
  • そのなかの特定の行を、文字でも口頭でもブレなくわかりやすく伝えたい。いちいちタイトルや内容を読み上げてる時間も、それを聞き取ってもらう時間も、お互いにもったいない。
  • これを効率よく確実にやるには、やっぱりauto increment的な列があるといいんだけど、ないんだよなぁー
  • なので、行の途中挿入とかが起きると、新たな手順番号を、番号の最大値+1を僕が判断して手で入力していた。ばかばかしいよね。
  • NotionのデータベースでユニークっぽいIDを作成する に、がんばって実現してらっしゃる例もあったが、本当はこんなことしなくていいはず。

と思っていたら、今日みたらIDというプロパティが生まれてるじゃないですか

下の例では、工程番号という名前の「ID型」プロパティを作り、一番左に移動している。プリフィクスには「ODEN」を指定している。

行をつくるたび、ODEN番号は勝手に増えてくれる。 行の番号を入れ替えても、ソートしても平気だ。 行を消したらちゃんとその番号は欠番になる。

Notionのリリースノートにはまだ載ってない感じ。サイレントリリースかな。

www.notion.so

あと、Notionのデータベースには「名前」のテキスト型が必須で、おそらくこいつが中でindexになってる気がするのだが、いっつもこいつが邪魔感がぬぐえないので、ID型を設けたデータベースからは「名前」カラムを削除可能になるとすっきりするんだけど、後方互換性の面で難しいのかもなー

てごろなおすすめiPad一式

コスパよくお手頃なiPad一式を考える。

iPad本体

iPad Proというラインナップがもっとも高性能だが、12万以上する。
iPad Airも薄くて使いやすいのだが、9万以上する。
比較的手が届きやすいのは、単なるiPadシリーズ。つまり無印iPad. いま売っているものはiPad(第10世代)と呼ばれるものだ。それでも7万ぐらいする。
iPad miniでも8万ぐらいする。無印iPadよりむしろ高い。あともちろん画面が小さい。老眼にはしんどいし、後述するキーボードとの合体もしづらい。

コスパよいのは、無印iPadの第9世代。これもいちおう現行商品であり、新品が生産され、売っている。 5万ぐらいから買える。 ときおり割引販売されていることもあり、たとえば3/11〜12なら39,800円で買えるところがある。
ヤマダデンキで、本日11日から2日間「iPad(第9世代)」が1万円引きのセール - ケータイ Watch
→ 残念、売り切れた iPadセール|ヤマダデンキ

メモリは一番小さい64GBで充分だろう。
ネット接続もWi-Fiモデルで充分だろう。出先でネットに繋ぎたいときはiPhoneでテザリングしてやればいい。

外付けキーボード

iPadには外付けキーボードをくっつけることができる。 選ぶならApple純正の外付けキーボードがいいだろう。 本体を保護するカバーにもなる。
キーボードは、iPad本体と対応しているものを選ばないといけない。
無印iPad第9世代に対応しているのはSmart Keyboardという名前のもの。

Apple Pencil

無印iPad第9世代で利用できるのは「Apple Pencil(第1世代)」というものだ。

Clean Craftsmanship 規律、基準、倫理

プロのソフトウェアエンジニアとしての心構え、思考法、コミュニケーション、マネジメントするほうされるほう、といったあたりを扱った本だと思って購ったが、前半半分ちょっとが結構具体的なTDDの実践法で、その後は若干駆け足でコード品質などについての話。

TDDはクラフトマンシップの具体的手法の一つに過ぎないと思うので、あれ、結構各論の話が始まっちゃったな、本の半分ぐらいになってもまだ続いてるな、おっと後半で他の話も採り上げはじめた、終わった。という読後感。
この本が目指すものはとてもよいと思うのだが、なぜそうすると良いのかの論理固めがまずあり、その実践手法の紹介もひととおりあり、という構成のほうが良かった気がする。

この本を読むぐらいの人であればTDDはある程度知っているだろうし、詳しく知りたければTDDの本を読むだろう。著者は、ついうっかりTDD実践について書きすぎてしまい、もっと網羅性やガイドラインとしての構成が必要なことに気づいたが、ちょっと遅かった。のではないだろうか。

良いコード/悪いコードで学ぶ設計入門 - 保守しやすい 成長し続けるコードの書き方

1995年ごろ (Windows NT 3.5にWin32sサブシステムが追加されて3.51になったころ), IRIX + ANSI CからVisual C++に乗り換えることになった僕らは、職場でいわゆるGOF本を読まされた。
しかし文体と内容が高踏的で、語られている設計手法を自分ごととして理解するには知見も経験も不足しており、どれをいつなぜ使うのかもピンとこなくて、デザインパターンとはなんだか難しいものだなぁ、という読後感のみが残った。読後感なんていうほど立派なものではなく、食べきれなかったご飯のあとのげっぷみたいなものだ。

当時僕らにGang of Four本を読ませてくれたほうの立場を考えると、若手にC++開発環境を与えたはいいが、でっかいクラスになんでもいっぱい詰め込んだり、それもつぎはぎのコードでぶくぶく膨らんで…… あとあと自分たちみんなが辛くなることを分かってもらいたい…… といった事情が想像できる。しかし、この手の課題のあるべき設計論だけをエッセンシャルに記されても、学ぶべき人たちには理解や体感のためのとっかかりが難しいだろう。まさに銀の弾はないのだ。

この本には、そういった課題を起こす人たちが咀嚼でき理解しやすいよう、 具体例や比喩をふんだんに載せ、こういうコードはこういう問題があるから後々よくないんだよ、こうすると良いんだよ、というアドバイスがぎっしり詰まっている。地に足がついている。先人たちの理論へのreferも適切になされている。

大人には、「あちゃー」というコードに接した時、 そのコードを書いた人と同じ目線に立ち、コード改善とスキル成長を助ける責務がある。 そのとき、自分の経験知見のみを出発点にしてしまうと、結局自分の主観の押し付けになってしまったり、issueごとの対処の比較ができなかったりブレも生じてしまうだろう。

このあたりのキャリブレーションをしないとな、と思っていたが、 2022年にまたデザパタ本を読むのはヒストリカルすぎるので、手頃な一冊を求めていた。
文中で示されているサンプルコードはJavaになっている。 いまJavaがどの程度前線で使われている武器かというとなんともだが、 OOPにまつわる諸問題を汎用的に例示するなら適切だ。 practicalなpesudo codeといったところだ。

プロダクトマネジメントのすべて 事業戦略・IT開発・UXデザイン・マーケティングからチーム・組織運営まで

多忙に紛れて積ん読になってたのですが、読了。
読むというより、よくも漏れなく横断して網羅したなあ、すごいなあと。 ほんとにすべてMECEに書いてある。

自分もイントレプレナーのインキュベーション (社内起業家の育成支援) のため、ゼロイチ、イチヒャクの一気通貫のフローをまとめたり資料化したりしたことがあるので、読みすすめるにつれ、だよね、ですよね、うわ大変、この知見をシリアライズする気合と持続性は凄い、と思いました。
これは体系・辞典みたいな一冊なので、ふむふむと読んで覚えていく読み方では、体力知力が続かない。要点が400ページ列記してある濃度の本だ。「コレはあの本のあの辺に書いてあるに違いない」という、外部インデクスの勘所だけまずは体に入ればいいだろう。それで十分強くなる。

大学とかで半年かけて輪講とかもいいかも。おじょじょ先生やった!

Pepper Jobsタブレットスタンド

以前、13インチのモバイルモニター、要するに薄い液晶ディスプレイを買ったのだが、 iPad純正カバーのように立てることはできるのだけど、角度調整などの自由度がイマイチなのが不満だった。

そこを3000円弱でぐっと改善できたのがこのポータブルスタンド。 ディスプレイスタンドというよりも、タブレットのたぐいのスタンド。

机の上や身の回りにあまり仰々しくモノを増やしたくないので、 これは小さいし目立たないしとても良い。

Sony BluetoothスピーカーSRS-XB23

リモートワークのおともに、手ごろに手元にいい音を。

また昨今、公共交通機関や人のいるところを避ける流れになり、自宅からもくもく作業をしている。

一人で部屋でもくもく作業をしていると、心地よく上向いた気分にするために、周辺を心地よく音楽で満たしたい。ひとり作業なので、まわりの音声から自分を守る必要はない。ヘッドフォンのたぐいは必要ない。単に心地よい音で包まれればよい。
Google Nest Miniは自宅にすでに2個あるが、あれは自宅に音と便利をもたらすものであって、自分を音で満たすためのものではない。

MacBook系のスピーカーはノートPCとしては優れていると思うが、音で包まれたいというニーズを満たすほどではない。昨年末、日立の「白くまくん」のいいやつを買ったときのコジマ電気のポイントがあったので、所要のついでにちょっと店頭でスピーカーを見てみる。

SonyのSRS-XB23を買ってきた。いわゆるBluetoothスピーカーである。

f:id:mrmt:20220125175158j:plain

www.sony.jp

ちょうど500ml程度のペットボトルぐらいの大きさ。円筒。
大きさ、ほどよい。重さもほどよい。色は五色から選べる。

f:id:mrmt:20220126105115j:plain

いちおう横置きすればステレオスピーカーとしても使える。

「重低音を響かせるExtra Bassモード搭載」とのことで、円筒形の左右両端にあるバスユニットがびんびん震えているのが手を当てればすぐわかる。
出力は14Wで、一人で一戸建てで鳴らすには充分。これ以上でかいものを買っても近所迷惑だし持て余す。

満充電しておけば12時間保つらしい。僕のiPhoneつながるのかなぁ… みたいな人の車ですごす一日みたいなときにも重宝しそうだ。充電はいわゆるUSB-Cでできる。

f:id:mrmt:20220125231805j:plain

実際に使ってみて感じたことは

  • 購入時のデフォルトはモノラル。ステレオ動作に切り替えるには、ソニー提供のiOS/Android向け「Music Center」アプリが必要。ただまぁ、スマホを持たずBluetooth接続もしない人がこれを買うとも思えないので、これでいいかな。
  • 設定項目はそんなにない。Music Centerアプリで調整できるイコライザーもLow/Mid/Highの3バンドのみだ。でもまああまりここでいじり込んでも仕方ないし、どうしても気になるならスマホやPCなど音を出すほうでイコライジングすればいい。こんなもんでいい。
  • Extra Bassモードはオフのほうが電池は保つようだ。ただし、こいつをオフにすると、すっかすかの3000円ぐらいのスピーカーみたいな音になってしまい、これならMacBookの内蔵スピーカーでいいやとなるので、オンのままで使ったほうが意味がある。

あとは、防水なのでお風呂でも使える、2台買えば左右設置のステレオ再生もできる、マイクも付いてるので音声電話にも使える、といった機能もあるが、まだ利用していない。

実売価格は11,000円程度である。けっこうValue for moneyで満足。

追記

結局、もう1台を色違いで手に入れて、ステレオペアにして楽しんでいる。

2台組をステレオペアに設定するためには、まずは1台めをBluetooth接続し、Sony謹製Music Centerアプリでもう1台を指定してSpeaker Groupを構成し…… と若干手間がかかる。この構成には十数秒の時間を要してしまう。さらに、せっかく構成したステレオペアなのに、別のiPhoneやMacからうっかりどっちかのSRS-XB23にBluetooth接続してしまうとステレオペアが解散して単なるBluetoothスピーカー2個になってしまったりする。

なので結局、機種変して退役したiPhoneを1つ、設定やアプリなど何もかも初期化し、SpotifyとMusic Centerしかアプリ入ってませんという状態にし、SRS-XB23ステレオペア専用機にしている。これがまた、むちゃくちゃ快適。

Joplinいい感じ

Joplinを試してみている。なかなか良さそう。
Evernote Legacyから乗り換え、しばらく暮らしてみることにする。

背景

上の過去記事にあるとおり、Evernoteは2011年から有料コースで使い続けていたのだが、昨今の性能品質低下がしんどい。出先でスマホでメモを検索して閲覧するという、canonicalな操作がかなりできない。

サービスやアプリの運営っていろいろあるものだし、そこへの敬意なしにああだこうだ文句ばかりいうのは好きではないのだが、急場の避難として提供されているはずのEvernote Legacyを仕方なく使いつづけ、すでに1年経っている。このあいだに気付けた改善はない。macOSでの利用に限ればEvernote Legacyでしのげているが、このまま使い続けるのは今後が暗い。

乗り換え先をどうしようと考えていたが、最近急浮上してきたのがJoplin

f:id:mrmt:20220104184456p:plain

  • macOS, iOS, Linux, Android, Windowsで使える。npmでインストールできる端末版すらある。
  • データ保存先は各種クラウドなどいろいろ使える。
  • OSSである(MIT)。最悪なにかあってもソースさえあれば最後は自分でなんとかなる。この安心はでかい。
  • E2EE対応も良き。

同期先の準備

Joplinのデータ保存先は、local file systemをはじめ、Nextcloud, Dropbox, OneDrive, S3などいろいろ選べる。作者自身が提供しているJoplin Cloudというバックエンドもある。

だいたいの場合はこれらでいいと思う。自力であれこれ構築したり運用したりするのはもうold schoolだ。金で解決できるならそうしたい。

また、僕はもういい歳で、子どもたちもほぼ社会人だ。このステージになると、僕が死んだ後の家族が僕なしでデータ遺産をretrieveできるかという点も結構でかい。高いITスキルがなくとも、必要なcredentialさえあればアクセスでき、金さえ払えばサービスが提供されるバックエンドが望ましい。

だが、僕のデータは全部で10G近くあり、かつ、まずはトラブル時に詳細まで追っていけることも確保したい。なのでまずは自分でEC2にWebDAVサーバをUbuntu 20 + apache2 + Let's Encryptで作った。金のみで解決できる同期先は、いろいろ安定してきてエコシステムが成熟してからでもよい。本当はS3を使いたかったけど、まだBetaと書いてあるので見送った。

Joplinは、DAV上に大量の*.mdをフラットに作る。ちょっとMaildir感覚。Evernoteからデータ移行したらいきなり2万ファイル以上フラットに並んでしまい、今後のファイルシステムの負荷が気になったが、そうトラバーサルがかかることもないだろうし、ext4ならまぁいっかー。もうちょいpathがhashしてあってもいいかな、とは思ったけど、そこはWebDAVの裏側が担当してもいいことかもね。WebDAVに現れるファイルツリーと、その実体のファイルツリーが同一の写像である必要はない。Joplinがわの責務としては構造はシンプルなままでよい。

データ移行

まずはmacOS版Joplinアプリをインストールし、Evernoteからのデータ移行をする。
Evernote側では、ノートを複数選び、enexで保存し、そのenexをJoplinで ENEX - Evernote Import File (as Markdown) する。

Evernoteでのenexエクスポートは、多数のノートがまとまったノートブック単位で、ノートブック名をファイル名としたenexとして保存していくと作業効率がよい。ただしノート数が多いとエクスポートに失敗することがある。200個程度でダメなこともあるし、数千個で問題ないこともある。ここは地味に着々とやっていくしかない。

Joplin側でのenexインポートは一切ノントラブルだった。

各種Joplinアプリ

Joplinアプリは、macOSの他にもWindows, iOSなど試してみた。いずれも良さそうだ。

端末版は、nodeまわりのあれこれでインストールできず。いつかヒマができたら。

iOS版は、iPhone 8, iPhone 11, iPad Air 2いずれで試しても、設定画面にあれこれ入力したあと、画面が崩れてほぼ真っ白になって、戻れなくなる問題がある。いずれ時間ができたら自分でも追ってみたいが、とりあえず回避するには

  • まずは言語と日付書式設定だけして保存(フロッピーのアイコン…)
  • つぎに同期先にWebDAVを選択し、WebDAVパスワード、WebDAVユーザ名、WebDAVホスト名の順番で記入し、ふたたび保存
  • ここで画面が真っ白になるので、いったんタスクキルして、再度アプリを起動

これで初回の同期がはじまってくれる。

使い勝手

まあまあサクサクで悪くない。キーバインドをEmacs風に設定できるのも良い。Markdownの書き心地もなかなかだ。もし不満だったら任意のエディタを指定できる。

f:id:mrmt:20220104190031p:plain

Chrome & Firefox extentionとして用意されているWeb Clipperも程よい。

同期もいまのところノントラブル。

ただiOS版はバックグラウンド動作ができず、裏でデータを同期しておくことができない。また、デフォルト設定だととにかく全てのデータを手元に同期してしまうので、データ量も通信量もなかなかのことになる。このあたりのlazynessというか都合の良いチューニングは全盛期のEvernoteは優れていた。Joplinでは、ノート数ぶんのMarkdown全数をローカルに同期してしまうことからは避けられないのだが、添付ファイルは「自動」または「手動」にしてオンデマンドで同期することをおすすめする。

Markdownプレビュー領域には以下のCSSを当てた。

/* For styling the rendered Markdown */

body {
    line-height: 1.7;
    font-size: 14px;
}

ol li, ul li {
    line-height: 1.4;
}

Joplinというアプリの名前は、作者が好きなピアニストの名前からだそうだ。女性ロックシンガーの名前からではなかった。いいところで早逝してしまうことはなさそうだ。サイトにはDonation手段がいくつか載っているので、ベンツを買ってあげることはできないが、GitHub Sponsorぐらいならしてみようかな。

Janis

Janis

Amazon