miso_soup3 Blog

主に ASP.NET 関連について書いています。

音楽の視覚化について、発見したものとUnityで作ってみたもの

音楽を視覚化について、発見したものと、それをみて実際に自分で作ってみたものをまとめました。 Music Animation Machine 〜共感覚と音楽の構造の視覚化〜 Music:Eyes 〜アニメーションで音楽を学ぶeラーニングプラットフォーム〜 Keita Onishi 氏 フロクロ…

Unityを使ってピアノロールと演奏動画を合成する方法

下の画像のように、ピアノロールのオブジェクトと演奏動画を合成したものを作成してみました。Unityでピアノロールのオブジェクトを生成しました。 完成した動画はこちらです: Unity のコードはこちら:https://github.com/hhyyg/miso.music-midi-piano-rol…

読書感想「MIT マサチューセッツ工科大学 音楽の授業 ~世界最高峰の「創造する力」の伸ばし方」

www.amazon.co.jp きっかけ MIT でどんな音楽の授業をするのかを知りたかった MIT と音楽といえば、music21 というソフトウェアのライブラリを思い浮かぶ。電子音楽を背景とした授業が多いのかなと予想し、他にもどのような取り組みがあるのかを知りたかった…

ポリリズム・メトロノームを作った話

ポリリズムを練習するためのメトロノームを、Web Audio API を使って作成しました。 Website にアクセスして使えます Movie: www.youtube.com GitHub: github.com ポリリズムとは? なぜ作ったか 視覚的にリズムを確認したい ゆっくり練習したい Web でのメ…

LaunchDarkly にてフラグが評価される前にダッシュボードを使う

LaunchDarkly では、ユーザーによってフラグが評価されるとき、同時にユーザー情報がインデックスされます。それにより、管理画面のダッシュボードからそのユーザーに関する操作を行うことができます。 しかし、ユーザーによってフラグが評価される前に、そ…

Jasmine は async/await と done() による callback の混合をサポートしない

Jasmine (version 3.8 で確認)では、以下のコードような、async(async/await の async)と done() による callback を混合した書き方はサポートしなくなったようです。 it("test", async (done) => { await somethingPromise(1000); done(); }); 実際にこの…

行によって列の意味が異なる CSV のための Viewer(VSCode Extension)

行によって列の意味が異なる CSV の閲覧と編集を補助する VSCode Extension を作成しました。 marketplace.visualstudio.com 使い方: miso.csv-map-viewer-vscode-ext/README.ja.md at main · hhyyg/miso.csv-map-viewer-vscode-ext · GitHub "行によって列…

スタンドアロン(またはネイティブ)アプリと LaunchDarkly によるカナリアリリースの課題

LaunchDarkly をどのように使っているか 問題 回避策 A 強制アップデート B ベータテストと、カナリアリリースのための2つのフラグを使う C バージョンを参照する 参考サイト 概要: スタンドアロンアプリ開発(Webアプリではなく)にて LaunchDarkly による…

楽譜で音ゲー ver.2 のイメージ動画を作成した

次に作ってみたい音ゲーのイメージ動画を作成した。 youtu.be BGM提供 : Hagall https://hagall.info/ 譜面は左右の2に分かれ、左・右・左・右と移っていく ノーツは動かない なぜこのかたちになったか 前回の音ゲーは目が疲れる 前回作った音ゲー↓ で、一つ…

Angular の Unit Test で style が増え続ける問題を回避すると、実行時間が約半分になった

追記 2021/12/3 : Angular v13 からは、この問題は発生しないようです: 詳細 SharedStylesHost isn't cleaning up styles between Karma test specs · Issue #31834 · angular/angular ↑この Issue にあるように、Angular の Karma を使ったテストで、<style>要素が…

Lambda(SAM) に Datadog を導入したときのメモ

図 Trace Serverless Functions より 全ては Datadog の公式ドキュメントに記載されている通りですが、引っかかったところをメモします。 導入 サーバーレスモニタリングのインストール の通りに行いました。 1. AWS インテグレーションをインストール 「自…

問題の沼から抜け出す方法

コードを書いていてハマることはよくあるのですが、とある方法を行うようにしてから、問題解決までの時間が短くなったと感じました。その方法を書きます。とはいっても、どれもよく言われることだと思います。 すぐに試せる環境を用意しておく 作業ログの書…

2019年に知った音楽のこと、作ってみたもの

2018年の春にNintendo Laboのピアノを触り、2018年の夏に楽譜の音ゲー「音符池」を作成した影響か、音楽のデジタルツールに興味を持ちました。そして2019年は、いくつかの興味深いツールに出会い、少し作ってみたりもしました。今後も多くのツールに出会いた…

Google's Code Review Guidelines を読んでアクションに落とす

Summary Google's Code Review Guidelines を読み、具体的にどうアクションするかを念頭に置くため、アクションリストだけをまとめました。 Google Engineering Practices Documentation | eng-practices 2019/9/6頃に公開されました。 Google エンジニアリ…

SET and REMOVE in an UpdateExpression DynamoDB

Update Expressions - Amazon DynamoDB 更新式 - Amazon DynamoDB DynamoDB の put-item にて、一部の属性の値のみを更新しつつ、とある属性を削除したかったため、動作を確認しました。 An update expression consists of one or more clauses. Each clause…

DynamoDB の GSI のレンジキーの値を定義時とは違う型で put-item できないことを確認する

Summary DynamoDB のテーブルに GSI を定義するときは、AttributeDefinitions でハッシュキーやレンジキーの名前と型を定義することになる GSI を定義したあと、その型と違うデータ型としてput-itemはできない 例えば、DynamoDB の GSI のレンジキーを文字列…

(2) The Standard of Code Review を読んでのメモ

Google が How to do a code review のドキュメントを公開しています。いくつかのセクションのうち、レビュアーのための1つ The Standard of Code Review | eng-practices を読んで、読み取ったものをメモします(訳ではない)。前回:Speed of Code Reviews…

Speed of Code Reviews を読んでのメモ

Google が How to do a code review のドキュメントを公開しました。いくつかのセクションのうち、レビュアーのための1つ Speed of Code Reviews を読んで、読み取ったものをメモします。 ※ 日本語に翻訳されたプロジェクトがあります: Google エンジニアリ…

Euclidean Rhythm ユークリッドリズムとは

はじめに ユークリッドリズムとは、2つの数字からとあるアルゴリズムにより生成されるリズムです。2004年にGodfried Toussaintによって発見され、論文『The Euclidean Algorithm Generates Traditional Musical Rhythms』で発表されました。そのリズムを生成…

TypeScript の readonly な型と仕様

TypeScript で、readonly な仕組みとしてどのような型や仕様があるのか気になり調べました。見つけた範囲で書きます。 試したコードは gist にあります: TypeScript readonly 目次: Read-only properties Read-only index signatures Readonly<T> ReadonlyArray<T></t></t>…

Bitbucket Dashboard を自分用に見やすくする Chrome の拡張機能を作りました

Bitbucket Dashboard Helpers - Chrome ウェブストア Bitbucket の Dashboard が見辛くてしょうがないので Chrome 拡張機能を作りました。実体はただのペラ一枚のScriptです: miso.bitbucketboard/dashboard.js at master · hhyyg/miso.bitbucketboard。一応…

Jupyter Notebook と VS Code でバッハの平均律第1番を分析する

Jupyter Notebook で、楽譜を表示したり、その楽譜を再生してみたり、曲を分析したりしてみました。そのことについて書きます。分析といっても簡単なものです。 目次 Code, .ipynb 環境 VS Code で Jupyter Notebook music21 とは 曲の作成と表示 バッハの平…

本の感想:Team Geek

Team Geek ―Googleのギークたちはいかにしてチームを作るのか作者: Brian W. Fitzpatrick,Ben Collins-Sussman,及川卓也,角征典出版社/メーカー: オライリージャパン発売日: 2013/07/20メディア: 単行本(ソフトカバー)この商品を含むブログ (21件) を見る …

デジゲー博2018で音ゲー「音符池」を展示してきました

デジゲー博 | 同人&インディーゲームオンリー展示・即売会2018/11/4(日) 11:00〜16:00 秋葉原UDXにて、音ゲー「音符池」を展示してきました。自分のブースでは、約40人に試遊していただきました。目の前でプレイしている様子を見られてフィードバックも貰え…

本の感想:アジャイルサムライ

アジャイルサムライ――達人開発者への道作者: JonathanRasmusson,西村直人,角谷信太郎出版社/メーカー: オーム社発売日: 2017/07/14メディア: Kindle版この商品を含むブログ (5件) を見る 2011年 出版 著者、監訳者、訳者 著者 Jonathan Ras…

〜日記〜 育児アプリの完成を諦めた話

育児アプリを Swift/iOS で個人で開発していましたが、未完のままお蔵入りすることにしました。リリースできなかった…無念。成仏させるためにその話を書きます。 作ったところまでのスクショ: 作ったところまでの動画: youtu.be ※アプリ内でこちらの画像を…

音ゲー「音符池」で休符の矛盾にどう向き合ったか

答え:楽譜の正しさではなく、音ゲーのゲーム性を優先しました。 背景 どんな矛盾だったか 正しく楽譜を表現するとどうなるか 休符を表示するルール 実はそんな書き方の楽譜が既にある 終わり 背景 https://twitter.com/miso_soup3/status/10299167338705633…

ゲーム「楽譜で音ゲー」を Unity で作った話

ゲーム「楽譜で音ゲー」のプロトタイプを、Unity で作成しました。→ 追記:その後リリースしました 曲は、簡単な「かえるの歌」と、難しめな「戦闘曲35(魔王魂より)」の2曲です。UnityRoom にアップしたので実際にプレイできます。 「かえるの歌」 www.you…

Callable HTTPS Function(Cloud Function for Firebase)のデバッグとテスト

2018/4頃にCloud Functions for Firebase SDK v1.0 がリリースされました。追加された機能の1つに「Callable HTTPS Function」というものがあります。このFunctionのデバッグとテストの方法を記述します。 目次: まとめ Callable HTTPS Function とは Calla…

本の感想: よくわかるAuto Layout

関連リンク よくわかるAuto Layout | 川邉雄介, 所友太 | 工学 | Kindleストア | Amazon 目次:よくわかるAuto Layout/川邉雄介 - システム開発・設計:honto電子書籍ストア 「よくわかるAuto Layout」を執筆した話 - Jeffsuke is not a pen. 読んだきっかけ…