投稿記事

いらにか 2023/07/18 00:03

【雑記】欲しかったライブラリ設計の教典を買った、ライフハック小噺

欲しかったライブラリ設計の教典を買った


.NETのクラスライブラリ設計 改訂新版


C#界隈では有名なライブラリ設計の教典。
すごく抽象度が高い設計上のノウハウが詰め込まれていて、UNIXという考え方と並ぶ哲学書だと個人的には思っている。

専門書界隈における名著なバイブルは、手引き的な意味でのバイブルではなく、聖書に近い意味でバイブルと呼ばれたりする。読んで学んだら終わりみたいな本ではないのだ。
※過去に改定前の内容を途中まで読んだことがある


6年前からずっと欲しかった本ではあるが、正直なところ超絶ボリューミーな内容なので読み終えられる自信が無かったことや、6,000円超えのお値段に気が引けてなかなか手が出せなかった。
そうこうしている間に、.Netを取り巻く環境も変わり、2021年に改訂版が出て.Net Coreも範囲に含んだ良書に進化した。
そして、Kindleで半額キャンペーンの対象になっていたことがダメ押しになり、ついに買ってしまった。
(ちなみに本書は中古価格が値崩れしない良書なのである)


空いた時間で少しずつ読み進めているが、難解ではなくシンプルに書かれているのに咀嚼しようとすると考えることがいっぱいで脳が疲れる。
すべての宗教の教典に言えるだろうが、簡単な教えであっても咀嚼して守破離の精神で向き合うのは難しい。だからこそ修行になる。


読書でこんなに脳が疲労する感覚は、スワロウテイルシリーズ以来かもしれない。
哲学書を読むとミームの防御系免疫が抗体反応を引き起こして、結果として体力をすごくもっていかれるのを久しぶりに痛感した。


ともあれ、欲しかった本を手に入れたのでゆっくりと読書を楽しもうと思う。

フォロワー以上限定無料

無料プランに入るとモチベーションを支援できます

無料

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

いらにか 2023/07/09 22:50

キーボードの買い替えを考えている話

現状

メインのキーボードは長らくREALFORCE 91UBK(静音じゃないやつ)とNiz 82EC(Bluetoothと有線両用)を使ってきた。
その他サブとして、エレコムのトラックボール付きのタブレット向けキーボードなどを使ったり。


■REALFORCE


https://www.realforce.co.jp/products/discontinued/91UBK-S_NG01B0/

■Niz


https://www.akeeyo.co.jp/collections/keyboard/products/aky-niz-keyboard?variant=40998140674207

■エレコム TK-DCP03BK


https://www.elecom.co.jp/products/TK-DCP03BK.html


これまでに、Think padのキーボードなども使ってきたが結局のところ上記のREALFORCEとNizに落ち着いている。
静電容量無接点方式の信者とまでは行かないが、やはりあの打鍵感がすごく好きなのである。
メカニカルキーボード(静音のピンク軸を除く)も触ってきたが、メーカーによりピンキリなのもあって、借りて使ったことはあっても買うまでには至っていない。


で、長らく使ってきたのでREALFORCEのほうは爪が割れたり、Sキーの表面が摩耗していたり、致命的ではないがそろそろ買い替えたい欲が出始めてきた。



Nizの方はまだまだ現役だが、USキーボードなせいで稀にマシンのキッティングなどで使おうとすると日本語入力で大変なことになるケースに遭遇する。なので、Nizの代わりに持ち運びできるやつが欲しかったり。
※僕のPC自体はUS配列でも日本語配列のどちらでもいけるような設定になってるし、僕の体もどっちでもタイプできるように適応してしまったので普段遣いでは困らない。
※余談だがNizを職場で他人に貸したとき、記号の配列の違いに気づかずに鯖のパスワードを間違って設定して、別環境からSSHでログインしようとしてもできないというアホみたいな事件にも遭遇したことがある。


というわけで、メインの3台目としてのキーボードを探し始めた。


FILCO Majestouch MINILA-R Convertible

まず、候補に上がったのはFILCO Majestouch MINILA-R Convertibleの静音赤軸(ピンク軸)。




https://www.diatec.co.jp/shop/MINILA-R/

60%キーボードなので、持ち運びしやすいし、日本語配列なら他人にも貸しやすい。
Youtubeで打鍵音も聞いてみたが、結構静かだし、悪くない。
有線と無線の両対応なのも助かる(この点はNizですごく利便性を実感した)



値段も1万円弱と(REALFORCEやNizに比べれば)お手頃なのも良い。



何より、メカニカルキーボードをひとつくらい持ってても良いのではないかと思っている。


REALFORCE R3HC12


https://www.realforce.co.jp/products/R3HC12/

有線と無線の両対応で、なによりも静音REALFORCEなのがポイント。
このモデルではないが、友人の静音REALFORCEを触らせてもらったことがあり、とても静かでポスポスという打鍵感が心地よかった。


Nizも一応静音だが、Nizは独特の僅かなカチャカチャ感がある。
静音REALFORCEにはそれがない。


REALFORCEでも標準キーと静音キーで音と打鍵感が意外と変わる。

https://youtu.be/q_C2rxFRmW4

https://youtu.be/gOvpoeplqwI


ただ、お値段が3万円超えるし、テンキーレスの80%サイズなので持ち運ぶには少し大きい。まぁカバンには入るので、持ち運べないわけではないが。
REALFORCEは65%作ってくれたら嬉しいんだけど、HHKBとの棲み分けで多分作らないと思う。ちなみにHHKBは配列が苦手なので候補にはない。


あと、地味にAPC対応してたり、昔と比べてソフトウェアのユーティリティが便利になってたり、魅力がいっぱいある。
ぶっちゃけ、これ買えば間違はない。



ただ、FILCOのMINILA-Rが2つ買える値段に尻込みしてしまう自分がいる。


REALFORCE GX1


https://www.realforce.co.jp/products/series_gaming_gx1.html

完全に今回のダークフォース。
つい先日、Dynamic modeとかいう変態な機能を載せてきやがった。


https://twitter.com/TOPRE_REALFORCE/status/1677238523643203584?s=20


ゲーム用途なら、すごく興味を惹かれるし、静電容量スイッチの構造的にもこれからファームウェアアップデートで少しずつ機能が拡張されそうな予感がしている。


ただ、買うなら今じゃないかな感。
もう少し様子見してからで良さそう。



まとめ

今のところ、FILCOのMINILA-Rがコスト的に手が出しやすいので第一候補になっている。
ただ、今持っているREALFORCEを誰かに押し付ければ、REALFORCE枠が空くのでREALFORCEのR3HC12を買う必然性が出てくるなぁとか思ったり思わなかったり。


Nizで有線無線に両対応しているモデルの便利さを体感してしまったので、ゲーミングキーボードは憧れるけれども、無線対応してない不便さをずっと引きずりそう。


こんな感じでキーボードの好き嫌いがあるけれど、僕の好みに当てはまらないやつでもいいので、もしオススメのキーボードとかあったらコメントで教えてください。


余談

静電容量無接点方式ばかり推してる感じになったが、実はパンタグラフやメンブレンも結構好き。


で、この前家電量販店でエレコムの洗える 抗菌 Bluetoothキーボードを触った感じが意外と良かった。



https://www.elecom.co.jp/products/TK-WS03BMKBK.html

テンキーモデル(フルサイズ)は大きすぎてマウスの定位置と干渉するし、ぶっちゃけ邪魔なので絶対に購入候補にならないが、これのテンキーレスモデルがあったら割りと本気で購入を考えていたかもしれない。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

いらにか 2023/07/08 12:12

Mes開発経過の話@現状報告

Mesは現在、2023年11月頃の.NET8のLTSリリースを待つために機能拡張などの開発を一時ストップしています。
引き続き各種ツールは使えます。


元々、Mesコアライブラリ、SMWE(ウェブエディタ)、MesWordAddin等のツールはC#の勉強を兼ねつつ試作目的で作り始めたというのもあり、当時新しかった.NET7で作り始めた経緯があります。
それらのツールも核となる機能は実装できていて、これからの作業は機能拡張とUX向上がメインになってくるので、このあたりで一度ペースを落としてLTSへ移行しようと思いました。

.NET8がリリースされるまでの間は、主に既存のライブラリの改修をやっています。

例えばこれ。

上記のコードでは、クラスにデフォルト実装をもたせたインタフェースを継承させることで、様々な実装をアダプティブに追加できるようにしています。いわゆるミックスインみたいなものです。
Mesのデータに対して何かしらの加工処理(例えばHTMLで出力する等)を追加したい時は、その加工処理用のインタフェースとデフォルト実装を作って継承させるだけでMesに組み込むことができます。機能の着け外しが楽なのです。
ゆくゆくは依存性注入などで、外部からプラグインなどを簡単に組み込めるようにする計画とかもあったりします。

こんな感じで、ブクブク太ったコードをスッキリさせて綺麗な状態にすることで、本格的な機能拡張をストレスフリーに行えるよう、身動きの取りやすいデザインに修正しています。


またSMWEでは、テキストデータを保管しておけるようなセーブストレージの実装も計画しています。ただ、.NET8に移行する際にMAUIのリサーチをしないといけないかもしれないので、コストが不透明なのが恐怖です。場合によってはクラウドストレージの検討をしないといけないのかも。



というわけで、ダイエット期間なのでお知らせするような進捗はありませんが、Mesではいつでもご意見をお待ちしているので、僕にDMを送るかNotionからissue上げてください。
MesのissueはNotionでまとめていますので、進捗などが気になる人もここを見てください。

https://www.notion.so/tokakuya/fc3a9620c16c447fb2a0f8e57cd997ae?v=ea406da72c704996ae56ce10cb30ea38&pvs=4


では、また。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

いらにか 2023/06/19 19:16

【これは】Ci-enのマイページにNSFW画像が表示されるのでぼかし処理を施した【バグ?仕様?】

ことの発端

Ci-enのマイページで一般(全年齢)フロアにいるはずなのに、支援しているクリエイターの記事の欄はR18でも容赦なく表示される














なんでやねん!!(怒り)










一般とR18を分けておきながら、なんでマイページは区分けされないんだ?(謎)
DLsite Playには(すべて|全年齢|R18)みたいなフィルタがある。
けど、そんなフィルタはCi-enに実装されていない。
設定にも該当するような項目はない。


https://twitter.com/happy_packet/status/1670704853163864065?s=20





ただし、Ci-enは一般とR18はドメインが区分けされている(えらい)。
なので「R18ドメインの画像ならCSSでブラー(ぼかし)フィルタかけるようにすればいいかな」と私は思った。
実に安直だが、当然の思考だと思う。











しかし、一般フロアに記載されているR18記事は、なんと一般フロアのドメインからリダイレクト(又はプロキシ)を経て参照するように設計されているではないか!!


要約すると、ドメインでR18の画像だけにフィルタをかける手段がなくなった



まぁクロスドメインにならないので、CROSで苦労っすみたいなことも減るし簡単だからサイトの実装手段として気持ちはわかる。わかるけどもさぁ……(声にならない叫び)
(ぱっとみた感じだとクリエイターのIDやURLで区別もされていないし、R18判定は無理なんじゃないかと思います


https://twitter.com/happy_packet/status/1670709357896675328?s=20



というわけで、ブチギレた僕は一般フロアに表示される支援しているクリエイターの記事の画像すべてにブラー(ぼかし)をかけると固く決意した。

無ければ作る。
それが一番早い。

dlsite-dark2の改良

というわけで、以前作ったdlsite-dark2を速攻で改良して対処した(もう過去形)。
※ChromeWebストアでの公開には審査とか色々あるのでアップデート版の配布は後日になります。

一般フロアのマイページ(https://ci-en.net/mypage)のみ、支援しているクリエイターの記事全てのアイキャッチ画像にCSSでブラーを施している。
画像をホバーするとブラー処理が解除される地味に便利な仕様。

適用しているCSSはこれだけ↓。

#article-new-arrival-all > div.c-cardCase.is-multiCell.is-2line > div > div > div.c-card-header > a > div > img {
    filter: blur(9px);
}

#article-new-arrival-all > div.c-cardCase.is-multiCell.is-2line > div > div > div.c-card-header > a > div > img:hover {
    filter: none;
}

ブラーでの表示をやめたければ、R18のマイページにアクセスすればいい。
わざわざ、拡張機能内に設定を作らなくてもいいね。


ひとつ問題があるとすれば、モバイル(スマホ等)だと拡張機能が動かないので使えない。

Chromeの拡張機能がモバイルで動くようになるのが先か、
Ci-enがこの問題を解消するのが先か。


個人的にはChromeが勝ったら、笑い話になるのでChromeを応援したい。
まぁ実際にそうなったら、笑えないだろうけどね。




余談

もしCi-en自体を改善するとして、ぱっと思いつく案は

  1. DLsitePlayみたいに(すべて|全年齢|R18)のフィルタを作る
  2. R18アカウントの記事の画像はブラー処理する(ユーザが設定で有無を選べる)
  3. 一般はR18アカウントの記事が表示されないようフィルタする

みたいな感じ。
1と2はどれも良さそうだし、両方実装してもいいのではと思う。
3を選んだら愚行だなぁと思う。UX的にも最悪だし、クリエイターもアウトリーチ的な導線が消えるので良いこと無いと思う。
(あくまで外野の個人の感想です)

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

いらにか 2023/06/15 18:10

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

1 2 3 4 5 6 7

月別アーカイブ

記事を検索