カラクリスタ・ブログ『輝かしい青春』なんて失かった人のブログですhttps://the.kalaclista.com/posts/atom.xmlhttps://the.kalaclista.com/assets/avatar.pngOKAMURA Naoki aka nyarlanyarla@kalaclista.comhttps://the.kalaclista.com/nyarla/2024-02-15T14:38:54+09:00YAPC::Hiroshima 2024へ参加してきました!https://the.kalaclista.com/posts/2024/02/15/143854/OKAMURA Naoki aka nyarlanyarla@kalaclista.comhttps://the.kalaclista.com/nyarla/2024-02-15T14:38:54+09:00<p style="word-break:keep-all;overflow-wrap:anywhere">つい先日 <a href="https://yapcjapan.org/2024hiroshima/">YAPC::Hiroshima 2024</a> へ参加してきて、 ブログを書くまでが YAPC、と言う事で参加レポートを書きたいと思います。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">YAPC::Hiroshima 2024 での行動記録</h2><p style="word-break:keep-all;overflow-wrap:anywhere">今回の YAPC ではおおよそ次のトークを公聴していたりしました:</p><ul><li style="word-break:keep-all;overflow-wrap:anywhere">前夜祭<ul><li style="word-break:keep-all;overflow-wrap:anywhere">Introduce Hono v4!!!!(yusukebeさん)</li><li style="word-break:keep-all;overflow-wrap:anywhere">Cache-Control: max-age=86400(40分)(そーだいさんとonkさん)</li><li style="word-break:keep-all;overflow-wrap:anywhere">企画: 番宣リレー (80分) (色々な方)</li></ul></li><li>YAPC::Hiroshima 2024<ul><li style="word-break:keep-all;overflow-wrap:anywhere">コミュニティと共に生きる(そーだいさん)</li><li style="word-break:keep-all;overflow-wrap:anywhere">Go to Cloudflare Workers(codehexさん)</li><li style="word-break:keep-all;overflow-wrap:anywhere">My Favorite Protocol: Idempotency-Key Header(ohbaryeさん)</li><li style="word-break:keep-all;overflow-wrap:anywhere">rakulangで実装する! RubyVM(八雲アナグラさん)</li><li>ランチセッション</li><li style="word-break:keep-all;overflow-wrap:anywhere">Blogを作り、育み、慈しむ(Songmuさん)</li><li style="word-break:keep-all;overflow-wrap:anywhere">PerlでつくるフルスクラッチWebAuthn/パスキー認証(macopyさん)</li><li>...</li></ul></li><li>YAYAPC::Hiroshima 2024<ul><li style="word-break:keep-all;overflow-wrap:anywhere">それ以上はいけない</li></ul></li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">今回の YAPC で印象に残っているトークはアナグラさんの <em>rakulang実装する! RubyVM</em> で、 Rakuの現状やRubyVMの作り方など、そういった事柄を興味深く公聴しておりました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">またそーだいさんの <em>コミュニティと共に生きる</em> のトークでは、 開発者コミュニティに参加することで人生に大きな変化があった、 と言うとても良い話を聴けた!と感じています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">あと YAYAPC に関しては、こう色々と含みのあるすごい話が発表されており、</p><blockquote><p style="word-break:keep-all;overflow-wrap:anywhere">あ、これはメモを取ったらアカンやつなので、この場限りで楽しむにしよう</p></blockquote><p style="word-break:keep-all;overflow-wrap:anywhere">と意識付けて、その場で楽しむに留めました。まぁSNS共有禁止でしたからね。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">今回の YAPC に関する個人的な改善点</h2><p style="word-break:keep-all;overflow-wrap:anywhere">今回の YAPC::Hiroshima 2024は広島で行なわれていたのですが、 三重県から広島までの移動距離の事を完全に考えておらず、</p><blockquote><p style="word-break:keep-all;overflow-wrap:anywhere">あ、三重県から広島ってめっちゃ遠いやん……</p></blockquote><p style="word-break:keep-all;overflow-wrap:anywhere">と後になってから気がつきました。そのため次からはちゃんと距離を見ましょう。</p><p style="word-break:keep-all;overflow-wrap:anywhere">また今回の YAPC では15:00以降のトークで『公聴する』ことに対し完全に集中力が切れていたため、 この辺りもったいない事をしたなぁと感じています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">これに関しては、こう、もうちょっと集中力が続いていたら良かったのですが、 他の事に気を取られてしまっていたので、その点は次から改善したいところです。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">YAPC::Hiroshima 2024、最高だったぞ!</h2><p style="word-break:keep-all;overflow-wrap:anywhere">とはいえ、そう言った(個人的な)反省点はありつつも、自身の体調も比較的良かったし、 今回の YAPC::Hiroshima 2024 はかなり楽しめて帰ってこれたので、 YAPC はやっぱり参加してきて良かったなーと感じています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">また今回は、</p><blockquote><p style="word-break:keep-all;overflow-wrap:anywhere">あぁ、これは失敗だった……</p></blockquote><p style="word-break:keep-all;overflow-wrap:anywhere">と思い返すような大きな負の思い出がなかったので、その点でも非常に良かったと思ってます。</p><p style="word-break:keep-all;overflow-wrap:anywhere">※ この辺りの話は私の記憶特性に起因していて、自分は嫌な記憶や苦い記憶だけが強く残り、楽しかった思い出がほぼ記憶に残らない傾向が強くあります。</p><p style="word-break:keep-all;overflow-wrap:anywhere">その他、YAPC::Hiroshima では諸事情で退職したアルバイト先の元チームの方々と交流できたり、 あるいは以前、お世話になった方々へ挨拶をしたりできたので、 そういった事が出来ることもオフラインカンファレンスの醍醐味だよねぇ……としみじみ感じています。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">と言う事でみなさんYAPCへ参加しましょう!</h2><p style="word-break:keep-all;overflow-wrap:anywhere">YAPC と言う名称は元々 Yet Another Perl Conference の接頭辞で、 YAPC自体は元々 Perl に関連したカンファンレンスですが、 それに限らず開発者としてのお祭りという側面がある懐の深いカンファレンスです。</p><p style="word-break:keep-all;overflow-wrap:anywhere">そのため前夜祭で番宣 LT で PHP 関係のカンファレンスが紹介されまくっていたり、 何故か登壇者の腕立て伏せが発生したり、と良い意味で混沌としているので、 そう言った事も楽しめるカンファレンスだと思っています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">またそーだいさんのトークを聴いていて、 色々なコミュニティ主催のカンファレンスに参加することが自身の幅を広げていくことに繋がる、 と言う事を実感したので、私も他のコミュニティカンファレンスへ参加してみるのも良いかな、 なんて感じています。</p><hr><p>ちなみに。</p><p style="word-break:keep-all;overflow-wrap:anywhere">前夜祭の帰りに、わいとんさんたちとブログの執筆について語っていたとき、 『2時間で2000字ぐらいで書いている』と言った主旨の話をしていましたが、 正しくは1時間で2000字ぐらいでした。</p><p style="word-break:keep-all;overflow-wrap:anywhere">あの場に居た方がどこまでこの記事を読んでいるかは分かりませんが、 私は1時間に2000字前後でブログなど書く文章人間でした。 今回の話のオチとして、ここに訂正しておきます。</p>新年明けましたhttps://the.kalaclista.com/posts/2024/01/06/193258/OKAMURA Naoki aka nyarlanyarla@kalaclista.comhttps://the.kalaclista.com/nyarla/2024-01-06T19:32:58+09:00<p style="word-break:keep-all;overflow-wrap:anywhere">今年は元旦早々から大地震が起きていて、正直なところ新年を祝える気持ちではないのですが、 今年も一年間、よろしくお願いします。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">今年の抱負</h2><p style="word-break:keep-all;overflow-wrap:anywhere">一昨年から去年に掛けては突然始まった職により、色々とこう私生活での活動が出来ていなかったので、 今年はその辺りをのんびりとやれたらなーと思っています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">と、言うより、今年こそやるぞ!と気合いを入れるような事が今ところ特に思い浮ばず、 去年途中で中断してしまっていた、</p><ul><li style="word-break:keep-all;overflow-wrap:anywhere">週報と月報</li><li>創作活動</li><li>読書</li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">辺りを再開できたらなーと感じています。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">今年の正月にやっていたこと</h2><p style="word-break:keep-all;overflow-wrap:anywhere">なんか NeoVim の dotfiles をひたすら触っていました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">また最近は CI でテストを走らせることがマイブームになっており、 今までサボりにサボっていた自動テストの導入を着々と進めています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">まぁ他にも p5-Text-HyperScript の修繕をやっていたり、 タスク管理を Todoist から Notion に移していたりもしていました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">あと他には Misskey.io の方でフォロイーの方々をリスト分けしていたり、 若干の急病(色々とあったが異常は無かった)とかも有りましたが、 とりあえず一応生活としては成り立っています。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">今月中に着手したいこと</h2><p style="word-break:keep-all;overflow-wrap:anywhere">もう来月には YAPC::Hiroshima 2024 が待っているので、まずはそこへの準備を進めて行きたいと考えています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">と言うのも今回、YAPC への参加としては割と旅行日程を長めに取っており、 着替えの買い足しとか新幹線のチケットを押えたり、等々、 先に準備を整えておかないと後で詰まることが色々とあるため、先にこれを済ませておきたいのが一つ。</p><p style="word-break:keep-all;overflow-wrap:anywhere">また旅行は旅行で良いとして、開発関係としては、</p><ul><li style="word-break:keep-all;overflow-wrap:anywhere">NeoVim の dotfiles 大改修工事の仕上げをする</li><li style="word-break:keep-all;overflow-wrap:anywhere">このブログのデザインを TailwindCSS ベースに変える</li><li style="word-break:keep-all;overflow-wrap:anywhere">GoToSocial の個人的な fork で UI を入れ替える</li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">と言った辺りに着手したいと考えています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">そのほか、中長期的には、</p><ul><li style="word-break:keep-all;overflow-wrap:anywhere">音楽関係の環境を dual boot にした Windows 11 Pro へ構築する</li><li style="word-break:keep-all;overflow-wrap:anywhere">割と本気を出して小説を書くことに取り組む</li><li style="word-break:keep-all;overflow-wrap:anywhere">今まで放置に放置を重ねてきたイラスト製作に取り組む</li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">と言った事や、</p><ul><li style="word-break:keep-all;overflow-wrap:anywhere">部屋の掃除と片付けを済ませる</li><li style="word-break:keep-all;overflow-wrap:anywhere">自室にボーカルコーナーを作る(野望)</li><li style="word-break:keep-all;overflow-wrap:anywhere">何かしらの Web サービス or Web サイトを新規で作る</li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">などなどが出来たらなーと考えていますね。はい。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">と言う事で今年最初の記事は以上です</h2><p style="word-break:keep-all;overflow-wrap:anywhere">正直なところ、今年は本当にすべりだしが悪いです。</p><p style="word-break:keep-all;overflow-wrap:anywhere">まず元日早々の大地震でだいぶ動揺しましたし(現地は本当にそれどころじゃないでしょう)、 その後も急に右足に力が入らなくなって立てない(これは検査の結果何もなかった)などがあったので、 メンタルとフィジカルもあまり良くない感じです。</p><p style="word-break:keep-all;overflow-wrap:anywhere">また最近はインターネットや新聞、テレビなんかでも震災のニュースが多く流れていそう、 かつ、そう言ったニュースを見るとメンタルが更にやられる、と言う事もあって、 新年に入ってからは情報収集の類いをほぼやっていません。</p><p style="word-break:keep-all;overflow-wrap:anywhere">とは言え Misskey.io とか自分のインスタンスで SNS はやっていたりするので、 そう言った面では穏かに生活できたらいいなー、と思っています。はい。</p>長くブログを書いている人はリンク先の生存管理をやった方が良いhttps://the.kalaclista.com/posts/2023/11/17/114547/OKAMURA Naoki aka nyarlanyarla@kalaclista.comhttps://the.kalaclista.com/nyarla/2023-11-17T11:45:47+09:00<p style="word-break:keep-all;overflow-wrap:anywhere">私はこのブログのリンク先と、リンクカードを表示するための情報を Google Sheets + Google Apps Script を用いて管理 + 自動取得をやっています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">ただ、その際に古いリンク先が謎のチカチカエロスパムサイトと化していた事があったので、今日はその辺りの話をします。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">古いリンク先は死んでいる事が良くある</h2><p style="word-break:keep-all;overflow-wrap:anywhere">ブログを長く書いていると様々なブログやリンク先へ言及することがあります。</p><p style="word-break:keep-all;overflow-wrap:anywhere">特にブログ繁栄の古い時代、主にX(旧 Twitter)などが台頭する以前のブログ全盛期では、 ブロガー同士がトラックバックなどを飛し合い、今で言うお気持ち長文を用いて殴り合う、 と言うようなインターネットバトルが良く行なわれていました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">しかし2023年11月現在その文化はほぼ廃れてしまい、その頃に言及していたリンク先のブログが消滅していたり、 あるいはドメイン自体が滅んでいる事もままあります。</p><p style="word-break:keep-all;overflow-wrap:anywhere">とは言えブログやドメインが場合によっては有償で確保されている事もある以上、 ブログやドメインの保持が割りに合わなくなる、と言うこと自体は止むを得ません。 なにせお金がかかりますからね。あと人によっては亡くなっている場合もありますし。</p><p style="word-break:keep-all;overflow-wrap:anywhere">ただ独自ドメインブログの消滅に関して問題がいくつかあり、ドメインが期限切れと同時に他人に取得された場合、 謎のSEO収益化ブログになっていたり、最悪の場合で謎のチカチカエロスパムサイトになっている事があります。</p><p style="word-break:keep-all;overflow-wrap:anywhere">そのためそう言ったリンク先へリンクしないためにも、リンクの生存チェックが必要である、 と言う事が今回の主題です。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">古いリンク先を管理するためにはどうしたら良いか</h2><p style="word-break:keep-all;overflow-wrap:anywhere">これはブログによります。</p><p style="word-break:keep-all;overflow-wrap:anywhere">まず全体として、</p><ol><li style="word-break:keep-all;overflow-wrap:anywhere">過去のブログ記事からリンク先をすべて抜き出す</li><li style="word-break:keep-all;overflow-wrap:anywhere">リンク先の生存を何かしらの方法で確認する</li><li style="word-break:keep-all;overflow-wrap:anywhere">消滅している、もしくはスパム化しているリンク先は取り除く</li></ol><p style="word-break:keep-all;overflow-wrap:anywhere">と言う流れになりますが、これを実現するための方法は様々です。</p><p style="word-break:keep-all;overflow-wrap:anywhere">例えば私のブログは<a href="https://github.com/nyarla/p5-Kalaclista/">自家製の静的サイトジェネレーター</a>を用いて管理・生成を行なっているため、</p><ol><li style="word-break:keep-all;overflow-wrap:anywhere">ジェネレーターで生成した HTML をパースして埋め込みURLを抜き出す</li><li style="word-break:keep-all;overflow-wrap:anywhere">抜き出したURLを一旦すべて取得し、その結果を Google Sheets へインポート</li><li style="word-break:keep-all;overflow-wrap:anywhere">Google Sheets の情報を元に出力から無効なURLを自動的に除去</li></ol><p style="word-break:keep-all;overflow-wrap:anywhere">と言う流れでリンク切れへ対処しています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">ただ実際の過去ログについては未だに手を入れていないため、ここから先の作業として、</p><ul><li style="word-break:keep-all;overflow-wrap:anywhere">過去記事内の無効なURLを有効なURLに置換する</li><li style="word-break:keep-all;overflow-wrap:anywhere">無効なURLはそのまま維持し、生成段階でリンクを無効化する</li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">と言う事を行う予定をしています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">また先にも書いたように、今のところリンク先の情報は Google Sheets で管理しており、 その情報の更新を Google Apps Script で行なっているので、 その情報を定期的にチェックしてリンク切れを見つけるようにすると言う事が今後の作業です。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">リンク切れを見つける事が難しい場合はどうするか</h2><p style="word-break:keep-all;overflow-wrap:anywhere">とは言え、私の場合は手元にHTMLファイルが存在するが故に取れる手段です。</p><p style="word-break:keep-all;overflow-wrap:anywhere">例えばこれがブログのホスティングサービスを利用していた場合、</p><ol><li style="word-break:keep-all;overflow-wrap:anywhere">ブログ記事のすべてを一旦エクスポートしてリンク先URLを抜き出す</li><li style="word-break:keep-all;overflow-wrap:anywhere">抜き出したURLを何らかの方法で確認する</li><li style="word-break:keep-all;overflow-wrap:anywhere">最後に発見したリンク切れを手作業で修正する</li></ol><p style="word-break:keep-all;overflow-wrap:anywhere">と言う流れを取るしかないと考えています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">またURLをまとめて取得してリンク切れを起こしているかどうかのチェックについては、 何からしらのプログラムを利用する or スクリプトを書く必要がありますし、 それも困難であれば手作業でリンクを調べて貼り替えて行くしかないと思います。</p><p style="word-break:keep-all;overflow-wrap:anywhere">なお手作業でリンクの貼り替えを行う場合、</p><ul><li style="word-break:keep-all;overflow-wrap:anywhere">古い記事から貼り替えていく</li><li style="word-break:keep-all;overflow-wrap:anywhere">新しい記事から貼り替えていく</li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">の2つの方針があると思いますが、これはブログの性質や、過去の記事と現在に近い方の記事、 どちらを優先するかで決めて行くと良いと考えています。</p><h2>以上</h2><p style="word-break:keep-all;overflow-wrap:anywhere">まぁリンク切れを見つける方法やリンク切れを貼り替える方法については一概に方法論を言えないため、 各自臨機応変にやってくれ、としか言えないのですが、リンク切れの問題については何かしらの対策を打つ必要があると思っています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">またこれからリンクを貼って行くぞ!みたいな場合では、</p><ol><li style="word-break:keep-all;overflow-wrap:anywhere">リンクを貼った記事とリンク先の情報を Google Sheets などにまとめておく</li><li style="word-break:keep-all;overflow-wrap:anywhere">リンク先のチェックを何かしらの方法で定期的にチェックする</li><li style="word-break:keep-all;overflow-wrap:anywhere">リンク先がリンク切れになっていたら適宜貼り替える</li></ol><p style="word-break:keep-all;overflow-wrap:anywhere">と言う手段が取れるとは思います。とは言えこれはこれからどうするかの話なので、 過去のURLにはあんまり効果的ではないですけどね。</p>エンジニアとしてのアルバイトを退職してましたhttps://the.kalaclista.com/posts/2023/10/06/155859/OKAMURA Naoki aka nyarlanyarla@kalaclista.comhttps://the.kalaclista.com/nyarla/2023-10-06T15:58:59+09:00<p style="word-break:keep-all;overflow-wrap:anywhere">今まであまり大々的には言ってこなかったと思うのですが(週報とかには書いてたけど)、 ここの一年ほど、私は Web アプリケーションエンジニアとしてアルバイト入社していました。 しかしながら先月末日を以って退職となり、今回はその報告です。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">なぜ退職となったか</h2><p style="word-break:keep-all;overflow-wrap:anywhere">一言で言えばエンジニアとしての火力不足です。</p><p style="word-break:keep-all;overflow-wrap:anywhere">私自身、火の着きがあまり良くなかった、と言う事と、 会社の方もそこへ焼べる燃料にも限りがあってじゃな……とかそう言う理由です。 そのため双方が交わした雇用契約に基づき、相互同意と調整を経て、 契約満了を待たずに退職、と言う形になりました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">そしてこう言う顛末だったため、同僚だった方にとってはある日突然、</p><blockquote><p style="word-break:keep-all;overflow-wrap:anywhere">今日が最終出社日です!</p></blockquote><p style="word-break:keep-all;overflow-wrap:anywhere">と言う形になってしまっていたので申し分けが立たなかったのですが、そこはそう言う理由でした。</p><p style="word-break:keep-all;overflow-wrap:anywhere">ちなみに今回の起因は仕事をサボっていたとか業務にまったく付いて行けなかった、 とかそう言う話ではなく、体調面から出社日数が思う様に伸びず(実は色々と調整して頂いてました)、 そこから始まって社としても色々事情があり今のままでは厳しい、との判断だったらしいです。</p><p style="word-break:keep-all;overflow-wrap:anywhere">まぁ原因としては体調面から話が始まっているので、今後はそこを改善して行かないとダメだろうなー、 と言うのが今回の感想ですね。はい。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">今後はどうするのか</h2><p style="word-break:keep-all;overflow-wrap:anywhere">それはともかくとして、今回の結果に関しては私の体調が足を引っ張ったことに間違いは無いので、 次に備えるにしてもまずはそこから、と言う辺りですかね。</p><p style="word-break:keep-all;overflow-wrap:anywhere">今のところの計画としては、週に三日を目安として精神科のリハビリプログラム(いわゆるデイケア)に参加し、 そこから体力と気力を養っていく、と言う感じです。</p><p style="word-break:keep-all;overflow-wrap:anywhere">あと残りのエンジニアとしての経験値を積む、みたいな事に関しては個人開発者として色々やって行くしかないと言う印象です。 また他者からデータを預ってサービスを運営する、と言う事へ胆力を付けないと間違いなくやって行けないので、 そこは改善せんといかんだろう、と言う感触はあります。</p><p style="word-break:keep-all;overflow-wrap:anywhere">とは言え、先立つものはそんなに無い(が障害者年金とかはあったりする)ため使える手持ちは少ないのですが、 そこはなんとかしてやって行くと言う気持ちで何かを作れたらなーと思っています。</p><p style="word-break:keep-all;overflow-wrap:anywhere">ちなみに多分そんな方は居ないと思うのですが、今のところはゆっくりしたい、と言う事と、 今の状態だと火力は間違いなく足りないので、職の話などを持ってきて頂いても多分応えられないと思います。はい。</p><h2>以上です</h2><p style="word-break:keep-all;overflow-wrap:anywhere">実のところ自分は誘われ入社(なのにアルバイト!)で、 その上でこの結果となったため双方にバツが悪い感じだとは思うのですが、 また機会があればご一緒しましょう!と言う感じの別れ方ではありました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">またその『また機会があれば!』も世辞とかそう言う話ではなく、 勤め先の感触から実力が付けば出戻りOK!人手も足りんし、と自分は解釈しています。 と言うか体力と胆力が十分に付いたら再チャレンジできそう?と言う印象でしたし。</p><p style="word-break:keep-all;overflow-wrap:anywhere">あと今回はこう言う結果にはなりましたが、 元同僚の方とは間違いなくテックカンファレンスで再会する(と言うかお誘いの起源はその辺りしかない)ので、 その時はまた食事などをご一緒させてください!と言う感じです。</p><p style="word-break:keep-all;overflow-wrap:anywhere">なお来年の2月には広島へ行くつもりが満々なので、たぶんそこへ行けば会えるかな〜と言う温度感でいます。はい。</p><hr><p>最後に。</p><p style="word-break:keep-all;overflow-wrap:anywhere">一応言っておきますが、<strong>私の(元)勤め先は非公開情報</strong>です。</p><p style="word-break:keep-all;overflow-wrap:anywhere">リアルテックカンファレンスではぐだぐだじゃぁ〜〜と言う感じでしたが、 <strong>このブログの業(過去)と会社の看板は同時に背負えない</strong> と判断して入るので、そう言う感じでお願いします。</p>自作キーボードキット Zinc の二号機を作ったhttps://the.kalaclista.com/posts/2023/08/15/162025/OKAMURA Naoki aka nyarlanyarla@kalaclista.comhttps://the.kalaclista.com/nyarla/2023-08-15T16:20:25+09:00<p style="word-break:keep-all;overflow-wrap:anywhere">今日の話は Zinc と言う自作キーボードキットの <strong>二台目</strong> を作った、と言う話です。</p><p style="word-break:keep-all;overflow-wrap:anywhere">※なおこの記事はビルドログではないです。すみません……。</p><h2>Zinc とは?</h2><aside class="content__card--website"><a href="https://25keys.booth.pm/items/1076720"><h2><img alt="" height="16" src="https://www.google.com/s2/favicons?domain=25keys.booth.pm&sz=32" width="16">Zinc キーボードキット - 25KEYS - BOOTH</h2><p><cite>https://25keys.booth.pm/items/1076720</cite></p></a></aside><p style="word-break:keep-all;overflow-wrap:anywhere">Zinc とは <a href="https://twitter.com/monksoffunkJP">monksoffunk</a> さんが設計された自作キーボードキットで、 すべてのキーを 1u で統一されたロスタッガードな 40% キーボードです。</p><p style="word-break:keep-all;overflow-wrap:anywhere">……と口で説明しても分かりづらいんで、今回作った成果物の写真を貼っておきます:</p><p><a href="https://the.kalaclista.com/images/posts/2023/08/15/162025/1_1x.webp" class="content__card--thumbnail"><img alt="Zinc の写真(二号機)" height="480" sizes="(max-width: 640px) 640px, (max-width: 1280px) 1280px" src="https://the.kalaclista.com/images/posts/2023/08/15/162025/1_1x.webp" srcset="https://the.kalaclista.com/images/posts/2023/08/15/162025/1_1x.webp 1x, https://the.kalaclista.com/images/posts/2023/08/15/162025/1_2x.webp 2x" title="Zinc の写真(二号機)" width="640"></a></p><p style="word-break:keep-all;overflow-wrap:anywhere">Zinc は 2023年8月現在 <a href="https://shop.yushakobo.jp/">遊舎工房</a> さんから委託販売されていて、 時折在庫が復活していると言う感じなので、 Zinc が欲しい方は在庫を見つけ次第購入する事をオススメします。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">今回の Zinc の構成</h2><p style="word-break:keep-all;overflow-wrap:anywhere">今回はこう言う感じです:</p><ul><li><a href="https://shop.yushakobo.jp/products/consign_zinc">Zinc</a></li><li style="word-break:keep-all;overflow-wrap:anywhere"><a href="https://shop.yushakobo.jp/products/mda-future-suzuri">MDA Future Suzuri</a>(キーキャップ)</li><li style="word-break:keep-all;overflow-wrap:anywhere"><a href="https://shop.yushakobo.jp/products/novelkeys-cream-switches">NovelKeys Cream スイッチ</a>(キースイッチ)</li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">また私は『キーボードは光らなくても良い派(と言うか光って欲しくない派)』であるため LED ライトは実装していません。</p><p style="word-break:keep-all;overflow-wrap:anywhere">なお firmware は <a href="https://github.com/qmk/qmk_firmware">qmk_firmware</a> の fork である <a href="https://github.com/vial-kb/vial-qmk">vial-qmk</a> を利用しており、 自分で Zinc 用の Vial keymap を作成しカスタマイズした物を焼き込んでいます。</p><p style="word-break:keep-all;overflow-wrap:anywhere">だた注意として私が vial-qmk で firmware を作った際に、 LED 関連のコードは無効化した上でバイナリサイズが限界の 94% まで迫っていたので、 もしかすると LED 関連が有効だと Vial の firmware は作れない可能性があります。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">今回の組み立ての感想</h2><p style="word-break:keep-all;overflow-wrap:anywhere">Zinc 自体は以前にも作った記憶がありましたし、初代 Zinc で電子工作をした経験をあってある程度の勝手が分かっていたため、 最低限の注意点だけに気を払い、あとはおおよそこんな感じだろう、と言う流れで組み上げました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">それで今回私が注意した点としては、</p><ul><li style="word-break:keep-all;overflow-wrap:anywhere">抵抗をつける向きを間違えない様にする(これは何重かにチェックした)</li><li style="word-break:keep-all;overflow-wrap:anywhere"><strong>キースイッチを植える時にアクリルプレートを付け忘れない様にした</strong></li><li style="word-break:keep-all;overflow-wrap:anywhere">PCB を焦さないようにはんだごてを当て過ぎないように注意した</li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">と言った辺りです。</p><p style="word-break:keep-all;overflow-wrap:anywhere">まず最初の抵抗の向きに関して言うと、これについては一度間違えると後が大変なことになるので、</p><ul><li style="word-break:keep-all;overflow-wrap:anywhere">抵抗を差し込む時に向きがあっているかチェック</li><li style="word-break:keep-all;overflow-wrap:anywhere">抵抗をマスキングテープで止める時にも向きがあっているかチェック</li><li style="word-break:keep-all;overflow-wrap:anywhere">最後に抵抗を付け終わった後に最終チェック</li></ul><p style="word-break:keep-all;overflow-wrap:anywhere">と言う感じで行いました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">次いで二番目に関しては今回かなり意識していた点で、これは初代 Zinc を作った際、 アクリルプレートの付け忘れで <strong>キースイッチ植え直しの刑が二回ほど発生、結果はんだスッポン技力がかなり上達した</strong>、 と言う事が昔あったので<strong>今回はアレをやらんぞ!</strong> と言う決意で注意を払っていました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">最後に三番目に関しては基板を痛めないようにと言う感じの事柄ですが、 初代は結構焦がしてしまっていたので、今回はその点に気を付けよう、と言う感じですね。 まぁ結果としては部分的に焦げたんですけども。</p><p style="word-break:keep-all;overflow-wrap:anywhere">とまぁそんなこんなもあり、今回作った Zinc 二号機では組み立てミスが一切発生せず両手用とも一発で完動したので、 その点では『やったぜ!!1』と言う感じでかなりの達成感がありました。はい。</p><h2 style="word-break:keep-all;overflow-wrap:anywhere">なぜ Zinc 二号機を作ったか</h2><p style="word-break:keep-all;overflow-wrap:anywhere"><strong>正直に言うと Zinc の冗長化です</strong></p><p style="word-break:keep-all;overflow-wrap:anywhere">実は今まで PC に接続できる USB キーボードは Zinc 初号機しかなく、 <strong>初代が壊れると PC に接続できるキーボードが無くなってしまう</strong> と言う問題もあって、 そのために最低でももう一台は欲しい!と言う思いが元々ありました。</p><p style="word-break:keep-all;overflow-wrap:anywhere">ただキーボードを冗長化するためには Zinc が欲しい、しかし冗長化したくてもキットが売ってない……これはは他のキットを買うしか……と言う状態で悶々とした居たところ、 まさかまさかの在庫が復活!当然購入です。分かりますね?と言う事が発生したため、今この手に Zinc の二号機がある、と言う感じです。</p><p style="word-break:keep-all;overflow-wrap:anywhere">ちなみに Zinc 二号機を入手したのは 6月頃だったのですが、今まで時間があまり取れなかったのもあり、 Zinc 二号機の組み上げは先日の二日間となりましたとさ。</p><h2>以上</h2><p style="word-break:keep-all;overflow-wrap:anywhere">と言う事で今回の話は以上です。</p><p style="word-break:keep-all;overflow-wrap:anywhere">ちなみに私のキーマップなんですが、私がマスターパスワードに数字と記号を多用することもあり、 mod キーなどは親指や人差指でタイプしやすい箇所にマップしてあります。</p><p style="word-break:keep-all;overflow-wrap:anywhere">しかしこれは Ctrl と Shift は常にタイプできる形でマッピングしたりしていますが、 それ以外の Alt と Control はレイヤーの奥まったところにしかマッピングしてないので、 まぁキーボードショットカットによっては打てんだろこれ、と言うのはありますね。</p><p style="word-break:keep-all;overflow-wrap:anywhere">とは言えこの辺りは調整中でまー実際仕事でも使ってみてから調整するかなぁ、 と言うところではあるので、自作キーボードのキーマップも沼だぞ!と言う感じです。はい。</p>