Software
Blog:
CosmosのAppHash不整合をデバッグする

CosmosSDKで作成したブロックチェーンの、非決定的な処理によるConsensusErrorを解決する1手法をまとめたので紹介します。

Blog:
slogでログにTraceIDを出す

go1.21で構造化ログを出すslogが標準ライブラリに導入されました。これを使ってTraceIDを一緒にログに出すようにします。

Blog:
Goプログラムのトレースを取ってGrafanaCloudで可視化する

GoでAPIサーバーを構築していると、「エラーログがでたけどこのログはどのリクエストに紐づいているんだっけ?」となることが多々あります。traceは主に処理時間の内訳や呼び出しの依存関係を示してくれますが、スパンのコンテキストにいろんな値を保持しておき、それをエラーログと結びつけることでデバッグに便利に使えます。また、自身でtraceやlogの記録・可視化を行う環境を構築することは面倒ですが、GrafanaCloudの無料枠を使うとこれが快適に行えるので今回はこれを活用します。

Blog:
新テーマと振り返り

ご挨拶 もう1月も半ばとなってしまい今更感もありますが、あけましておめでとうございます。 昨年も多くのご縁があり、大変お世話になりました。何卒今

Blog:
コンポーネントの値を外から操作したい!RefIDオフセットの世界

この記事はNeosVR Advent Calendar2022 15日目の記事です。

NeosVRで任意のアイテムのコンポーネントを取得したり、その中のフィールドにアクセスしたい!そう思ったこと、一度はありますよね。

NeosVRでは、一般的な方法でではslot(Unityで言うGameObjectのこと)にアタッチされているコンポーネントの一覧やそれぞれの参照、 そして、そのコンポーネント内のフィールドにアクセスするためには、事前に自らLogiXツールチップを使ってインターフェイスノードを出したり、インスペクターから ReferenceProxyを介してドラッグアンドドロップしておく必要があります。

大抵の場合はこれで十分ではあるのですが、アバターを自動でカスタマイズしたり、外からインポートしたアイテムなどを一括で大量に編集したいなどのユースケースにおいてはこれができないと不便です。

…なのですが、実は、“RefID"を駆使するとこれが可能になります。

Blog:
[C++]wsl上からwindows向けにmakeする

wslではexeがexecutableとしてマークされており、通常バイナリと同様の手順で起動することができます。
当然linuxのsyscallが使えるわけではないので、起動すると言ってもホスト側で起動してくれるだけですが、これは絶妙に便利な機能ですね。 参考

たとえば、clip.exeがpbcopyと同じノリで使えるのもこれのおかげです。

Blog:
ConcourseCIでもパラメーターつきビルドがしたい

ConcourseCI、見た目が良くて、何よりジョブがいい感じに可視化されるので、「何をやってるのか」がひと目でわかっていいんですよね。ドキ

Works:
[CLI] today.md

today.mdは日報ベースのTODO管理CLIアプリケーションです。コマンドラインなら常に触ってるし、心理的ギャップがほぼ0で開けるじゃん!ってことで作りました。

Works:
[Electron] timesline

TimeslineはSlackの分報チャンネルをTwitterのように一箇所に集めて表示できるアプリケーションです。 分報文化であることの"Times"をtimeline表示をすることからきています。

Blog:
Reactをelectronでチョッパヤでアプリ化する

本記事ではいかにチョッパヤでアプリ化するかというところに焦点を当てるので、開発時の便利さ(live reloadなど)は省きます。この辺をいい

Blog:
MMC22に参加しました

NeosVRには"Metaverse Maker Competition"というイベントが毎年開催されています。 このイベントはNeo

Blog:
Spotifyのプレイリストをスプレッドシートに同期する

Spotifyのプレイリストをテキストで欲しいな~と思ったのでスプレッドシートへの同期をGASで組みました。 あと、追加のメリットとしてはSp

Blog:
スプレッドシートをjsonとして出力するボタンを作る

はじめに こんにちは。ととがんまです。 最近はこんな感じのゲームを作り始めました。 自分のVRMモデルがモクモクと作業してるところ見守るタイプの疑

Works:
Logix Virtual Machine X SDK

LVMX-SDKはNeosVR内で作られた仮想マシン「LVMX」をターゲットにしたCコンパイラとそのライブラリ、加えてwebで動作するシミュレータからなるSDKです。

Works:
[NeosVR] TurtleCoding!

ブロックを組み合わせてscratchのようにプログラムを書き、それによってタートルを動かして3Dの図形を描けるワールドをNeosVRにて公開しました。

Blog:
pythonでのCコンパイラ作成に役立つライブラリメモ

この記事では僕がスタックマシン用にC言語のコンパイラを作ったときに使ってみたフロントエンドのライブラリのメモ書きを残してます。あくまでも「手っ取り早く動かしたい」って人向けなので「きちんと自分で実装して理解を深めたい」っていう人向けではないです

Blog:
計算機オタクから見たNeosVR

NeosVRというVRゲーム上で仮想マシンを作ってみました。これを通しつつ、NeosVRについて解説していきます

Blog:
golangでdynamoDBを叩く

バイトでgolangでdynamodbを叩くlambdaを書く機会があったので、そのときに調べたことを軽くメモしています。 goはほんと触りたてなので、あたまわるコードや誤りが存分に含まれている可能性高いです。

Blog:
macでfaviconを作る(ローカルで)

favicon、定期的に作るタイミングこそくるものの、そんな頻繁に作るものでもないので作り方忘れちゃうんですよね。もう人生で何回もググってる気がするのでいい加減メモしておこうと思います。

Blog:
HUGOで固定ページを作成する

ロクにドキュメントを読んでいなかったので、このサイトでは今まで意味不明な方法で固定ページを作成していましたが、 今回セクションごとのパラメータをつける方法を調べた副産物で正しい方法(?)が分かったのでメモします。

Blog:
HUGOで隠しコンテンツを配信する

メインストリームに乗せる記事とは別に雑な記事もブログに載せたいこと、ありますよね(私はあります)。なので、HUGOでそのような記事の「見え方」を操作する方法を紹介します

Blog:
HUGOのRSS出力に画像を設定する

hugoはデフォルトでRSSまで出力してくれて便利なのですが、カスタマイズするに当たって調べることがあったのでここにメモします。

Blog:
HUGOをtwitterCardに対応させる

Twitterに限らず、最近の様々なSNSではリンクを共有したときにリッチな表示をしてくれますよね。 このサイトもその表示に対応したので、その方法をメモしておきます。

Blog:
Trello Cover Maker を作りました

僕は普段Trelloでタスク管理をしているのですが、項目が増えすぎると横が長くなりすぎちゃうんですよね。 なので、一つのリストに見出し用のカードをいくつか追加して使っています。

Works:
Trello Cover Maker

Trello用のカバーを作成するための簡単なツールです。

Blog:
HUGOで個人サイトを作成・ホストする

個人でブログサイトを作り公開する方法は複数ありますが、最近はサーバーレスアーキテクチャが流行っているので できればそれを使ってみたいですよね。そこで注目しているのがHugo+AWSの組み合わせです。この記事では、Hugoの使い方・カスタマイズの仕方と AWSを用いてホストする方法までを解説します。

Blog:
万能makefileができるまで

「makeを使うと開発が非常に楽になる」というのは雰囲気でなんとなく分かりますが、 どういう問題をどう解決してくれるのかがイマイチ分からないので手をつけにくいですよね。

この記事ではmakefileの基本の書き方から、C/C++のコードを 依存関係を考慮して効率よくビルドできる makefileがどうできるのかを解説します。

Blog:
引越ししました(n回目)

様々なシステム上で動いてきたGammalabブログですが、この度hugoに一新しました