Keychron Q1 Pro買ってみた

REALFORCEと心中する勢いでいましたが、キーボード沼の流行に感化されてKeychron Q1 Pro(赤軸)を購入。

愛用中だったREALFORCE R3HC23より更にコンパクトに。筐体はアルミ製でガッチリと重い。
打鍵感はカタカタ、コトコトと鳴る軽いタッチながらも、打鍵してるのが楽しくなる気持ちよさ。
キーキャップも陶器のような肌触りで良い。

ホットスワップで後からスイッチ(赤軸とか青軸とか茶軸みたいな)を変える事が可能。押す指によってスイッチを変えるのも面白いかもしれない。もちろんキーキャップのバリエーションも多数。これは楽しい。

またマウスに変わるデバイスとしてSliderMouse Proを購入してみた。

上にあるジャバラのような部分が物理的に回転し、更に左右に動く事でマウスの代わりになる。
これは押し込みも可能で通常は左クリックの扱いとなる。キーコンフィグは全て専用アプリで変更可能。肩の負担軽減を目的に買った訳だが、価格が高過ぎるのでトラックパッドで良い気もする。

そしてHHKBからはThinkPadみたいなポインティングデバイスを備えたHHKB Studioが出てた。キーボード本体の左右下部をサスサス触ってジェスチャーするのが面白い。これもだいぶ迷ったが今回はKeychronの美しさと打鍵感が勝った。

PHPerKaigi 2024 day0

参加しております!公式サイトはこちら
アーカイブは後にYoutubeでも公開されるそうです。

気になった発表のメモ。

マイクロサービスがほしいと思ったときに本当に必要だったもの〜なぜ人は共通基盤の夢を見るのか〜

困ったら何でもかんでもマイクロサービスにすれば解決ってもんじゃないよ、という話。

マイクロサービスとは
・協調して動作する小規模で自律的なサービス
 ・本体となるメインシステムと連動する
 ・2週間くらいで全体を書き直せるくらいの規模
 ・独立してリリース・変更ができ技術に依存しないAPIでつながる

マイクロサービスの利点
・技術的異質性 システム毎に開発言語が違っても良い
・回復性 障害の範囲が限定される
・スケーリング サービス毎に処理能力を変える事が可能
・デプロイ容易性 1つのサービスだけデプロイ可能
・交換可能性 1つのサービスだけシステムを入れ替え可能

これらを踏まえてなぜマイクロサービスにしたいのか、よくありそうなパターンでまとめてくれています。

Q:複数システムに同じような処理があるから、これらをひとつにまとめたい。
本当に同じ?ちょっとづつ違うコードをメンテする辛さ。
A:パッケージ化でも対処可能です。
共通ライブラリ化する方法。composer requireするのだが、方法としてはpackagistに公開するのも手だし、repositories設定にしてgitのリポジトリを指定するのが一番お手軽だそうです。


Q:時期によって繁閑があり、特定の時期だけ処理能力を上げたい
月初、月末、五十日などなど。会計などでありがち。
A:フレームワークのジョブキューでも対処可能
ジョブの量によりジョブランナーの起動数をスケールさせる。CRONでも特定日時だけ大量起動させる。

Q:特定処理だけPHP以外の言語を使いたい
非同期処理、画像処理などで他言語に便利なライブラリがある。
A:exexc()、symfony/prosessなどPHPから他言語の処理を呼ぶことも可能

Q:複数システムから共通DBを参照したい
共通ID・決済・ポイントがあるから。
A:マイクロサービス化を検討しても良いが、この規模でいくとサブシステムやプラットフォームなのでは?

以前はマイクロサービスを推進していたが、今回はなぜ否定的なのか。
実際に運用してきて問題を感じたそう。


・マイクロサービスの数だけデプロイが必要
>自動化を検討するべきでは?という所感
・マイクロサービスの数だけフレームワークや言語のアップデートが必要
>コンテナをイメージ化してOSや言語、設定をまとめてデプロイできる仕組みにはできないのだろうか、ソースはS3でマウントとか。

QAに上げた条件が複数重なるようだったら検討しても良さそう。
すべての「なんで?」を検討して、それでもまだマイクロサービスが必要ならやるべし。

全ての技術選定でも同じ。本当に必要だったのモノを探す事を忘れないで欲しい。
という事で締めくくり。

Octolamp作ってみた

Octolamp

材料は はんだこて などを持っていれば下記だけです。

  • 本体は3Dプリンタを持っていないのでココナラで依頼
  • ESP8266 NodeMCU D1 Mini Module [JP]
  • WS2812B LED Strip [JP] 1m×2本だと配線が目立つので5mがオススメ
  • USB lead [JP]

壁に穴を開けるのが無理だったので、スタンドを利用しました。

  • 無印良品 壁掛時計・壁掛式CDプレーヤー用スタンド [JP]

ESP8266 Moduleは凄くて、これだけでWiFiに接続できます。Arduino IDEを使えば自分で制御可能!
そこまでやるのは大変でもWLED projectにはWEB版のインストーラーがあってUSBに指してブラウザからインストールが簡単にできました。な、なんだこれ凄い。

ここからは Supported light control interfaces にある各種アプリから設定すれば終わり。
ハマりどころは初期のESP8266 Module自体がアクセスポイントになっていて、そこに直接アクセスして各種設定を行う所。家のWiFiに接続する(対応してるのは2.4GHzだけ)とESP8266 Module側のアクセスポイントは閉じられます。もしも失敗して訳がわからなくなったら、WEB版インストーラーに接続してRESET DATAすれば初期化できます。後はアプリの Config > LED Preferences にある Hardware setup の Length でLEDの数を指定しないと全部は光りません。

残念ポイントは材料紹介のLED Stripをケチって1m×2本にしたら配線が浮き出てしまった所。自分で切って半田とかで繋げられるか分からなかったので、ひとまず完成を優先。最終的に1m60個のLED Stripで97個になりました。

取り敢えずは光ったので、もっとキレイに光るように調整したり、GitHubからの通知などを受け取ってOctolampが光るようにしたいと思います。

Page 1 of 2012345Next »...Last »