2021 ふりかえり

Job 約3年参画していたプロダクト開発を夏前に (円満) 卒業しました。後半の1年半ぐらいは商用リリースに向けてかなりヘビーな日々が続いていました。メンバーが優秀でかつチームワークもよかったのでなんとか乗り切りることができました。並行して4月から別…

macOS Monterey にアップデート

Mac

年末なので macOS のアップデートを行いました (MacBook Pro 13 Early 2015)。 事前に brew update / upgrade は済ませておきました。 Monterey のイメージは約 12GB。 ダウンロードとインストールで2時間ぐらいかかりました。 システム設定のアイコンや壁紙…

MFC アプリ開発環境構築 Visual Studio 2022 版

Visual Studio 2022 がリリースされました。 visualstudio.microsoft.com 2019 以来のメジャーバージョンアップ。ずっと奇数年リリースでしたが、コロナ禍の影響か 2021 ではなく 2022 になりましたね。 blog.kondoumh.com それでは、レガシーな MFC アプリ…

Kindle Paperwhite (11世代) 購入

Kindle Voyage 買ったのはなんと7年前。 blog.kondoumh.com 文庫本的サイズで軽いので今も SF とか読むのにけっこう使ってます。 11世代目の Kindle Paperwhite はフォームファクタがリニューアルされ、画面が大きくベゼルも細くなりました。なんといっても …

1Clipboard で Chrome の稼働を1つのマシンに集約する

1Clipboard は 複数の PC / Mac のクリップボード履歴を共有するツールです。 1clipboard.io Google Drive を仲介してクリップボードデータを共有するため、インストールして各端末で Google ログイン・パーミッション設定をする必要があります。一度設定す…

REALFORCE R3 (BT / All 30g) を導入

2008年に購入した REALFORCE 91UBK を長らく使ってきました。 blog.kondoumh.com まだまだ使える感じですが、レーザー刻印の文字はかなり薄くなり、たまにチャタリングも起こるようになりました。数年前新しいの買おうかと思ったら R2 になってスペースキー…

Duet Display で iPad を Windows ラップトップの外部ディスプレイにする

最近会社支給の Let's note がリニューアルして性能的に2015年の私物 MacBook Pro を上回りました (M1 Mac は未発注)。 scrapbox.io これまで iPad Pro をメインディスプレイの左に浮かべて、Magic Trackpad と Magic Keyboard をペアリングして使ってたので…

GitHub Container Registry でプライベートなイメージを GitHub Actions + Kubernetes で使う

かなり前 GitHub Packages でコンテナイメージを扱ってました。 blog.kondoumh.com その後 Container Registry が登場しました。Packages の時は public なイメージの Pull にも認証が必要でしたが、Container Registry では不要になっています。そして既存…

野良 Scrapbox アプリ - 動的なタブ幅のリサイズ

blog.kondoumh.com Electron 14 がリリースされたので野良 Scrapbox に適用しました。 13の時は発生してなかったんですが、タブを作成するときにページ内リンク以外のメニューとか、ツールバーの favs などからページを開くとアプリごとサクッと落ちるように…

Node.js で Google Fit に体重データを登録する

先日 Node.js で Google Fit から歩数や体重データを取得するのをやりました。 blog.kondoumh.com 体重データはスマホアプリから登録できるけど Fit を使う前の過去データは手入力やってられてられないので、API による登録方法を調べました。 公式ドキュメ…

Electron v14 リリースに備える

Electron v14 のリリースが 8/31 に迫っています。 www.electronjs.org 2年ぐらい前から12週ごとのリリースに移行しており、機能が deplicated になってから remove されるまでの期間も短くなっています。 www.electronjs.org 起動時に webPreferences で指…

Node.js で Google Fit のデータを取得する

今年になってから今更ですがドラクエウォーク始めました。 www.dragonquest.jp 通勤しないけど、このおかげでけっこう外歩きするようになってるので、歩数データと体重データの相関取ったりしてみたいなあと思いました。Google Fit って Web アプリは廃止さ…

Argo Workflow の機能と記法

前回デプロイと動作確認をしたので続きです。 blog.kondoumh.com Steps 順次実行 (コードはリンク先に)。 - - で先行ステップを表現するのはややわかりづらい気がします。 でも DAG っていう GitHub Actions とかでもお馴染みの記法もサポートされてます。 D…

Kubernetes native なワークフローエンジン Argo workflow を動かす

Argo workflow は Cloud Native Computing Foundation にホストされている Kubernetes native なワークフローエンジンです。 github.com Kubeflow でも機械学習のパイプラインエンジンとして使用されています。 blog.kondoumh.com 公式の manifest でインス…

GitHub CLI に GitHub Actions 用コマンドが追加された

1.0 では対応してませんでした。 blog.kondoumh.com 今月の中旬にリリースされた v1.9.0 で run, workflow, actions のコマンド群が提供されました。 github.blog actions でコマンド一覧が表示できます。 $ gh actions run はワークフロー実行結果や詳細を…

GitHub リリースページのドラフトを自動生成してくれる Release Drafter を導入する

CI

リリースページに ChangeLog というかリリースノートを書くのはかなり面倒です。 Release Drafter を使うと PR 単位でいい感じに リリースページのドラフトを生成してくれます。 Release Drafter の GitHub App は簡単に導入できますが、何やら Deprecated …

テレワーク環境 Early 2021

去年は色々試行錯誤してましたが、ようやく落ち着いてきました。 blog.kondoumh.com ずっと ASUS の 27inch WQHD ディスプレイ使ってます。 scrapbox.io 8年も前のモデルで HDMI 入力端子が1個しかないので、テレワーク端末のノート PC と MacBook Pro をス…

Netlify Functions の Zero configuration と Netlify CLI

Netlify Functions は AWS Lambda を基盤とした API のプラットフォームです。 blog.kondoumh.com 利用は非常に簡単ですが、最近さらに Zero configuration という仕組みが導入されました。規定のディレクトリ (netlify/functions) にコードを配置するだけで…

GitHub Actions ワークフローでジョブ毎のステータスを Slack 通知する

CI

前回のフォローアップ的な内容です。 blog.kondoumh.com 複数ジョブからなるワークフローの最後に Slack などに通知する時、ワークフロー全体の成功・失敗だけでなく、どのジョブで失敗したかを通知したくなります。通知のリンクからワークフローの実行結果…

GitHub Actions ワークフローで複数のジョブ実行を制御する

CI

GitHub Actions ワークフローでは、複数のジョブを順次実行・並列実行・条件実行することができます。各ジョブは異なるマシン(Runner) もしくは コンテナイメージで実行されます。 順次実行 何も指定しなければ、ジョブは並列に実行されます。順次実行するに…

野良 Scrapbox アプリ - Linux 用バイナリも Release に含めました。

これまで Windows と macOS のビルドを Release からダウンロードできるようにしていましたが、最近 Linux デスクトップも使うようになってきたので、Linux のバイナリを配布しようと思いました。 ひとまず起動確認。 ビルドして実行したところ GNOME のドッ…

ワークアウトしたら Pixela に草を生やす PWA

テレワークで外出が減って、運動不足を自覚するようになりました。人間ドックでも数値がちょっと悪くなってました。そこで YouTube の Fit boxing チャンネルなどで室内運動するようになりました。外出した日は意識して歩数を伸ばすようにしたりしてます。 …

2020 ふりかえり

今年は4月から完全テレワークになって外出が減り、外での飲食もなくなり、生活が大きく変わりました。 Job クラウドネイティブなプロダクト開発に参加して丸2年が過ぎました。SRE チームとして活動しています。環境構築を自動化したり、可用性やセキュリティ…

Scrapbox プロジェクトのグラフ構造可視化 - その後

Scrapbox のページ間リンクを可視化するやつです。 Graphviz バージョン blog.kondoumh.com D3.js バージョン blog.kondoumh.com D3.js バージョンを半年ぶりにちょっと触りました。と言っても Visualization の方式を変えたとかではなく、ノードをフィルタ…

GitHub Actions の Composite run steps action を使った Action を作る

CI

この夏に登場してたのを見逃してました。 github.blog 以前は GitHub Actions のワークフローで再利用できる Action は Docker Container Action と JavaScript Action でした。 blog.kondoumh.com Docker Container Action は手軽に作れますが、コンテナで…

Netlify Functions を PWA のバックエンドで使う

Netlify は静的サイトをホスティングするのに便利です。 blog.kondoumh.com JSON データを置いてちょっとしたデータソース的にも使えます。 blog.kondoumh.com しかし、JSON を静的に配置できるだけだと上の記事のように更新のためのパイプラインを実装する…

macOS Big Sur にアップデート

Mac

Big Sur がリリースされてから10日。2013 - 2014 の 13インチ MacBook Pro では起動しなくなる問題がある模様です。 support.apple.com 一応2015年モデルだし他に大きな不具合もなさそうということで、アップデートすることにしました。 ダウンロードは20分…

Octokit で GitHub repo からファイルの中身を取得する

GitHub では Octokit という API クライアントが提供されています。 github.com GitHub の REST API は fetch でも叩けますが、octokit/rest が使いやすくラップしてくれてます。 リポジトリ内のファイルの中身は getContent で取得して Base64 デコードする…

Windows Terminal で SSH 接続先毎に Profile を作る

仕事用マシンがようやく Windows 10 1909 (November 2019 Update) に更新されました。 これまで SSH するとき Git Bash や Cygwin を mintty で使ってました。タブ機能がないので接続先毎にウィンドウが散らばりますし、 コマンド実行時に横幅が足りなくて表…

Kubernetes ネイティブなカオスエンジニアリングツール Chaos Mesh を使ってみる

Netflix が提唱した耐障害テスト技法 Chaos Engineering。実行環境に実際に障害を発生させてアプリケーションの復旧をテストする方法です。 Chaos Mesh は Kubernetes クラスターで稼働するアプリケーションをターゲットに Chaos Engineering テストを実行で…